Знакомство с Microsoft Access 2000

Уровень подготовки пользователя определяет выбор способа начала работы в Microsoft Access 2000.

Что больше соответствует вашей подготовке?

Переход к Microsoft Access 2000 с предыдущих версий

Имеется опыт работы с другими базами данных или с электронными таблицами

Отсутствие опыта работы с базами данных


Новые возможности окна базы данных

Новое окно базы данных в Microsoft Access 2000 обеспечивает более широкие возможности просмотра и управления объектами базы данных.

  • Панель инструментов окна базы данных. Позволяет быстро находить команды для создания, открытия или управления объектами базы данных.

  • Кнопка «Объекты». Служит для просмотра объектов базы данных на панели объектов, вертикальная ориентация которой удобна для использования.

  • Организация объектов базы данных в виде групп. Нажмите кнопку «Группы» для просмотра групп, в которые можно включать ярлыки объектов базы данных различных типов.

  • Ярлыки для создания объектов базы данных. Используются для быстрого создания объектов базы данных с помощью мастера или для открытия новых объектов в режиме конструктора из окна базы данных.

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

  • Выбор объекта путем ввода его имени. Например, для выбора таблицы «Поставщики» при просмотре списка таблиц можно ввести По.


 Новые средства работы с данными и с макетом базы данных

Новые средства работы с данными и с макетом базы данных

В Microsoft Access 2000 добавлены следующие новые средства, облегчающие работу с данными и макетом базы данных.

  • Блокировка записей. Базы данных Microsoft Access, помимо блокировки страниц (при которой записи блокируются страницами по 4 Кбайт), теперь поддерживают блокировку отдельных записей. Уровень блокировки задается при помощи нового параметра базы данных, Блокировка записей при открытии БД (меню Сервис, команда Параметры, вкладка Другие). Фактический уровень блокировки зависит от того, как запрограммирована база данных Access.

  • Поиск и замена. Теперь существует возможность свободного перехода между диалоговыми окнами Поиск и Замена, а также между данными в представлении или окне.

  • Просмотр связанных данных в подтаблице. Для просмотра и редактирования связанных или объединенных данных из таблиц, запросов, форм или подчиненных форм в одном и том же режиме пользуйтесь подтаблицами. Например, таблица «Поставщики» в учебной базе данных «Борей» имеет отношение «один-ко-многим» с таблицей «Товары», поэтому в подтаблице можно просматривать и редактировать строки таблицы «Товары», связанные с каждой строкой таблицы «Поставщики», открытой в режиме таблицы.

  • Автоматическое устранение ошибок, вызванных переименованием полей. Средство автозамены имен автоматически исправляет наиболее распространенные побочные эффекты, возникающие при переименовании форм, отчетов, таблиц, запросов, полей, текстовых полей и других элементов управления.

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

  • Работа с евро. Для отображения сумм в евро можно наряду с другими валютами использовать настройку «Евро» (# ###,## [image]) в свойстве Формат поля (Format). Также можно ввести символ евро ( [image]) нажатием клавиш ALT+0128 на цифровой клавиатуре при включенном индикаторе NUM LOCK. При вставке или импорте данных, содержащих символ евро ( [image]), из Microsoft Excel 2000 в Microsoft Access, Access сохраняет символ евро, не учитывая символ валюты, определенный в настройках языка и стандартов на панели управления Windows. Наконец, можно использовать функцию EuroConvert для пересчета из одной валюты в другую, используя евро как промежуточную единицу. См. дополнительные сведения о работе с евро.

  • Печать схемы данных. Существует возможность вывода на печать схемы данных в базе данных Access, отображаемой в окне «Схема данных».

  • Использование клавиатуры для управления связями. С помощью клавиатуры можно создавать, редактировать и удалять связи и объединения.

  • Использование объектов данных Microsoft ActiveX (ADO). Объекты данных Microsoft ActiveX (ADO) используются для доступа к данным и выполнения с ними действий на сервере баз данных с использованием любого средства доступа OLE DB.


Новые возможности форм и отчетов

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

  • Группировка полей и других элементов управления. Пользуйтесь командой Группировать из меню Формат для группировки взаимосвязанных полей и других элементов управления формы или отчета.

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

  • Создание форм и отчетов для баз данных SQL Server. В проекте Microsoft Access можно создавать формы и отчеты для базы данных SQL Server при помощи тех же инструментов, что используются для их создания в базе данных Microsoft Access.

  • Распространение отчетов среди пользователей, не имеющих Microsoft Access. Экспортируйте отчеты Microsoft Access в формат файлов снимка отчета (.snp). Для просмотра, печати и отправки снимков отчетов по электронной почте используется программа «Просмотр снимков».


Новые возможности: страницы доступа к данным

Страница доступа к данным представляет собой Web-страницу, которую можно использовать для добавления, редактирования, просмотра и обработки текущих данных в базе данных Microsoft Access или базе данных SQL Server. Можно создавать страницы, используемые для ввода и редактирования данных, подобно формам Access. Также можно создавать страницы, на которых данные отображаются с иерархической группировкой, как в отчетах Access.

  • Сбор и распространение текущих данных несколькими способами. Страницы можно использовать для добавления, редактирования и просмотра данных в базе данных Microsoft Access или проекте Microsoft Access; их можно использовать в Интернете или интрасети, а также посылать по электронной почте.

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

  • Анализ данных и прогноз. Существует возможность организации данных различными способами при помощи сводных списков, делать прогнозы и выполнять сложные вычисления при помощи электронных таблиц, а также представлять данные графически в диаграммах.

  • Отображение текста HTML. Можно хранить код HTML в полях базы данных и отображать форматированный текст HTML на странице. Например, если значение поля включает тег HTML, форматирующий текст как наклонный, <I>Текст</I>, на странице можно использовать присоединенный элемент управления HTML для отображения значения наклонным шрифтом.

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


Новые характеристики панелей инструментов, строк меню и контекстных меню

С помощью панелей инструментов, строк меню и контекстных меню Microsoft Access 2000 можно организовать команды таким образом, чтобы их было легко найти и использовать.

  • Использование настроенных меню и панелей инструментов. Разверните меню, чтобы отобразить все команды, а затем выберите команду, которую требуется добавить в настраиваемое меню. Access 2000 корректирует меню и панели инструментов во время работы, отображая только наиболее часто используемые команды и кнопки панелей инструментов.

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

  • Добавление гиперссылки в кнопку панели инструментов или команду меню. Добавьте гиперссылку в кнопку панели инструментов или в команду меню для быстрого доступа к нужному объекту, расположенному на локальном компьютере, в сети, интрасети или Интернете.


Новые средства защиты, сопровождения и преобразования базы данных

  • Защита баз данных Access на уровне пользователя с помощью мастера. Мастер защиты теперь гораздо более прост в обращении и его использование является предпочтительным методом определения защиты баз данных Microsoft Access на уровне пользователя с применением общих схем.

  • Защита программ Visual Basic с помощью пароля. Модули в формах и отчетах теперь можно защитить с помощью пароля Visual Basic для приложений (VBA), создаваемого в редакторе Visual Basic; защита программ на уровне пользователя теперь недоступна.

  • Использование усовершенствованной программы сжатия. Сжатие баз данных Microsoft Access и проектов Microsoft Access рекомендуется выполнять с помощью усовершенствованной служебной программы, которая объединяет в рамках одного процесса сжатие и восстановление и является более безопасной и эффективной.

  • Автоматическое сжатие. Для автоматического сжатия баз данных Microsoft Access или проектов Microsoft Access при их закрытии установите флажок Сжать при закрытии.

  • Преобразование баз данных в формат Microsoft Access 97. Файлы баз данных Access 2000 можно преобразовывать в формат Access 97.


 Новые возможности работы в Интернете

Новые возможности работы в Интернете

Microsoft Access содержит новые средства, призванные облегчить использование Интернета. Для доступа к Интернету и использованию преимуществ некоторых из этих новых средств необходим Web-обозреватель, например, Microsoft Internet Explorer, а также модем, подключение к интрасети или другое сетевое подключение.

  • Создание страниц доступа к данным. Создавайте Web-страницы, которые можно использовать для добавления, редактирования, просмотра текущих данных и работы с ними в базе данных Microsoft Access или базе данных Microsoft SQL Server.

  • Совместная работа в интрасети или Интернете. Используйте приложение NetMeeting для совместной работы с другими пользователями над базой данных Microsoft Access или проектом Microsoft Access.

  • Добавление гиперссылки на кнопку панели инструментов или в команду меню. Добавьте гиперссылку на кнопку панели инструментов или в команду меню для быстрого доступа к нужному объекту, расположенному на локальном компьютере, в сети, интрасети или Интернете.


 Новые средства работы с другими приложениями

Новые средства работы с другими приложениями

В Microsoft Access 2000 входят следующие новые средства работы с другими программными продуктами.

  • Работа с Microsoft SQL Server. Создайте проект Microsoft Access, который можно легко подключить к базе данных Microsoft SQL Server, или воспользуйтесь мастером баз данных Microsoft SQL Server для быстрого создания базы данных SQL Server и проекта Access в одно и то же время. Работа с проектом Access аналогична работе с базой данных Microsoft Access — процесс создания форм, отчетов, страниц доступа к данным, макросов и модулей один и тот же. Подключившись к базе данных SQL Server, можно просматривать, создавать, изменять и удалять таблицы, представления, сохраненные процедуры и схемы баз данных с помощью средств разработки Microsoft SQL Server Design Tools.

  • Создание новой базы данных Access на основе данных из файла другого формата. Достаточно открыть в Access файл другого формата — например, текстовый, dBASE, Paradox или электронную таблицу; Microsoft Access автоматически создаст базу данных Access и связи с этим файлом.

  • Импорт и связывание данных из Microsoft Outlook или Microsoft Exchange. Для импорта или связывания данных из Microsoft Outlook и Microsoft Exchange Server используется соответствующий мастер. Например, можно создать связь с папкой Microsoft Outlook «Контакты», а затем создавать документы на бланке и почтовые наклейки путем объединения данных с помощью мастера составных документов Microsoft Word.


 Компоненты, устанавливаемые с Microsoft Access 2000

Компоненты, устанавливаемые с Microsoft Access 2000

Данные раздел содержит справочные сведения о компонентах, устанавливаемых с Microsoft Access 2000, и о том, где можно найти эти компоненты в программе установки. Эти компоненты также устанавливаются программой установки Office 2000; в их число входят компоненты Microsoft Access, а также средства Office, конвертеры и фильтры.

Устанавливаются (по умолчанию)

Устанавливаются при первом использовании (по умолчанию)

Не устанавливаются (только для выборочной установке)

Примечания по компонентам

Другие программы Microsoft Office 2000

Устанавливаются (по умолчанию)

Компонент | Расположение в окне выборочной установки
Microsoft Graph | Средства Office
Web-компоненты Office | Средства Office
Web-обсуждения | Средства Office
Выбор языка | Средства Office
Импорт файлов EPS | Конвертеры и фильтры; Графические фильтры
Импорт файлов GIF | Конвертеры и фильтры; Графические фильтры
Импорт файлов JPEG | Конвертеры и фильтры; Графические фильтры
Импорт файлов PICT | Конвертеры и фильтры; Графические фильтры
Импорт файлов TIFF | Конвертеры и фильтры; Графические фильтры
Импорт файлов WMF | Конвертеры и фильтры; Графические фильтры
Коллекция картинок | Средства Office; Коллекция картинок
Основные мастера Кнопка для просмотра списка мастеров [image] . | Microsoft Access для Windows
Основные темы | Средства Office; Темы
Основные файлы поддержки, Многоязыковая поддержка | Средства Office; Многоязыковая поддержка
Панель Microsoft Office | Средства Office
Поиск файлов | Средства Office
Помощник (один персонаж) | Средства Office; Помощник по Office
Проверка орфографии | Средства Office; Проверка правописания
Программа Microsoft Access | Microsoft Access для Windows
Публикование на Web | Средства Office
Сведения о системе | Средства Office
Справка | Microsoft Access для Windows
Справка | Средства Office; Microsoft Graph
Файл проекта SQL Northwind | Microsoft Access для Windows; Примеры баз данных
Элемент управления «Календарь» | Microsoft Access для Windows

Возврат в начало

Устанавливаются при первом использовании (по умолчанию)

Компонент | Расположение в окне выборочной установки
Microsoft Query | Средства Office
Web Scripting | Средства Office; Редактор HTML-файлов
База данных «Борей» | Microsoft Access для Windows; Примеры баз данных
База данных «Личное имущество» | Microsoft Access для Windows; Примеры баз данных
Дополнительные мастера Кнопка для просмотра списка мастеров [image] . | Microsoft Access для Windows
Дополнительные темы | Средства Office; Темы
Импорт точечных рисунков Windows | Конвертеры и фильтры; Графические фильтры
Импорт файлов CGM | Конвертеры и фильтры; Графические фильтры
Импорт файлов CorelDRAW | Конвертеры и фильтры; Графические фильтры
Импорт файлов EMF | Конвертеры и фильтры; Графические фильтры
Импорт файлов FPX | Конвертеры и фильтры; Графические фильтры
Импорт файлов Kodak Photo CD | Конвертеры и фильтры; Графические фильтры
Импорт файлов PCX | Конвертеры и фильтры; Графические фильтры
Импорт файлов PNG | Конвертеры и фильтры; Графические фильтры
Китайские шрифты (традиционное письмо) | Средства Office; Многоязыковая поддержка
Китайские шрифты (упрощенное письмо) | Средства Office; Многоязыковая поддержка
Корейские шрифты | Средства Office; Многоязыковая поддержка
Организационная диаграмма | Средства Office
Поддержка двунаправленного письма | Средства Office; Многоязыковая поддержка
Помощник по Office (семь дополнительных персонажей) | Средства Office; Помощник по Office
Приложение «Адреса» | Microsoft Access для Windows; Примеры баз данных
Приложение «Контакты» | Microsoft Access для Windows; Примеры баз данных
Работа со сканерами и фотокамерами | Средства Office
Репликация баз данных | Microsoft Access для Windows
Справка по Visual Basic | Средства Office
Средства разработки для систем типа клиент-сервер | Microsoft Access для Windows
Средство просмотра снимков | Microsoft Access для Windows
Фильтры для графики WordPerfect | Конвертеры и фильтры; Графические фильтры
Цифровая подпись для проектов VBA | Средства Office
Японские шрифты | Средства Office; Многоязыковая поддержка

Возврат в начало

Не устанавливаются (только для выборочной установке)

Компонент | Расположение в окне выборочной установки
Microsoft Photo Editor | Средства Office
Дополнительные файлы поддержки, Многоязыковая поддержка | Средства Office; Многоязыковая поддержка
Поддержка протокола Lotus VIM | Средства Office
Редактор формул | Средства Office
Шрифт Universal | Средства Office; Многоязыковая поддержка

Возврат в начало

Примечания по компонентам

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

Программа установки Microsoft Access 2000 также устанавливает текстовые конвертеры и средства проверки правописания; большинство из этих компонентов устанавливаются при первом использовании и поэтому не занимают много места на диске. Хотя эти компоненты можно использовать с другими приложениями Microsoft Office 2000, такими как Microsoft Word и Microsoft Excel, они не предназначены для использования непосредственно с Microsoft Access.

Если не использовалась выборочная установка, программы установки Microsoft Office 2000 и Microsoft Access 2000 устанавливают Microsoft Internet Explorer 5. При выборочной установке можно отказаться от установки Microsoft Internet Explorer. Однако Microsoft Internet Explorer 5 необходимо установить, если будут использоваться страницы доступа к данным в Microsoft Access.

Возврат в начало

Другие программы Microsoft Office 2000

Программы и их расположение в окне выборочной установки | В обычной установке?
Microsoft Excel для Windows | Да
Microsoft Word для Windows | Да
Microsoft PowerPoint для Windows | Да
Microsoft Outlook для Windows | Да

Примечание. В режиме обычной установки Microsoft Office 2000 расширенного выпуска также устанавливается Microsoft FrontPage для Windows.

Возврат в начало


 Что нового в учебных приложениях

Что нового в учебных приложениях

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

База данных «Борей». Учебная база данных «Борей» разработана для пользователей, не имеющих опыта работы с базами данных Microsoft Access. С содержащимися в ней данными можно проводить различные операции, а ее формы, отчеты, страницы доступа к данным и прочие объекты можно использовать в качестве моделей при создании собственных баз данных.

NorthwindCS. чебное приложение NorthwindCS включает сценарий SQL, создающий базу данных Northwind в Microsoft SQL Server и проект Microsoft Access, подключаемый к базе данных Northwind. Этот проект Access содержит формы, отчеты, страницы доступа к данным и другие объекты базы данных, которые можно использовать в качестве моделей при создании собственных проектов Access.


 Состав Microsoft Office 2000 для разработчиков

Состав Microsoft Office 2000 для разработчиков

Microsoft Office 2000 для разработчиков содержит дополнительные средства, с помощью которых разработчики могут создавать и распространять пользовательские приложения.

В комплект Office 2000 для разработчиков входят следующие компоненты.

Компакт-диск Microsoft Office расширенного выпуска

Компакт-диск инструментов разработчика для Office

  • Лицензия на свободное распространение (включая приложение Microsoft Graph) и инструменты, позволяющие распространять копии пользовательских приложений Microsoft Access среди всех пользователей, независимо от того, установлен ли Access на их компьютерах.

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

  • Приложение Microsoft Visual SourceSafe 6.0 (включая надстройки для Access и редактора Visual Basic), поддерживающее разработку приложений несколькими пользователями.

  • Элементы ActiveX, которые можно использовать для добавления в приложения универсальности и дублирования возможностей Microsoft Windows 95, включая элементы управления для приложений Интернета, а также элементы управления для связывания почтовых средств Microsoft Outlook с данными и другими приложениями Office.

  • Обновленное средство просмотра интерфейса программирования приложений (Windows API Viewer) с повышенным быстродействием. Средство просмотра интерфейса программирования приложений Windows содержит описания и константы, используемые с интерфейсом программирования приложений Windows 95. Эти описания и константы можно копировать и вставлять в модули Visual Basic.

  • Среда данных (Data Environment) — интерфейс пользователя, облегчающий подключение к внешним базам данных.

  • Средство создания надстроек, с помощью которого можно создавать надстройки непосредственно в редакторе Visual Basic для конкретного компьютера, на котором установлен редактор Visual Basic.

  • Мастер упаковки и развертывания, который можно использовать для выполнения программируемых приложений Office на любых компьютерах с Visual Basic для приложений версии 6.0 с диска, из сети и через Интернет.

  • Библиотекарь программ (Code Librarian), инструмент для поиска фрагментов программ в существующих исходных файлах. Возможен поиск в тексте, просмотр описаний и комментариев, а также вставка текста в текущий проект.

  • Пакет разработчика Software Development Kit (SDK), позволяющий создавать разделы справки, аналогичные разделам справочной системы Microsoft Office 2000. Данный пакет включает в себя компилятор HTML Help Workshop и исполняемую версию для распространения среди пользователей.

  • Приложение Agent SDK, обеспечивающее программный контроль над создаваемыми персонажами помощника по Office.

  • Microsoft Developer Network (MSDN), выпуск для Office 2000. Включает полную библиотеку MSDN, а также специальное стандартное подмножество команд программирования Office и Visual Basic для приложений.

Печатная документация

  • Руководство программиста по Visual Basic для Microsoft Office 2000

  • Руководство по модели объектов


Обработка дат, относящихся к 2000 году и более поздних

Предполагаемые действия

Сведения об обработке Microsoft Access дат, относящихся к 2000 году и более поздних

Сведения о Web-узле Центра ресурсов Microsoft по проблеме 2000 года


Работа в Microsoft Access с датами, относящимися к 2000 и последующим годам

В силу сложности правил интерпретации дат в приложениях для вычислений следует указывать вводимые даты как можно более подробно. Это обеспечит высочайшую точность обработки дат в Access 2000.

Способ интерпретации неоднозначных дат в Access. При интерпретации неоднозначных дат Access делает некоторые допущения. Например, если введена дата, содержащая только месяц и еще одну или две цифры, Access исходит из того, что значение от 1 до 31 представляет число этого месяца, а дата относится к текущему году. Например, Access рассматривает «01 декабря» как 1 декабря текущего года, а не как декабрь 2001 года. 32 декабря Access рассматривает как 1 декабря 1932 года.

Способ интерпретации двузначных значений года в Access. Даты в таблицах и полях, введенные с указанием года в сокращенном формате, Microsoft Access интерпретирует как даты двадцать первого столетия следующим образом.

Диапазон дат | Интерпретация
От 01.01.00 до 31.12.29 | От 01.01.2000 до 31.12.2029
От 01.01.30 до 31.12.99 | От 01.01.1930 до 31.12.1999

Указывайте год четырьмя цифрами. Для обеспечения интерпретации значений года в Access нужным образом можно указывать значения года четырьмя цифрами (например, 2001, а не 01).

Изменение способа интерпретации значений года. Системный администратор может настраивать Office, изменяя правила интерпретации дат. Например, в качестве первого двузначного значения года, относимого к двадцатому столетию, можно задать не 30, а меньшее число (см. таблицу выше). Кроме того, администратор может изменить используемый по умолчанию формат дат, чтобы отображать значения года четырьмя цифрами, а не двумя. Сведения о настройке способа интерпретации дат находятся на узле Центр ресурсов корпорации Майкрософт по проблеме 2000 года.

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


Установка или удаление отдельных компонентов

Если не удается найти нужный компонент Microsoft Office 2000 или Microsoft Access 2000, и программа установки Windows не устанавливает его автоматически, можно установить нужный компонент самостоятельно. Если первоначально Office 2000 или Access 2000 был установлен с файлового сервера сети, запустите ту же копию программы установки (Setup).

  1. Закройте все программы.

  2. Нажмите кнопку Пуск и выберите команду Настройка и подкоманду Панель управления.

  3. Дважды щелкните значок Установка и удаление программ [image].

  4. Выполните одно из следующих действий.

    Если Access был установлен с помощью программы установки Office 2000, выберите на вкладке Установка/удаление вариант Microsoft Office 2000, а затем нажмите кнопку Добавить/удалить.

    Если Access был установлен отдельно, выберите на вкладке Установка/удаление вариант Microsoft Access 2000, а затем нажмите кнопку Добавить/удалить.

  5. Следуйте инструкциям, выводимым на экран.

    См. сведения о расположении компонентов в программе установки.

Примечания

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

  • Если требуется, чтобы на компьютере одновременно присутствовали Access 2000 и Access 97, то при установке Access 2000 необходимо выбрать папку, отличную от той, в которой установлен Access 97; в противном случае Access 97 будет заменен.

  • Программное обеспечение MSDE (Microsoft Data Engine) не является частью комплекта установки Office или Access, но MSDE можно установить с компакт-диска или с файлового сервера сети, запустив программу Setupsql.exe, которая располагается в папке \Sql\x86\Setup. См. сведения об использовании MSDE.

  • Если требуется переустановить Microsoft Internet Explorer 5 или выполнить обновление до этой версии, это можно сделать с компакт-диска или с файлового сервера сети, запустив программу Ie5setup.exe, которая располагается в папке \Ie5.


Автоматическое устранение неполадок с Office в целом или с отдельным приложением Office

  • В меню Справка выберите команду Найти и устранить.

    Для восстановления ярлыков в главном меню Windows установите флажок Восстановить ярлыки.

Примечания

  • В ходе данной процедуры выполняется поиск и устранение неполадок, связанных со всеми установленными программами Office, таких как отсутствие файлов, выбранных для установки, и настроек реестра. Личные файлы, такие как электронные таблицы или документы, при этом не восстанавливаются.

  • Если с помощью команды Найти и устранить проблему устранить не удалось, может потребоваться переустановка Office с помощью Windows Installer.


Преобразование базы данных

Предполагаемые действия

Использование существующей базы данных в различных версиях Microsoft Access

Использование существующей базы данных в различных версиях Microsoft Access

Использование в Microsoft Access 2000 существующей базы данных без ее преобразования

Открытие баз данных предыдущих версий Access без их преобразования

Открытие в Microsoft Access 2000 баз данных предыдущих версий без их преобразования

Преобразование существующей базы данных к формату Microsoft Access 2000

Преобразование баз данных Microsoft Access предыдущих версий к формату Microsoft Access 2000

Преобразование защищенной базы данных Access

Преобразование баз данных Microsoft Access предыдущих версий к формату Microsoft Access 2000

Преобразование реплицированной базы данных

Преобразование баз данных Microsoft Access 2000 к формату Microsoft Access 97

Преобразование баз данных Microsoft Access 2000 к формату Microsoft Access 97

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

Проблемы совместимости таблиц, форм и отчетов, преобразованных из предыдущих версий Microsoft Access

Проблемы совместимости макросов и программ Access Basic, преобразованных из предыдущих версий Microsoft Access

Разрешение вопросов, возникающих при преобразовании

Разрешение вопросов, возникающих при преобразовании баз данных предыдущих версий к формату Microsoft Access 2000


 Исправление некорректных ссылок после преобразования базы данных Access 2000 к формату Access 97

Исправление некорректных ссылок после преобразования базы данных Access 2000 к формату Access 97

Программу, использующую объекты доступа к данным (DAO), можно преобразовать в формат Microsoft Access 97, но при этом может быть выдано сообщение об отсутствии по крайней мере одной библиотеки объектов Access 97. Некорректные ссылки можно исправить с помощью следующих действий.

  1. Преобразуйте базу данных Microsoft Access 2000 в формат Microsoft Access 97. Когда будет выдано сообщение о том, что на компьютере отсутствует по крайней мере одна библиотека объектов Access 97, нажмите кнопку OK.

  2. Откройте преобразованную базу данных Access в Microsoft Access 97.

  3. Откройте модуль базы данных.

  4. В меню Сервис выберите команду Ссылки.

  5. В области Доступные ссылки сбросьте флажки, соответствующие некорректным ссылкам, и установите ссылку на Microsoft DAO 3.51 Object Library.

Примечание. В отличие от Access 2000, Access 97 не рассчитан на работу с объектами данных ActiveX (ADO).


 Преобразование баз данных Access 2000 к формату Access 97

Преобразование баз данных Access 2000 к формату Access 97

  1. Откройте базу данных Microsoft Access, которую нужно преобразовать. Если она является сетевой (общей) базой данных, расположенной на сервере или в общей папке, убедитесь, что она закрыта всеми пользователями.

    Важно! Если программы Microsoft Visual Basic для приложений были защищены, то необходимо указать пароль перед преобразованием базы данных Access. Чтобы указать пароль, запустите Microsoft Visual Basic, открыв для этого модуль, выберите команду имяБазыДанных Properties в меню Tools и введите пароль в диалоговом окне имяБазыДанных Password.

    Для успешного преобразования защищенной базы данных Access необходимо иметь разрешения «открытие/запуск» и «монопольный доступ» для базы данных, а также разрешение «чтение макета» для всех объектов базы данных. Чтобы защитить преобразованную базу данных, нужно открыть ее в Microsoft Access 97 и применить защиту на уровне пользователей.

  2. В меню Сервис выберите команду Служебные программы и подкоманды Преобразовать базу данных и к предыдущей версии базы данных Access.

  3. В поле Имя файла диалогового окна Преобразование в базу данных введите имя новой создаваемой базы данных формата предыдущей версии Access и нажмите кнопку Сохранить.

Примечание. Если база данных Access 2000 содержит программу Visual Basic, то после преобразования ее к формату Microsoft Access 97 может потребоваться выполнить операцию исправления некорректных ссылок. Кроме того, если в базе данных Access используются надстройки или библиотечные базы данных, которые были созданы в Access 2000, их также нужно преобразовать к формату Access 97.

См. сведения о преобразовании базы данных Access 2000 к формату Access 97.


Открытие учебной базы данных «Борей»

  1. Запустите Microsoft Access.

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

  3. Выберите в списке База данных Борей.

  4. Если база данных «Борей» еще не установлена, нажмите кнопку Да, чтобы установить ее.

Примечания

  • Если Access уже открыт, можно выбрать команду Открыть из меню Файл любого окна, а затем перейти к учебной базе данных «Борей». Обычно она располагается в папке Program Files\Microsoft Office\Office\Samples. Если какая-то база данных уже открыта, Access закрывает ее перед открытием очередной базы данных.

  • Если учебная база данных «Борей» отсутствует в диалоговом окне запуска или в папке Samples, следует установить базу данных «Борей».

  • Для получения сведений о базе данных «Борей» нажмите кнопку [image] .

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


Учебные базы данных Microsoft Access

Примеры и дополнительные сведения см. в учебной базе данных «Борей»

Базу данных «Борей» рекомендуется использовать для первичного ознакомления с Microsoft Access. База данных «Борей» содержит сведения о деятельности вымышленной торговой компании «Борей», занимающейся импортом и экспортом деликатесов по всему миру. Просмотр таблиц, запросов, форм, отчетов, макросов и модулей, включенных в базу данных «Борей», позволяет лучше понять, как следует организовать собственные базы данных Access. Кроме того, содержащиеся в базе данных «Борей» сведения позволяют потренироваться в работе с Access перед началом работы с собственными данными. Например, полезно поучиться создавать запросы, используя таблицу «Заказы», поскольку в этой таблице содержится достаточно данных для разработки самых разнообразных запросов.

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

Инструкции по открытию базы данных «Борей».

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


Подключение к службам технической поддержки Майкрософт

При возникновении вопросов, касающихся программ Office, сначала обратитесь к помощнику, а затем к руководству Microsoft Office 2000 Resource Kit или файлу Readme соответствующей программы. Если нужные сведения найти не удалось, их можно получить из технических ресурсов, перечисленных в следующем списке.

Службы технической поддержки Microsoft

Узел обновления Microsoft Office. Регулярно обновляемый Web-узел, предоставляющий сведения и ответы на вопросы о продуктах семейства Office. См. сведения о Web-узле обновления Microsoft Office.

Microsoft Knowledge Base. Сведения о продуктах Microsoft для инженеров служб поддержки и для пользователей. См. сведения о базе данных Microsoft Knowledge Base.

Microsoft Software Library. Данный ресурс обеспечивает бесплатную загрузку через Интернет двоичных файлов для всех продуктов корпорации Майкрософт. См. сведения о Microsoft Software Library.

Компакт-диски Microsoft TechNet и Microsoft Developer Network. Компакт-диски, содержащие исчерпывающие сведения для поддержки продуктов Майкрософт, подробные сведения по программированию и инструментальные средства. См. сведения о Microsoft TechNet и Microsoft Developer Network.

Издательство Microsoft Press. Издательство Microsoft Press предлагает учебные и технические материалы по продуктам Майкрософт. См. сведения о Microsoft Press.

Microsoft Download Service. С помощью этой службы можно получить образцы программ, пакеты исправлений и пособия по программированию. См. сведения о службе Microsoft Download Service.

FastTips. Автоматизированная бесплатная служба, предоставляющая круглосуточно и без выходных быстрые ответы на общие технические вопросы. См. сведения о службе FastTips.


 Термины

Термины

А | Возврат в начало
абсолютное размещение автозамена имен автоматически обновляемая связь автоформат адрес гиперссылки адресуемая база данных | адресующая база данных активные серверные страницы анонимная реплика аргумент аргумент макрокоманды
Б | Возврат в начало
база гиперссылки база данных база данных Microsoft Access база данных Microsoft Knowledge Base база данных ODBC база данных SQL байтовый тип бегущая строка библиотека объектов | библиотека Microsoft Software Library библиотека динамической компоновки (DLL) библиотека динамической компоновки (DLL) библиотека типов библиотечная база данных битовая маска бланк запроса блокировка
В | Возврат в начало
ввод данных для фильтра верхний колонтитул (отчеты) верхний колонтитул (формы) видимость владелец внедрение внешнее объединение внешний ключ внешняя таблица с ключом внешняя база данных внешняя таблица внутреннее объединение время выполнения | время компиляции всплывающая подсказка «Что это такое?» всплывающая подсказка встроенная константа встроенная панель инструментов встроенное размещение выбранный элемент управления ВыводНаЭкран выключатель выражение вычисляемое поле вычисляемый элемент управления
Г | Возврат в начало
генерируемые сервером файлы HTML гиперссылка гипертекстовый язык разметки HTML главная таблица главная форма глобальная реплика глобальное контекстное меню | глобальный уникальный идентификатор (GUID) графический формат JPEG группа «Admins» группа «Users» группа макросов группа параметров
Д | Возврат в начало
денежное поле дерево вызовов дескриптор диаграмма диалоговое окно настраиваемых свойств динамический HTML (DHTML) | динамический обмен данными (DDE) динамический обмен данными (DDE) документ (DDE) документ (Outlook) драйвер клавиатуры
Е-Ж | Возврат в начало
журнал
З | Возврат в начало
заголовок группы заголовок отчета заголовок формы заготовка программы закрепленная запись заполнение запрос SQL запрос к серверу запрос на выборку запрос на добавление записей запрос на изменение | запрос на обновление запрос на объединение запрос на создание таблицы запрос на удаление записей запрос с параметрами запрос запуск по месту защита на уровне пользователей защищенная рабочая группа значение значение Empty значение по умолчанию
И | Возврат в начало
идентификатор (Visual Basic) идентификатор (выражения) импорт имя класса (OLE) имя класса индекс списка индекс индикатор развертывания | инструкция/строка SQL инструкция Интернет интерфейс программирования приложений Windows (API) интрасеть источник данных ODBC источник записей итоговый запрос
К | Возврат в начало
канал связи DDE каскадное обновление каскадное удаление каскадные события клавиши быстрого вызова клавиши доступа класс клиент/сервер клиент клиентская и серверная часть приложения ключевое слово кнопка «Анализ» кнопка «Вид» кнопка «Группы» кнопка «Новый объект» кнопка «Объекты» кнопка «Оформление» кнопка «Построить» кнопка «Сетка» кнопка «Тип запроса» кнопка «Толщина линии/границы» кнопка «Что это такое?» кнопки «Связи с Office» кнопки перехода код рабочей группы (WID) кодировка ASCII (American Standard Code for Information Interchange) команда «Call Stack» (меню «View») команда «Clear All Breakpoints» (меню «Debug») | команда «Continue» (меню «Run») команда «Definition» (меню «View») команда «End» (меню «Run») команда «Indent» (меню «Edit») команда «Microsoft Network» команда «Outdent» (меню «Edit») команда «Procedure» (меню «Insert») команда «Quick Watch» (меню «Debug») команда «Reset» (меню «Run») команда «Step Into» (меню «Debug») команда «Step Out» (меню «Debug») команда «Step Over» (меню «Debug») команда «Образец» команда объекта OLE командная строка компонент ActiveX компонент/компонент ActiveX константа конструктор запросов конструктор отчетов конструктор страниц доступа к данным конструктор таблиц конструктор форм контейнер OLE контекстное меню контрольное выражение конфликт косвенная синхронизация
Л | Возврат в начало
левое внешнее объединение ленточная форма линейка литерал личная процедура | личный код (PID) логическое выражение логическое поле локальная реплика локальный объект
М | Возврат в начало
макрокоманда макрос создания меню макрос маркер изменения размера маска ввода массив мастер межтабличная связь меню | метафайл метод модальный модуль класса модуль отчета модуль формы модуль монопольный доступ
Н | Возврат в начало
набор записей набор реплик набор символов ANSI (American National Standards Institute) надпись надстройка назначение настраиваемая панель инструментов | начальная страница недоступный элемент управления нижний колонтитул (отчеты) нижний колонтитул (формы) номер канала нормализация
О | Возврат в начало
область выделения записи область выделения отчета область выделения поля область выделения раздела область выделения столбца область выделения строки область выделения формы область данных (отчеты) область данных (формы) область заголовка команда «Toggle Breakpoint» (меню «Debug») область контрольных значений область примечаний группы область примечаний отчета обновление записей обновление записи обновление экрана обновляемый статический набор записей обозреватель общая база данных общая переменная общая строка меню объединение объект Microsoft Access объект OLE объект в режиме таблицы объект объекты базы данных объекты данных ActiveX (ADO) объекты доступа к данным (DAO) объекты репликации и Jet (JRO) обычный порядок сортировки ограничители строковых значений окно «Индексы» окно «Сортировка и группировка» (отчеты) | окно «Сортировка и группировка» (страницы доступа к данным) окно «Схема данных» окно базы данных окно запроса окно контрольных значений (Watch) окно локальных значений (Locals) окно макросов окно отчета окно проверки (Immediate) окно программы окно просмотра модели объектов окно расширенного фильтра окно свойств окно страницы доступа к данным окно таблицы окно формы оконное меню оператор сравнения оператор определение данных определяемая пользователем функция определяемый пользователем объект определяемое пользователем семейство основная реплика основная часть страницы отладка относительная ссылка относительное размещение отношение «многие-ко-многим» отношение «один-к-одному» отношение «один-ко-многим» отношение отчет ошибка выполнения ошибка синтаксиса
П | Возврат в начало
панель Outlook панель инструментов «Формат (страница)» панель инструментов «Формат» панель инструментов панель кнопок перехода панель команд кнопка панель элементов папка языка первичный ключ переключатель перекрестный запрос переменная уровня модуля переменная уровня процедуры переменная перемещаемая пиксел повторный запрос подключенная база данных подменю подмножество подтаблица подчиненная форма/отчет подчиненная форма подчиненный запрос подчиненный отчет поле (элемент управления) поле гиперссылки поле МЕМО поле номера записи поле объекта OLE поле подстановок поле со списком «Масштаб» поле со списком поле пользовательское диалоговое окно порядок сортировки последовательность перехода | построитель выражений построитель строк подключения ODBC построитель пошаговый режим правое внешнее объединение предварительный просмотр Web-страницы предварительный просмотр предложение WHERE привязка к сетке примечание формы присоединенная рамка объекта присоединенный рисунок присоединенный столбец присоединенный элемент HTML присоединенный элемент гиперссылки присоединенный элемент управления проверка условий на значение программа «Просмотр снимков» программирование объектов программируемые объекты проект Microsoft Access проект просмотр протокол ODBC (Open Database Connectivity) протокол передачи гипертекста HTTP протокол передачи файлов (FTP) процедура Function процедура Sub процедура обработки события процедура прямая синхронизация псевдоним публикация пункт всплывающая форма пустая строка пустое значение (Null) пустое поле
Р | Возврат в начало
рабочая группа разветвитель раздел данных раздел кнопок перехода раздел описаний раздел подписей раздел разделитель разрешения рамка выделения раскрывающийся список редактор Visual Basic редактор способов ввода (IME) режим (окно) | режим SQL режим конструктора режим останова режим перемещения режим перехода режим страницы режим таблицы режим формы результирующий набор записей реплика репликация репликация базы данных руководство Building Applications with Forms and Reports
С | Возврат в начало
самообъединение свободная рамка объекта свободная форма или отчет свободный элемент управления сводная форма сводный список свойства документа свойства страница доступа к данным свойства таблицы свойства формы свойство Bookmark свойство события свойство связанная таблица связывание таблиц связь (OLE/DDE) связь OLE/DDE связь, обновляемая по запросу сгруппированные элементы управления сеанс семейство сервер OLE сервер сетевая (общая) база данных сетка (режим таблицы) сетка (режим таблицы) синхронизация через Интернет синхронизация системный объект служба Microsoft Download Service снимок отчета | событие соглашения об именах объектов сопроводительный документ составной элемент управления сохраненная процедура спецификации импорта/экспорта список макрокоманд список объектов список полей список сравнение строк средство доступа OLE DB стандартные свойства элемента управления свойство по умолчанию стандартный модуль статистическая функция статистические функции по подмножеству статический набор записей столбец страница (HTML) страница (сохранение данных) страница доступа к данным с группировкой страница доступа к данным страница поиска строка (строковое значение) строка макрокоманды строка меню строка подключения строка состояния строковое выражение
Т | Возврат в начало
таблица твип текстовое поле текстовые файлы с фиксированной длиной записей текстовый запрос (Microsoft Knowledge Base) текстовый файл с разделителями текущая запись тема тип Variant тип данных «Гиперссылка» тип данных «Дата/время» тип данных «Счетчик» тип данных Decimal | тип данных Double тип данных Integer тип данных Long тип данных Object тип данных Single тип данных String тип данных типы данных для параметров запроса типы данных полей топология точечный рисунок точка останова транзакция
У | Возврат в начало
указатель «плюс» указатель справки уникальный индекс управляющий запрос уровень группировки уровень модуля уровень процедуры условие на значение | условие отбора условная константа компилятора условное выражение условное форматирование учет регистра учетная запись «Admin» учетная запись группы учетная запись пользователя
Ф | Возврат в начало
файл данных Microsoft Access файл рабочей группы файлы ASP файлы HTX файлы IDC фиксированное размещение фильтр по выделенному фильтр по форме фильтр с исключением выделенного | фильтр флажок фокус фон приложения форма формат GIF формат имен UNC формат
Ц | Возврат в начало
целостность данных
Ч | Возврат в начало
частичная реплика числовое выражение | числовое поле
Ш | Возврат в начало
шрифт
Э | Возврат в начало
экземпляр экспорт электронная таблица элемент «Набор вкладок» элемент ActiveX элемент бегущей строки элемент гиперрисунок элемент групповой фильтр | элемент переходов по записям элемент просмотра снимков элемент развертывания элемент рисунок элемент управления источников данных элемент управления, содержащий гиперссылку элемент управления
Ю | Возврат в начало
Юникод
Я | Возврат в начало
ядро базы данных Microsoft Jet ядро MSDE (Microsoft Data Engine) язык SQL (Structured Query Language) | ярлык «Дневник» (панель Outlook) ярлык «Мой компьютер» (группа «Другие папки», панель Outlook) ярлык URL
A-Z | Возврат в начало
API (интерфейс программирования приложений Windows) DHTML (динамический HTML) FTP (протокол передачи файлов) GIF (Graphics Interchange Format) GUID (глобальный уникальный идентификатор) HTML (гипертекстовый язык разметки) HTTP (протокол передачи гипертекста) IME (Input Method Editor) JPEG (графический формат) Microsoft Script Editor Microsoft Visual Basic Scripting Edition (VBScript) Microsoft Visual Basic | MSDE (Microsoft Data Engine) ODBC (Open Database Connectivity) ODBCDirect OLE DB OLE SQL (Structured Query Language) UNC (Universal Naming Convention) URL (Uniform Resource Locator) VBScript (Visual Basic Scripting Edition) Web Web-компоненты Microsoft Office
 | Возврат в начало


Включение или отключение автоматического отображения разделов справочной системы помощником

  1. Щелкните помощника.

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

  2. Нажмите кнопку Параметры.

  3. На вкладке Параметры установите или снимите флажок подбирать разделы справки.


Отображение и скрытие помощника

При работе в Microsoft Access можно временно скрыть или отобразить помощника. Также можно отключить помощника на все время сеанса работы в Access и пользоваться только окном справки. Получение справки без помощника.

Временное скрытие или отображение помощника

  • В меню Справка выберите команду Скрыть помощника или Показать помощника.

Отключение помощника на все время сеанса работы в Access

  1. В выноске помощника нажмите кнопку Параметры.

    Если выноска отсутствует, щелкните окно помощника.

  2. На вкладке Параметры снимите флажок Использовать помощника.

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

Примечание. Помощника можно удалить навсегда, заново выполнив программу установки Access. Инструкции по удалению помощника.


Выбор другого помощника

  1. Щелкните помощника.

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

  2. В выноске помощника нажмите кнопку Параметры.

  3. Перейдите на вкладку Коллекция, а затем при помощи кнопок Назад и Далее выберите нужного помощника.

Примечание. При наличии доступа к Интернету можно загрузить дополнительных помощников с Web-узла обновления Microsoft Office. Выберите в меню Справка команду Office на Web.


Включение и отключение звука в помощнике

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

  1. Щелкните помощника.

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

  2. Нажмите кнопку Параметры.

  3. На вкладке Параметры установите или снимите флажок звуковое сопровождение.


Клавиши для работы с помощником

Для выполнения большинства перечисленных ниже действий помощник должен быть включен и выведен на экран.

Сочетание клавиш | Действие
F1 при отображении помощника | Вывод на экран выноски помощника
ALT+ цифра (ALT+1 - первый раздел, ALT+2 - второй и т.д.) | Выбор раздела справки из списка, представленного помощником
ALT+СТРЕЛКА ВНИЗ | Просмотр других разделов справки
ALT+СТРЕЛКА ВВЕРХ | Просмотр предыдущих разделов справки
ESC | Закрытие сообщения помощника
F1 Помощник должен быть включен. Инструкции по включению и выключению помощника. | Получение справки от помощника
ESC | Закрытие совета


Способы получения помощи во время работы

Данный раздел содержит справочные сведения по следующим вопросам.

Получение справки от помощника

Получение справки с помощью меню Справка

Получение справки с Web-узла обновления Office

Знакомство с новыми средствами Access 2000

Дополнительные сведения

Получение справки от помощника

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

Во время работы помощник автоматически предоставляет разделы справки и советы по выполняемым задачам — даже без обращения с вопросом. Например, при разработке отчета помощник автоматически выводит названия разделов, помогающих в создании и разработке отчета.

Помощник также выводит советы по повышению эффективности использования возможностей программ Office. Для просмотра совета щелкните горящую лампочку [image] рядом с помощником.

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

Возврат в начало

Получение справки с помощью меню «Справка»

Выберите в меню Справка пункт Справка по Microsoft Access. Если помощник включен, он появится на экране. Если помощник отключен, на экране появится окно справки. Для ввода вопроса в окне справки перейдите на вкладку Мастер ответов. Для прокрутки содержания справки перейдите на вкладку Содержание. Для поиска по конкретным словам или фразам перейдите на вкладку Указатель.

Чтобы просмотреть подсказку для команды меню, кнопки панели инструментов или области экрана, выберите в меню Справка пункт Что это такое?, а затем щелкните элемент, сведения по которому требуется просмотреть.

Чтобы просмотреть подсказку к параметру диалогового окна, нажмите в диалоговом окне кнопку с вопросительным знаком [image], а затем щелкните нужный параметр. (Если кнопка с вопросительным знаком не отображается, выделите параметр и нажмите клавиши SHIFT+F1.)

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

Возврат в начало

Получение справки с Web-узла обновления Office

Существует возможность подключения к Web-узлу обновления Microsoft Office и другим Web-узлам корпорации Майкрософт прямо из любой программы Office. Для этого используется команда Office на Web из меню Справка. Например, можно получить доступ к службам технической поддержки и загрузить бесплатные расширения продукта - и все это без выхода из программы Office, в которой ведется работа.

Возврат в начало

Знакомство с новыми средствами Access 2000

Новые возможности Access 2000 и советы по их применению в работе облегчают использование данного продукта.

Возврат в начало

Дополнительные сведения

Подключение к службам технической поддержки корпорации Майкрософт

Получение подсказок и справочных сообщений от помощника по Office

Получение справки без помощника

Возврат в начало


Получение справки без помощника

Для получения справки без помощника необходимо его отключить. Инструкции по отключению помощника.

  1. В меню Справка выберите команду Справка по Microsoft Access.

    Если вкладки Содержание, Мастер ответов и Указатель не отображаются, нажмите кнопку Показать Элемент развертывания.

  2. В окне справки выберите одну из следующих вкладок.
Вкладка | Назначение
Содержание | Просмотр содержания справочной системы.
Мастер ответов | Ввод вопроса о программе Office.
Указатель | Поиск по конкретным словам или фразам либо выбор из списка ключевых слов. Добавляя или удаляя ключевые слова в условиях поиска, можно управлять списком найденных разделов. Таким образом можно сужать поиск до тех пор, пока в списке не останутся только нужные разделы и ключевые слова.


 Получение справки по конкретным областям страницы доступа к данным в режиме страницы

Получение справки по конкретным областям страницы доступа к данным в режиме страницы

Разделы справки по Microsoft Access описывают общие способы просмотра страниц доступа к данным и работы с ними; однако авторы страниц могут предоставлять справочные сведения, относящиеся к конкретной просматриваемой странице. Например, на страницу могут быть добавлены собственно инструкции, либо специальная кнопка «Справка» или гиперссылка на справочные сведения о странице.

Страница доступа к данным также может включать компоненты с собственной встроенной справкой. Например, сводный список или электронная таблица имеют собственную справку, описывающую приемы работы с соответствующим компонентом страницы.

Откройте страницу доступа к данным в режиме страницы и выполните одно из следующих действий.

  • Для получения справки о сводном списке или электронной таблице нажмите кнопку Справка [image] на панели инструментов сводного списка или электронной таблицы.

  • Чтобы вывести справку по Microsoft Access, закройте окно справки по электронной таблице или сводному списку, а затем нажмите кнопку Справка [image] на панели инструментов в верхней части страницы доступа к данным.

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


 Получение справки по редактору сценариев Microsoft Script Editor на странице доступа к данным

Получение справки по редактору сценариев Microsoft Script Editor на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора или в режиме страницы.

  2. В меню Сервис выберите команду Макрос и подкоманду Редактор сценариев.

  3. В редакторе сценариев Microsoft Script Editor вызовите меню Help и выполните одно их следующих действий:
    • Для ознакомления с содержанием справки Microsoft Script Editor выберите команду Contents.

    • Для поиска сведений в справке Microsoft Script Editor с помощью списка ключевых слов выберите команду Index.

    • Для поиска в справке Microsoft Script Editor любых слов выберите команду Search.

Примечание. Редактор сценариев Microsoft Script Editor не работает с Microsoft Windows Terminal Server.


Печать раздела справки

Печать текущего раздела

  1. Нажмите кнопку Печать [image].

  2. Выберите нужные параметры печати.

Печать набора разделов

  1. Выберите вкладку Содержание.

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

  2. Выделите заголовок раздела, который требуется распечатать, а затем нажмите кнопку Печать [image].

  3. Выполните одно из следующих действий.

    Чтобы распечатать текущий раздел, выберите вариант Напечатать текущий раздел.

    Чтобы распечатать все разделы под выделенным заголовком, выберите вариант Напечатать все содержимое текущего заголовка.

  4. Выберите нужные параметры печати.


Изменение шрифтов и цвета фона в разделе справки

Предполагаемые действия

Изменение цветов текста и фона в разделе справки

Изменение шрифта в разделе справки

Повышение доступности Access

Не можете сделать выбор?


 Изменение шрифтов и цвета фона в разделе справки

Изменение шрифтов и цвета фона в разделе справки

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

Возврат в раздел Изменение шрифтов и цвета фона в окне справки.


Изменение цветов текста и фона в разделе справки

  1. В окне справки по Microsoft Access нажмите кнопку Параметры [image], а затем выберите команду Параметры Интернета.

  2. На вкладке Общие нажмите кнопку Оформление, а затем установите флажок Игнорировать цвета, указанные на Web-страницах.

  3. Нажмите кнопку OK.

  4. На вкладке Общие нажмите кнопку Цвета и выберите нужные параметры.


Изменение шрифта в разделе справки

  1. В окне справки по Microsoft Access нажмите кнопку Параметры [image], а затем выберите команду Параметры Интернета.

  2. На вкладке Общие нажмите кнопку Оформление, а затем установите флажок Игнорировать шрифты, указанные на Web-страницах.

  3. Нажмите кнопку OK.

  4. На вкладке Общие нажмите кнопку Шрифты и выберите нужные параметры.


Получение информации о программе и компьютере пользователя

  1. В меню Справка Microsoft Access выберите команду О программе.

    На экране появится диалоговое окно О программе Microsoft Access.

  2. Для просмотра сведений о компьютере, нажмите в этом диалоговом окне кнопку О системе.


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

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

Просмотр контекстной справки для команд меню, команд контекстного меню, кнопок панели инструментов и других элементов экрана

  1. Выберите в меню Справка команду Что это такое?. Указатель превратится в указатель со знаком вопроса.

  2. Щелкните элемент, по которому нужно получить справку.

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

  1. Для получения справки по конкретному параметру нажмите кнопку со знаком вопроса [image]. Указатель превратится в указатель со знаком вопроса.

  2. Щелкните параметр, по которому нужно получить справку.

Совет. Кнопка контекстной справки Что это такое? может быть добавлена на панель инструментов. Кнопка Что это такое? расположена в категории Окна и справка на вкладке Команды диалогового окна Настройка (щелкните правой кнопкой любую панель инструментов и выберите пункт Настройка).


Получение подсказок и справочных сообщений от помощника по Office

Предполагаемые действия

Скрытие, отображение или отключение помощника

Включение или отключение автоматического отображения разделов справочной системы помощником

Вывод на экран сообщений с использованием или без использования помощника

Вывод на экран совета дня при запуске Microsoft Access

Не можете сделать выбор?


Вывод на экран совета дня при запуске Microsoft Access

  1. Щелкните помощника.

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

  2. Нажмите кнопку Параметры.

  3. На вкладке Параметры установите флажок Отображать полезный совет при запуске.


Вывод на экран сообщений с использованием или без использования помощника

  1. Щелкните помощника.

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

  2. Нажмите кнопку Параметры.

  3. На вкладке Параметры установите или снимите флажок Отображать сообщения помощника.


Получение подсказок и справочных сообщений от помощника по Office

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

Подбор разделов справки. Помощник подбирает раздел справки, относящийся к конкретной выполняемой задаче, даже до обращения за справкой.

Сообщения. Когда помощник включен, сообщения приложения и системы по умолчанию отображаются в выноске помощника. При желании можно выбрать просмотр сообщений в диалоговых окнах. Для этого следует отключить помощника. Инструкции по отключению помощника.

Возврат в раздел Получение подсказок и справочных сообщений от помощника по Office


 Устранение неполадок при работе с паролями

Устранение неполадок при работе с паролями

Не удается удалить собственный пароль

Удалить пароль может только пользователь, имеющий учетную запись администратора (член группы «Admins», которая управляет системой защиты в рабочей группе). Пользователь, забывший или потерявший свой пароль, должен обратиться для удаления пароля к администратору.


Устранение неполадок при поиске и открытии файлов

Возникающие вопросы

Файл находится на диске или в папке, установленной в диалоговом окне Открытие файла базы данных, но он не выводится на экран

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

Не удается открыть файл в Интернете

Требуется открыть файл HTML в Access, но он открывается в другой программе Office


 Устранение неполадок при сжатии базы данных Access или проекта Access

Устранение неполадок при сжатии базы данных Access или проекта Access

Существуют следующие причины, по которым сжатие базы данных Microsoft Access или проекта Microsoft Access невозможно.

  • На диске не хватает места для исходной и сжатой версий базы данных или проекта Access. Удалите ненужные файлы и повторите операцию.

  • У пользователя отсутствуют разрешения на открытие/запуск базы данных и на ее открытие в монопольном режиме. Если вы не являетесь владельцем этой базы данных, обратитесь к ее владельцу, чтобы выяснить, как получить любые из упомянутых разрешений на все таблицы этой базы данных. Если вы являетесь владельцем этой базы данных, обновите разрешения на доступ.

  • База данных Access или проект Access открыты другим пользователем.

  • База данных Access или проект Access расположены на общем сетевом диске, предназначенном только для чтения, либо для соответствующего файла установлен атрибут «Только чтение».


Устранение неполадок при преобразовании баз данных Access

При преобразовании большинства баз данных предыдущих версий Microsoft Access к формату Microsoft Access 2000 не возникает никаких сложностей. Однако в некоторых случаях возможны конфликты новых средств с существующими объектами и программами.

Преобразование базы данных предыдущей версии

Идентификатор как причина ошибки

Невозможно откомпилировать программу

В условиях запроса значения дат или времени возвращают различные результаты

Преобразование базы данных, созданной в Microsoft Access версии 2.0

Изменение полей отчета при преобразовании из Microsoft Access версии 2.0

Процедура как причина ошибки

Переполнение памяти при преобразовании большой базы данных

Невозможно преобразовать вызовы 16-разрядного API

Невозможно преобразовать специальные элементы управления

Превышение в таблице ограничения на 32 индекса

Ошибка ODBC при открытии формы или отчета преобразованной базы данных

Преобразование баз данных Microsoft Access 2000 к формату Microsoft Access 97

Отсутствует по крайней мере одна библиотека объектов Access 97


 Устранение неполадок с редактированием данных в полях в режимах таблицы или формы

Устранение неполадок с редактированием данных в полях в режимах таблицы или формы

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

  • Поля типа «Счетчик». Если поле имеет тип данных «Счетчик» в базе данных Microsoft Access или тип данных numeric с заданным свойством Identity в проекте Microsoft Access, то Access автоматически вводит в это поле число для каждой добавляемой записи. Поля этого типа часто используются в качестве кода записи или первичного ключа. При добавлении пользователем новой записи Access автоматически вводит в это поле значение, которое пользователь не может изменить.

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

  • Блокированные или недоступные поля. Если для элемента управления в форме свойство Блокировка (Locked) имеет значение Да или свойство Доступ (Enabled) имеет значение Нет, то содержимое поля изменить нельзя.

  • Поля в блокированной записи. Если база данных Access используется в многопользовательской среде, и запись заблокирована другим пользователем, изменение данных в этой записи невозможно. При переходе к блокированной записи в области выделения записи выводится маркер [image] .

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

  • Поля в форме, открытой только для чтения, или в блокированной базе данных. Если свойство Разрешить изменения (AllowEdits) используемой формы имеет значение Нет или базовый источник данных доступен только для чтения, либо блокирован другим пользователем, данные в форме изменять нельзя.

Возможны трудности с вводом дат в поля с типом данных «Дата/время». При вводе дат в формате с разделением косой чертой (/) не вводите косую черту в конце. Например, дата 1/3 является допустимой, а 1/3/ недопустимой.


Устранение неполадок при поиске и замене текста

Вопросы

Не удается найти или заменить существующий текст

Не удается найти или заменить текст в поле с маской ввода


Устранение неполадок с фильтрами в таблицах, запросах и формах

Возникающие вопросы

Фильтр не возвращает требуемый набор записей

В фильтре не выполняется сортировка записей в правильном порядке

Не удается использовать существующий запрос в качестве фильтра

Недоступны некоторые поля в окне обычного фильтра

Для отображения некоторых или всех списков в окне фильтра требуется слишком много времени

Отсутствует список значений для одного или нескольких полей в окне фильтра

Был создан фильтр в подчиненной форме, записи которой синхронизованы с главной формой, но фильтр не влияет на главную форму

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


Устранение неполадок при просмотре данных или изменении объектов базы данных Access в многопользовательской среде

Возникающие вопросы

Трудности при сохранении изменений сетевой (общей) базы данных Microsoft Access

Не удается изменить структуру таблицы

Не удается просмотреть данные в таблице

Не удается открыть объект базы данных


Устранение неполадок при вставке данных

Возникающие вопросы

Не удается вставить данные

Данные вставляются в неверное поле


Устранение неполадок при работе с подтаблицами

Не удается просмотреть внешний ключ или совпадающие поля в подтаблице

Таблица, содержащая подтаблицу, выглядит не так, как при последнем сохранении

В подтаблице отображаются одни и те же данные для каждой строки таблицы

При добавлении подтаблицы в запрос базы данных Microsoft Access поле Основные поля пусто

Между двумя таблицами базы данных Access определена связь, но подтаблица не отображается


Устранение неполадок при работе с запросами на выборку

Вопросы

Возвращаются не те записи

Записи возвращаются в неверном порядке

Возвращаются не те столбцы

Неверные вычисления в запросе

Не удается обновить данные в запросе

Не выполняется автоматический ввод данных в запросе с автоподстановкой

Требуется помощь в указании условий отбора

Microsoft Access автоматически выполняет объединение таблиц или запросов в бланке запроса, когда объединение выполнять не требуется

Получено сообщение «Запрос содержит неоднозначные внешние связи»

Получено сообщение об несогласованности типов

Запрос выполняется слишком медленно

Приглашение на ввод параметров выводится не там, где нужно


Устранение неполадок при работе с запросами на добавление

Возникающие проблемы

Возвращаются не те записи

Неверные вычисления в запросе

Данные добавляются не в те или не из тех полей

Возвращается сообщение о нарушении уникальности ключа

Возвращается сообщение о нарушении условий на значение

Возвращается сообщение об ошибке s_Generation

Требуется помощь в указании условий отбора

Запрос выполняется слишком медленно


Устранение неполадок при работе с перекрестными запросами

Вопросы

Заголовки столбцов выводятся не в том порядке или некоторые из них являются лишними

Один или несколько столбцов имеют заголовок «< >»

Получено сообщение «Невозможно присоединить имя имя»

В заголовках строк или столбцов выводятся неверные значения полей

Возвращаются не те записи

Записи возвращаются в неверном порядке

Возвращаются не те столбцы

Неверные результаты вычислений

Требуется помощь в указании условий отбора в запросе

Не удается обновить данные в запросе

Запрос выполняется слишком медленно


Устранение неполадок при работе с запросами на удаление

Возникающие проблемы

Возвращаются не те записи

Запрос на удаление удаляет записи не из той таблицы

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

Требуется помощь в указании условий отбора

Возвращается сообщение о нарушении уникальности ключа

Запрос выполняется слишком медленно


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

Возникающие проблемы

Возвращаются не те записи

Записи возвращаются в неверном порядке

Возвращаются не те столбцы

Неверные вычисления в запросе

Требуется помощь в указании условий отбора

Запрос выполняется слишком медленно


Устранение неполадок при работе с запросами с параметрами

Возникающие проблемы

Приглашение на ввод параметров выводится не там, где нужно

Требуется параметр, обеспечивающий возвращение в запросе с параметрами всех записей

Получено сообщение «Невозможно присоединить имя имя»

Выдается сообщение «Слишком мало параметров» (Too few parameters expected)


Устранение неполадок при работе с запросами на обновление

Возникающие проблемы

Записи в запросе обновляются не так, как требуется

Возвращаются не те записи

Требуется помощь в указании условий отбора

Арифметические операции определенные в бланке запроса, возвращают пустые (Null) значения

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

Возвращается сообщение о нарушении уникальности ключа

Возвращается сообщение о нарушении условий на значение

Требуется справка о возможности обновления данных в запросе

Запрос выполняется слишком медленно


Устранение неполадок с формами

Возникающие вопросы

Общие сведения о формах

Выводится пустая форма. Почему не удается вывести данные?

Не удается изменить данные в форме

Вывод данных из нескольких таблиц

Повышение быстродействия формы

В элементе управления выводятся сообщения «#Ошибка?» или «#Имя?»

Требуется помощь при создании в форме списков и полей со списком

Требуется помощь при создании в форме подчиненной формы

Требуется помощь при создании в форме группы параметров

Требуется помощь при создании в форме рисунков и других объектов OLE


Устранение неполадок при работе с окнами свойств в формах и отчетах

Возникающие вопросы

Появляется пустое окно свойств для выбранного элемента управления

В окне свойств отображаются не все свойства для выделенных элементов управления

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

Значения свойств для связанного элемента управления не соответствуют значениям свойств для поля таблицы в режиме конструктора

Не удается открыть окно свойств в режиме формы или таблицы


 Устранение неполадок при сортировке и группировке в отчете

Устранение неполадок при сортировке и группировке в отчете

Возникающие вопросы

В базе данных Microsoft Access (.mdb) или в проекте Microsoft Access (.adp):

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

Записи в группах не сортируются

Требуется напечатать заголовок группы в одной строке с первой записью из области данных группы

Требуется скрыть повторяющиеся значения при печати группы

В базе данных Microsoft Access:

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


Устранение неполадок при работе со сводной формой

Возникающие вопросы

Часть данных сводной формы уходит за край окна, но нет полос прокрутки, позволяющих вывести эти данные на экран

При нажатии кнопки для изменения сводной формы Microsoft Excel не позволяет вносить изменения

В сводной форме не выводятся текущие данные. Как их обновить?

При открытии Microsoft Excel не через форму, содержащую объект сводной таблицы, не удается найти сводную форму


Устранение неполадок при работе с подчиненными формами

Общие сведения о подчиненных формах

В подчиненной форме выводятся все записи. Записи не изменяются при переходе от записи к записи в главной форме

При попытке вывести в главной форме записи из подчиненной формы возвращаются сообщения «#Ошибка?» или «#Имя?»

Не удается вывести заголовок и примечание для подчиненной формы в режиме таблицы

Подчиненная форма работает слишком медленно. Как повысить быстродействие?


Устранение неполадок с диаграммами в формах и отчетах

Возникающие вопросы

Не сохраняются изменения диаграммы в форме или отчете

При попытке вывести диаграмму в форме или отчете получено сообщение «Невозможно присоединить имя имя»

Диаграмма в форме или отчете отображается как недоступная или пустая

Не удается изменить формат подписей на диаграмме в форме или отчете

Не удается вывести столбцы на диаграмме в нужном порядке в форме или в отчете


Устранение неполадок со страницами доступа к данным

Работа с файлами и ссылками

Хранение вспомогательных файлов страницы доступа к данным вне папки

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

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

Трудности с автоматическим созданием резервной копии страницы доступа к данным

Имя вспомогательной папки страницы доступа к данным написано на другом языке

Пользователям не удается открыть мою интерактивную страницу доступа к данным

Не удается открыть собственную страницу доступа к данным

Работа с графикой

На странице доступа к данным отображается красный крестик, пустой рисунок или вообще нет рисунков

На другом компьютере рисунки и текст страницы доступа к данным выглядят по-другому

Выбор языка

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

Дополнительные сведения

Инструкции по публикации страниц доступа к данным и других Web-страниц в Access


Устранение неполадок при открытии страниц доступа к данным

Возникающие вопросы

Трудности при просмотре страницы доступа к данным

Не удается найти файл HTML, относящийся к странице доступа к данным

Требуется открыть файл HTML в Access, но он открывается в другой программе Office


Устранение неполадок при проектировании страниц доступа к данным

Вопросы

Записи не сортируются нужным образом

Символ валюты евро не отображается в денежном поле на странице доступа к данным

Получено одно из следующих сообщений

«Недопустимое выражение»

«Неопределенная функция в выражении»

«Введенное значение не подходит для данного свойства»

«Недопустимый аргумент»

«Недопустимое свойство "Сортировка по умолчанию" (DefaultSort)»

«Мастера в настоящий момент недоступны»


Устранение неполадок при работе со страницами доступа к данным в режиме страницы

Возникающие вопросы

Отсутствуют кнопки на панели перехода по записям

Поля на странице доступа к данным пусты

Трудности при редактировании данных в полях в режиме страницы

Страница доступа к данным была отправлена в виде сообщения электронной почты, но получатель не смог ее прочесть

Получено сообщение об ошибке при попытке ввода данных в режиме страницы

Примечание. Страница доступа к данным может содержать сводный список или электронную таблицу, устранение неполадок при работе с которыми описано отдельно. Для получения дополнительных сведений нажмите кнопку Справка [image] на панели инструментов сводного списка или электронной таблицы и выполните поиск по ключевым словам «устранение неполадок».


Устранение неполадок при работе с группами элементов управления в форме или отчете

Возникающие вопросы

Не удается сгруппировать текстовые поля или другие элементы управления.

Не удается разгруппировать выделенные поля или другие элементы управления.


Устранение неполадок при условном форматировании текстового поля и других элементов управления в форме или отчете

Возникающие вопросы

Условное форматирование, примененное к элементу управления, не работает так, как предполагалось

Access не применяет должным образом условное форматирование к элементу управления в форме или отчете


Устранение неполадок при работе со списками, раскрывающимися списками и полями со списком

Общие сведения о списках

Общие сведения о полях со списком и раскрывающихся списках

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

В поле со списком выводятся данные из неверного столбца. Как вывести данные из другого столбца?

При выборе значения из списка это значение исчезает или выводится сообщение

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

В поле со списком или раскрывающемся списке выводится сообщение «#Ошибка?», либо поле со списком или раскрывающийся список оказывается пустым

Требуется ссылка на столбец списка или поля со списком, отличный от присоединенного столбца.

Не удается ввести новое значение в поле со списком.

Значение, введенное в поле со списком, не добавляется в список?

Список, раскрывающийся список или поле со списком работает слишком медленно. Как повысить быстродействие?


Устранение неполадок при работе с группой параметров

Общие сведения о группах параметров

В группу добавлен флажок, выключатель или переключатель, но группа не работает


Устранение неполадок при работе с рисунками и другими объектами OLE в формах и отчетах

Общие сведения о различиях между свободной и присоединенной рамкой объекта или между внедренными и связанными объектами

При попытке открыть связанный или внедренный объект двойным щелчком возвращается сообщение о невозможности открыть файл

Требуется вывести в форме или отчете содержимое объекта, но вместо этого выводится только значок

Рисунок искажается при изменении его размеров

Искажение цветов на рисунке или в форме

Увеличение размера базы данных на величину, значительно превышающую размер добавленного объекта


Устранение неполадок при работе с выражениями

Возникающие вопросы

Общие сведения о работе с выражениями

Аргумент, определяющий условие в функции DLookup или в другой статистической функции по подмножеству, дает неверные результаты

Неверные результаты при попытке объединить в выражении значения элементов управления, полей, переменных или строк

Неверные результаты при попытке выполнить действия над полями, содержащими пустые значения

Неверные результаты при попытке ввести значение даты в выражение

Неверные результаты при ссылке на свойство или элемент управления подчиненной формы или отчета

Неверные результаты при ссылке на столбец в списке или в поле со списком

Инструкции по преобразованию текста таким образом, чтобы первые буквы были прописными, а остальные строчными


Устранение неполадок при работе с макросами

Возникающие вопросы

Общие сведения о работе макросов

Инструкции по определению места возникновения неполадок в макросе

С каким событием следует связать макрос для выполнения нужных действий?

Инструкции по временному отключению макрокоманды в макросе

Аргумент «Условие отбора» макрокоманды «ОткрытьФорму» (OpenForm) или «ОткрытьОтчет» (OpenReport) дает неверные результаты

Макрокоманда «ЗапускПрограммы» (RunCode) не запускает модуль Visual Basic

При выполнении макроса Microsoft Access выводит ненужное сообщение

Макрокоманда «КомандыКлавиатуры» (SendKeys) используется в макросе для передачи нажатий клавиш в диалоговое окно, но нажатия клавиш не передаются


Устранение неполадок при работе с модулями Visual Basic

Возникающие вопросы

Инструкции по определению места возникновения неполадок в программе Visual Basic

Аргумент, определяющий условие в функции DLookup или в другой статистической функции по подмножеству, дает неверные результаты

При выполнении программы Microsoft Access выводит ненужное сообщение

Инструкции по использованию Microsoft Visual Basic для добавления новой записи в таблицу

Процедура дает неверные результаты при вызове одного из методов Find

Проверка работы процедуры Function или Sub

Получено сообщение «Процедура Sub или Function не определена» при попытке вызвать функцию IsLoaded

Получено сообщение «Метод или компонент данных не найден» при ссылке в программе на поле в таблице

Инструкции по изменению базовой инструкции SQL запроса с помощью Visual Basic


 Устранение неполадок при работе со связанными таблицами в базе данных Microsoft Access

Устранение неполадок при работе со связанными таблицами в базе данных Microsoft Access

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

Вопросы

Не удается открыть или обновить связанную таблицу Microsoft Visual FoxPro или dBASE.

Не удается открыть или обновить связанную таблицу Paradox.

Не удается открыть или обновить связанную таблицу SQL.

Изменение результатов запросов в связанных таблицах.

Изменение результатов фильтров в связанных таблицах?

При попытке открыть связанную таблицу получено сообщение «Не удается найти файл '<имяФайла>'»


Устранение неполадок при импорте текста или электронной таблицы

Возникающие вопросы

При импорте электронной таблицы или текстового файла появляются сообщения об ошибках

При добавлении данных из электронной таблицы или текстового файла в существующую таблицу появляются сообщения об ошибках


 При открытии таблицы или формы преобразованной базы данных выдается сообщение об ошибке ODBC

При открытии таблицы или формы преобразованной базы данных выдается сообщение об ошибке ODBC

Сообщение об ошибке при подключении к источнику данных ODBC появляется, если таблица базы данных, преобразованной из Microsoft Access версии 1.x или 2.0, связана с источником данных ODBC, использующим 16-разрядную версию диспетчера драйверов и самого драйвера. В Microsoft Access 2000 могут быть открыты только связанные источники данных ODBC, использующие 32-разрядную версию диспетчера драйверов ODBC (Odbc32.dll) и соответствующий драйвер ODBC — например, 32-разрядная версия драйвера ODBC Microsoft SQL Server (Sqlsrv32.dll).

Для разрешения данной проблемы для каждого источника данных ODBC, связанного с исходной базой данных версий 1.x или 2.0, необходимо создать соответствующее имя 32-разрядного источника данных (DSN).

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

  2. Дважды щелкните значок 32bit ODBC в Microsoft Windows 95 или более поздней версии, либо значок ODBC в Microsoft Windows NT Workstation версии 4.0 или более поздней.

  3. Создайте новый источник данных (DSN), введя значения параметров, идентичные исходным параметрам источника данных. Например, для Microsoft SQL Server необходимо определить по крайней мере значения полей Data Source Name и Server, но может также потребоваться определение дополнительных параметров, например, имени базы данных в поле Database Name.Дополнительные сведения об источниках данных.

Если исходное имя источника данных неизвестно, откройте исходную базу данных в той версии Microsoft Access, в которой она была создана, откройте в режиме конструктора связанную таблицу и выведите на экран окно Свойства таблицы. В ячейке свойства Описание (Description) содержится описание строки подключения ODBC. Параметр, следующий за символами DSN= в строке подключения определяет имя источника данных. Для просмотра остального описания источника данных откройте панель управления Windows, дважды щелкните значок ODBC (не значок 32bit ODBC). В списке Data Source (Driver) выберите имя источника данных, а затем для просмотра описания источника данных нажмите кнопку Setup.


Устранение неполадок при печати и просмотре снимков отчетов

Возникающие вопросы

Не удается открыть снимок отчета

При печати снимка отчета получился не отчет, а Web-страница

Не удается переслать снимок отчета в сообщении электронной почты


Код регистрации

После получения и проверки сведений, предоставленных при регистрации, корпорация Майкрософт возвращает пользователю код регистрации тем же способом, который был использован для регистрации (исключение составляет регистрация через Интернет, при которой код регистрации не нужен). При следующем запуске Microsoft Access или другого приложения Microsoft Office на экран выводится приглашение ввести код регистрации для завершения процесса регистрации. Если ко времени повторного запуска Access или Office код регистрации не получен, существует возможность завершить процесс регистрации по телефону.


Невозможно зарегистрировать Microsoft Access или Microsoft Office

Возможно, предложение зарегистрироваться было отклонено. В некоторых странах регистрация не обязательна. Если регистрация не обязательна, при первом запуске Access или другого приложения Office пользователь имеет возможность заполнить электронную регистрационную форму и вернуть ее в корпорацию Майкрософт с использованием подключения к Интернету или электронной почте. При отсутствии подключения к Интернету или электронной почте форму можно распечатать и отправить в корпорацию Майкрософт по факсу или обычной почтой. Кроме того, можно зарегистрироваться по телефону, следуя инструкциям мастера регистрации Office. Единственная возможность заполнить электронную регистрационную форму предоставляется при первом запуске Access или другого приложения Office. В случае отказа зарегистрироваться в этот момент единственным доступным способом остается регистрация через Web-узел Microsoft Office Update.

Возможно, на компьютере отсутствует настроенная учетная запись Интернета или электронной почты. Чтобы вернуть регистрационную форму в корпорацию Майкрософт в электронном виде, необходимо иметь модем и учетную запись Интернета или электронной почты. Учетную запись можно получить через поставщика услуг Интернета или через сеть организации. При отсутствии подключения к Интернету или электронной почте форму можно распечатать и отправить ее в корпорацию Майкрософт по факсу или обычной почтой. Кроме того, можно зарегистрироваться по телефону, следуя инструкциям мастера регистрации Office. Для пользователей, проживающих в регионах, где регистрация не обязательна, и отказавшихся от регистрации при первом запуске Access или другого приложения Office, единственным доступным способом регистрации остается регистрация через Web-узел Microsoft Office Update.

Возможно, сеть перегружена. Проверьте подключение к сети и повторите попытку вернуть регистрационную форму позже, когда загруженность сети снизится. Форму также можно распечатать и отправить ее в корпорацию Майкрософт по факсу или обычной почтой. Кроме того, можно зарегистрироваться по телефону, следуя инструкциям мастера регистрации Office. Для пользователей, проживающих в регионах, где регистрация не обязательна, и отказавшихся от регистрации при первом запуске Access или другого приложения Office, единственным доступным способом регистрации остается регистрация через Web-узел Microsoft Office Update.


 Генерируемые сервером файлы HTML выглядят в Web-обозревателе не так, как ожидалось

Генерируемые сервером файлы HTML выглядят в Web-обозревателе не так, как ожидалось

При экспорте таблицы в формат ASP или IDC/HTX данные, видимые при отображении конечного файла .asp или .htx в Web-обозревателе, являются фактическими данными набора записей, на котором основана таблица. По умолчанию Microsoft Access сохраняет текстовые поля и поля Memo с выравниванием по левому краю, а все прочие поддерживаемые типы данных с выравниванием по правому краю.

При выводе таблицы Microsoft Access не выводит объекты OLE или связанные значения из поля подстановок, а также игнорирует настройки свойств Порядок сортировки (OrderBy), Фильтр (Filter), Формат (Format) и Маска ввода (InputMask).

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

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

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

  • Используйте функцию Format для выбора формата полей, например «Денежный», «Дата/время» и «Логический». См. сведения по использованию функции Format.

  • Создайте запрос с автоподстановкой значений для вывода значений из списка подстановок. См. сведения о запросах с автоподстановкой.


Не отображаются команды «Сообщение» и «Сообщение (как вложение)» подменю «Отправить» (меню «Файл»)

Убедитесь, что установлена одна из следующих программ, либо обратитесь к администратору с просьбой установить соответствующую программу.

  • Microsoft Exchange

  • Microsoft Outlook 2000

  • Outlook Express версии 5.0


Устранение неполадок с копированием и вставкой нескольких объектов

Трудности при копировании дополнительных объектов в буфер обмена Office

При копировании и вставке объектов панель инструментов Буфер обмена больше не появляется

Панель инструментов Буфер обмена недоступна

Кнопка Вставить все недоступна


Устранение неполадок, связанных с собранием по сети

Возникающие вопросы

Трудности при печати на локальном принтере или сохранении на локальном диске базы данных Access, проекта Access или страницы доступа к данным, открытой на собрании по сети

Другие участники собрания по сети видят заштрихованный экран

Отсутствие некоторых объектов, доступных другим участникам собрания по сети

В списке нет имени человека, которого требуется пригласить на собрание по сети

Подключение к серверам каталогов NetMeeting


Устранение неполадок, связанных с работой помощника

Возникающие вопросы

Помощник отвлекает от работы

Помощник не выдает необходимую справку

Исчезновение сообщений помощника


Устранение неполадок при работе с панелями инструментов, строками меню или контекстными меню

Возникающие вопросы

Встроенные панели инструментов или меню исчезли с экрана. Как вернуть их обратно?

Были внесены изменения во встроенные панели инструментов Microsoft Access. Как восстановить их в исходном виде?

Была удалена команда Панели инструментов из меню Вид или было удалено меню Вид из строки меню. Как вывести на экран диалоговое окно Настройка или вернуть обратно команду Панели инструментов или меню Вид?

Возникновение проблем при вставке или восстановлении значка кнопки в меню или на панели инструментов.

Не удается настроить панель инструментов.

Панель инструментов обрезана.

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

Требуется, чтобы меню выглядели как в Microsoft Office 97.

Не удается найти команду меню, кнопку панели инструментов или параметр диалогового окна.

Требуется отменить автоматическое развертывание сокращенных меню.


Устранение неполадок, связанных с использованием личных настроек на другом компьютере

После входа в систему личные настройки оказываются недоступными

Пользовательские шаблоны отсутствуют на нужной вкладке


Устранение неполадок с гиперссылками

Не удается открыть файл в Интернете

При выборе гиперссылки появляется сообщение об ошибке


Специальные возможности Microsoft Access

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

Предполагаемые действия

Использование клавиатуры вместо мыши

Использование сочетаний клавиш

Управление связями между таблицами с помощью клавиатуры

Размещение поля или другого элемента управления в форму или отчет с помощью клавиатуры

Размещение поля или другого элемента управления на страницу доступа к данным с помощью клавиатуры

Копирование поля или другого элемента управления в форму или отчет с помощью клавиатуры

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

Настройка панелей инструментов и меню

Изменение размера всех кнопок панели инструментов одновременно

Объединение кнопок панели инструментов, строк меню или меню в группы с помощью разделителей

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

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

Изменение шрифтов и цвета фона в разделах справки

Настройка текстовых полей и других элементов управления

Создание специальных цветов для раздела или элемента управления в форме или отчете

Изменение цвета фона элемента управления или раздела

Ввод данных

Вставка повторяющихся значений в столбец с помощью клавиатуры

Автоматическое исправление вводимого текста

Дополнительные услуги

Дополнительная информация о специальных возможностях в Интернете


Специальные возможности для лиц с ограниченной трудоспособностью

Данный раздел содержит справочные сведения по следующим вопросам.

Специальные возможности в Microsoft Access

Настройка операционной системы

Сведения о службах корпорации Майкрософт в печатном виде

Специальные возможности в Microsoft Access

Для лиц с ограниченной трудоспособностью в Access существуют следующие специальные возможности:

  • просмотр и печать списков всех доступных сочетаний клавиш;

  • использование клавиатуры для определения отношений, добавления или копирования полей и других элементов управления в формах и отчетах, а также для изменения порядка столбцов в режиме таблицы;

  • создание панели управления, содержащей только кнопки и меню, наиболее часто используемые при работе с текущей базой данных или со всеми базами данных; также можно увеличить размер кнопок и сгруппировать связанные кнопки;

  • настройка меню на постоянное отображение всех команд, как в Microsoft Office 97; также имеется возможность отображения панелей инструментов в стиле Office 97;

  • создание пользовательских цветов или изменение цвета фона для раздела или элемента управления в форме или отчете;

  • быстрая вставка повторяющихся значений в столбец с помощью клавиатуры;

  • автоматическое исправление распространенных опечаток и указание списка ошибок, которые требуется исправлять при вводе с клавиатуры.

См. сведения о специальных возможностях Access.

Возврат в начало

Настройка операционной системы

Пользователи компьютеров, работающих под управлением Microsoft Windows 95, могут настраивать и изменять специальные возможности системы. Например, средство управления указателем с клавиатуры позволяет использовать цифровую клавиатуру для перемещения указателя, а также для выполнения щелчка, двойного щелчка и перетаскивания объектов. Чтобы изменить настройки специальных возможностей, нажмите клавиши CTRL+ESC для открытия меню Windows Пуск, выберите пункт Настройки, а затем Панель управления. Выберите значок Специальные возможности, с помощью клавиш CTRL+TAB перейдите на нужную вкладку, а затем используйте клавиатуру для выбора нужных параметров. Для получения справки о параметрах выделите интересующий параметр и нажмите клавиши SHIFT+F1.

При наличии доступа к Интернету можно узнать больше об использовании специальных возможностей в операционных системах и других продуктах корпорации Майкрософт.

Возврат в начало

Сведения о службах корпорации Майкрософт в печатном виде

Возврат в начало


 Сочетания клавиш

Сочетания клавиш

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

Данный раздел содержит ссылки на разделы, относящиеся к следующим областям.

Общие сочетания клавиш

Сочетания клавиш для работы с текстом и данными

Сочетания клавиш для перехода по записям

Сочетания клавиш для работы на странице доступа к данным

Какие сочетания клавиш требуется использовать?

Общие сочетания клавиш

Общие сочетания клавиш Microsoft Access

Сочетания клавиш в окне базы данных

Работа с меню

Работа с панелями инструментов

Работа в окнах и диалоговых окнах

Работа с диалоговыми окнами Открыть файл базы данных, Файл новой базы данных и Сохранение

Получение справки от помощника

Работа с окном справки

Отправка сообщений электронной почты

Возврат в начало

Сочетания клавиш для работы с текстом и данными

Выделение текста и данных

Редактирование текста и данных

Возврат в начало

Сочетания клавиш для перехода по записям

Перемещение в режиме таблицы

Перемещение в подтаблицах

Перемещение в режиме формы

Перемещение в режимах предварительного просмотра

Перемещение в окне схемы базы данных в проекте Microsoft Access

Перемещение в конструкторе запросов в проекте Access

Возврат в начало

Сочетания клавиш для работы на странице доступа к данным

Работа со страницами доступа к данным в режиме страницы

Работа со страницами доступа к данным в режиме конструктора

Работа со сводными списками

Работа с электронными таблицами

Возврат в начало

Примечание. Для получения сведений об использовании сочетаний клавиш в редакторе Visual Basic откройте редактор и запустите справку редактора Visual Basic. В окне справки нажмите клавиши CTRL+TAB, чтобы перейти на вкладку Содержание. Выделите заголовок Visual Basic User Interface Help и нажмите клавишу ENTER; выделите заголовок Shortcuts и нажмите клавишу ENTER; а затем выберите раздел, который требуется просмотреть, и нажмите клавишу ENTER.


 Копирование поля или другого элемента управления в форму или отчет с помощью клавиатуры

Копирование поля или другого элемента управления в форму или отчет с помощью клавиатуры

  1. Нажмите клавишу ALT.

  2. Нажимайте клавиши CTRL+TAB, пока фокус не переместится на поле со списком Объект на панели инструментов Формат (форма/отчет), а затем нажмите клавишу ENTER.

  3. Нажмите клавишу F4, чтобы открыть поле со списком Объект.

  4. Нажмите клавишу СТРЕЛКА ВНИЗ, чтобы выбрать нужный элемент управления, а затем нажмите клавишу ENTER.

  5. Нажмите клавиши CTRL+C, чтобы скопировать элемент управления в буфер обмена.

  6. Повторите шаги с 1 по 3, чтобы открыть поле со списком Объект.

  7. Нажмите клавишу СТРЕЛКА ВНИЗ, чтобы выбрать нужный раздел, а затем нажмите клавишу ENTER.

  8. Нажмите клавиши CTRL+V, чтобы вставить элемент управления в левый верхний угол выбранного раздела. Для вставки нескольких копий нажмите клавиши CTRL+V несколько раз.

  9. Чтобы подкорректировать расположение элемента управления с помощью настройки свойств, выделите элемент управления и нажмите клавиши ALT+В+Й для открытия окна свойств этого элемента управления. Нажмите клавиши CTRL+TAB, чтобы перейти на вкладку Все. Настройте значения свойств От левого края и От верхнего края, чтобы передвинуть элемент управления на нужное место в форме или отчете, а затем нажмите клавиши ALT+F4 для выхода из окна свойств.

    Также можно нажать клавиши CTRL+СТРЕЛКА для перемещения элемента управления вручную, или клавиши SHIFT+СТРЕЛКА для изменения размеров элемента управления. См. сведения о сочетаниях клавиш для редактирования элементов управления.


 Размещение поля или другого элемента управления на странице доступа к данным с помощью клавиатуры

Размещение поля или другого элемента управления на странице доступа к данным с помощью клавиатуры

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите клавишу ALT.

  3. Нажмите клавиши CTRL+TAB, чтобы перевести фокус на панель элементов.

    Примечание. Если панель элементов не отображается, нажмите клавиши доступа ALT+В+Э.

  4. При помощи клавиши TAB переместите курсор на нужный элемент управления.

  5. Нажмите клавиши SHIFT+ENTER, чтобы добавить элемент управления в левый верхний угол выбранного раздела.

  6. Убедитесь, что элемент управления выделен, и нажмите клавиши доступа ALT+В+Й для вывода на экран окна свойств элемента управления. Затем нажмите клавиши CTRL+TAB, чтобы перейти на вкладку Все.

  7. Подкорректируйте значения свойств От левого края (Left) и От верхнего края (Top), чтобы переместить элемент управления на нужное место в форме или отчете, а затем нажмите клавиши ALT+F4, чтобы закрыть окно свойств. Также можно нажать клавиши CTRL+СТРЕЛКА для перемещения элемента управления вручную. См. сведения о сочетаниях клавиш для редактирования элементов управления.


 Размещение поля или другого элемента управления в форме или отчете с помощью клавиатуры

Размещение поля или другого элемента управления в форме или отчете с помощью клавиатуры

  1. Нажмите клавишу ALT.

  2. Два раза нажмите клавиши CTRL+TAB, чтобы перевести фокус на панель элементов.

    Примечание. Если панель элементов не отображается, нажмите клавиши CTRL+SHIFT+F10 для вызова контекстного меню панели элементов. С помощью клавиши СТРЕЛКА ВНИЗ выберите пункт Панель элементов, а затем нажмите клавишу ENTER.

  3. При помощи клавиши TAB переместите курсор на нужный элемент управления.

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

  5. Убедитесь, что элемент управления выделен, и нажмите клавиши ALT+В+Й для вывода на экран окна свойств элемента управления. Затем нажмите клавиши CTRL+TAB, чтобы перейти на вкладку Все.

  6. Подкорректируйте значения свойств От левого края (Left) и От верхнего края (Top), чтобы переместить элемент управления на нужное место в форме или отчете, а затем нажмите клавиши ALT+F4, чтобы закрыть окно свойств. Также можно нажать клавиши CTRL+СТРЕЛКА для перемещения элемента управления вручную, или клавиши SHIFT+СТРЕЛКА для изменения размеров элемента управления. См. сведения о сочетаниях клавиш для редактирования элементов управления.

См. инструкции по копированию элемента управления формы или отчета с помощью клавиатуры


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

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

  1. Поместите курсор в поле в столбце таблицы или подтаблицы, который требуется переместить. См. сведения о перемещении по таблице или переходе между таблицей и подтаблицей.

  2. Если все поле не выделено, нажмите клавишу F2.

  3. Для выделения всего столбца нажмите клавиши CTRL+ПРОБЕЛ. С помощью сочетаний клавиш SHIFT+СТРЕЛКА ВЛЕВО и SHIFT+СТРЕЛКА ВПРАВО можно выделить более одного столбца. (Это следует сделать до перехода в режим перемещения).

  4. Для перехода в режим перемещения нажмите клавиши CTRL+SHIFT+F8.

  5. Чтобы сдвинуть столбец вправо, нажмите клавишу СТРЕЛКА ВПРАВО.

    Чтобы сдвинуть столбец влево, нажмите кнопку СТРЕЛКА ВЛЕВО.

  6. Для отключения режима перемещения нажмите клавишу ESC.


 Определение связей с помощью клавиатуры

Определение связей с помощью клавиатуры

  1. Закройте все открытые таблицы. Создавать или изменять связи между открытыми таблицами нельзя.

  2. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  3. Нажмите клавиши ALT+Е, чтобы вызвать меню Сервис, и клавишу Х, чтобы открыть окно схемы данных.

  4. Если в базе данных никаких связей не определено, будет автоматически открыто диалоговое окно Добавление таблицы. Если нужно добавить таблицы для создания связей, а диалогового окна Добавление таблицы на экране нет, нажмите клавиши ALT+Я, чтобы вызвать меню Связи, а затем клавишу Д, чтобы открыть диалоговое окно Добавление таблицы. Если нужные таблицы уже отображены в окне схемы данных, перейдите к шагу 7.

  5. В диалоговом окне Добавление таблицы выберите первую таблицу для установления связи и нажмите клавишу ENTER, чтобы добавить ее в окно схемы данных.

  6. Повторите шаг 5 для всех других таблиц, участвующих в установлении связей, и нажмите клавиши ALT+З, чтобы закрыть диалоговое окно Добавление таблицы.

  7. Нажмите клавиши ALT+Я, чтобы вызвать меню Связи, затем нажмите клавишу Я, чтобы открыть диалоговое окно Изменение связей.

  8. Нажмите клавиши ALT+Н, чтобы открыть диалоговое окно Создание.

  9. В поле Левая таблица выберите имя таблицы, которая содержит первичный ключ.

  10. В поле Правая таблица выберите имя таблицы, которая содержит внешний ключ.

  11. В поле Левый столбец выберите поле первичного ключа, а в поле Правый столбец — поле внешнего ключа.

    Связываемые поля не обязаны иметь одинаковые имена, но они должны иметь одинаковый тип данных и содержать информацию одного типа. Кроме того, когда связываются поля типа «Числовой», их свойства Размер поля (FieldSize) должны иметь одинаковые значения. Существуют два исключения из правила, требующего совпадения типов данных: можно связать поле счетчика с числовым полем, свойство Размер поля (FieldSize) которого установлено в значение Длинное целое; также, поле счетчика можно связывать с числовым полем, если для обоих полей свойство Размер поля (FieldSize) имеет значение Код репликации.

  12. Нажмите клавишу ENTER.

  13. В диалоговом окне Изменение связей проверьте, что оба столбца содержат нужные имена полей (перемещаться по ним можно с помощью клавиш управления курсором); при необходимости их можно изменить, или можно указать дополнительные поля, если используются ключи, составленные из нескольких полей.

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

  14. Нажмите клавиши ALT+А, чтобы создать связь.

  15. Для каждой пары таблиц, которые необходимо связать, повторите шаги с 5 по 14.

Примечания

  • Чтобы просмотреть все связи, определенные в базе данных, нажмите клавиши ALT+Я, чтобы вызвать меню Связи, а затем клавишу С. Чтобы просмотреть только связи, определенные для конкретной таблицы, выделите таблицу и нажмите сначала клавиши ALT+Я, чтобы вызвать меню Связи, а затем клавишу П.

  • Если нужно изменить структуру таблицы, выделите эту таблицу, нажмите клавиши SHIFT+F10, чтобы вызвать контекстное меню, и выберите команду Конструктор таблиц.

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

  • Чтобы связать таблицу саму с собой, добавьте ее дважды. Это полезно, когда нужно создать поле подстановки, использующее значения этой же таблицы. Например, в таблице «Сотрудники» учебной базы данных «Борей» определена связь между полями «КодСотрудника» и «Подчиняется», поэтому поле «Подчиняется» может отображать данные о сотруднике, имеющем соответствующее значение в поле «КодСотрудника».


Управление связями между таблицами с помощью клавиатуры

Предполагаемые действия

Определение связи между таблицами

Редактирование и удаление связи между таблицами

Определение типа объединения, используемого по умолчанию


 Изменение или удаление связей с помощью клавиатуры

Изменение или удаление связей с помощью клавиатуры

  1. Закройте все открытые таблицы. Изменять или удалять связи между открытыми таблицами нельзя.

  2. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  3. Нажмите клавиши ALT+Е, чтобы вызвать меню Сервис, и клавишу Х, чтобы открыть окно схемы данных.

  4. Нажмите клавиши ALT+Я, чтобы вызвать меню Связи, затем нажмите клавишу Я, чтобы открыть диалоговое окно Изменение связей.

  5. Нажмите клавиши ALT+Т. В поле Таблица/запрос выберите имя таблицы, содержащей ключевое поле, и убедитесь, что в поле Связанная таблица/запрос появилась соответствующая таблица.

  6. Установите необходимые параметры связи. Для получения дополнительных сведений о конкретном параметре диалогового окна Изменение связей выделите этот параметр и нажмите клавишу F1.

  7. Чтобы удалить связь, нажмите сначала клавишу ENTER, затем клавишу DELETE.


 Установка типа объединения по умолчанию с помощью клавиатуры

Установка типа объединения по умолчанию с помощью клавиатуры

  1. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  2. Нажмите клавиши ALT+Е, чтобы вызвать меню Сервис, и клавишу Х, чтобы открыть окно схемы данных.

  3. Нажмите клавиши ALT+Я, чтобы вызвать меню Связи, затем нажмите клавишу Я, чтобы открыть диалоговое окно Изменение связей.

  4. Нажмите клавиши ALT+Т. В поле Таблица/запрос выберите имя таблицы, которая содержит поле первичного ключа, и выберите соответствующую таблицу в поле Связанная таблица/запрос.

  5. Нажмите клавиши ALT+Е. В диалоговом окне Параметры объединения выберите нужный тип объединения.

    Переключатель 1 определяет внутреннее объединение. Он выбран по умолчанию.

    Переключатель 2 определяет левое внешнее объединение.

    Переключатель 3 определяет правое внешнее объединение.

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

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

См. сведения о типах объединения.


Изменение размера всех кнопок панели инструментов одновременно

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

  2. Выберите вкладку Параметры и установите или снимите флажок Крупные значки.

Примечание. Эта настройка повлияет на все программы Microsoft Office.


Добавление разделителей между панелями инструментов, командами меню или меню

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

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

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

  3. Оставьте открытым диалоговое окно Настройка. На панели инструментов, в строке меню или контекстном меню щелкните правой кнопкой мыши кнопку, меню или команду, перед которой нужно добавить разделитель, а затем выберите команду Начать группу в контекстном меню.

    Чтобы удалить разделитель, выберите команду Начать группу еще раз.


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

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

  2. На вкладке Панели инструментов нажмите кнопку Создать.

  3. В поле Панель инструментов введите нужное имя и нажмите кнопку OK.

  4. На вкладке Панели инструментов нажмите кнопку Свойства.

  5. Установите нужные свойства и нажмите кнопку Закрыть.

    Новая панель инструментов будет помещена справа от диалогового окна Настройка.

  6. Чтобы закончить создание панели инструментов, выполните следующие действия.
    • Добавьте кнопки из диалогового окна Настройка. Для получения дополнительных сведений нажмите кнопку [image] .

    • Переместите или скопируйте кнопку с другой панели инструментов. Для получения дополнительных сведений нажмите кнопку [image] .

Примечания

  • На панель инструментов также можно добавлять меню.

  • Панели инструментов, содержащие кнопки, запускающие существующие макросы, создаются автоматически. Для получения дополнительных сведений нажмите кнопку [image] .

  • Пользовательскую панель инструментов можно присоединить к форме или отчету. Для получения дополнительных сведений нажмите кнопку [image] .


 Создание панели инструментов для всех баз данных Access и проектов Access

Создание панели инструментов для всех баз данных Access и проектов Access

Чтобы создать панель инструментов, доступную во всех базах данных Microsoft Access и проектах Microsoft Access, следует добавить кнопки на пустые встроенные панели инструментов Служебная программа 1 и Служебная программа 2.

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

  2. На вкладке Панели инструментов установите в списке Панели инструментов флажок Служебная программа 1 или Служебная программа 2.

  3. Чтобы закончить создание панели инструментов, выполните следующие действия.
    • Добавьте кнопки из диалогового окна Настройка. Для получения дополнительных сведений нажмите кнопку [image] .

    • Переместите или скопируйте кнопку с другой панели инструментов. Для получения дополнительных сведений нажмите кнопку [image] .

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


 Создание нестандартных цветов для раздела или элемента управления в форме или отчете

Создание нестандартных цветов для раздела или элемента управления в форме или отчете

Если палитра не содержит нужного цвета, то можно создать собственные цвета.

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Откройте окно свойств для раздела или элемента управления.

  3. Выберите свойство Цвет текста (ForeColor) (для текста в элементе управления), Цвет фона (BackColor) или Цвет границы (BorderColor).

  4. Нажмите кнопку построителя [image] рядом с ячейкой свойства, чтобы открыть диалоговое окно Цвет.

  5. Нажмите кнопку Определить цвет, чтобы расширить диалоговое окно.

  6. Выберите одно из полей Дополнительные цвета в левой части диалогового окна.

  7. Выберите нужный цвет в матрице определения цвета. Эта матрица содержит все возможные цвета, которые может создать пользователь.

  8. Яркость выбранного в матрице света регулируется с помощью полосы, расположенной справа от матрицы.

    Созданный цвет будет отображен в поле Цвет|Заливка. Если нужно использовать ближайший к выбранному цвету сплошной цвет, дважды щелкните правую часть поля Цвет|Заливка.

  9. Нажмите кнопку Добавить в набор.

    Access заносит только что созданный пользователем цвет в одно из полей Дополнительные цвета.

Примечание. Новый цвет можно определить также, задавая численные значения полей Красный, Зеленый, Синий, Оттенок, Контраст и Яркость.


 Изменение цвета фона элемента управления или раздела

Изменение цвета фона элемента управления или раздела

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выберите элемент управления или раздел, который необходимо изменить.

  3. На панели инструментов Формат (форма/отчет) или на панели инструментов Формат (страница) щелкните стрелку рядом с кнопкой Цвет заливки/фона [image] .

  4. Выберите из палитры нужный цвет.

Примечания

  • Если использовавшийся последним цвет нужно применить и к другому элементу управления или разделу, можно просто выбрать этот элемент или раздел и нажать кнопку Цвет заливки/фона [image] (а не щелкать заново стрелку рядом с кнопкой и не выбирать цвет из палитры). Если нужно быстро задать различные цвета для нескольких элементов управления, щелкните стрелку рядом с кнопкой Цвет заливки/фона [image] , щелкните границу палитры и перетащите ее в другое место экрана, тем самым отделив ее от кнопки. Теперь для задания цвета больше не потребуется нажимать кнопку Цвет заливки/фона [image] .

  • Если палитра не содержит нужного цвета, можно создать собственный цвет.

    Инструкции


Установка разрешения экрана

  1. В меню Windows Пуск выберите Настройка, а затем Панель управления.

  2. Дважды щелкните значок Экран [image].

  3. Перейдите на вкладку Настройка.

  4. Для изменения разрешения экрана перетащите бегунок Область экрана.

Примечание. Возможность изменения разрешения экрана определяется монитором и видеоадаптером.


Работа с автозаменой

Предполагаемые действия

Автоматическая замена вводимого текста

Автоматическое исправление двух прописных букв при вводе данных

Автоматическое написание дней недели с прописной буквы при вводе данных

Добавление элемента, автоматически заменяемого при проверке орфографии

Отмена автоматической замены конкретного элемента при вводе данных

Отключение режима автоматического исправления вводимых данных

Использование автозамены в тестовых полях и в списках


 Вставка значения из аналогичного поля предыдущей записи

Вставка значения из аналогичного поля предыдущей записи

  1. Откройте объект в режиме таблицы.

  2. Выделите поле, в которое требуется вставить значение.

  3. Нажмите клавиши CTRL+' (апостроф).


Настройка среды Microsoft Access заданием значений параметров, устанавливаемых по умолчанию

  1. Выберите команду Параметры в меню Сервис.

  2. Выберите вкладку для параметров, которые необходимо задать.

  3. Выберите нужные параметры.

Примечание. Чтобы настроить среду редактора Visual Basic, запустите редактор, выберите Options в меню Tools и выбирайте параметры, которые будут использоваться.


Настройка среды приложения при помощи профилей пользователей Microsoft Access

Предполагаемые действия

Настройка среды приложения при помощи профилей пользователей Microsoft Access

Создание профиля пользователя Microsoft Access

Настройка параметров выполнения Microsoft Access


 Вывод пользовательского значка приложения

Вывод пользовательского значка приложения

  1. В меню Сервис выберите команду Параметры запуска.

  2. В поле Значок приложения введите имя файла с расширением .ico или .bmp, который нужно использовать в качестве значка. Если имя файла не известно, нажмите кнопку построителя [image] рядом с полем, и в диалоговом окне Просмотр значков найдите файл. (Диалоговое окно Просмотр значков работает так же, как и диалоговое окно Открытие файла базы данных. Для получения дополнительных сведений об использовании возможностей поиска, имеющихся в этих диалоговых окнах, нажмите кнопку [image] .)

Примечания

  • Изменение параметра Значок приложения вступает в силу сразу же после закрытия диалогового окна Параметры запуска.

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

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Использование личных настроек на другом компьютере

Использование личных настроек на другом компьютере

Данный раздел содержит справочные сведения по следующим вопросам.

Что такое профиль пользователя?

Постоянная доступность настроек

Дополнительные сведения о пользователе

Что такое профиль пользователя?

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

Возврат в начало

Постоянная доступность настроек

Системный администратор должен настроить профиль пользователя для перемещения вместе с пользователем, чтобы личные настройки, хранящиеся на сервере, были всегда доступны при регистрации пользователя. Это особенно полезно, если пользователь регистрируется на различных компьютерах организации или использует компьютер совместно с другим пользователем. При регистрации пользователя его профиль загружается с сервера на компьютер, на котором выполняется регистрация. Профиль пользователя действителен только в той операционной системе, для которой он был создан — например, профиль пользователя Windows NT 4.0 не может использоваться на компьютере, работающем под управлением Windows 95. При выходе из системы профиль пользователя вновь копируется на сервер, благодаря чему все изменения, внесенные во время сеанса работы, оказываются доступными при следующей регистрации пользователя.

Возврат в начало

Дополнительные сведения

Расположение личных настроек

Возврат в начало


Изменение настроек Microsoft Access в реестре Windows

Осторожно! Многие из параметров реестра, относящиеся к Microsoft Access, добавляются автоматически при установке Microsoft Access. Изменение значений установленных параметров может привести к возникновению ошибок, что потребует переустановки Microsoft Access. Настоятельно рекомендуется не изменять настройки реестра Windows самостоятельно. Однако, если изменения параметров или их значений являются необходимыми, следует их изменять только с помощью редактора реестра Windows. Изменять следует только те значения или параметры, которые явно документированы в приведенных ниже разделах справки. Измененные параметры вступают в действие при следующем запуске Microsoft Access. Рекомендуется создавать резервные копии всего реестра или его изменяемых разделов. Для получения подробного описания обратитесь к разделу «реестр: создание новой копии» встроенной справки редактора реестра.

Предполагаемые действия

Дополнительная информация о реестре Windows

Изменение настроек ядра базы данных Microsoft Jet версии 4.0

Изменение настроек ядра базы данных Microsoft Jet версии 3.x

Изменение настроек ядра базы данных Microsoft Jet версии 2.x

Изменение настроек драйвера Microsoft Excel

Изменение настроек текстового драйвера

Изменение настроек драйвера HTML

Изменение настроек драйвера Exchange

Изменение настроек драйвера ODBC

Изменение настроек драйвера dBASE

Изменение настроек драйвера Paradox

Изменение настроек драйвера Lotus

Указание формата версии OLE (2.0 или 1.0), в котором будут сохранены связи OLE

Настройка среды приложения с помощью профилей пользователя

Создание мастеров, построителей и надстроек


 Расположение личных настроек

Расположение личных настроек

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

Корневой_каталог\ОС\Profiles\Имя_пользователя

где Корневой_каталог — основная папка на сервере или локальном диске (например, c:\), ОС —папка операционной системы (например, Windows или Winnt), а Имя_пользователя — имя пользователя.

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

Файлы профиля пользователя | Путь
Надстройки | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Addins
Списки автозамены | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Office
Вспомогательный словарь | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Proof
Диаграмма | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Proof
Панель Office | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\OSB
Профили личных сведений (расширение .pip) | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Office
Последние использованные ярлыки | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Office\Recent
Шаблоны | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Templates
Темы | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Themes
Запросы | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Queries
Параметры запуска | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Excel\XLSTART
Настроенные панели инструментов | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Excel
Коллекция диаграмм | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Excel
Настроенные панели инструментов (расширение .pcb) | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\PPT
Параметры запуска | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Word\STARTUP
Настроенные сведения мастеров | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Access
Бланки | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Stationery
Автоподпись | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Signatures
Настроенные файлы Outlook | Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Outlook


Спецификации Microsoft Access

Предполагаемые действия

Основные спецификации базы данных Microsoft Access

Основные спецификации проекта Microsoft Access

Технические спецификации базы данных Microsoft SQL Server

Основные спецификации таблицы базы данных Access

Основные спецификации запроса к базе данных Access

Спецификации форм и отчетов

Спецификации макросов


 Обход параметров запуска при открытии базы данных Access или проекта Access

Обход параметров запуска при открытии базы данных Access или проекта Access

  • При открытии базы данных нажмите и удерживайте клавишу SHIFT.

Параметры запуска и действия, выполняющиеся при открытии базы данных Microsoft Access или проекта Microsoft Access, которые определены в диалоговом окне Параметры запуска (меню Сервис), в макросе AutoExec или в процедуре обработки события Open, можно обойти, чтобы получить полный доступ к базе данных Access или проекту Access.

Примечание. Можно запретить клавишу обхода параметров запуска (SHIFT), создав макрос или программу Visual Basic, которые устанавливают свойство AllowBypassKey базы данных в значение False.


 Настройка параметров запуска базы данных Access или проекта Access

Настройка параметров запуска базы данных Access или проекта Access

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

  1. В меню Сервис выберите команду Параметры запуска.

  2. Выберите нужные параметры или введите нужные значения.

Примечания

  • Для получения справки о конкретном элементе диалогового окна нажмите кнопку со знаком вопроса [image] в правом верхнем углу диалогового окна, а затем выберите нужный элемент.

  • Для просмотра перечня вопросов, которые следует принимать во внимание при определении параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании приложения, нажмите кнопку [image] .


Создание специального заголовка окна приложения

  1. В меню Сервис выберите команду Параметры запуска.

  2. В поле Заголовок приложения введите новый текст заголовка окна приложения.

Примечания

  • Изменение параметра Заголовок приложения вступает в действие сразу после закрытия диалогового окна Параметры запуска.

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Вывод стартовой формы или страницы доступа к данным при открытии базы данных Access или проекта Access

Вывод стартовой формы или страницы доступа к данным при открытии базы данных Access или проекта Access

  1. В меню Сервис выберите команду Параметры запуска.

  2. В поле Вывод формы/страницы выберите форму или страницу доступа к данным, находящиеся в текущей базе данных Microsoft Access или в текущем проекте Microsoft Access.

  3. Чтобы запретить пользователям просматривать или использовать окно базы данных, которое выводится за окном формы, сбросьте флажок Окно базы данных.

  4. Даже если флажок Окно базы данных сброшен, окно базы данных может все еще оставаться доступным для пользователя. Для получения дополнительных сведений нажмите кнопку [image] .

Примечания

  • Изменения этих параметров в диалоговом окне Параметры запуска вступят в силу только при следующем открытии базы данных Access или проекта Access.

  • Учебная база данных «Борей» имеет стартовую форму. В ней есть также главная кнопочная форма — пример формы, которую можно использовать для переходов между объектами в базе данных Access или в проекте Access. Чтобы просмотреть эти формы, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office. Стартовая форма автоматически появляется на экране при открытии базы данных «Борей», но ее и главную кнопочную форму можно вызвать в любой момент, щелкнув значок Формы [image] в списке Объекты в окне базы данных, выбрав форму и нажав кнопку Открыть на панели инструментов окна базы данных. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Вывод или отмена вывода окна базы данных при открытии базы данных Access или проекта Access

Вывод или отмена вывода окна базы данных при открытии базы данных Access или проекта Access

  1. В меню Сервис выберите команду Параметры запуска.

  2. Установите или сбросьте флажок Окно базы данных.

Примечания

  • Изменение этого параметра диалогового окна Параметры запуска вступит в силу только при следующем открытии базы данных Microsoft Access или проекта Microsoft Access.

  • Если окно базы данных не планируется выводить на экран, нужно вывести форму или страницу доступа к данным, с помощью которой пользователи смогут перемещаться по базе данных Access или по проекту Access. Для получения дополнительных сведений нажмите кнопку [image] .

  • Даже если флажок «Окно базы данных» будет сброшен, окно базы данных может все еще оставаться доступным по специальной комбинации клавиш. Для получения дополнительных сведений нажмите кнопку [image] . И даже тогда, когда и окно, и комбинация клавиш отключены, пользователь все равно имеет возможность получить доступ к окну базы данных. Такое может случиться, если пользователь попытается несколько раз открыть одну и ту же базы данных Access или проект Access с помощью списка ранее использовавшихся баз данных Access или проектов Access, содержащегося в меню Файл. Чтобы запретить пользователям доступ к этому списку, замените меню Файл собственным пользовательским меню.

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Вывод нескольких объектов базы данных в панели задач Windows

Вывод нескольких объектов базы данных в панели задач Windows

Если при установке Microsoft Internet Explorer был установлен рабочий стол Active Desktop, то с помощью панели задач Windows можно переключаться между открытыми объектами базы данных.

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

  2. Установите или снимите флажок Окна на панели задач.

Примечания

  • Чтобы определить, установлен ли на компьютере рабочий стол Active Desktop, щелкните рабочий стол правой кнопкой; если в контекстном меню отображается пункт Рабочий стол Active Desktop, значит рабочий стол был установлен. Если рабочий стол Active Desktop не был установлен, то установка флажка Окна на панели задач не будет иметь никакого эффекта.

  • Установка или снятие флажка Окна на панели задач не влияет на параметры переключения через панель задач в других приложениях Microsoft Office.


Задание числа элементов списка недавно открывавшихся файлов, который отображается в меню «Файл»

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

  1. В меню Сервис выберите команду Параметры.

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

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


 Задание величины полей по умолчанию для печатаемых страниц

Задание величины полей по умолчанию для печатаемых страниц

  1. В меню Сервис выберите команду Параметры.

  2. Перейдите на вкладку Общие.

  3. В группе Границы печатного поля задайте ширину полей, которая должна использоваться по умолчанию.

Примечания

  • Изменения этих параметров не влияют на ширину полей, заданную для существующих форм и отчетов.

  • Эти настройки не применяются для страниц доступа к данным.


Отображение или скрытие объектов, скрытых по умолчанию

Если нужно выполнить какие-либо действия с объектами, которые были определены как скрытые, можно отобразить эти объекты в окне базы данных, не отменяя их атрибута скрытия.

  1. В меню Сервис выберите команду Параметры.

  2. Откройте вкладку Вид.

  3. Установите или сбросьте флажок скрытые объекты в группе Отображать. Чтобы показать различие между скрытыми и остальными объектами, Microsoft Access обозначает скрытые объекты неконтрастными значками.


 Отображение или скрытие по умолчанию окна запуска Microsoft Access

Отображение или скрытие по умолчанию окна запуска Microsoft Access

Окно запуска — это первое диалоговое окно, которое выводится при запуске Microsoft Access. С его помощью можно создать или открыть базу данных Microsoft Access или проект Microsoft Access.

  1. В меню Сервис выберите команду Параметры.

  2. Откройте вкладку Вид.

  3. В группе Отображать установите или сбросьте флажок окно запуска.


Задание подстановочного шрифта для поддержки двух шрифтов

  1. В меню Сервис выберите команду Параметры.

  2. Перейдите на вкладку Вид.

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

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

См. сведения о поддержке двух шрифтов.


Запуск Microsoft Access с параметрами командной строки

Предполагаемые действия

Задание параметров командной строки Microsoft Access в меню Пуск

Задание параметров командной строки для ярлыка

Не можете сделать выбор?


 Параметры командной строки

Параметры командной строки

Следующая таблица содержит список параметров командной строки Microsoft Access.

Параметр | Результат | Объекты
имя файла базы данных | Открытие указанной базы данных Microsoft Access или проекта Microsoft Access. При необходимости следует включить путь. При работе в системе Microsoft Windows 95 по умолчанию используется путь к папке «Мои документы». | База данных Access или проект Access
/excl | Открытие указанной базы данных Access с монопольным доступом. Чтобы открыть базу данных для общего доступа в многопользовательской среде, опустите данный параметр. | Только база данных Access
/ro | Открытие указанной базы данных или проекта Access с доступом только для чтения. | База данных Access или проект Access
/user имяПользователя | Запуск Microsoft Access с указанным именем пользователя. | Только база данных Access
/pwd пароль | Запуск Microsoft Access с использованием указанного пароля. | Только база данных Access
/profile профиль пользователя | Запуск Microsoft Access с использованием параметров указанного профиля пользователя вместо стандартных параметров реестра Windows, записанных при установке Microsoft Access. Данный параметр заменяет параметр /ini, использовавшийся в версиях Microsoft Access, предшествовавших Access 97, для указания файла инициализации. | База данных Access или проект Access
/compact конечная база данных или конечный проект Access | Сжатие и восстановление базы данных Access или сжатие проекта Access, указанной перед параметром /compact, и закрытие Microsoft Access. Если опустить имя конечного файла базы данных после параметра /compact, база данных после сжатия записывается в файл с исходным именем и расположением. Для сохранения сжатого файла под другим именем необходимо указать имя конечного файла. Если в значении конечная база данных или конечный проект Access не указан путь, то по умолчанию конечный файл создается в папке «Мои документы». В проекте Access данный параметр сжимает файл проекта Access (.adp), но не базу данных Microsoft SQL Server. | База данных Access или проект Access
/repair | Восстановление базы данных Access, указанной перед параметром /repair, и закрытие Microsoft Access. В Microsoft Access 2000 операции сжатия и восстановления объединены в параметре /compact. Параметр /repair поддерживается для обеспечения совместимости с предыдущими версиями. | Только база данных Access
/convert конечная база данных | Преобразование базы данных предыдущей версии Access в формат базы данных Access 2000 с новым именем и закрытие Microsoft Access. Исходная база данных задается перед параметром /convert. | Только база данных Access
/x макрос | Запуск Microsoft Access с одновременным запуском указанного макроса. Другой способ запуска макроса при открытии базы данных заключается в использовании макроса AutoExec. | База данных Access или проект Access
/cmd | Задание в командной строке значения, возвращаемого функцией Command. Этот параметр должен быть последним параметром командной строки. Вместо параметра /cmd допускается использование точки с запятой (;). Для получения дополнительных сведений о функции Command нажмите кнопку [image] . | База данных Access или проект Access
/nostartup | Запуск Microsoft Access без вывода стартового диалогового окна (второго диалогового окна, которое видит пользователь при запуске Microsoft Access). | База данных Access или проект Access
/wrkgrp файл рабочей группы | Запуск Microsoft Access с использованием указанного файла рабочей группы. | Только база данных Access

Примечания

  • Для запуска процедуры VBA при открытии базы данных следует использовать макрокоманду «ЗапускПрограммы (RunCode)» в макросе AutoExec или в макросе, запускаемом с помощью параметра командной строки /x. Другой метод запуска процедуры VBA при открытии базы данных заключается в создании формы, в которой процедура VBA связывается с событием «Открытие» (OnOpen). Такую форму следует указать в качестве формы, открываемой при запуске Access. Для этого нажмите правую кнопку мыши в окне базы данных и выберите команду Параметры запуска, а затем введите имя формы в поле Вывод формы/страницы.

  • Для указания символа косой черты (/) или точки с запятой (;) в командной строке следует ввести эти символы дважды. Например, для задания в командной строке пароля ;mjs/md введите ;;mjs//md после параметра /pwd.


 Настройка параметров OLE/DDE

Настройка параметров OLE/DDE

  1. Выберите в меню Сервис команду Параметры, а затем вкладку Другие.

  2. В группе Операции DDE установите или снимите нужный флажок.
    • Для того чтобы игнорировать команды DDE из других приложений, установите флажок Пропуск команд DDE.

    • Для того чтобы обновлять связи DDE через промежутки времени, указанные в поле Период обновления, установите флажок Обновление связей DDE.
  3. Введите в поле Время ожидания ОLE/DDE число секунд ожидания (от 0 до 300) перед повторением неудачной попытки выполнить операцию OLE или DDE.

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


 Разрешение или запрет клавиш вывода окна базы данных и строк меню, а также клавиши приостановки получения проектом Access записей с сервера

Разрешение или запрет клавиш вывода окна базы данных и строк меню, а также клавиши приостановки получения проектом Access записей с сервера

  1. В меню Сервис выберите команду Параметры запуска.

  2. Нажмите кнопку Дополнительно.

  3. Установите или сбросьте флажок Специальные клавиши Access, чтобы включить или отключить следующие специальные клавиши:
Клавиши | Действие
F11 или ALT+F1 | Вывод окна базы данных поверх других окон
CTRL+П | Открытие окна Immediate
CTRL+F11 | Переключение между пользовательской строкой меню и встроенной строкой меню
CTRL+BREAK | В проекте Microsoft Access приостановка получения записей с сервера

Примечания

  • Изменение этого параметра диалогового окна Параметры запуска вступит в силу только при следующем открытии базы данных Microsoft Access или проекта Microsoft Access.

  • Если сбросить флажок Специальные клавиши Access и выбрать пользовательскую строку меню в поле Строка меню, встроенная строка меню станет недоступной.

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

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Отображение или скрытие строки состояния для всех баз данных Access или проектов Access

Отображение или скрытие строки состояния для всех баз данных Access или проектов Access

Изменения этого параметра распространяются на все базы данных Microsoft Access и проекты Microsoft Access.

  1. В меню Сервис выберите команду Параметры.

  2. На вкладке Вид в группе Отображать установите или сбросьте флажок строку состояния.

Примечание. Можно управлять отображением строки состояния и для отдельных баз данных Access или приложений Access. Для получения дополнительных сведений нажмите кнопку [image] .


 Отображение или скрытие строки состояния для отдельной базы данных Access или проекта Access

Отображение или скрытие строки состояния для отдельной базы данных Access или проекта Access

  1. В меню Сервис выберите команду Параметры запуска.

  2. Установите или сбросьте флажок Строка состояния.

Примечания

  • Изменение этого параметра диалогового окна Параметры запуска вступит в силу только при следующем открытии базы данных Microsoft Access или проекта Microsoft Access.

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

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Запрет или разрешение доступа ко всем встроенным панелям инструментов в базе данных Access или проекте Access

Запрет или разрешение доступа ко всем встроенным панелям инструментов в базе данных Access или проекте Access

  1. В меню Сервис выберите команду Параметры запуска.

  2. Установите или сбросьте флажок Встроенные панели инструментов.

Примечания

  • Изменение этого параметра диалогового окна Параметры запуска вступит в силу только при следующем открытии базы данных Microsoft Access или проекта Microsoft Access.

  • Этот флажок не влияет на панели инструментов сводных списков и электронных таблиц, расположенных на страницах доступа к данным.

  • Чтобы разрешить пользователям изменение встроенных панелей инструментов, необходимо установить флажки Встроенные панели инструментов и Изменение панелей инструментов/меню. Чтобы запретить пользователям изменение всех встроенных панелей инструментов, установите флажок Встроенные панели инструментов и сбросьте флажок Изменение панелей инструментов/меню.

  • Можно запретить пользователям изменение отдельных панелей инструментов. Для получения дополнительных сведений нажмите кнопку [image] .

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Вывод полного или сокращенного набора встроенных меню

Вывод полного или сокращенного набора встроенных меню

Если пользователи создаваемой базы данных Microsoft Access или проекта Microsoft Access будут иметь доступ ко встроенным меню, можно разрешить им доступ лишь к некоторому подмножеству этих меню. Это позволит скрыть некоторые меню, например, Вид и Вставка, которые позволяют пользователю войти в режим конструктора объекта базы данных Access или проекта Access и изменить его структуру и характеристики.

  1. В меню Сервис выберите команду Параметры запуска.

  2. Установите или сбросьте флажок Полный набор меню Access.

Примечания

  • Изменения этих параметров в диалоговом окне Параметры запуска вступят в силу только при следующем открытии базы данных Access или проекта Access.

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Запрет или разрешение изменения всех панелей инструментов или строк меню в базе данных Access или проекте Access

Запрет или разрешение изменения всех панелей инструментов или строк меню в базе данных Access или проекте Access

Существует возможность разрешить или запретить пользователям изменение встроенных и пользовательских панелей инструментов и строк меню.

  1. В меню Сервис выберите команду Параметры запуска.

  2. Установите или сбросьте флажок Изменение панелей инструментов/меню.

Примечания

  • Изменения этих параметров в диалоговом окне Параметры запуска вступят в силу только при следующем открытии базы данных Microsoft Access или проекта Microsoft Access.

  • Этот флажок не влияет на панели инструментов сводных списков и электронных таблиц, расположенных на страницах доступа к данным.

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

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

  • Чтобы запретить пользователям изменять встроенные панели инструментов, сбросьте флажок Встроенные панели инструментов.

  • Чтобы отключить контекстное меню только в панелях инструментов и строках меню, установите флажок Контекстные меню по умолчанию и сбросьте флажок Изменение панелей инструментов/меню. Это не позволит пользователям настраивать панели инструментов и строки меню.

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Определение глобальной строки меню для базы данных Access или проекта Access

Определение глобальной строки меню для базы данных Access или проекта Access

Используя собственную глобальную строку меню, можно определять, какие задачи пользователи могут выполнять в базе данных Microsoft Access или в проекте Microsoft Access. С ее помощью можно ограничивать и настраивать доступные меню и команды. Глобальная строка меню замещает встроенную строку меню для всех окон Microsoft Access, за исключением форм и отчетов, к которым была добавлена пользовательская строка меню.

  1. В меню Сервис выберите команду Параметры запуска.

  2. В поле со списком Строка меню выберите имя строки пользовательского меню из текущей базы данных Access или проекта Access, или выберите строку (по умолчанию), чтобы отобразить встроенную строку меню.

Примечания

  • Изменение этого параметра в диалоговом окне Параметры запуска вступит в силу только при следующем открытии базы данных Access или проекта Access.

  • Даже если назначена другая глобальная строка меню, строка встроенного меню может все еще быть доступна. Для получения дополнительных сведений нажмите кнопку [image] .

  • Чтобы назначить или изменить глобальную строку меню в процедуре Visual Basic для приложений следует воспользоваться свойством MenuBar объекта Application. Для получения дополнительных сведений о свойстве MenuBar нажмите кнопку [image] .

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Определение глобального контекстного меню для базы данных Access или проекта Access

Определение глобального контекстного меню для базы данных Access или проекта Access

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

  1. В меню Сервис выберите команду Параметры запуска.

  2. В поле со списком Контекстное меню выберите имя пользовательского контекстного меню для текущей базы данных Microsoft Access или проекта Microsoft Access. Чтобы использовать встроенные контекстные меню, выберите строку (по умолчанию).

Примечания

  • Изменение этого параметра в диалоговом окне Параметры запуска вступит в силу только при следующем открытии базы данных Access или проекта Access.

  • Можно назначить или изменить контекстное меню в программе Visual Basic для приложений с помощью свойства ShortcutMenuBar объекта Application. Для получения дополнительных сведений о свойстве ShortcutMenuBar нажмите кнопку [image] .

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Разрешение или запрет контекстных меню в базе данных Access или проекте Access

Разрешение или запрет контекстных меню в базе данных Access или проекте Access

Можно разрешить или запретить встроенные контекстные меню.

  1. В меню Сервис выберите команду Параметры запуска.

  2. Установите или сбросьте флажок Контекстные меню по умолчанию.

Примечания

  • Изменение этого параметра в диалоговом окне Параметры запуска вступит в силу только при следующем открытии базы данных Microsoft Access или проекта Microsoft Access.

  • Действие этого параметра не распространяется на контекстные меню на страницах доступа к данным, в том числе на контекстные меню сводных списков и электронных таблиц, расположенных на страницах доступа к данным.

  • Чтобы запретить контекстное меню только для панелей инструментов и строк меню, установите флажок Контекстные меню по умолчанию и сбросьте флажок Изменение панелей инструментов/меню. Это запретит пользователям настройку панелей инструментов и строк меню.

  • Для просмотра перечня вопросов, которые следует принимать во внимание при установке параметров в диалоговом окне Параметры запуска, нажмите кнопку [image] .


 Установка и удаление надстроек меню

Установка и удаление надстроек меню

Для установки или удаления надстроек используется диспетчер надстроек.

  1. Выберите в меню Сервис команду Надстройки и подкоманду Диспетчер надстроек.

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

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

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

    • Для того чтобы удалить установленную надстройку, выделите ее имя в списке Доступные надстройки и нажмите кнопку Удалить.
  3. Закончив, нажмите кнопку Закрыть.

Примечание. Для того чтобы открыть надстройку как базу данных (для изменения структуры), необходимо сначала удалить эту надстройку.


 Мастера, надстройки и построители в Microsoft Access 2000

Мастера, надстройки и построители в Microsoft Access 2000

Мастер | Описание
Автонабор номера | Позволяет указать сведения о модеме после нажатия кнопки «Автонабор» в режиме формы.
Автоотчет | Автоматически создает отчет.
Автостраницы | Автоматически создает страницу доступа к данным.
Автоформа | Автоматически создает форму.
Автоформат | Применяет готовый формат к форме или отчету.
Анализ быстродействия | Анализирует эффективность базы данных и выдает список рекомендаций по ее совершенствованию.
Анализ таблиц | Разбивает таблицу, содержащую много повторяющихся записей, на несколько связанных таблиц для более эффективной работы.
Архивариус | Генерирует отчет Access, отображающий характеристики структуры объектов базы данных.
Базы данных Microsoft SQL Server | Создает новую базу данных Microsoft SQL Server, с которой связывается новый проект Microsoft Access.
Диспетчер кнопочных форм | Создает и управляет кнопочными формами для приложений.
Диспетчер связанных таблиц | Управляет связями с таблицами между базами данных.
Защита на уровне пользователей | Создает из существующей базы данных новую, зашифрованную базу данных с регулируемым доступом пользователей. Регулирует доступ пользователей к текущей базе данных и создает незащищенную резервную копию базы данных.
Импорт HTML | Импортирует таблицы HTML и списки из Интернета или из интрасети в таблицу Microsoft Access.
Импорт из Exchange/Outlook | Импортирует папку Exchange или Outlook в таблицу базы данных Microsoft Access.
Импорт текста | Импортирует текстовый файл в таблицу Microsoft Access.
Импорт электронных таблиц | Импортирует электронные таблицы Microsoft Excel и других программ в таблицу Microsoft Access.
Кнопки для страниц | Создает кнопку на странице доступа к данным.
Кнопки | Создает кнопку в форме.
Отчеты | Создает отчет, основанный на таблице или запросе.
Перекрестные запросы | Создает запрос, суммирующий данные в компактном формате наподобие электронных таблиц.
Печать схемы данных | Создает отчет, отображающий связи в базе данных Microsoft Access.
Подстановка | Создает в таблице столбец подстановок, отображающий список значений, которые может выбрать пользователь.
Поиск записей без подчиненных | Создает запрос на поиск записей в таблице, не имеющих связанных с ними записей в другой таблице.
Поиск повторяющихся записей | Создает запрос на поиск записей, содержащих повторяющиеся значения полей в таблице или запросе.
Почтовые наклейки | Создает почтовые наклейки стандартных и специальных размеров.
Преобразование в формат SQL Server | Преобразует базу данных Microsoft Access в базу данных Microsoft SQL Server.
Преобразование макросов в модули | Преобразует макросы в программы Visual Basic.
Простые запросы | Создает запрос на выборку на основе выбранных полей.
Разделение баз данных | Разделяет базу данных на данные и интерфейс с тем, чтобы несколько пользователей имели на своих компьютерах копии интерфейса, связанного с данными на сервере.
Сводные таблицы | Помещает сводную таблицу Microsoft Excel в форму Microsoft Access.
Связь полей подчиненных форм и отчетов | Связывает поля из главной и подчиненной формы или из главного и подчиненного отчета.
Связь с Exchange/Outlook | Связывает папку Exchange или Outlook с таблицей базы данных Microsoft Access.
Связь с HTML | Связывает таблицу или список HTML из Интернета или интрасети с таблицей Microsoft Access.
Связь с текстом | Связывает текстовый файл с таблицей Microsoft Access.
Связь с электронной таблицей | Связывает данные электронных таблиц с таблицей Microsoft Access.
Слияние с Microsoft Word | Управляет операциями слияния, используя письма из Microsoft Word и адреса из Microsoft Access.
Создание баз данных | Создает новую базу данных для различных применений на основе 2210 заранее подготовленных шаблонов.
Создание групп переключателей | Создает в форме группу переключателей.
Создание диаграмм | Добавляет диаграмму в форму или отчет, основанный на данных таблицы или запроса.
Создание маски ввода | Создает маску ввода для поля, выбранного из таблицы.
Создание подчиненных форм и отчетов | Создает подчиненный отчет или форму в отчете или форме.
Создание полей со списком | Создает в форме поле со списком.
Создание полей со списком для страниц | Создает раскрывающийся список на странице доступа к данным.
Создание списков для страниц | Создает список на странице доступа к данным.
Создание списков | Создает в форме список.
Страницы | Создает новую страницу доступа к данным.
Таблицы | Создает новую таблицу.
Устранение конфликтов | Разрешает конфликты между реплицированными базами данных во время синхронизации.
Формы | Создает новую форму.
Частичная репликация | Создает или изменяет частичную реплику реплицированной базы данных.
Экспорт текста | Экспортирует данные в текстовый файл.

Построитель | Описание
Построитель выражений | Создает выражения для макросов, запросов и окон свойств.
Построитель запросов | Создает правильный синтаксис для запроса.
Построитель полей | Создает поля в таблице.
Построитель рисунков | Создает точечные изображения для форм и отчетов.
Построитель строк подключения ODBC | Создает правильный синтаксис для связи с объектами ODBC.
Построитель цветов | Отображает палитру для создания настраиваемых цветов.

Надстройка | Описание
Диспетчер надстроек | Устанавливает и снимает установку мастеров, построителей и надстроек.


 Создание мастеров, построителей и надстроек

Создание мастеров, построителей и надстроек

При разработке надстроек (мастеров, построителей, или меню надстроек), необходимо задать несколько свойств базы данных и в базе данных надстроек (*.mda, *.mde) создать таблицу USysRegInfo с тем, чтобы она устанавливалась при помощи диспетчера надстроек. Также можно разработать надстройку COM, устанавливаемую диспетчером надстроек. Для получения дополнительных сведений см. главу 11 «Add-ins, Wizards, Libraries and Templates» руководства The Microsoft Office 2000/Visual Basic Programmer's Guide. См. сведения о приобретении руководства Microsoft Office 2000/Visual Basic Programmer's Guide.


 Поиск файлов

Поиск файлов

Сведения о поиске файлов. Поиск файлов на локальном жестком диске и любом сетевом диске возможен в диалоговых окнах Открытие файла базы данных, Импорт и Связь (меню Файл), а также База данных для преобразования, База данных для сжатия, База данных для сохранения как MDE, и База данных для шифрования или дешифрования (меню Сервис). Поиск файла можно выполнять по имени, типу, дате последнего изменения или содержащемуся в нем тексту (последнее не относится к файлам баз данных Microsoft Access и проектов Microsoft Access). Также поиск можно выполнять по конкретным свойствам файла, таким как имя автора, тема, название или дата создания. См. инструкции по поиску файлов.

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

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

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

  • Некоторые свойства автоматически обновляются. К ним относятся статистические сведения, такие как размер файла и даты его создания и последнего изменения. Например, по этим свойствам можно найти все файлы, созданные после 3 марта 1998 года, или файлы, в последний раз измененные вчера. См. инструкции по поиску файлов с использованием свойств файлов.

Поиск файлов с использованием специальных условий. В диалоговом окне Открытие файла базы данных нажмите кнопку Сервис, а затем выберите команду Найти, чтобы выполнить поиск файла с использованием нетекстовых свойств или более сложного набора условий. Например, можно выполнить поиск файлов, содержащих строку «бюджет» или ключевое слово «Бюджет 99».

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

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

Возврат к разделу Поиск файлов


 Find files

Поиск файлов

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

Предполагаемые действия

Поиск файлов

Поиск файлов по их свойствам

Поиск файлов с использованием сохраненного набора условий поиска

Изменение сохраненного набора условий поиска

Не можете сделать выбор?


 Сортировка списка файлов

Сортировка списка файлов

  1. Выберите в меню Файл команду Открыть [image] .

  2. Щелкните стрелку рядом с кнопкой Представления [image], выберите команду Упорядочить значки, а затем нужный вариант упорядочения.

Примечание. Также можно сортировать список файлов в диалоговых окнах Импорт и Связь, открываемых из меню Файл, и в диалоговых окнах База данных для преобразования, База данных для сжатия, База данных для сохранения как MDE и База данных для шифрования или дешифрования, открываемых из меню Сервис.


 Подключение к сетевому диску

Подключение к сетевому диску

  1. Выберите в меню Файл команду Открыть [image] .

  2. Нажмите кнопку Сервис и выберите команду Подключить сетевой диск.

  3. В поле Диск выберите букву диска, которой нужно обозначить подключаемый сетевой диск.

  4. В поле Путь введите путь к общей папке, к которой нужно подключиться.

Совет. Чтобы автоматически подключать этот сетевой диск при каждом запуске Microsoft Windows, установите флажок Автоматически подключать при входе в систему.


 Возврат на диск, в папку или на узел Интернета, которые были просмотрены ранее

Возврат на диск, в папку или на узел Интернета, которые были просмотрены ранее

  • В диалоговом окне Открытие файла базы данных (меню Файл) нажмите кнопку Назад [image] .

Совет. Имя предыдущего диска, папки или узла Интернета выводится в качестве всплывающей подсказки при наведении указателя на кнопку Назад.


 Способы создания гиперссылок или ярлыков для файлов, папок и Web-страниц

Способы создания гиперссылок или ярлыков для файлов, папок и Web-страниц

Для быстрого перехода к файлам, папкам или Web-страницам можно использовать гиперссылки или ярлыки в папке «Избранное».

Гиперссылки. Гиперссылки можно создавать в таблицах, формах или на страницах доступа к данным, а затем использовать их для перехода к различным местоположениям — например, к объектам базы данных в другой базе данных Microsoft Access или проекте Microsoft Access, к документу Microsoft Word или книге Microsoft Excel; либо по адресу Интернета, интрасети или электронной почты. Гиперссылку можно создать из основанного на поле гиперссылки текстового поля, кнопки, надписи или рисунка в форме или на странице доступа к данным. Кроме того, можно назначить гиперссылку кнопке панели инструментов, чтобы можно было перейти к конкретному файлу, Web-странице или по адресу электронной почты, которые часто используются.

Папка «Избранное». Папка «Избранное» предназначена для хранения ярлыков часто используемых файлов и папок, включая расположенные в удаленных сетях. Исходный файл или папка не перемещаются — вместо этого создается ярлык для перехода к этому файлу или папке. Хранение ярлыков в папке «Избранное» обеспечивает быстрый доступ к любому файлу без необходимости помнить, где он расположен. Для быстрого доступа к файлам из папки «Избранное» щелкните ярлык Избранное [image] на панели адресов в диалоговом окне Открытие файла базы данных (меню Файл).

Возврат к разделу Создание ярлыков для файлов, папок и Web-страниц


 Поиск файлов

Поиск файлов

  1. Выберите в меню Файл команду Открыть [image] .

  2. Нажмите кнопку Сервис и выполните команду Найти.

  3. В поле Папка выберите диск или папку, в которой будет выполняться поиск.

  4. Для поиска во всех подпапках выбранных папок, а также для просмотра папок, содержащих найденные файлы, установите флажок Просмотреть вложенные.

  5. В поле Свойство выберите Имя файла.

  6. В поле Отношение выберите нужный параметр.

  7. В поле Значение ведите имя файла полностью или частично.

  8. Нажмите кнопку Добавить.

  9. Нажмите кнопку Найти.

Примечания

  • Для одновременного поиска более чем на одном диске, введите имена всех дисков в поле Папка, разделив их точкой с запятой. Например: C:\;D:\.

  • Найти файл базы данных Microsoft Access или проекта Microsoft Access по образцу содержащегося в нем текста невозможно.

  • Также можно выполнять поиск файлов в диалоговых окнах Импорт и Связь, открываемых из меню Файл, и в диалоговых окнах База данных для преобразования, База данных для сжатия, База данных для сохранения как MDE и База данных для шифрования или дешифрования, открываемых из меню Сервис.


 Удаление сохраненного набора условий поиска

Удаление сохраненного набора условий поиска

  1. Выберите в меню Файл команду Открыть [image] .

  2. Нажмите кнопку Сервис и выполните команду Найти.

  3. Нажмите кнопку Открыть.

  4. Выберите имя набора условий поиска и нажмите кнопку Удалить.

Примечание. Также можно удалять сохраненные наборы условий поиска в диалоговых окнах Импорт и Связь, открываемых из меню Файл, и в диалоговых окнах База данных для преобразования, База данных для сжатия, База данных для сохранения как MDE и База данных для шифрования или дешифрования, открываемых из меню Сервис.


 Поиск файлов по их свойствам

Поиск файлов по их свойствам

  1. Выберите в меню Файл команду Открыть [image] .

  2. Нажмите кнопку Сервис и выполните команду Найти.

  3. В поле Папка выберите диск или папку, в которой будет выполняться поиск.

    Для одновременного поиска более чем на одном диске, введите имена всех дисков в поле Папка, разделив их точкой с запятой. Например: C:\;D:\.

  4. Для поиска во всех подпапках выбранных папок, а также для просмотра папок, содержащих найденные файлы, установите флажок Просмотреть вложенные.

  5. В группе Условия укажите условия поиска, выбрав нужные параметры в полях Свойство, Отношение и Значение, а затем нажмите кнопку Добавить.

    Примечание. При поиске файла Office, отличного от базы данных Microsoft Access или проекта Microsoft Access, можно также выполнять поиск по фразе, содержащейся в этом файле, такой как «яблочный пирог». Для этого следует выбрать в поле Свойство значение Текст или свойство, а в поле Значение ввести фразу, заключенную в прямые кавычки (""). Инструкции по использованию условий и значений при поиске.

  6. Для создания дополнительных условий поиска установите переключатель в положение И или ИЛИ, после чего повторите шаг 5.

  7. Выберите все остальные нужные параметры.

    Для получения дополнительных сведений по каждому параметру нажмите кнопку с вопросительным знаком [image] и выберите нужный параметр.

  8. Чтобы сохранить условия поиска для последующего использования, нажмите кнопку Сохранить, введите имя в поле Имя набора условий и нажмите кнопку OK.

    Имена наборов условий поиска могут иметь длину до 80 символов и включать пробелы.

  9. Чтобы начать поиск, нажмите кнопку Найти.

Примечания

  • При последующих попытках поиска базы данных можно создать специальные условия поиска. Инструкции

  • Найти файл базы данных Microsoft Access или проекта Microsoft Access по образцу содержащегося в нем текста невозможно.

  • Также можно выполнять поиск файлов в диалоговых окнах Импорт и Связь, открываемых из меню Файл, и в диалоговых окнах База данных для преобразования, База данных для сжатия, База данных для сохранения как MDE и База данных для шифрования или дешифрования, открываемых из меню Сервис.


 Поиск файлов по сохраненным условиям поиска

Поиск файлов по сохраненным условиям поиска

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

  1. Выберите в меню Файл команду Открыть [image] .

  2. Нажмите кнопку Сервис и выполните команду Найти.

  3. Нажмите кнопку Открыть.

  4. Выберите имя нужного сохраненного набора условий поиска и нажмите кнопку Открыть.

  5. Нажмите кнопку Найти.

Примечание. Поиск файлов также можно выполнять в диалоговых окнах Импорт и Связь, открываемых из меню Файл, и в диалоговых окнах База данных для преобразования, База данных для сжатия, База данных для сохранения как MDE и База данных для шифрования или дешифрования, открываемых из меню Сервис.


 Использование свойств файлов для поиска файлов

Использование свойств файлов для поиска файлов

Предполагаемые действия

Сведения об использовании свойств файлов для поиска файлов

Документирование характеристик и ключевых слов базы данных

Создание настраиваемых свойств базы данных, используемых при определении местонахождения файла

Изменение или удаление пользовательских свойств базы данных

Просмотр списка объектов в активной базе данных

Просмотр атрибутов файла базы данных

Примечания

  • Все свойства файлов за исключением отображаемых на вкладках Общие и Статистика диалогового окна Свойства базы данных, а также свойств страниц доступа к данным, могут быть изменены при помощи Visual Basic для приложений.

  • При поиске базы данных Microsoft Access, проекта Microsoft Access или страницы доступа к данным в диалоговом окне Открытие файла базы данных можно использовать условия отбора для указания свойств искомого файла. Например, можно задать условие отбора для базы данных, свойство Содержание которой включает таблицу с именем «Поставщики». См. инструкции по выполнению поиска файлов данных с помощью свойств файла.


 Копирование файла

Копирование файла

  1. Нажмите кнопку Открыть [image] .

  2. В поле Папка выберите диск или папку, содержащую файл, который необходимо скопировать.

  3. Дважды щелкая папки в списке папок, откройте ту, в которой содержится нужный файл.

    Если не удается найти нужный файл в списке папок, можно выполнить его поиск.

    Инструкции

  4. Щелкните правой кнопкой файл, который необходимо скопировать, а затем выберите в контекстном меню команду Копировать.

  5. В поле Папка выберите диск или папку, в которую необходимо скопировать файл.

  6. Дважды щелкая папки в списке папок, откройте ту, в которую требуется скопировать файл.

  7. Щелкните правой кнопкой в списке папок (убедившись, что ни один файл не выделен), а затем выберите в контекстном меню команду Вставить.

    Если в списке выбран какой-нибудь файл, то команда Вставить недоступна.


 Удаление файла

Удаление файла

  1. Нажмите кнопку Открыть [image] .

  2. В поле Папка выберите диск или папку, содержащую файл, который нужно удалить.

  3. Дважды щелкая папки в списке папок, откройте ту, в которой содержится нужный файл.

    Если не удается найти нужный файл в списке папок, можно выполнить его поиск.

    Инструкции

  4. Щелкните правой кнопкой файл, который необходимо удалить, затем в контекстном меню выберите команду Удалить.


 Переименование файла

Переименование файла

  1. Нажмите кнопку Открыть [image] .

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

  3. Дважды щелкая папки в списке папок, откройте ту, в которой содержится нужный файл.

    Если не удается найти нужный файл в списке папок, можно выполнить его поиск.

    Инструкции

  4. Щелкните правой кнопкой файл, который требуется переименовать, а затем выберите в контекстном меню команду Переименовать.

  5. Введите новое имя, а затем нажмите ENTER.


 Перемещение файла

Перемещение файла

  1. Нажмите кнопку Открыть [image] .

  2. В поле Папка выберите диск или папку, содержащую файл, который необходимо переместить.

  3. Дважды щелкая папки в списке папок, откройте ту, в которой содержится нужный файл.

    Если не удается найти нужный файл в списке папок, можно выполнить его поиск.

    Инструкции

  4. Щелкните правой кнопкой файл, который необходимо переместить, а затем в контекстном меню выберите команду Вырезать.

  5. В поле Папка выберите диск или папку, в которую необходимо скопировать файл.

  6. Дважды щелкая папки в списке папок, откройте ту, в которую требуется переместить файл.

  7. Щелкните правой кнопкой в списке папок (убедившись, что ни один файл не выделен), а затем выберите в контекстном меню команду Вставить.

    Если в списке выбран какой-нибудь файл, то команда Вставить недоступна.


Просмотр всех типов файлов и их расширений

  1. В папке «Мой компьютер» или в проводнике Windows откройте папку, файлы которой требуется просмотреть.

  2. В меню Вид выберите команду Параметры.

  3. Для просмотра всех типов файлов выберите параметр Отображать все файлы на вкладке Просмотр.

    Для просмотра файлов со всеми расширениями в Windows 95 снимите флажок Не отображать расширения MS-DOS для файлов зарегистрированных типов на вкладке Просмотр.

    Для просмотра файлов со всеми расширениями в Windows 98 снимите флажок Не показывать расширения для зарегистрированных типов файлов на вкладке Вид.

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


 Выбор лучшего расположения рабочих файлов

Выбор лучшего расположения рабочих файлов

При первом открытии в Microsoft Access диалоговых окон Открытие файла базы данных и Файл новой базы данных стандартной рабочей (активной) папкой является папка «Мои документы». Инструкции по изменению стандартной рабочей папки.

Папка «Мои документы»

Папку «Мои документы» удобно использовать для хранения баз данных Microsoft Access, проектов Microsoft Access, страниц доступа к данным и других файлов, с которыми выполняется работа, таких как документы, электронные таблицы и презентации. Для быстрого доступа к папке «Мои документы» щелкните ярлык Мои документы [image] на панели адресов.

Папка «Избранное»

Папка «Избранное» предназначена для хранения ярлыков часто используемых файлов и папок, включая расположенные в удаленных сетях. Исходный файл или папка не перемещаются — вместо этого создается ярлык для перехода к этому файлу или папке. Хранение ярлыков в папке «Избранное» обеспечивает быстрый доступ к любому файлу без необходимости помнить, где он расположен. Для быстрого доступа к файлам из папки «Избранное» щелкните ярлык Избранное [image] на панели адресов. Инструкции по добавлению ярлыка для файла или папки в папку «Избранное».

Папки Web

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


Использование папок «Мои документы» и «Избранное»

Папку «Избранное» используют для сохранения ярлыков часто используемых баз данных, включая и находящиеся на удаленных компьютерах. Исходный файл или папка при этом не перемещается. Ярлык обеспечивает быстрый доступ к файлу без необходимости помнить его место расположения. Для получения дополнительных сведений об автоматическом добавлении ярлыка базы данных в папку «Избранное» нажмите кнопку [image] .

В папке «Мои документы» удобно хранить все исходные собственные базы данных и файлы. Это позволяет одновременно создавать резервные копии всех собственных документов. Папка «Мои документы» является папкой, используемой по умолчанию при создании новых баз данных Microsoft Access, если пользователь не указал другую папку, используемую по умолчанию. Для получения дополнительных сведений об используемой по умолчанию папке нажмите кнопку [image] .


Почему при открытии или создании новой базы данных по умолчанию открывается папка «Мои документы»?

Стандартной рабочей папкой в Microsoft Access является папка «Мои документы». В ней можно хранить все файлы, так что при необходимости достаточно резервировать только одну папку.

При переименовании или перемещении папки «Мои документы» Microsoft Windows запоминает новое имя папки. Это означает, что при перезапуске Microsoft Access папка «Мои документы» будет по-прежнему использоваться по умолчанию вне зависимости от ее имени и места хранения.

При желании пользователь может назначить для использования по умолчанию другую папку. Для получения дополнительных сведений нажмите кнопку [image] .


Задание стандартной рабочей папки

Стандартную рабочую папку для всех программ Office, а также для кнопки и действия Открыть документ Office можно изменить, переименовав папку «Мои документы», переместив ее в новое расположение, или сделав и то, и другое. Изменить стандартную папку только для Microsoft Access можно как в Windows, так и в Windows NT Workstation версии 4.0 или более поздней.

Предполагаемые действия

Изменение стандартной рабочей папки для Office

Изменение стандартной рабочей папки только для Microsoft Access

Не можете сделать выбор?


Изменение стандартной рабочей папки только для Microsoft Access

  1. В меню Сервис выберите команду Параметры, а затем вкладку Общие.

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

    Например, введите c:\work.


Изменение стандартной рабочей папки для Office

  1. Сначала сохраните и закройте все файлы Office, а затем закройте все программы Office.

  2. Для быстрого поиска файлов в проводнике Windows переместите или скопируйте их в папку «Мои документы».

  3. Чтобы переименовать папку «Мои документы», выделите ее в проводнике Windows, щелкните правой кнопкой мыши и выберите в контекстном меню команду Переименовать. Введите новое имя папки и нажмите клавишу ENTER.

    Для перемещения папки «Мои документы» перетащите ее на новую позицию в проводнике Windows.


Просмотр состояния принтера и печатаемых файлов

  • Дважды щелкните значок принтера, расположенный рядом с часами на панели задач Windows.

    По завершении печати файла значок принтера исчезает.


Установка принтера по умолчанию

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

  1. В меню Windows Пуск выберите Настройка, а затем Принтеры.

  2. Щелкните правой кнопкой принтер, который требуется использовать по умолчанию, а затем выберите в контекстном меню команду Использовать по умолчанию.

    Если рядом с этой командой стоит метка, то данный принтер уже используется по умолчанию.


Установка нового принтера

  1. В меню Windows Пуск выберите Настройка, а затем Принтеры.

  2. Дважды щелкните значок Установка принтера [image].

  3. Следуйте инструкциям, выводимым мастером.

    Если необходимо распечатать пробную страницу, убедитесь, что принтер включен и готов к печати.

Совет. Если требуется использовать сетевой принтер, для быстрой его установки можно дважды щелкнуть значок Сетевое окружение на рабочем столе Windows. Дважды щелкните компьютер, к которому подключен сетевой принтер. Щелкните значок принтера, затем выберите в меню Файл команду Установить.


Базы данных: что это такое и как они работают

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Проектирование базы данных

Проектирование базы данных

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

См. сведения о базах данных Microsoft Access и о том, как они работают.

См. сведения о проектах Microsoft Access.

Этапы проектирования базы данных

Данный раздел содержит справочные сведения о следующих основных этапах проектирования базы данных.

  1. Определение цели создания базы данных

  2. Определение таблиц, которые должна содержать база данных

  3. Определение необходимых в таблице полей

  4. Определение полей с уникальными значениями в каждой записи

  5. Определение связей между таблицами

  6. Усовершенствование структуры базы данных

  7. Ввод данных и создание других объектов базы данных

  8. Использование средств анализа Microsoft Access

1 Определение цели создания базы данных

На первом этапе проектирования базы данных необходимо определить назначение базы данных, как она будет использоваться и какие сведения она должна содержать. Зная это, можно определить, какие сведения будут храниться в таблицах (темы) и в полях таблиц (подробности по темам).

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

Возврат в начало

2 Определение таблиц, которые должна содержать база данных

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

Для проектирования таблиц вовсе не обязательно использовать Microsoft Access. Сначала лучше разработать структуру на бумаге. При разработке таблиц рекомендуется руководствоваться следующими основными принципами.

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

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

  • Каждая таблица должна содержать информацию только на одну тему.

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

См. сведения о таблицах баз данных Microsoft Access и о том, как они работают. См. сведения об оптимизации общей производительности таблиц в базе данных Access.

См. сведения об оптимизации производительности в проекте Microsoft Access.

Возврат в начало

3 Определение необходимых в таблице полей

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

  • Каждое поле должно быть связано с темой таблицы.

  • Не рекомендуется включать в таблицу данные, которые являются результатом выражения.

  • Таблица должна содержать все необходимые сведения.

  • Данные следует разбить на наименьшие логические единицы (например, поля «Имя» и «Фамилия», а не общее поле «Имя»).

См. сведения о доступных в Microsoft Access типах данных для полей.

Сравните типы данных полей в базе данных Access и в проекте Access.

Возврат в начало

4 Определение полей с уникальными значениями в каждой записи

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

См. сведения о ключевых полях в базе данных Microsoft Access.

См. сведения о ключевых полях в базе данных Microsoft SQL Server.

Возврат в начало

5 Определение связей между таблицами

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

См. сведения о связях в базе данных Microsoft SQL Server.

Может оказаться полезным изучить связи в существующей базе данных с хорошей структурой. Например, откройте учебную базу данных «Борей» и выберите команду Схема данных в меню Сервис, чтобы просмотреть связи между таблицами этой базы данных. Также можно просмотреть связи в учебном проекте Access и базе данных Microsoft SQL Server с именем «Northwind».

См. сведения о целостности данных.

Возврат в начало

6 Усовершенствование структуры базы данных

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

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

См. сведения о запросах в базе данных Microsoft Access и о том, как они работают.

См. сведения о работе с представлениями в базе данных Microsoft SQL Server.

Возврат в начало

7 Ввод данных и создание других объектов базы данных

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

См. сравнительную характеристику объектов баз данных в проекте Microsoft Access и в базе данных Access.

См. сведения об импорте данных в базу данных Access.

Возврат в начало

8 Использование средств анализа Microsoft Access

В Microsoft Access существует два инструмента, помогающих в усовершенствовании структуры баз данных. Мастер анализа таблиц может проанализировать структуру таблицы, предложить подходящие новые структуры и связи, а также разделить таблицу на новые связанные таблицы, если это имеет смысл. Для получения сведений о выполнении этого мастера нажмите кнопку [image] .

Анализатор быстродействия исследует всю базу данных, дает рекомендации по ее улучшению, а также осуществляет их. Для получения сведений об использовании анализатора быстродействия нажмите кнопку [image] .

Дополнительным источником идей по проектированию базы данных Microsoft Access может стать структура учебной базы данных «Борей» или одной из баз данных, созданных при помощи мастера баз данных. Для получения сведений об использовании этого мастера нажмите кнопку [image] .

Дополнительные сведения по анализу базы данных Microsoft SQL Server с целью повышения ее производительности см. в документации по Microsoft SQL Server.

Возврат в начало


Создание базы данных

Предполагаемые действия

Создание базы данных с помощью мастера

Создание базы данных без помощи мастера

Сведения о создании базы данных открытием файла данных в другом формате

Общие сведения о базах данных

Сведения о проектировании базы данных

Не можете сделать выбор?


 Создание приложения

Создание приложения

После знакомства с Microsoft Access и процедурами создания таблиц, запросов, форм, отчетов, пользовательских панелей команд и т.д. можно приступать к разработке макросов и программ на языке Visual Basic для приложений, с помощью которых эти объекты объединяются в единое приложение. В приложении связанные между собой задачи организуются таким образом, чтобы пользователи могли сконцентрироваться на конкретной работе, а не на изучении механизма работы приложения или программ, обеспечивающих его работу. Исчерпывающие сведения о разработке приложений см. в книге Building Applications with Forms and Reports. По некоторым темам справку можно получить через помощника.

Ряд характеристик приложения определяется настройками, задаваемыми в диалоговом окне Параметры запуска (меню Сервис). Например, в этом диалоговом окне определяется форма, выводящаяся на экран при запуске приложения, а также текст строки заголовка приложения. Дополнительные сведения см. в руководстве Building Applications или нажмите кнопку [image] .

Если планируется распространение приложения среди других пользователей, может потребоваться установка системы безопасности для защиты созданных объектов и данных в таблицах. Дополнительные сведения о защите см. в руководстве Building Applications или нажмите кнопку [image] .

После распространения приложения пользуйтесь средствами поддержки, встроенными в Microsoft Access, для периодического сжатия и восстановления базы данных. Обязательно сделайте эти средства доступными для пользователей приложения на удаленных рабочих станциях. Дополнительные сведения см. в руководстве Building Applications. Для получения сведений о восстановлении и сжатии баз данных нажмите кнопку [image] .

Примечание. В дополнение к средствам и справочной информации, доступным в Microsoft Access для помощи в разработке приложений, выпуск Microsoft Office 2000 для разработчиков содержит инструменты, помогающие разрабатывать приложения, совместимые с Microsoft Windows и Microsoft Office. Для получения сведений об инструментах, включенных в выпуск Microsoft Office 2000 для разработчиков, нажмите кнопку [image] .


 Просмотр и изменение общих свойств объекта базы данных

Просмотр и изменение общих свойств объекта базы данных

  1. В списке Объекты окна базы данных выберите тип объекта базы данных, свойства которого нужно изменить.

  2. Выберите объект базы данных, свойства которого нужно изменить.

  3. Нажмите кнопку Свойства [image] на панели инструментов.

Для получения справки о каждом элементе диалогового окна нажмите кнопку со знаком вопроса [image] и щелкните элемент.

Примечания

  • Содержимое поля Описание диалогового окна Свойства выводится в столбце Описание окна базы данных при нажатии кнопки Таблица [image] на панели инструментов.

  • В проекте Microsoft Access нельзя изменять свойства таблиц, представлений, схемы базы данных или сохраненных процедур, так как эти объекты находятся в базе данных Microsoft SQL Server. Допускается изменение свойств форм, отчетов, макросов и модулей, так как эти объекты находятся в самом проекте Access, а не в базе данных Microsoft SQL Server. Можно также изменять свойства страницы доступа к данным.


 Переименование, удаление, копирование или перемещение базы данных Access или проекта Access

Переименование, удаление, копирование или перемещение базы данных Access или проекта Access

Предполагаемые действия

Переименование базы данных или проекта Microsoft Access

Удаление базы данных Access или проекта Access

Копирование и перемещение базы данных Access или проекта Access

Важно!

  • Если при переименовании, удалении, копировании или перемещении базы данных Microsoft Access другие базы содержат объекты, связанные с ней, следует использовать диспетчер связанных таблиц в этих базах данных для обновления связей. Иначе при попытке использовать связанные объекты будет выдано сообщение об ошибке.

  • Связи страницы доступа к данным нуждаются в обновлении только при переименовании, удалении или перемещении .html файлов страницы доступа к данным. Для получения дополнительной информации, нажмите кнопку [image] .


 Открытие базы данных Microsoft Access

Открытие базы данных Microsoft Access

  1. Выберите в меню Файл команду Открыть [image] .

  2. Щелкните ярлык на панели адресов или выберите в поле Папка диск или папку, в которой содержится нужная база данных Microsoft Access.

  3. Дважды щелкая папки в списке папок, откройте ту, в которой содержится нужная база данных.

    Если найти нужную базу данных не удается, нажмите кнопку Сервис, а затем выберите команду Найти [image] . В диалоговом окне Найти введите дополнительные условия поиска. Для получения справки о каком-либо параметре нажмите кнопку со знаком вопроса [image], а затем щелкните нужный параметр. См. сведения о поиске файлов.

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

    • Чтобы открыть базу данных в монопольном режиме, нажмите кнопку со стрелкой рядом с кнопкой Открыть и выберите вариант Монопольно.

    • Чтобы открыть базу данных только для чтения, то есть для просмотра без возможности редактирования, нажмите кнопку со стрелкой рядом с кнопкой Открыть и выберите вариант Открыть для чтения.

    • Чтобы открыть базу данных только для чтения и в то же время запретить ее открытие другими пользователями, нажмите кнопку со стрелкой рядом с кнопкой Открыть и выберите вариант Монопольно для чтения.

    Для получения справки о каком-либо параметре диалогового окна нажмите кнопку с вопросительным знаком [image], а затем щелкните нужный параметр.

Примечания

  • Чтобы просмотреть в диалоговом окне Открытие файла базы данных список ярлыков баз данных, открывавшихся ранее, щелкните ярлык Журнал [image] на панели адресов.

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

  • Microsoft Access поддерживает автоматическое создание ярлыков в папке «Избранное», с помощью которых впоследствии можно открывать базы данных непосредственно. Для получения дополнительных сведений нажмите кнопку [image] . Для получения сведений о создании ярлыков вручную нажмите кнопку [image] .

  • Существует возможность непосредственного открытия файлов данных внешних форматов, таких как dBASE, Paradox, Microsoft Exchange, Microsoft Excel; также можно непосредственно открывать любые источники данных ODBC, такие как Microsoft SQL Server или Microsoft FoxPro. Microsoft Access автоматически создает базу данных Access в одной папке с файлом данных и добавляет связи с каждой таблицей внешней базы данных. См. сведения об импорте и связывании данных.


 Автоматическое создание ярлыка для базы данных Access или проекта Access в папке «Избранное»

Автоматическое создание ярлыка для базы данных Access или проекта Access в папке «Избранное»

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

  1. Нажмите кнопку Открыть [image] на панели инструментов.

  2. Чтобы создать ярлык для папки, вложенной папки, базы данных Access или проекта Access, который должен присутствовать в списке поля Папка, выберите нужный файл или папку, а затем в меню Сервис диалогового окна «Открытие файла базы данных» выберите команду Добавить в папку "Избранное".

Совет. Чтобы быстро открыть папку «Избранное» после запуска Microsoft Access, в диалоговом окне Открытие файла базы данных щелкните значок Избранное [image] . Чтобы открыть файл или папку из папки «Избранное», выберите соответствующий ярлык и нажмите кнопку Открыть.


 Добавление текущей базы данных Access в папку «Избранное»

Добавление текущей базы данных Access в папку «Избранное»

Текущую базу данных Microsoft Access можно добавить в папку «Избранное», чтобы для последующего ее открытия не требовалось помнить путь, введенный для открытия файла в первый раз.

  1. Если панель инструментов Web не отображается, выберите в меню Вид команду Панель инструментов, а затем подкоманду Web.

  2. На панели инструментов Web выберите команду Избранное, а затем Поместить в папку «Избранное».

  3. Нажмите кнопку Добавить.


Создание гиперссылок или ярлыков для файлов, папок и Web-страниц

Предполагаемые действия

Создание поля для хранения гиперссылок в базе данных Microsoft Access

Создание столбца для хранения гиперссылок в проекте Microsoft Access

Создание гиперссылки в форме или на странице доступа к данным

Присваивание гиперссылки кнопке панели инструментов или команде меню

Добавление ярлыка для файла или папки в папку «Избранное»

Добавление текущего файла в папку «Избранное»

Не можете сделать выбор?


 Открытие базы данных Access или проекта Access в сети с помощью адреса UNC

Открытие базы данных Access или проекта Access в сети с помощью адреса UNC

  1. Выберите в меню Файл команду Открыть [image] .

  2. В поле Имя файла введите адрес UNC нужного сетевого диска, а затем нажмите клавишу ENTER.

    Например, чтобы открыть базу данных Microsoft Access или проект Microsoft Access на сетевом диске «Files» сервера «Computer1», введите \\Computer1\Files.

  3. В списке папок найдите и откройте нужную базу данных Access или проект Access.

Совет. Чтобы открыть базу данных Access или проект Access на сетевом диске, недавно открывавшемся с использованием адреса UNC, щелкните стрелку рядом с полем Имя файла, а затем выберите нужный адрес UNC.


 Изменение представления объектов в окне базы данных

Изменение представления объектов в окне базы данных

  1. В окне базы данных нажмите одну из следующих кнопок на панели инструментов этого окна: Крупные значки [image] , Мелкие значки [image] , Список [image] или Таблица [image] .

  2. Чтобы отсортировать объекты, выберите в меню Вид команду Упорядочить значки и одну из следующих подкоманд: по имени, по типу, по дате создания или по дате изменения.

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


 Изменение способа выделения и открытия объектов базы данных

Изменение способа выделения и открытия объектов базы данных

По умолчанию, выделение объекта базы данных в окне базы данных осуществляется одинарным щелчком кнопки мыши, а его открытие — двойным щелчком. Этот стандартный режим можно изменить, чтобы открывать объект одним щелчком, а выделять — простым наведением на него указателя.

  1. Выберите команду Параметры в меню Сервис.

  2. На вкладке Вид выберите переключатель Одним щелчком.

Совет. Объект базы данных можно также выбрать в окне базы данных путем ввода имени объекта.


 Обновление окна базы данных

Обновление окна базы данных

Обновление окна базы данных обеспечивает отображение текущего списка объектов в списке «Объекты».

  1. В базе данных Microsoft Access или проекте Microsoft Access переключитесь в окно базы данных, если это еще не сделано. Для переключения в окно базы данных из любого другого окна можно воспользоваться клавишей F11.

  2. Нажмите клавишу F5, чтобы обновить окно базы данных

Примечание. Microsoft Access автоматически обновляет окно базы данных при открытии базы данных Access или проекта Access, либо при создании нового объекта базы данных в базе данных Microsoft SQL Server из подключенного к ней проекта Access.


 Отображение или скрытие ярлыков для создания новых объектов базы данных

Отображение или скрытие ярлыков для создания новых объектов базы данных

При выборе в списке Объекты в окне базы данных конкретного типа объекта, список объектов будет содержать ярлыки, служащие для создания новых объектов базы данных этого типа. Например, если выбрать тип Отчеты [image], то в списке объектов появятся ярлыки Создание отчета в режиме конструктора и Создание отчета с помощью мастера. Эти ярлыки новых объектов можно скрывать и отображать.

  1. В меню Сервис выберите команду Параметры.

  2. Откройте вкладку Вид.

  3. Выполните одно из следующих действий.

    Чтобы отобразить ярлыки новых объектов в окне базы данных, установите флажок новые ярлыки объектов.

    Чтобы скрыть ярлыки новых объектов, сбросьте флажок новые ярлыки объектов.


 Использование групп для организации объектов в окне базы данных

Использование групп для организации объектов в окне базы данных

В окне базы данных можно организовать различные типы объектов базы данных в группы.

Предполагаемые действия

Сведения о группах

Создание группы

Удаление или переименование групп

Добавление объекта базы данных в группу

Переименование или удаление объекта базы данных в группе


Копирование объекта базы данных

Предполагаемые действия

Использование команды «Копировать» для создания копии объекта базы данных

Использование команды «Сохранить как» для копирования объекта базы данных

Сохранение копии объекта базы данных как объекта другого типа

Не можете сделать выбор?


 Удаление объекта базы данных

Удаление объекта базы данных

  1. Закройте объект базы данных, который нужно удалить. При работе с сетевой (общей) базой данных убедитесь, что все пользователи закрыли этот объект.

  2. В списке Объекты в окне базы данных выберите тип объекта базы данных, который нужно удалить.

  3. Выберите объект в списке «Объекты» и нажмите кнопку DELETE.

    Примечание. При удалении страницы доступа к данным из текущей базы данных Microsoft Access спросит, нужно ли удалить ссылку и страницу, или же только ссылку. Удаление ссылки лишь убирает страницу из текущей базы данных; сама HTML-страница остается на компьютере.


 Переименование объекта базы данных

Переименование объекта базы данных

  1. Закройте объект базы данных, который требуется переименовать. При работе в многопользовательской среде убедитесь, что все пользователи закрыли этот объект.

  2. В списке Объекты в окне базы данных выберите тип объекта базы данных, который требуется переименовать.

  3. Щелкните нужный объект правой кнопкой и выберите команду Переименовать.

  4. Введите новое имя объекта в соответствии с соглашением об именах объектов Microsoft Access и нажмите клавишу ENTER.

Примечание. При переименовании страницы доступа к данным изменяется имя ссылки на файл HTML, но не имя самого файла HTML. Для переименования файла HTML следует использовать окно «Мой компьютер» или проводник Windows.

См. сведения о сохранении изменений в сетевой (общей) базе данных Access.


 Сохранение объекта базы данных

Сохранение объекта базы данных

  1. Нажмите кнопку Сохранить [image] на панели инструментов.

  2. При первом сохранении объекта базы данных введите его имя в соответствии с соглашением об именах объектов Microsoft Access в диалоговое окно Сохранение и нажмите кнопку OK. Если нажать кнопку Отмена в диалоговом окне Сохранение, объект не будет сохранен.

Примечания

  • Не обязательно сохранять новые данные в записях. Access автоматически сохраняет запись при выполнении следующих действий: перемещение фокуса на другую запись; закрытие активной формы, таблицы, страницы доступа к данным или базы данных; выход из Access.

  • Если при попытке сохранения нового запроса выводится сообщение о том, что введенное имя уже используется для другого объекта, попробуйте указать другое имя. База данных может содержать запросы, созданные в программе Visual Basic для приложений (VBA) с объектами данных ActiveX (ADO). Запросы, созданные с использованием ADO, не отображаются в списке «Объекты» в окне базы данных.

  • См. сведения о сохранении изменений в сетевой (общей) базе данных Access.

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


 Просмотр, печать, вывод в заданном формате или сохранение структурных характеристик объектов базы данных

Просмотр, печать, вывод в заданном формате или сохранение структурных характеристик объектов базы данных

  1. В меню Сервис выберите команду Анализ и подкоманду Архивариус.

  2. Перейдите на вкладку, соответствующую типу объекта базы данных, который требуется просмотреть или вывести на печать.

    Для отображения полного списка объектов базы данных перейдите на вкладку Все объекты.

  3. Выделите объекты, описание которых требуется просмотреть или вывести на печать.

  4. Нажмите кнопку Параметры, чтобы указать элементы объекта, которые следует распечатать, и нажмите кнопку OK.

  5. Нажмите кнопку OK.

  6. Теперь можно выполнить одно из следующих действий.
    • Чтобы распечатать описания, нажмите кнопку Печать [image] на панели инструментов.

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

    • Для того чтобы вывести описания в файл HTML, лист Microsoft Excel, файл формата RTF, текстовый файл MS-DOS или файл в формате снимка отчета, выберите команду Экспорт в меню Файл, а затем завершите операцию в диалоговом окне Экспорт объекта: Отчет 'ИмяОтчета' в.


 Печать объекта базы данных с помощью ярлыка

Печать объекта базы данных с помощью ярлыка

После создания ярлыка для таблицы, запроса, формы или отчета можно вывести этот объект на печать непосредственно из значка ярлыка.

  1. Щелкните ярлык правой кнопкой.

  2. Выберите в контекстном меню команду Печать.

Совет. Чтобы быстро распечатать объект из ярлыка, можно перетащить значок ярлыка на значок принтера на рабочем столе или в папке «Принтеры».


 Печать таблицы, запроса или формы в режиме таблицы

Печать таблицы, запроса или формы в режиме таблицы

Печать всего объекта в режиме таблицы

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

  2. Если база данных содержит подтаблицы, которые тоже требуется вывести на печать, щелкните маркер развертывания (+) слева от каждой строки, подтаблицу которой требуется развернуть.

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

  3. Чтобы изменить перед распечаткой параметры в диалоговом окне Печать, выберите команду Печать в меню Файл и укажите нужные параметры.

    Чтобы выполнить печать сразу, без изменения параметров печати в диалоговом окне Печать, нажмите кнопку Печать [image] на панели инструментов.

Печать определенных записей объекта

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

  2. Выделите записи, которые требуется распечатать.

  3. В меню Файл выберите команду Печать и параметр Выделенные записи.

Примечания

  • Перед распечаткой можно просмотреть таблицу в режиме предварительного просмотра. Для этого нажмите кнопку Предварительный просмотр [image] на панели инструментов.

  • Для получения сведений о том, как быстро распечатать объект из ярлыка, нажмите кнопку [image] .


 Создание ярлыка для открытия объекта базы данных с рабочего стола или из папки

Создание ярлыка для открытия объекта базы данных с рабочего стола или из папки

Для открытия объекта базы данных, расположенного в базе данных Microsoft Access или в проекте Microsoft Access, которые хранятся на локальном компьютере или в сети (на файловом сервере или в общей папке), можно создать ярлык.

Создание ярлыка путем перетаскивания объекта

  • Можно быстро создать ярлык, перетащив объект из окна базы данных на рабочий стол или в папку. Место, в которое перетаскивается ярлык, должно быть видимым. (Если до этого окно Access было развернуто, уменьшите его размер.)

Создание ярлыка с помощью команды «Создать ярлык»

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

  2. Щелкните правой кнопкой мыши нужный объект и выберите команду Создать ярлык.

  3. Чтобы создать ярлык не на рабочем столе, введите новый путь в поле Размещение или нажмите кнопку Обзор, чтобы выбрать путь. Например, можно сохранить ярлык в папке «Избранное», где хранятся ярлыки для часто используемых программ и объектов.

  4. При создании ярлыка для объекта базы данных, находящейся в сети, Microsoft Access устанавливает флажок Сетевая база данных и вводит сетевой путь в поле полный сетевой путь. Если впоследствии база данных будет перемещена, можно будет ввести в это поле новый сетевой путь в следующем формате:

    \\сервер\общая_папка\имя_файла

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

  5. Нажмите кнопку OK.

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

Примечания

  • Если база данных, на объект которой указывает имеющийся ярлык, была перемещена, следует удалить этот ярлык и создать новый.

  • Чтобы удалить ярлык, выберите его и нажмите клавишу DELETE. При удалении ярлыка объект, который открывался с его помощью, не удаляется.


 Автоматическое исправление ошибок, возникающих в результате переименования объектов

Автоматическое исправление ошибок, возникающих в результате переименования объектов

  1. В меню Сервис выберите команду Параметры.

  2. На вкладке Общие выполните следующие действия.
    • Для того чтобы Microsoft Access отслеживал сведения, необходимые для выполнения автозамены имен, но не предпринимал никаких действий, установите флажок Отслеживать автозамену имен.

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

    • Для того чтобы Access вел журнал изменений, вносимых при каждом выполнении автозамены имен, установите флажок Журнал изменений автозамены имен. Access сохраняет изменения в таблице с именем «Журнал автозамены имен». В эту таблицу записываются все изменения.

Примечание. Автозамена имен позволяет устранить все несоответствия, возникающие при переименовании форм или других объектов. Однако автозамена имен не позволяет восстанавливать объекты в определенных условиях. См. сведения о проблемах, не устраняемых автозаменой имен.


 Проблемы, устраняемые и не устраняемые автозаменой имен в базе данных Access

Проблемы, устраняемые и не устраняемые автозаменой имен в базе данных Access

Данный раздел содержит справочные сведения по следующим вопросам.

Обзор

Что восстанавливает автозамена имен

Что не восстанавливает автозамена имен

Обзор

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

При открытии формы или другого объекта Access автоматически находит и устраняет несоответствия между формой и другими объектами, от которых она зависит. Например, при открытии формы, присоединенной к таблице, Access сравнивает штампы даты/времени таблицы и формы. Если они отличаются, Access выполняет автозамену имен.

Для того чтобы воспользоваться преимуществами автозамены имен, необходимо иметь возможность сохранения изменений в форме, отчете или другом объекте, для которого выполняется автозамена имен. Изменения в объекте можно сохранять при наличии разрешений на изменение структуры этого объекта, доступа к базе данных на запись, а также монопольного доступа для внесения изменений. Если сохранить объект не удается, то исправления не сохраняются при закрытии объекта. Автозамена имен вносит изменения при каждом открытии объекта, но не может их сохранить до тех пор, пока объект не будет открыт и сохранен пользователем, имеющим разрешения на изменение структуры.

В базах данных, созданных в Access 2000, автозамена имен включена по умолчанию. Однако для баз данных, преобразованных в формат Access 2000 из предыдущих версий автозамену имен необходимо включить вручную. См. инструкции по автоматическому исправлению ошибок, возникающих при переименовании.

Возврат в начало

Что восстанавливает автозамена имен

Автозамена имен устраняет все несоответствия, возникающие при переименовании форм, отчетов, таблиц, запросов или элементов управления в формах и отчетах. Если при создании форм и отчетов автозамена имен была выключена, то при включении автозамены имен Access устранит все новые несоответствия, в то время как пользователь может продолжать работу с объектами. Если на момент включения автозамены имен один из объектов уже содержит ошибку переименования, то ссылки на этот объект следует исправить вручную. Для форм и отчетов, содержащих программы Visual Basic, Access исправляет ссылки на саму форму, но не исправляет ссылки на объекты в проекте Visual Basic.

Возврат в начало

Что не восстанавливает автозамена имен

В некоторых ситуациях автозамена имен не может восстановить ссылки на переименованные объекты; например, невозможно следующее.

  • Изменение ссылок в неправильных инструкциях SQL.

  • Исправление ссылок в программах Visual Basic.

  • Исправление ссылок в связанных таблицах при переименовании таблицы или полей в серверной части базы данных, состоящей из клиентской и серверной частей.

  • Работа в реплицированной базе данных. При репликации базы данных Access отключает автозамену имен. Включить автозамену имен в основной реплике или в реплике базы данных невозможно.

  • Восстановление ссылок на макросы в меню или на панели инструментов, включая свойства меню и панелей инструментов, в качестве значений которых заданы имена макросов.

  • Работа в проекте Microsoft Access.

Возврат в начало


 Создание резервной копии базы данных

Создание резервной копии базы данных

  1. Закройте базу данных. При работе с сетевой (общей) базой данных убедитесь, что все пользователи закрыли ее.

  2. Скопируйте файл базы данных (файл MDB) на резервный носитель с помощью проводника Windows, папки «Мой компьютер», программы архивирования файлов Microsoft Backup, команды MS-DOS copy или других программ архивирования.

Примечания

  • Если при создании резервной копии на гибком диске файл базы данных превышает размер диска, то с помощью проводника Windows или папки «Мой компьютер» создать резервную копию будет нельзя; необходимо использовать программу Microsoft Backup или другие программы, позволяющие копировать файлы на несколько гибких дисков.

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

  • Для архивирования отдельных объектов базы данных можно создать пустую базу данных, а затем импортировать в нее нужные объекты из исходной базы данных.

  • Нельзя использовать инструкцию FileCopy в другой работающей копии Microsoft Access для архивирования базы данных, открытой в первой копии.


Восстановление базы данных из резервной копии

  • В зависимости от способа, который был использован для создания резервной копии, скопируйте резервный файл в папку базы данных с помощью проводника Windows, папки «Мой компьютер», программы резервирования файлов Microsoft Backup, команд MS-DOS copy или restore или других программ резервирования.

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

Для получения сведений о переименовании файла базы данных нажмите кнопку [image] .


 Сжатие базы данных Access или проекта Access

Сжатие базы данных Access или проекта Access

Для обеспечения оптимальной производительности регулярно выполняйте сжатие баз данных Microsoft Access и проектов Microsoft Access. Средства сжатия и восстановления были усовершенствованы и теперь интегрированы в единый процесс, что делает их более защищенными и эффективными. См. сведения о сжатии базы данных Access или проекта Access.

Предполагаемые действия

Сжатие текущей базы данных Access или проекта Access

Сжатие закрытой базы данных Access или проекта Access

Автоматическое сжатие базы данных Access или проекта Access при их закрытии


 Оптимизация быстродействия

Оптимизация быстродействия

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

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

Предполагаемые действия

Запуск анализатора быстродействия

Повышение быстродействия Microsoft Access и системы пользователя

Повышение быстродействия для таблиц

Повышение быстродействия для связанных таблиц

Повышение быстродействия для внешней базы данных SQL

Повышение быстродействия при работе в сети

Повышение быстродействия для запросов

Повышение быстродействия для фильтров

Повышение быстродействия при поиске и замене данных

Повышение быстродействия для форм и подчиненных форм

Повышение быстродействия для списка и поля со списком

Повышение быстродействия для отчетов и подчиненных отчетов

Повышение быстродействия для страниц доступа к данным

Повышение быстродействия путем преобразования базы данных в файл MDE

Повышение быстродействия программ Visual Basic для приложений

Оптимизация проекта Microsoft Access

Автоматическое сжатие базы данных Access или проекта Access при их закрытии


 Разбиение таблицы на несколько связанных таблиц с помощью мастера анализа таблиц

Разбиение таблицы на несколько связанных таблиц с помощью мастера анализа таблиц

Если в базе данных Microsoft Access имеется таблица, в одном или нескольких полях которой содержатся повторяющиеся сведения, можно воспользоваться мастером анализа таблиц для разбиения этих данных на связанные таблицы с целью повышения эффективности хранения данных. Этот процесс называют нормализацией таблиц.

  1. В меню Сервис выберите команду Анализ и подкоманду Таблица.

  2. Следуйте инструкциям мастера анализа таблиц.

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

Примечание. В проекте Microsoft Access таблицы располагаются в базе данных Microsoft SQL Server; поэтому мастер анализа таблиц недоступен.


Таблицы: что это такое и как они работают

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


Способы настройки таблицы

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Создание таблицы

Создание таблицы

В Microsoft Access существует два способа создания таблицы. Для ввода собственных данных можно создать пустую таблицу. Можно также создать таблицу, используя уже существующие данные из другого источника.

Предполагаемые действия

Создание всех таблиц, форм и отчетов одной операцией

Выбор полей новой таблицы из существующих таблиц

Автоматическое создание таблиц по имеющимся данным

Самостоятельное создание таблицы

Создание новой таблицы на основании уже существующих данных

Дополнительные сведения о таблицах и работе с ними


 Открытие таблицы

Открытие таблицы

  1. В окне базы данных щелкните значок Таблицы [image] в списке Объекты.

  2. Выберите имя таблицы, которую требуется открыть.

  3. Чтобы открыть таблицу в режиме конструктора, нажмите кнопку Конструктор на панели инструментов окна базы данных.

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

Примечания

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

  • Для получения сведений о создании ярлыка, открывающего таблицу прямо с рабочего стола или из папки, нажмите кнопку [image] .


 Переключение между режимами отображения таблицы

Переключение между режимами отображения таблицы

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

  • Нажмите кнопку Вид на панели инструментов.

Кнопка Вид является кнопкой переключения. Если таблица открыта в режиме таблицы, то на экране отображается только кнопка переключения в режим конструктора, и наоборот.


 Оптимизация работы с таблицами

Оптимизация работы с таблицами

Существует несколько возможностей оптимизировать работу с таблицами. Помимо перечисленных ниже советов, можно использовать анализатор быстродействия для анализа определенных таблиц в базе данных. Для получения дополнительных сведений по работе с анализатором быстродействия нажмите кнопку [image] .

Разрабатывайте таблицы, не содержащие избыточных данных. Хорошая структура базы данных является необходимым исходным условием для эффективного получения и обновления данных. Если все же таблицы содержат слишком много данных, используйте мастер анализа таблиц для разделения их на связанные таблицы, что повысит эффективность хранения данных. Для получения дополнительных сведений нажмите кнопку [image] .

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

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

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

В составном индексе, включающем несколько полей, используйте ровно столько полей, сколько для него необходимо. Для получения дополнительных сведений по использованию индексов нажмите кнопку [image] .


 Определение условий на значения для управления сохранением записи

Определение условий на значения для управления сохранением записи

  1. Откройте таблицу в режиме конструктора.

  2. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств таблицы.

  3. В ячейке свойства Условие на значение (ValidationRule) введите необходимое условие или нажмите кнопку построителя [image] , чтобы создать условие на значение при помощи построителя выражений.

    Например, чтобы убедиться, что дата, введенная в поле «КонечнаяДата», находится в пределах 30 дней от даты, указанной в поле «ДатаЗаказа», определите условие на значения с помощью следующего выражения: «[КонечнаяДата]<=[ДатаЗаказа]+30».

  4. В ячейке свойства Сообщение об ошибке (ValidationText) введите сообщение, которое должно выдаваться на экран, если данные не соответствуют указанному условию.

    Например, для выражения «[КонечнаяДата]<=[ДатаЗаказа]+30» можно ввести сообщение «Дата должна быть в пределах 30 дней от даты заказа».

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

Примечания

  • Для таблицы можно указать только одно выражение, определяющее условия на значения. Если же необходимо наложить более одного условия, то в ячейке свойства Условие на значение (ValidationRule) выражения можно объединить при помощи оператора And.

  • Условия на значения полей проверяются при вводе или изменении данных в таблице в режиме таблицы, в форме, связанной с таблицей, в запросе на добавление, в запросе на обновление, в программе Visual Basic для приложений или при импорте данных из другой таблицы.

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


Запрос мастера анализа таблиц

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Добавление поля в таблицу в режиме конструктора

Добавление поля в таблицу в режиме конструктора

  1. Откройте таблицу в режиме конструктора.

  2. Чтобы вставить в таблицу поле, щелкните строку, над которой его нужно поместить, и нажмите кнопку Добавить строки [image] на панели инструментов.

    Чтобы добавить поле в конец таблицы, выберите первую пустую строку.

  3. В столбце Имя поля введите имя, придерживаясь соглашений об именах объектов Microsoft Access.

  4. В столбце Тип данных можно оставить настройку по умолчанию (Текстовый) или выбрать из раскрывающегося списка ячейки столбца Тип данных другой тип данных.

    Для получения сведений о выборе подходящего типа данных нажмите кнопку [image] .

  5. В столбце Описание введите описание данных, которые будет содержать это поле. Текст описания будет выводиться в строке состояния при добавлении данных в поле, а также будет включен в описание объекта таблицы. Вводить описание не обязательно.

  6. Если нужно, задайте значения свойств поля в нижней части окна.

    Инструкции

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


 Данные, используемые в поле таблицы

Данные, используемые в поле таблицы

При выборе типа данных, используемых в поле, необходимо учитывать следующее.

  • Какие значения должны отображаться в поле. Например, нельзя хранить текст в поле, имеющем числовой тип данных.

  • Сколько места необходимо для хранения значений в поле.

  • Какие операции должны производиться со значениями в поле. Например, суммировать значения можно в числовых полях и в полях, имеющих денежный формат, а значения в текстовых полях и полях объектов OLE нельзя.

  • Нужна ли сортировка или индексирование поля. Сортировать и индексировать поля объектов OLE невозможно.

  • Необходимо ли использование полей в группировке записей в запросах или отчетах. Поля объектов OLE использовать для группировки записей нельзя.

  • Каким образом должны быть отсортированы значения в поле. Числа в текстовых полях сортируются как строки цифр (1, 10, 100, 2, 20, 200 и т.д.), а не как числовые значения. Для сортировки чисел как числовых значений используйте числовые поля или поля, имеющие денежный формат. Также многие форматы дат невозможно отсортировать надлежащим образом, если они были введены в текстовое поле. Для обеспечения сортировки используйте поле типа «Дата/время».

  • Просмотрите сводку типов данных полей, доступных в Microsoft Access.


 Копирование характеристик поля в режиме конструктора таблицы

Копирование характеристик поля в режиме конструктора таблицы

  1. Откройте таблицу в режиме конструктора.

  2. Выделите одно или несколько полей, которые необходимо скопировать.

    Для выделения одного поля щелкните область выделения строки этого поля.

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

  3. Нажмите кнопку Копировать [image] на панели инструментов, а затем щелкните первую пустую строку.

  4. Нажмите кнопку Вставить [image] на панели инструментов.

  5. Задайте новое имя для скопированного поля.

Примечание. Описанные здесь действия копируют только определение полей; они не копируют какие-либо значения полей.


 Создание текстового поля или поля МЕМО

Создание текстового поля или поля МЕМО

  1. Откройте таблицу в режиме конструктора.

  2. Чтобы вставить в таблицу поле, щелкните строку, над которой его нужно поместить, и нажмите кнопку Добавить строки [image] на панели инструментов.

    Чтобы добавить поле в конец таблицы, щелкните первую пустую строку.

  3. В столбце Имя поля введите имя, следуя соглашениям об именах объектов Microsoft Access.

  4. В столбце Тип данных нажмите кнопку со стрелкой и выберите либо Текстовый тип, либо тип Поле МЕМО. Для получения дополнительных сведений о том, какой тип лучше использовать в конкретном случае, нажмите кнопку [image] .

  5. При необходимости установите другие свойства поля.

    Инструкции

Примечание. По умолчанию поле типа «Текстовый» имеет длину 50 символов. Длину отдельного поля можно изменить с помощью свойства Размер поля (FieldSize). Новое значение размера полей по умолчанию можно задать на вкладке Таблицы/запросы диалогового окна Параметры меню Сервис.


 Создание числовых или денежных полей

Создание числовых или денежных полей

  1. Откройте таблицу в режиме конструктора.

  2. Чтобы вставить в таблицу поле, щелкните строку, над которой его нужно поместить, и нажмите кнопку Добавить строки [image] на панели инструментов.

    Чтобы добавить поле в конец таблицы, щелкните первую пустую строку.

  3. В столбце Имя поля введите имя, следуя соглашениям об именах объектов Microsoft Access.

  4. В столбце Тип данных нажмите кнопку со стрелкой и выберите в списке строку Числовой или Денежный. Чтобы понять, какой тип данных лучше выбрать, нажмите кнопку [image] .

  5. Если создается поле, имеющее тип «Числовой», задайте в ячейке свойства Размер поля (Field Size) требуемый размер. Для получения дополнительных сведений о размерах полей нажмите кнопку [image] .

  6. Чтобы определить формат вывода для поля, нажмите кнопку со стрелкой в ячейке свойства Формат поля (Format) и выберите нужный формат. Если стандартные форматы не подходят, можно создать собственный формат. Для получения дополнительных сведений нажмите кнопку [image] .

  7. При необходимости установите другие свойства поля.

    Инструкции

Примечание. Изменения, внесенные в форматы валют в окне «Язык и стандарты» панели управления Windows, будут автоматически отражаться в денежных полях базы данных. Изменения касаются только форматов — конвертирование валют не производится.


 Создание логических полей

Создание логических полей

  1. Откройте таблицу в режиме конструктора.

  2. Чтобы вставить в таблицу поле, щелкните строку, над которой его нужно поместить, и нажмите кнопку Добавить строки [image] на панели инструментов.

    Чтобы добавить поле в конец таблицы, щелкните первую пустую строку.

  3. В столбце Имя поля введите имя, следуя соглашениям об именах объектов Microsoft Access.

  4. В столбце Тип данных нажмите кнопку со стрелкой и выберите пункт Логический.

  5. Чтобы вместо значений «Да»/«Нет», выводимых по умолчанию в этом поле, использовать значения «Истина»/«Ложь» или «Вкл»/«Выкл», выберите нужный формат в ячейке свойства Формат поля (Format) на вкладке Общие, расположенной в нижней части окна.

  6. При необходимости установите другие свойства поля.

    Инструкции


 Создание полей даты и времени

Создание полей даты и времени

  1. Откройте таблицу в режиме конструктора.

  2. Чтобы вставить в таблицу поле, щелкните строку, над которой его нужно поместить, и нажмите кнопку Добавить строки [image] на панели инструментов.

    Чтобы добавить поле в конец таблицы, щелкните первую пустую строку.

  3. В столбце Имя поля введите имя, следуя соглашениям об именах объектов Microsoft Access.

  4. В столбце Тип данных нажмите кнопку со стрелкой и выберите пункт Дата/время.

  5. Для установки параметров отображения поля, в нижней части окна выделите ячейку Формат поля (Format) и выберите нужный формат. Можно также создать собственный формат отображения, если стандартные форматы не подходят. Для получения дополнительных сведений нажмите кнопку [image] .

  6. При необходимости установите другие свойства поля.

    Инструкции

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


 Создание поля с автоматической нумерацией

Создание поля с автоматической нумерацией

  1. Откройте таблицу в режиме конструктора.

  2. Чтобы вставить в таблицу поле, щелкните строку, над которой его нужно поместить, и нажмите кнопку Добавить строки [image] на панели инструментов.

    Чтобы добавить поле в конец таблицы, щелкните первую пустую строку.

  3. В столбце Имя поля введите имя, следуя соглашениям об именах объектов Microsoft Access.

  4. В столбце Тип данных нажмите кнопку со стрелкой и выберите тип Счетчик.

  5. Для создания поля счетчика с последовательной нумерацией оставьте все настройки свойства в нижней части окна прежними (по умолчанию для свойства Размер поля (FieldSize) задано значение Длинное целое, а для свойства Новые значения (NewValues) — Последовательные).

    Для создания поля счетчика со случайной нумерацией установите во вкладке Общие свойство Новые значения (NewValues) в значение Случайные. Для получения дополнительных сведений о типах полей счетчика, которые можно создавать, включая поля для репликации баз данных, нажмите кнопку [image] .

  6. При необходимости установите другие свойства поля.

    Инструкции


Создание в таблице поля со списком подстановок или списком значений

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

  • список подстановок, в котором выводятся значения из существующей таблицы или отчета;

  • список постоянных значений, которые вводятся при создании поля.

Предполагаемые действия

Создание поля со списком подстановок в режиме конструктора

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

Создание поля со списком значений в режиме конструктора

Создание поля со списком значений в режиме таблицы

Не можете сделать выбор?


Определение и изменение типа данных

Предполагаемые действия

Выбор типа данных

Изменение типа данных поля

Создание полей даты и времени

Создание полей для сохранения объектов OLE (рисунков, документов Word и других)

Создание логических полей

Создание поля с автоматической нумерацией

Создание числовых или денежных полей

Создание текстового поля или поля МЕМО

Создание поля для хранения гиперссылок

Создание в таблице поля со списком подстановок или списком значений

Последствия преобразования типа данных поля

Поля с автоматической нумерацией и репликация


 Создание полей для хранения объектов OLE (рисунков, документов Word и т. д.)

Создание полей для хранения объектов OLE (рисунков, документов Word и т. д.)

  1. Откройте таблицу в режиме конструктора.

  2. Чтобы вставить в таблицу поле, щелкните строку, над которой его нужно поместить, и нажмите кнопку Добавить строки [image] на панели инструментов.

    Чтобы добавить поле в конец таблицы, щелкните первую пустую строку.

  3. В столбце Имя поля введите имя, следуя соглашениям об именах объектов Microsoft Access.

  4. В столбце Тип данных нажмите кнопку со стрелкой и выберите пункт Поле объекта OLE.

Примечание. Поля объекта OLE используются для хранения таких данных, как документы Microsoft Word и Microsoft Excel, рисунки, звуковые объекты и другие виды двоичных объектов, созданных в других программах. Объекты OLE могут быть связаны или встроены в поле таблицы Microsoft Access. Для отображения объекта OLE в форме или отчета необходимо использовать элемент управления. Для получения дополнительных сведений о редактировании и отображении объектов, хранящихся в поле объекта OLE, нажмите кнопку [image] .


 Перемещение поля в режиме конструктора таблицы

Перемещение поля в режиме конструктора таблицы

  1. Откройте таблицу в режиме конструктора.

  2. Выделите поля, которые требуется переместить.

    Для выделения одного поля щелкните область выделения строки этого поля.

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

  3. Нажмите и удерживайте кнопку мыши над областью выделения строки выделенного поля. Microsoft Access отобразит тонкую горизонтальную черту над последней выделенной строкой.

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

Примечание. При изменении порядка полей в режиме конструктора таблицы изменяется порядок, в котором эти поля хранятся в таблице, а также порядок столбцов в режиме таблицы этой таблицы. Для получения сведения о том, как изменить только порядок столбцов в режиме таблицы, нажмите кнопку [image] .


 Изменение имени поля в таблице

Изменение имени поля в таблице

Имя поля может быть изменено в любой момент. Это не окажет влияние на данные в поле, т.к. Microsoft Access автоматически устраняет побочные эффекты, возникающие при изменении имени поля. Для получения дополнительных сведений об изменении имен полей в Microsoft Access нажмите кнопку [image] .

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

Предполагаемые действия

Изменение имени поля в режиме конструктора

Изменение имени поля в режиме таблицы


 Удаление поля из таблицы

Удаление поля из таблицы

Способ удаления поля зависит от текущего режима: режима конструктора или режима таблицы.

Предполагаемые действия

Удаление поля из таблицы в режиме конструктора

Удаление поля из таблицы в режиме таблицы


 Изменение типа данных поля

Изменение типа данных поля

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

  2. Откройте таблицу в режиме конструктора.

  3. Выберите ячейку в столбце Тип данных поля, которое необходимо изменить, нажмите кнопку раскрытия списка и выберите новый тип данных.

  4. Нажмите кнопку Сохранить [image] на панели инструментов.

Осторожно! Если преобразование типа приводит к потере данных, Microsoft Access перед тем, как записать внесенные изменения, выдает сообщение об ошибках при преобразовании данных. Нажмите кнопку Отмена, чтобы отменить эти изменения. Нажмите кнопку OK для принятия изменений.

Для получения дополнительных сведений о последствиях изменения типа данных поля нажмите кнопку [image] .

Примечание. В больших таблицах изменение типа данных может выполняться продолжительное время. Чтобы прервать процесс преобразования типов данных, нажмите клавиши CTRL+BREAK, а затем нажмите кнопку OK.


 Изменение имени поля (столбца), отображаемого на экране, в режиме таблицы

Изменение имени поля (столбца), отображаемого на экране, в режиме таблицы

  1. Откройте таблицу в режиме конструктора.

  2. В верхней части окна выберите поле, для которого необходимо задать новый заголовок столбца.

  3. В нижней части окна на вкладке Общие выделите ячейку свойства Подпись (Caption) и введите имя столбца. Это имя может быть любой комбинацией букв, цифр, пробелов и расширенных символов, имеющей длину до 255 символов.

Примечания

  • Это полезно в тех случаях, когда заголовок столбца должен быть длиннее или информативнее, чем имя поля. Например, поле может иметь имя «РАдрес», что облегчит его использование в программах Visual Basic для приложений и выражениях, а выводиться на экран под заголовком «Рабочий адрес».

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

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


 Указание для поля типа элемента управления (список, поле со списком или флажок), который создается по умолчанию

Указание для поля типа элемента управления (список, поле со списком или флажок), который создается по умолчанию

  1. Откройте таблицу, содержащую нужное поле, в режиме конструктора.

  2. Для текстового, числового или логического поля выберите ячейку в столбце Тип данных.

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

  4. В ячейке свойства Тип элемента управления выберите нужный тип в раскрывающемся списке.

Примечания

  • Стандартный тип элемента управления можно указать для полей с типами данных «Текстовый», «Числовой» и «Логический». Когда для поля задан стандартный тип элемента управления, Microsoft Access автоматически создает элемент управления этого типа при добавлении данного поля в форму или отчет. Для текстовых и числовых полей стандартным типом элемента управления может быть поле, поле со списком или список (только в формах). Для логических полей стандартным типом элемента управления может быть флажок, поле или поле со списком.

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


 Изменение размера поля для текстовых и числовых полей

Изменение размера поля для текстовых и числовых полей

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

  1. В верхней части окна в режиме конструктора таблицы выберите поле, для которого необходимо установить свойство Размер поля (FieldSize).

  2. В нижней части окна на вкладке Общие выделите ячейку свойства Размер поля (FieldSize).

  3. Введите максимальное число символов для поля текстового типа (до 255).

    Для числового поля нажмите стрелку и выберите требуемый размер поля. Для получения дополнительных сведений о размерах числовых полей нажмите кнопку [image] .


 Создание маски ввода для управления вводом данных в поле или элемент управления

Создание маски ввода для управления вводом данных в поле или элемент управления

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

Предполагаемые действия

Определение маски ввода для поля в режиме конструктора таблицы

Определение маски ввода для поля в режиме конструктора запроса

Определение маски ввода для текстового поля или поля со списком в режиме конструктора форм

Не можете сделать выбор?


Определение значения, вводимого в поле или элемент управления по умолчанию

Можно использовать свойство поля Значение по умолчанию (Default Value) для указания значения, которое будет автоматически вводиться в поле при добавлении новой записи.

Предполагаемые действия

Определение значения, используемого по умолчанию для полей, в режиме конструктора таблицы

Определение значения, используемого по умолчанию для элемента управления в форме или на странице доступа к данным

Не можете сделать выбор?


 Свойства, определяющие обработку пустых полей

Свойства, определяющие обработку пустых полей

Управлять способом обработки пустых полей можно при помощи различных комбинаций свойств Обязательное поле (Required) и Пустые строки (AllowZeroLength). Свойство Пустые строки (AllowZeroLength) доступно только для полей с типом данных «Текстовый», «Поле MEMO» и «Гиперссылка». Свойство Обязательное поле (Required) определяет обязательность ввода данных. Если свойство Пустые строки (AllowZeroLength) имеет значение Да, то Microsoft Access будет различать два типа пустых значений: значения Null и пустые строки.

Данный раздел содержит справочные сведения по следующим вопросам.

Разница между значениями Null и пустыми строками

Разрешение на существование значений Null в поле

Запрет на значения Null и пустые строки

Разрешение на существование в поле как значений Null, так и пустых строк

Разрешение на ввод в поле только пустых строк или каких-либо значений

Распознавание значений Null и пустых строк

Поиск пустых строк или значений Null

Разница между значениями Null и пустыми строками

Microsoft Access позволяет определять разницу между двумя типами пустых значений. В некоторых ситуациях поле может быть оставлено пустым из-за того, что существующие сведения в данный момент неизвестны, или из-за того, что поле вообще не применимо к определенной записи. Например, если числовое поле в таблице может остаться пустым в случае, когда неизвестен точный номер факса клиента или сам факт наличия факса у этого клиента. В этом случае пустое поле имеет значение Null, означающее «точное значение неизвестно». Ввод пустой строки путем ввода пары прямых кавычек ("") означает «известно, что значение отсутствует».

Возврат в начало

Разрешение на существование значений Null в поле

Если поле нужно оставить пустым и нет необходимости определять почему, следует установить значение Нет для обоих свойств Обязательное поле (Required) и Пустые строки (AllowZeroLength). Это значение устанавливается по умолчанию при создании полей с типом данных «Текстовый», «Поле MEMO» и «Гиперссылка».

Возврат в начало

Запрет на значения Null и пустые строки

Если требуется, чтобы поле никогда не было пустым, установите для свойства Обязательное поле (Required) значение Да, а для свойства Пустые строки (AllowZeroLength) значение Нет.

Возврат в начало

Разрешение на существование в поле как значений Null, так и пустых строк

Если требуется проводить разницу между полями, сведения для которых существуют, но не известны, и полями, которые пусты из-за отсутствия подходящих данных, установите для свойства Обязательное поле (Required) значение Нет, а для свойства Пустые строки (AllowZeroLength) значение Да.

В этом случае при вводе данных поле следует оставить пустым (для поля задается значение Null), если данные не известны. С другой стороны, чтобы определить пустую строку, указывающую на неприменимость поля для текущей записи, следует ввести в поле пару кавычек ("") без пробела между ними.

Возврат в начало

Разрешение на ввод в поле только пустых строк или каких-либо значений

Если требуется оставлять поля пустыми только в случаях, когда известно, что поле неприменимо для записи, установите для обоих свойств Обязательное поле (Required) и Пустые строки (AllowZeroLength) значения Да.

В этом случае, чтобы оставить поле пустым, введите в него пару прямых кавычек без пробела между ними или нажмите клавишу ПРОБЕЛ для ввода пустой строки.

В следующей таблице приведены результаты всех возможных комбинаций значений свойств Обязательное поле (Required) и Пустые строки (AllowZeroLength).

Обязательное поле (Required) | Пустые строки (AllowZeroLength) | Действия пользователя | Вводимое значение
Нет | Нет | Нажатие клавиши ENTER | <значение Null>
 |  | Нажатие клавиши ПРОБЕЛ | <значение Null>
 |  | Ввод символов "" | (не допускается)
Да | Нет | Нажатие клавиши ENTER | (не допускается)
 |  | Нажатие клавиши ПРОБЕЛ | (не допускается)
 |  | Ввод символов "" | (не допускается)
Нет | Да | Нажатие клавиши ENTER | <значение Null>
 |  | Нажатие клавиши ПРОБЕЛ | <значение Null>
 |  | Ввод символов "" | <пустая строка>
Да | Да | Нажатие клавиши ENTER | (не допускается)
 |  | Нажатие клавиши ПРОБЕЛ | <пустая строка>
 |  | Ввод символов "" | <пустая строка>

Возврат в начало

Распознавание значений Null и пустых строк

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

=IIf(IsNull([имяполя]),"Неизвестно",Format([имяполя],"@;\Пустая строка"))

См. сведения по использованию свойства «Формат» (Format) с полями, содержащими значения Null или пустые строки.

Возврат в начало

Поиск пустых строк или значений Null

Для поиска пустых строк и значений Null используется команда Найти в меню Правка. В режиме таблицы или в режиме формы выберите поле, в котором требуется выполнить поиск. Для поиска пустых значений введите образец Null в поле Образец, а для поиска пустых строк введите пару прямых кавычек без пробела между ними (""). В поле Совпадение выберите вариант Поля целиком и убедитесь, что флажок С учетом формата полей снят.

Для получения дополнительных сведений об использовании команды Найти нажмите кнопку [image] .

Возврат в начало


 Задание свойств полей, определяющих обработку, сохранение и отображение данных

Задание свойств полей, определяющих обработку, сохранение и отображение данных

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

Предполагаемые действия

Ускорение процедуры поиска в полях, для которых в запросах часто приходится выполнять поиск, сортировку или объединение

Указание максимального размера текстового или числового поля

Указание числа десятичных разрядов, выводящихся в числовом или денежном поле

Определение формата отображения для поля, например, формата данных

Определение с помощью текстовых констант и пробелов маски ввода для полей, содержащих номера телефонов, почтовые индексы и даты

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

Определение значения, автоматически вводящегося в поле при добавлении новой записи

Определение условий, ограничивающих допустимые значения, которые могут быть введены в поле

Определение поля, требующего обязательного ввода данных

Определение возможности сохранения пустых строк в текстовых поля и полях МЕМО и гиперссылки

Сжатие данных в текстовых полях, полях гиперссылок и полях Memo

Не можете сделать выбор?


 Сжатие данных в текстовых полях, полях гиперссылок и полях Memo

Сжатие данных в текстовых полях, полях гиперссылок и полях Memo

В Microsoft Access 2000 для хранения информации полей типа «Текстовый», «Поле MEMO» и «Гиперссылка» используется кодировка Юникод. В Юникод каждый символ представляется двумя байтами, а не одним, как в традиционных кодировках.

Кодировка, в которой каждый символ представляется одним байтом, обеспечивает возможность работы только с одной кодовой страницей — набором, состоящим не более чем из 256 символов. Кодировка Юникод поддерживает до 65536 символов, так как каждый символ обозначается в ней двумя байтами. В результате для хранения данных полей типа «Текстовый», «Поле MEMO» и «Гиперссылка» требуется больше места, чем в предыдущих версиях Access.

Этот эффект использования кодировки Юникод можно сгладить, установив свойство Сжатие Юникод (Unicode Compression) поля в значение Да. При создании полей типа «Текстовый», «Поле MEMO» и «Гиперссылка» это значение свойства устанавливается по умолчанию. Когда свойство Сжатие Юникод поля имеет значение Да, все символы, первый байт которых равен 0, будут сжиматься при сохранении и восстанавливаться при выборке. Так как первым байтом латинских букв — букв таких западноевропейских языков, как английский, испанский или немецкий — является 0, то кодировка Юникод при включенном сжатии не накладывает дополнительных требований к объему дискового пространства, необходимого для хранения данных полей, состоящих только из латинских букв.

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

Примечание. Данные полей MEMO не сжимаются, если после сжатия они будут занимать на диске больше 4096 байтов. Следовательно, содержимое полей MEMO в одних записях может быть сжатым, а в других записях — нет.

См. сведения о поддержке кодировки Юникод в Microsoft Office.


Указание числа десятичных разрядов, отображаемых поле или в элементе управления

Предполагаемые действия

Установка числа десятичных разрядов, отображаемых в поле, в режиме конструктора таблицы

Установка числа десятичных разрядов, отображаемых в поле, в режиме конструктора запроса

Установка числа десятичных разрядов, отображаемых в элементе управления, в режиме конструктора форм или отчетов

Не можете сделать выбор?


 Определение формата отображения для поля или элемента управления

Определение формата отображения для поля или элемента управления

Можно использовать свойство Формат (Format) для задания формата отображения данных в поле, таблице, запросе или в элементе управления формы или отчета.

Предполагаемые действия

Определение формата отображения данных для поля в режиме конструктора таблицы

Определение формата отображения данных для поля в режиме конструктора запросов

Определение формата отображения данных для элемента управления в форме или отчете

Не можете сделать выбор?


 Определение допустимости пустых строк для текстовых полей, полей MЕМО и полей гиперссылки

Определение допустимости пустых строк для текстовых полей, полей MЕМО и полей гиперссылки

  1. Откройте таблицу, содержащую нужное поле, в режиме конструктора.

  2. Выберите поле, в которое требуется разрешить вставку пустых строк.

  3. Убедитесь, что свойство Пустые строки (AllowZeroLength) имеет значение Да.

Примечание. Разрешение на ввод пустых строк можно определить только для полей типа «Текстовый», «Поле MEMO» и «Гиперссылка».


 Проверка условий на значения и ограничение данных

Проверка условий на значения и ограничение данных

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

Предполагаемые действия

Получение дополнительных сведений об определении условий на значение и ограничении ввода данных с помощью свойств полей и таблиц

Получение дополнительных сведений об определении условий на значение и ограничении ввода данных с помощью свойств форм и макросов

Не можете сделать выбор?


 Определение условий на значения для контроля вводимых в поле данных

Определение условий на значения для контроля вводимых в поле данных

  1. Откройте таблицу в режиме конструктора.

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

  3. В нижней части окна на вкладке Общие выделите ячейку свойства Условие на значение (ValidationRule) и введите условие на значение либо нажмите кнопку построителя [image] , чтобы создать условие на значение с помощью построителя выражений.

    Например, чтобы пользователь в поле «Количество» не мог заказать меньше 10 единиц товара, задайте для этого поля условие на значения «>9».

  4. В ячейке свойства Сообщение об ошибке (ValidationText) введите сообщение, которое должно быть выведено на экран, если данные не соответствуют заданному условию.

    Например, для выражения «>9», определяющего условие на значения, можно ввести сообщение «Необходимо заказать более 10 единиц». Для просмотра дополнительных примеров условий на значение поля нажмите кнопку [image] .

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

Примечания

  • Условия на значение полей проверяются при вводе или изменении данных в таблице в режиме таблицы, в элементе управления в форме, связанном с полем, в запросе на добавление, в запросе на обновление, в программе Visual Basic для приложений или при импорте данных из другой таблицы.

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


 Требование обязательного ввода данных в поле

Требование обязательного ввода данных в поле

  1. В режиме конструктора таблицы в верхней части окна укажите поле, ввод данных в которое обязателен.

  2. В нижней части окна на вкладке Общие выделите ячейку свойства Обязательное поле (Required) и выберите значение Да.

    При сохранении изменений в таблице Microsoft Access предоставляет возможность проверить, имеет ли поле значение во всех существующих записях. Однако можно указать обязательность ввода значений в данное поле во всех новых записях, даже при наличии существующих записей с пустыми (Null) значениями поля, изменять которые не требуется.

Примечание. Значение свойства Обязательное поле (Required) проверяется на уровне таблицы, поэтому, если это свойство имеет значение Да, поле должно содержать значение во всех случаях, когда в него могут быть введены данные: в таблицах, формах, а также объектах, основанных на таблице, когда значение поля устанавливается с помощью макроса или программы Visual Basic для приложений или при импорте данных в таблицу.


 Выбор типа ключевого поля

Выбор типа ключевого поля

Мощь реляционных баз данных, таких как Microsoft Access, опирается на их способность быстро найти и связать данные из разных таблиц при помощи запросов, форм и отчетов. Для этого каждая таблица должна содержать одно или несколько полей, однозначно определяющих каждую запись в таблице. Такие поля называют первичным ключом полем таблицы. Если для таблицы определен первичный ключ, то Microsoft Access предотвращает дублирование ключа или ввод значений Null в эти поля.

В Microsoft Access можно выделить три типа ключевых полей: счетчик, простой ключ и составной ключ.

Ключевые поля счетчика

Простой ключ

Составной ключ

Ключевые поля счетчика

Поле счетчика можно задать таким образом, чтобы добавлении каждой записи в таблицу в это поле автоматически вносилось порядковое число. Указание такого поля в качестве ключевого является наиболее простым способом создания первичного ключа. Если до сохранения созданной таблицы ключевые поля не были определены, Microsoft Access предлагает создать ключевое поле автоматически. При нажатии кнопки «Да» будет создано ключевое поле счетчика. Использование таблиц при репликации базы данных требует дополнительного рассмотрения. См. сведения о полях типа счетчика и репликации в базе данных Microsoft Access.

Возврат в начало

Простой ключ

Если поле содержит уникальные значения, такие как коды или инвентарные номера, то это поле можно определить как ключевое. Если выбранное поле содержит повторяющиеся значения или значения Null, то оно не будет определено как ключевое. Для определения записей, содержащих повторяющиеся данные, можно выполнить запрос на поиск повторяющихся записей. Если устранить повторы путем изменения значений не удается, то следует либо добавить в таблицу поле счетчика и сделать его ключевым, либо определить составной ключ.

Возврат в начало

Составной ключ

В случаях, когда невозможно гарантировать уникальность значений каждого поля, существует возможность создать ключ, состоящий из нескольких полей. Чаще всего такая ситуация возникает для таблицы, используемой для связывания двух таблиц в отношении «многие-ко-многим». Примером такой таблицы может служить таблица «Заказано» из учебной базы данных «Борей», связывающая таблицы «Заказы» и «Товары». Ключ в этой таблице состоит из двух полей: «КодЗаказа» и «КодТовара». В таблице «Заказано» может быть представлено много товаров и много заказов, но каждый товар включается в заказ только один раз, поэтому комбинация значений полей «КодЗаказа» и «КодТовара» достаточна для образования ключа.

Каждый товар может быть включен в заказ только один раз

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

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

Для получения сведений о создании ключевых полей нажмите кнопку [image] .

Возврат в начало


 Определение или изменение ключевого поля

Определение или изменение ключевого поля

  1. Откройте таблицу в режиме конструктора.

  2. Выделите одно или несколько полей, которые требуется определить как ключевые.

    Для выделения одного поля щелкните область выделения строки нужного поля.

    Для выделения нескольких полей щелкните область выделения для каждого поля, удерживая нажатой клавишу CTRL.

  3. Нажмите кнопку Ключевое поле [image] на панели инструментов.

Для получения дополнительных сведений о выборе ключевых полей нажмите кнопку [image] .

Примечания

  • Допускается задание первичного ключа для поля, уже содержащего данные, однако, если в этом поле имеются повторяющиеся значения или значения Null, будет выведено сообщение об ошибке. При получении такого сообщения возможны три варианта действий: выполнить запрос на поиск повторяющихся записей для поиска записей, содержащих повторяющиеся значения или значения Null, а затем изменить их; выбрать другое поле или добавить поле счетчика и определить его как ключевое. Для получения дополнительных сведений о поиске повторяющихся значений нажмите кнопку [image] .

  • Для составного ключа существенным может оказаться порядок образующих ключ полей. Сортировка записей осуществляется в соответствии с порядком ключевых полей в бланке в режиме конструктора таблицы. Если необходимо указать другой порядок сортировки без изменения порядка ключевых полей, то сначала определите ключ, как это описано выше, а затем нажатием кнопки Индексы [image] на панели инструментов откройте окно «Индексы» и укажите другой порядок полей для индекса с именем «PrimaryKey».


 Удаление ключевого поля

Удаление ключевого поля

  1. Если ключевое поле используется в связи, то для удаления ключа необходимо удалить эту связь.

    Инструкции

  2. Откройте таблицу в режиме конструктора.

  3. Щелкните область выделения строки для текущего ключевого поля и нажмите кнопку Ключевое поле [image] на панели инструментов.

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


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

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

Для повышения скорости сортировки и поиска записей можно проиндексировать отдельное поле или комбинацию полей.

Предполагаемые действия

Определение индекса для одного поля

Определение составного индекса

Просмотр или редактирование индексов

Не можете сделать выбор?


 Удаление индекса

Удаление индекса

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

Удаление индекса для одного поля

  1. Откройте таблицу в режиме конструктора.

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

  3. В нижней части окна на вкладке Общие выделите ячейку свойства Индексированное поле и выберите значение Нет.

Удаление составного индекса

  1. Откройте таблицу в режиме конструктора.

  2. На панели инструментов нажмите кнопку Индексы [image] .

  3. В окне «Индексы» выделите строки, содержащие индекс, который нужно удалить, и нажмите клавишу DELETE. При этом будет удален только индекс, но не поле.


 Предотвращение ввода повторяющихся значений в несколько полей

Предотвращение ввода повторяющихся значений в несколько полей

  1. Откройте таблицу в режиме конструктора.

  2. Создайте составной индекс, используя те поля, в которые ввод повторяющихся значений должен быть запрещен. Определив индекс, оставьте окно индексов открытым.

    Инструкции

  3. В верхней части окна индексов выберите новое имя индекса.

  4. В нижней части окна индексов в ячейке свойства Уникальный индекс (Unique) выберите значение Да.


 Предотвращение ввода в поле повторяющихся значений

Предотвращение ввода в поле повторяющихся значений

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

  1. Откройте таблицу в режиме конструктора.

  2. В верхней части окна выберите поле, в котором повторение значений должно быть запрещено.

  3. В нижней части окна на вкладке Общие выделите ячейку свойства Индексированное поле (Indexed) и выберите значение Да (Совпадения не допускаются).

Для получения сведений о том, как предотвратить ввод повторяющихся значений в несколько полей, нажмите кнопку [image] .


Определение и изменение ключевого поля

Предполагаемые действия

Определение или изменение ключевого поля

Удаление ключевого поля

Выбор ключевого поля


 Просмотр или редактирование индексов

Просмотр или редактирование индексов

  1. Откройте таблицу в режиме конструктора.

  2. На панели инструментов нажмите кнопку Индексы [image] .

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


 Определение связей между таблицами в базе данных Access

Определение связей между таблицами в базе данных Access

Данный раздел содержит справочные сведения по следующим вопросам.

Для чего нужно определять связи?

Как работает связь между таблицами?

Отношение «один-ко-многим»

Отношение «многие-ко-многим»

Отношение «один-к-одному»

Определение связей между таблицами

Для чего нужно определять связи?

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

Форма «Заказы», одновременно отображающая связанные сведения из пяти таблиц

Возврат в начало

Как работает связь между таблицами?

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

Поле «Код сотрудника» используется в таблице «Сотрудники» как ключевое поле, а в таблице «Заказы» как внешний ключ.

Возврат в начало

Отношение «один-ко-многим»

Отношение «один-ко-многим» является наиболее часто используемым типом связи между таблицами. В отношении «один-ко-многим» каждой записи в таблице A могут соответствовать несколько записей в таблице B, но запись в таблице B не может иметь более одной соответствующей ей записи в таблице A.

Запись в таблице «Поставщики» с несколькими связанными записями в таблице «Товары»

Возврат в начало

Отношение «многие-ко-многим»

При отношении «многие-ко-многим» одной записи в таблице A могут соответствовать несколько записей в таблице B, а одной записи в таблице B несколько записей в таблице A. Этот тип связи возможен только с помощью третьей (связующей) таблицы, первичный ключ которой состоит из двух полей, которые являются внешними ключами таблиц A и B. Отношение «многие-ко-многим» по сути дела представляет собой два отношения «один-ко-многим» с третьей таблицей. Например, отношение «многие-ко-многим» между таблицами «Заказы» и «Товары» определяется путем создания двух отношений «один-ко-многим» с таблицей «Заказано».

Внешние ключи в таблице «Заказано» и совпадающие первичные ключи в таблицах «Заказы» и «Товары»

Возврат в начало

Отношение «один-к-одному»

При отношении «один-к-одному» запись в таблице A может иметь не более одной связанной записи в таблице B и наоборот. Отношения этого типа используются не очень часто, поскольку большая часть сведений, связанных таким образом, может быть помещена в одну таблицу. Отношение «один-к-одному» может использоваться для разделения очень широких таблиц, для отделения части таблицы по соображениям защиты, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице. Например, можно создать таблицу для отслеживания участия сотрудников в благотворительных спортивных мероприятиях.

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

Возврат в начало

Определение связей между таблицами

Связь между таблицами определяется путем добавления связываемых таблиц в окно «Схема данных» с последующим перетаскиванием ключевого поля из одной таблицы в другую. Также можно определять связи с помощью клавиатуры.

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

Тип отношения в создаваемой Microsoft Access связи зависит от способа определения связываемых полей.

  • Отношение «один-ко-многим» создается в том случае, когда только одно из полей является ключевым или имеет уникальный индекс.

  • Отношение «один-к-одному» создается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы.

  • Отношение «многие-ко-многим» фактически является двумя отношениями «один-ко-многим» с третьей таблицей, первичный ключ которой состоит из полей — внешних ключей двух других таблиц.

Для получения дополнительных сведений о способах определения отношений нажмите кнопку [image] .

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

Возврат в начало

См. сведения о связях в проекте Microsoft Access.


 Вывод на экран окна схемы данных

Вывод на экран окна схемы данных

  1. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  2. Нажмите кнопку Схема данных [image] на панели инструментов.

    Будет открыто окно «Схема данных». Если макет окна уже был ранее сохранен, он будет выведен в этом окне. Если макет ранее не сохранялся, появится диалоговое окно Добавление таблицы, позволяющее добавить таблицы и запросы в окно схемы данных.


 Определение связей между таблицами

Определение связей между таблицами

  1. Закройте все открытые таблицы. Создавать или изменять связи между открытыми таблицами нельзя.

  2. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  3. На панели инструментов нажмите кнопку Схема данных [image] .

  4. Если в базе данных никаких связей не определено, автоматически будет открыто диалоговое окно Добавление таблицы. Если нужно добавить таблицы для создания связей, а диалогового окна Добавление таблицы на экране нет, нажмите кнопку Отобразить таблицу [image] на панели инструментов. Если таблицы, между которыми нужно создать связь, уже отображены, перейдите к шагу 6.

  5. Дважды щелкните имена таблиц, для которых требуется определить связи. Затем закройте диалоговое окно Добавление таблицы.

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

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

    В большинстве случаев связывают первичный ключ (представленный в списке полей полужирным шрифтом) одной таблицы с соответствующим ему полем (часто имеющим то же имя) второй таблицы, которое называют полем внешнего ключа. Связанные поля не обязательно должны иметь одинаковые имена, но они должны иметь одинаковые типы данных (из этого правила существуют два исключения) и иметь содержимое одного типа. Кроме того, связываемые поля числового типа должны иметь одинаковые значения свойства Размер поля (FieldSize). Вот упомянутые два исключения из правила соответствия типов данных: поле счетчика можно связывать с числовым полем, свойство Размер поля (FieldSize) которого имеет значение Длинное целое; также, поле счетчика можно связать с числовым, если для обоих полей в свойстве Размер поля (FieldSize) задано значение Код репликации.

  7. Будет открыто диалоговое окно Изменение связей. Проверьте правильность имен полей, присутствующих в двух столбцах. При необходимости их можно изменить.

    Если необходимо, установите параметры связи. Для получения дополнительных сведений об определенном параметре диалогового окна Изменение связей нажмите кнопку контекстной справки [image] и выберите интересующий параметр.

  8. Для создания связи нажмите кнопку Создать.

  9. Для каждой пары таблиц, которые необходимо связать, повторите шаги с 5 по 8.

    При закрытии окна схемы данных Microsoft Access спросит, нужно ли сохранить макет. Независимо от выбранного ответа заданные связи будут сохранены в базе данных.

Примечания

  • Если необходимо просмотреть все связи, определенные в базе данных, нажмите кнопку Отобразить все связи [image] на панели инструментов. Для просмотра связей только для определенной таблицы выберите таблицу, а затем на панели инструментов нажмите кнопку Отобразить прямые связи [image] .

  • Если нужно изменить структуру таблицы, щелкните таблицу правой кнопкой и выберите команду Конструктор таблиц.

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

  • Чтобы связать таблицу саму с собой, добавьте ее дважды. Это полезно, когда нужно создать поле подстановок со значениями из этой же таблицы. Например, в таблице «Сотрудники» учебной базы данных «Борей» определена связь между полями «КодСотрудника» и «Подчиняется», поэтому поле «Подчиняется» может отображать данные о сотруднике, имеющем соответствующее значение в поле «КодСотрудника».

  • Можно также определить связь с помощью клавиатуры.


 Определение отношения «многие-ко-многим» между таблицами

Определение отношения «многие-ко-многим» между таблицами

  1. Создайте две таблицы, которые будут иметь отношение «многие-ко-многим».

    Инструкции

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

  3. Определите в связующей таблице ключ, содержащий все ключевые поля двух связываемых таблиц. Например, в связующей таблице «Заказано» ключ состоит из полей «КодЗаказа» и «КодТовара».

    Инструкции

  4. Между каждой из двух таблиц и связующей таблицей определите отношение «один-ко-многим».

    Инструкции

  5. Для добавления данных в таблицы выполните одно из следующих действий.
    • Создайте запрос, который будет работать с несколькими таблицами. Для получения дополнительных сведений нажмите кнопку [image] .

    • Создайте форму, которая будет работать с несколькими таблицами. Для получения дополнительных сведений нажмите кнопку [image] .

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


 Установка типа объединения по умолчанию для связей между двумя таблицами

Установка типа объединения по умолчанию для связей между двумя таблицами

  1. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  2. Нажмите кнопку Схема данных [image] на панели инструментов, чтобы открыть окно схемы данных.

  3. Дважды щелкните среднюю часть линии объединения двух таблиц, чтобы открыть окно «Изменение связей».

  4. Нажмите кнопку Объединение и выберите требуемый тип объединения.

    Переключатель 1 определяет внутреннее объединение. Он выбран по умолчанию.

    Переключатель 2 определяет левое внешнее объединение.

    Переключатель 3 определяет правое внешнее объединение.

Примечание. Кнопка Объединение будет недоступна, если таблицы являются связанными. Если эти таблицы имеют формат Microsoft Access, то для установки типа объединения можно открыть базу данных, в которой они хранятся.

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

Примечание. Можно также задать тип объединения по умолчанию с помощью клавиатуры. См. сведения о типах объединений.


 Удаление связи

Удаление связи

  1. Закройте все открытые таблицы. Удалять связи между открытыми таблицами нельзя.

  2. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  3. Нажмите кнопку Схема данных [image] на панели инструментов.

  4. Если таблиц, связи которых нужно удалить, нет на экране, нажмите кнопку Отобразить таблицу [image] на панели инструментов и дважды щелкните все таблицы, которые нужно добавить. Затем нажмите кнопку Закрыть.

  5. Выделите линию связи, которую необходимо удалить (выделенная линия становится более толстой), а затем нажмите клавишу DELETE.

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


 Изменение существующих связей

Изменение существующих связей

  1. Закройте все открытые таблицы. Изменять связи между открытыми таблицами нельзя.

  2. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  3. Нажмите кнопку Схема данных [image] на панели инструментов.

  4. Если таблиц, связи которых нужно изменить, нет на экране, нажмите кнопку Отобразить таблицу [image] на панели инструментов и дважды щелкните таблицы, которые нужно добавить.

  5. Дважды щелкните линию связи, которую необходимо изменить.

  6. Установите параметры связи. Для получения дополнительных сведений о конкретном параметре диалогового окна Изменение связей нажмите кнопку контекстной справки [image] и щелкните нужный параметр.

Примечание. Можно также изменить связь с помощью клавиатуры.


 Печать окна схемы данных

Печать окна схемы данных

В базе данных Microsoft Access можно использовать мастер печати схемы данных для создания отчета, отображающего отношения в том виде, как они показаны в окне схемы данных.

  1. Откройте базу данных Access, схему данных которой требуется распечатать.

  2. Выберите в меню Сервис команду Схема данных, чтобы открыть окно «Схема данных».

  3. Выберите в меню Файл команду Печать схемы данных.

Примечание. В проекте Microsoft Access печать схемы данных невозможна.

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


Удаление таблицы из окна «Схема данных»

  • Выберите таблицу, которую необходимо удалить, а затем нажмите клавишу DELETE.

    При этом из окна «Схема данных» удаляется таблица и ее линии связи. Это действие затрагивает только отображение в окне схемы данных. Сама таблица и ее связи остаются в базе данных.


 Просмотр существующих связей между таблицами

Просмотр существующих связей между таблицами

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

  2. Нажмите кнопку Схема данных [image] на панели инструментов.

  3. Для просмотра всех связей, созданных в базе данных на панели инструментов нажмите кнопку Отобразить все связи [image] .

    Для того чтобы просмотреть связи, определенные для конкретной таблицы, выберите эту таблицу, а затем нажмите кнопку Отобразить прямые связи [image] на панели инструментов.

Примечание. Если в окне схемы данных уже отображены все таблицы, связанные с выбранной таблицей, то нажатие кнопки Отобразить прямые связи не даст никаких результатов, поскольку при нажатии этой кнопки на экран только добавляются таблицы, связанные с текущей таблицей. Если требуется просмотреть прямую связь только с одной таблицей, нажмите кнопку Очистить макет [image] на панели инструментов, чтобы удалить все таблицы из окна схемы данных (при этом таблицы и связи физически не удаляются, а только убираются из окна схемы данных). Затем снова добавьте нужную таблицу в окно схемы данных и нажмите кнопку Отобразить прямые связи. Для добавления таблицы нажмите кнопку Отобразить таблицу [image] на панели инструментов, дважды щелкните нужную таблицу, а затем нажмите кнопку Закрыть.


 Целостность данных: общие сведения

Целостность данных: общие сведения

Целостность данных означает систему правил, используемых в Microsoft Access для поддержания связей между записями в связанных таблицах, а также обеспечивающих защиту от случайного удаления или изменения связанных данных. Установить целостность данных можно, если выполнены следующие условия.

  • Связанное поле главной таблицы является ключевым полем или имеет уникальный индекс.

  • Связанные поля имеют один тип данных. Здесь существует два исключения: поле счетчика может быть связано с числовым полем, свойство которого Размер поля (FieldSize) имеет значение Длинное целое, а также поле счетчика, свойство Размер поля (FieldSize) которого имеет значение Код репликации, можно связать с числовым полем, если свойство Размер поля (FieldSize) которого имеет значение Код репликации.

  • Обе таблицы принадлежат одной базе данных Microsoft Access. Если таблицы являются связанными, то они должны быть таблицами Microsoft Access. Для установки целостности данных база данных, в которой находятся таблицы, должна быть открыта. Для связанных таблиц из баз данных других форматов установить целостность данных невозможно.

Установив целостность данных, необходимо следовать следующим правилам.

  • Невозможно ввести в поле внешнего ключа связанной таблицы значение, не содержащееся в ключевом поле главной таблицы. Однако в поле внешнего ключа возможен ввод значений Null, показывающих, что записи не являются связанными. Например, нельзя сохранить запись, регистрирующую заказ, сделанный несуществующим клиентом, но можно создать запись для заказа, который пока не отнесен ни к одному из клиентов, если ввести значение Null в поле «КодКлиента».

  • Не допускается удаление записи из главной таблицы, если существуют связанные с ней записи в подчиненной таблице. Например, невозможно удалить запись из таблицы «Сотрудники», если в таблице «Заказы» имеются заказы, относящиеся к данному сотруднику.

  • Невозможно изменить значение первичного ключа в главной таблице, если существуют записи, связанные с данной записью. Например, невозможно изменить код сотрудника в таблице «Сотрудники», если в таблице «Заказы» имеются заказы, относящиеся к этому сотруднику.

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

Чтобы преодолеть ограничения на удаление или изменение связанных записей, сохраняя при этом целостность данных, следует установить флажки Каскадное обновление связанных полей и Каскадное удаление связанных полей. Если установлен флажок Каскадное обновление связанных полей, то при изменении ключевого поля главной таблицы автоматически изменяются и соответствующие значения связанных записей. Если установлен флажок Каскадное удаление связанных полей, то при удалении записи в главной таблице удаляются и все связанные записи в подчиненной таблице. Для получения дополнительных сведений о параметрах Каскадное удаление связанных полей и Каскадное изменение связанных полей нажмите кнопку [image] .

Для получения дополнительных сведений об изменении существующих связей и установлении целостности данных нажмите кнопку [image] .

Для получения дополнительных сведений об определении новой связи нажмите кнопку [image] .


 Режимы каскадного обновления и каскадного удаления

Режимы каскадного обновления и каскадного удаления

Для отношений, в которых проверяется целостность данных, пользователь имеет возможность указать, следует ли автоматически выполнять для связанных записей операции каскадного обновления и каскадного удаления. Если включить данные параметры, станут возможными операции удаления и обновления, которые в противном случае запрещены условиями целостности данных. Чтобы обеспечить целостность данных при удалении записей или изменении значения первичного ключа в главной таблице, автоматически вносятся необходимые изменения в связанные таблицы.

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

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

Если при определении отношения установить флажок Каскадное удаление связанных записей, любое удаление записи в главной таблице приведет к автоматическому удалению связанных записей в подчиненной таблице. Например, при удалении из таблицы «Клиенты» записи конкретного клиента будут автоматически удалены все связанные записи в таблице «Заказы» (а также записи в таблице «Заказано», связанные с записями в таблице «Заказы»). Если записи удаляются из формы или таблицы при установленном флажке Каскадное удаление связанных записей, Microsoft Access выводит предупреждение о возможности удаления связанных записей. Если же записи удаляются с помощью запроса на удаление, то Microsoft Access удаляет записи автоматически без вывода предупреждения.

Для получения инструкций по изменению существующих отношений и установлению целостности данных нажмите кнопку [image] .

Для получения инструкций по определению нового отношения нажмите кнопку [image] .


 Экспорт данных и объектов базы данных в базу данных или файл другого формата

Экспорт данных и объектов базы данных в базу данных или файл другого формата

Данный раздел содержит справочные сведения по следующим вопросам.

Что такое экспорт?

Экспорт объектов базы данных

Пересылка объектов базы данных по электронной почте

Экспорт на Web-страницу

Экспорт и обмен данными с Microsoft Word

Экспорт в формат Microsoft Excel или других электронных таблиц

Автоматизация операций экспорта

Что такое экспорт?

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

Возврат в начало

Экспорт объектов базы данных

Большинство объектов базы данных из базы данных Microsoft Access или проекта Microsoft Access можно экспортировать в другую базу данных Access или проект Access.

Возврат в начало

Пересылка объектов базы данных по электронной почте

С помощью команды Сообщение (как вложение) из подменю Отправить меню Файл можно отправлять содержимое объектов базы данных в виде вложений в сообщения электронной почты в различных форматах файлов, включая Microsoft Excel (.xls), RTF (.rtf), текст MS-DOS (.txt), HTML (.html), IDC/HTX, ASP или формат страниц доступа к данным.

С помощью команды Сообщение из подменю Отправить меню Файл можно также отправлять страницы в виде основного текста сообщений электронной почты.

Для отправки объекта базы данных по электронной почте необходимо иметь Microsoft Outlook, Microsoft Exchange, Microsoft Mail или другое приложение для работы с электронной почтой, поддерживающее интерфейс MAPI (Messaging Application Programming Interface).

Возврат в начало

Экспорт на Web-страницу

Существуют три способа использования данных или объектов баз данных Microsoft Access для создания Web-страниц.

  • В Web-обозревателях, поддерживающих динамический HTML версии 4.0 или более поздней, можно использовать страницы доступа к данным. Страницы доступа к данным не являются самостоятельными объектами; они создаются как объекты базы данных, содержащие ярлыки соответствующих файлов HTML. Страницы доступа к данным используются для просмотра, редактирования, обновления, удаления, отбора, группировки и сортировки изменяющихся данных из базы данных Microsoft Access или базы данных Microsoft SQL Server. См. сведения о создании страниц доступа к данным.

  • Генерируемые сервером файлы HTML (ASP или IDC/HTX) можно создавать из таблиц, запросов и форм. Генерируемые сервером файлы HTML отображаются в Web-обозревателе в табличном формате. Генерируемые сервером файлы HTML используются в любых Web-обозревателях при частом изменении данных, для просмотра изменяющихся данных в таблице, связанной с источником данных ODBC, когда не требуется обновлять данные или взаимодействовать с ними.

  • Выходные файлы HTML можно создавать из таблиц, запросов, форм и отчетов. В Web-обозревателе отчеты отображаются в формате отчета, а таблицы, запросы и формы отображаются в формате таблиц. Статические файлы HTML используются для Web-обозревателей, поддерживающих язык HTML версии 3.2 или более поздней, при нечастом изменении данных.

Возврат в начало

Экспорт и обмен данными с Microsoft Word

Существуют четыре способа использования данных Microsoft Access с Microsoft Word.

  • В базе данных Access можно использовать мастер составных документов Microsoft Word для создания составных документов в Microsoft Word 2000, связываемых с данными Microsoft Access 2000 (команда Слияние с MS Word в подменю Связи с Office меню Сервис). После создания связи можно в любое время открыть документ в Microsoft Word для печати нового пакета документов на бланке или наклеек с использованием текущих данных Microsoft Access.

  • Для любой версии Microsoft Word можно экспортировать данные Microsoft Access в файл источника данных для слияния, который может быть использован средством слияния Word.

  • Выходные данные таблицы, формы или отчета можно сохранять в виде файлов формата RTF (.rtf). Файлы в формате RTF сохраняют форматирование, такое как шрифты и стили, и могут быть открыты в Microsoft Word и других текстовых процессорах и издательских программах для Windows.

  • Выходные данные таблиц, форм или отчетов могут быть сохранены в виде файлов .rtf и автоматически загружены в Microsoft Word при помощи команды Публикация в MS Word из подменю Связи с Office меню Сервис.

Возврат в начало

Экспорт в формат Microsoft Excel или других электронных таблиц

Существуют три способа использования данных Microsoft Access с Microsoft Excel или другими редакторами электронных таблиц.

  • Таблицы можно экспортировать в Microsoft Excel или другие редакторы электронных таблиц в виде неформатированных данных.

  • Выходные данные таблиц, форм или отчетов можно сохранить непосредственно в виде файла (.xls) или листа Excel.

  • Выходные данные таблиц, форм или отчетов могут быть сохранены в виде файлов .rtf и автоматически загружены в Microsoft Excel при помощи команды Анализ в MS Excel из подменю Связи с Office меню Сервис.

В последних двух случаях можно сохранить большую часть атрибутов форматирования, например, шрифты и цвета. Уровни группировки отчета сохраняются как уровни структуры Microsoft Excel. Форма сохраняется в виде таблицы с данными.

Возврат в начало

Автоматизация операций экспорта

Чтобы сделать более удобным частое выполнение операций экспорта, их можно автоматизировать путем создания макроса или создания процедуры на языке Visual Basic для приложений. Это полезно, например, при экспортировании данных по определенному расписанию или при создании Web-узла с использованием многочисленных объектов баз данных.

Возврат в начало


 Импорт и связывание данных и импорт объектов базы данных

Импорт и связывание данных и импорт объектов базы данных

Данный раздел содержит справочные сведения по следующим вопросам.

Разница между импортом и связыванием

Импорт данных

Связывание данных

Способы импорта и связывания данных

Использование источников данных ODBC

Неподдерживаемые программы

Автоматизация операций импорта

Разница между импортом и связыванием

Microsoft Access поддерживает два способа использования данных из внешних источников.

  • Импорт данных в новую таблицу Microsoft Access. При этом данные преобразуются из другого формата и копируются в Microsoft Access. Также можно импортировать объекты в текущую базу данных Microsoft Access или проект Microsoft Access.

  • Связывание данных. При этом устанавливается подключение к данным другого приложения без их импорта, что позволяет просматривать и редактировать данные как в исходном приложении, так и в базе данных Access. (В предыдущих версиях Microsoft Access для данного процесса использовался термин «присоединение».)

Возможен импорт и связывание данных из целого ряда поддерживаемых баз данных, программ и форматов файлов.

Возврат в начало

Импорт данных

При импорте данных создается их копия в новой таблице базы данных Access или проекта Access. В ходе процесса исходная таблица или файл не изменяются.

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

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

Возврат в начало

Связывание данных

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

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

Значки связанных таблиц в окне базы данных

Возврат в начало

Способы импорта и связывания данных

Существует два способа выполнения импорта или связывания данных.

  • Откройте или создайте базу данных Access либо создайте проект Access, в котором будут содержаться импортированные таблицы (или, в случае базы данных Access, связанные таблицы), а затем выполните команду Импорт или Связь с таблицами из подменю Внешние данные меню Файл.

  • При работе в базе данных Access непосредственно откройте внешнюю базу данных, включая dBASE, Paradox и Exchange, или любой источник данных ODBC, включая Microsoft SQL Server и Microsoft Visual FoxPro. Microsoft Access автоматически создаст новую базу данных Access в той же папке, где находится внешняя база данных, и добавит ссылки на каждую таблицу внешней базы данных.

Возврат в начало

Использование источников данных ODBC

Допускается импорт или связывание данных из таких баз данных ODBC как Microsoft SQL Server и Visual FoxPro, а также из других программ, для доступа к файлам данных которых требуется драйвер, поддерживающий протокол ODBC уровня 1.

Возврат в начало

Неподдерживаемые программы

Если данные какой-либо программы не хранятся в одной из поддерживаемых баз данных или одном из поддерживаемых форматов файлов, но могут быть экспортированы, преобразованы или сохранены средствами этой программы в одном из таких форматов, то эти данные можно импортировать. Кроме того, при импорте или связывании данных в формате внешней базы данных, например, dBASE или Paradox, Access обычно сохраняет индексы. Например, базу данных Microsoft Works невозможно импортировать или связать непосредственно, но можно импортировать данные из Microsoft Works в файл базы данных dBASE IV (.dbf), а затем импортировать эти данные в Microsoft Access, чтобы сохранить имена полей и индексы.

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

Возврат в начало

Автоматизация операций импорта

Чтобы сделать более удобным частое выполнение операций импорта, их можно автоматизировать путем создания макроса или создания процедуры на языке Visual Basic для приложений. Это полезно, например, при импорте данных по определенному расписанию или при наличии нестандартных или сложных требований к импорту данных.

Возврат в начало


 Выбор между импортированием и связыванием таблицы

Выбор между импортированием и связыванием таблицы

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

Причины для импорта данных в таблицу

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

Причины для связывания данных из внешней таблицы

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

Кроме того, существует возможность связывания таблиц из других баз данных Microsoft Access. Например, может потребоваться использование таблицы из другой базы данных Microsoft Access, открытой для совместной работы по сети. Это особенно полезно при необходимости хранить все таблицы в одной базе данных на сетевом сервере, сохраняя формы, отчеты и другие объекты в отдельной базе данных, копии которой имеются у всех пользователей общей базы данных. Существующую базу данных легко разделить на две части с помощью команды Разделить базу данных из подменю Служебные программы меню Сервис. Для получения дополнительных сведений нажмите кнопку [image] .


 Форматы данных, которые могут экспортироваться Microsoft Access

Форматы данных, которые могут экспортироваться Microsoft Access

Приложение | Поддерживаемая версия или формат
База данных Microsoft Access | 2.0, 7.0/95, 8.0/97, 9.0/2000
Проект Microsoft Access | 2000
dBASE | III, III+, IV и 5 7 (требует наличия Borland Database Engine версии 4.x или более поздней)
Paradox, Paradox для Windows | 3.x, 4.x и 5.0 8.0 (требует наличия Borland Database Engine версии 4.x или более поздней)
Microsoft Excel | 3.0, 4.0, 5.0, 7.0/95, 8.0/97 и 9.0/2000
Microsoft Word, формат RTF |
Lotus 1-2-3 | Форматы .wk1 и .wk3
Текстовые файлы с разделителями | Все наборы символов
Текстовые файлы фиксированной длины | Все наборы символов
HTML и IDC/HTX | 1.0 (в списке) 2.0, 3.x, 4.x (в таблице или списке)
Microsoft Active Server Pages |
Таблицы SQL, Microsoft Visual FoxPro, а также программы и базы данных, поддерживающие протокол ODBC | Visual FoxPro версий 3.0, 5.0 и 6.x Текущий список поддерживаемых драйверов ODBC см. в Microsoft Knowledge Base.


 Источники данных, которые Microsoft Access может импортировать или связать

Источники данных, которые Microsoft Access может импортировать или связать

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

Источник данных | Поддерживаемая версия или формат
База данных Microsoft Access | 2.0, 7.0/95, 8.0/97, 9.0/2000
Проект Microsoft Access | 9.0/2000
dBASE | III, III+, IV и 5 7 (связь для чтения/записи требует наличия Borland Database Engine версии 4.x или более поздней)
Paradox, Paradox для Windows | 3.x, 4.x и 5.0 8.0 (связь для чтения/записи требует наличия Borland Database Engine версии 4.x или более поздней)
Электронные таблицы Microsoft Excel | 3.0, 4.0, 5.0, 7.0/95, 8.0/97 и 9.0/2000
Электронные таблицы Lotus 1-2-3 (связь только для чтения) | .wks, .wk1, .wk3 и .wk4
Microsoft Exchange | Все версии
Текстовые файлы с разделителями | Все наборы символов
Текстовые файлы фиксированной длины | Все наборы символов
HTML | 1.0 (в списке) 2.0, 3.x (в таблице или списке)
Таблицы SQL, Microsoft Visual FoxPro и данные из программ и баз данных, поддерживающих протокол ODBC | Visual FoxPro версий 2.x, 3.0, 5.0 и 6.x (только импорт) Текущий список поддерживаемых драйверов ODBC см. в Microsoft Knowledge Base.


 Источники данных ODBC

Источники данных ODBC

Данный раздел содержит сведения по следующим вопросам.

Что такое источник данных?

Машинные источники данных

Файловые источники данных

Строки подключения

Что такое источник данных?

Источник данных содержит также сведения о подключении, необходимые для доступа к данным. Примерами источников данных могут служить Microsoft Access, Microsoft SQL Server, Oracle RDBMS, электронная таблица и текстовый файл. К примерам сведений о подключении относятся папка на сервере, имя базы данных, сетевое имя, пароль, а также различные параметры драйвера ODBC, описывающие способ подключения к источнику данных.

В архитектуре ODBC приложение (например, Access или программа Microsoft Visual Basic) подключается к диспетчеру драйверов ODBC, который, в свою очередь, использует конкретный драйвер ODBC (например, драйвер Microsoft SQL ODBC) для подключения к источнику данных (в данном случае, к базе данных SQL Server). В Access источники данных ODBC используются для подключения к внешним по отношению к Access данным, не имеющим встроенных драйверов.

Для подключения к источникам данных необходимо выполнить следующие действия.

  • Установите на компьютер, содержащий источник данных, соответствующий драйвер ODBC.

  • Определите имя источника данных (DSN) с помощью программы администратора источников данных ODBC для сохранения сведений о подключении в реестре Windows или файле DSN, либо с помощью строки подключения в программе Visual Basic для передачи сведений о подключении непосредственно в диспетчер драйверов ODBC.

Возврат в начало

Машинные источники данных

Машинные источники данных сохраняют сведения о подключении в реестре Windows на конкретном компьютере с именем, определяемым пользователем. Машинные источники данных можно использовать только на компьютере, на котором они определены. Существует два типа машинных источников данных — пользовательские и системные. Пользовательские источники данных могут использоваться только текущим пользователем и отображаются только для этого пользователя. Системные источники данных могут использоваться всеми пользователями компьютера и отображаются для всех пользователей компьютера и служб масштаба системы, таких как службы Microsoft Windows NT. Машинные источники данных особенно полезны, когда требуется обеспечить дополнительную защиту, поскольку машинный источник данных может просматриваться только зарегистрированными пользователями и не может быть скопирован удаленным пользователем на другой компьютер.

Возврат в начало

Файловые источники данных

Файловые источники данных (также называемые файлами DSN) хранят сведения о подключении в текстовых файлах, а не в реестре Windows, и как правило более гибки в использовании, чем машинные источники данных. Например, файловый источник данных можно скопировать на любой компьютер с подходящим драйвером ODBC, чтобы приложение могло использовать согласованные и точные сведения о подключении ко всем используемым компьютерам. Также можно поместить файловый источник данных на один сервер, сделать его общим для нескольких компьютеров сети и легко управлять сведениями о подключении в одном расположении.

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

Возврат в начало

Строки подключения

Программист может определить в программе Visual Basic строку подключения, указывающую сведения о подключении. Использование строки подключения позволяет избежать определения машинного или файлового DSN и передать сведения о подключении непосредственно в диспетчер драйверов ODBC. Это полезно, например, при необходимости освободить системных администраторов или пользователей от предварительного создания DSN или для упрощения установки приложения.

Дополнительные сведения о программировании ODBC см. в руководстве ODBC 3.0 Programmer's Reference Manual.

Возврат в начало

Дополнительные сведения

Настройка источников данных ODBC

Возврат в начало


 Различия между драйверами ODBC и встроенными драйверами доступа к внешним данным

Различия между драйверами ODBC и встроенными драйверами доступа к внешним данным

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

Встроенные драйверы

Драйверы ODBC

Встроенные драйверы

Access содержит встроенные драйверы, позволяющие импортировать, экспортировать или связывать следующие типы данных: базы данных Microsoft Access, проекты Microsoft Access, файлы Paradox, dBASE, Microsoft Excel, Lotus 1-2-3, Microsoft Exchange, Microsoft Outlook, текстовые файлы с фиксированной шириной полей, текстовые файлы с разделителями и HTML.

Дополнительные сведения об источниках данных, допускающих импорт и связывание

Дополнительные сведения о форматах данных, которые можно экспортировать

Встроенные драйверы доступны для использования при выборе в меню Файл команды Экспорт или команд Импорт или Связь с таблицей в подменю Внешние данные меню Файл. Если встроенный драйвер для данных определенного типа установлен, соответствующий тип включается в раскрывающийся список Тип файла в диалоговом окне Экспорт объекта Объект ’Имя объекта’ как и в список Тип файлов диалоговых окон Импорт и Связь. Все встроенные драйверы устанавливаются автоматически при установке Access.

Возврат в начало

Драйверы ODBC

Драйверы ODBC можно использовать для подключения к базам данных Microsoft SQL Server, базам данных Microsoft FoxPro, а также к данным других программ, для доступа к файлам данных которых требуется 32-разрядный драйвер, поддерживающий протокол ODBC уровня 1. Драйверы ODBC для Microsoft SQL Server (Sqlsrv32.dll), FoxPro (vfpodbc.dll), Oracle (msorcl32.dll) и некоторые файлы поддержки ODBC (файлы справочной системы и значок Источники данных ODBC (32 разряда) для панели управления) устанавливаются автоматически. Становится доступным элемент Базы данных ОDBC в списке Тип файла в диалоговом окне Экспорт объекта Объект ’Имя объекта’ как, а также в списке Тип файлов диалоговых окон Импорт и Связь. Кроме того, значок Источники данных ODBC (32 разряда) добавляется на панель управления Windows.

Дополнительные драйверы ODBC с соответствующей документацией, поддерживающие другие форматы данных, могут быть приобретены у независимых поставщиков. За сведениями об имеющихся драйверах ODBC для конкретного типа данных следует обращаться к поставщику программы, создающей данные этого типа. Access требует 32-разрядные драйверы ODBC, совместимые с протоколом ODBC уровня 1.

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

Дополнительные сведения о поддержке и наличии драйверов ODBC можно получить в базе данных Knowledge Base по Microsoft Access.

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

Возврат в начало


 Спецификации импорта/экспорта и файлы Schema.ini

Спецификации импорта/экспорта и файлы Schema.ini

Спецификации импорта/экспорта содержат сведения (такие как формат файлов, порядок дат или числовые форматы), используемые Microsoft Access для импорта или экспорта текстовых файлов с фиксированной шириной полей или текстовых файлов с разделителями. Спецификация импорта/экспорта сохраняется под стандартным именем: «ИмяФайла - спецификация импорта» или «ИмяФайла - спецификация экспорта» в базе данных, в которую выполняется импорт или из которой выполняется экспорт.

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

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

В качестве альтернативы, для обеспечения даже большего контроля над данными в текстовом файле (например, для указания конкретных денежных форматов или обрабоки типов данных с плавающей точкой), можно использовать файл Schema.ini в программе на языке Visual Basic. Файл schema.ini представляет собой текстовый файл, содержащий записи, переопределяющие стандартные настройки текстового драйвера в реестре Windows. Файл schema.ini следует сохранять в той же папке, что и импортированный или экспортированный текстовый файл, причем всегда с именем schema.ini.


 Повышение производительности при работе со связанной таблицей в базе данных Microsoft Access

Повышение производительности при работе со связанной таблицей в базе данных Microsoft Access

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

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

Если связанная таблица хранится в сети или в базе данных SQL, следующие правила помогут получить наилучшие результаты.

  • Если оставлять открытыми связанные базы данных, то можно повысить производительность при открытии основной базы данных и при открытии таблиц и форм. Для этого необходимо создать пустую таблицу в связанной базе данных и связать ее с основной базой данных. Для открытия связанной таблицы используется метод OpenRecordset. Это предотвращает постоянное открытие и закрытие связанных баз данных, а также создание и удаление связанных файлов .ldb ядром базы данных Microsoft Jet.

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

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

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

  • Если приходится часто добавлять данные в связанную таблицу, создайте для добавления записей форму, у которой в свойстве Ввод данных (Data Entry) задано значение Да. В этом случае в форме, открываемой для ввода данных, не выводятся существующие записи. Это экономит много времени, позволяя избежать загрузки всех записей из связанной таблицы.

  • Помните, что другие пользователи могут пытаться получить доступ к внешней таблице одновременно с вами. Если база данных Microsoft Access используется в сети, старайтесь не блокировать записи дольше, чем это необходимо.


 Автоматизация импорта, экспорта и связывания данных

Автоматизация импорта, экспорта и связывания данных

В зависимости от типа данных, с которыми проводится работа, для автоматизации импорта, экспорта или связывания данных необходимо создать макрос или процедуру Visual Basic, в которых выполняются макрокоманды «ПреобразоватьБазуДанных» (TransferDatabase), «ПреобразоватьЭлектроннуюТаблицу» (TransferSpreadsheet) или «ПреобразоватьТекст» (TransferText).

Предполагаемые действия

Автоматизация импорта, экспорта и связывания данных с помощью макроса

Автоматизация импорта, экспорта и связывания данных с помощью программы Visual Basic


 Переименование и настройка свойств связанных таблиц в базе данных Microsoft Access

Переименование и настройка свойств связанных таблиц в базе данных Microsoft Access

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

Задание значений свойств для связанных таблиц

Когда связанная таблица открывается в режиме конструктора, она похожа на обычную таблицу Microsoft Access. Хотя невозможно изменить определение таблицы и ее полей, заданное во внешней базе данных, допускается изменение значений свойств, управляющих внешним видом полей в Microsoft Access. Изменения, внесенные в значения свойств связанных таблиц, затрагивают только способы обработки и отображения данных связанной таблицы в Microsoft Access. Исходная таблица при этом остается неизменной. Ниже приведен список свойств, значения которых могут быть заданы для связанных таблиц.

Свойство | Результат
Формат поля (Format) | Управляет отображением данных в поле.
Число десятичных знаков (DecimalPlaces) | Указывает количеством отображаемых десятичных знаков.
Маска ввода (InputMask) | Используется для создания маски ввода данных с символами-разделителями и пробелами, которые нужно заполнять.
Подпись (Caption) | Изменяет имя, используемое для заголовка столбца таблицы, и задает стандартное имя, используемое как подпись при добавлении поля в форму.

Для получения дополнительных сведений о задании значений свойств полей нажмите кнопку [image] .

Значения других свойств полей связанной таблицы изменять нельзя. Однако для более эффективного и надежного ввода данных в связанные таблицы можно создать формы и задать значения свойств для элементов управления, которые присоединены к полям связанных таблиц. Например, для элементов управления в этих формах допускается задание значений свойств Значение по умолчанию (DefaultValue), Условие на значение (ValidationRule) и Сообщение об ошибке (ValidationText).

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

Переименование связанных таблиц

Иногда связанные таблицы требуется переименовать. Поскольку имена таблиц Microsoft Access могут содержать до 64 символов и пробелы, имеется возможность дать связанной таблице более содержательное имя. Например, если установлена связь с таблицей dBASE с именем «SLSDATA», ее имя можно заменить на «Продажи в 1995 (dBASE)». Обратите внимание, что сама таблица не будет переименована. Изменится только имя, которое Microsoft Access использует в ссылке на эту таблицу.

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


 Экспорт объектов базы данных в существующую базу данных Microsoft Access или проект Microsoft Access

Экспорт объектов базы данных в существующую базу данных Microsoft Access или проект Microsoft Access

  1. В окне базы данных выберите имя объекта, который нужно экспортировать, и выберите в меню Файл команду Экспорт.

  2. Нажмите кнопку раскрытия списка в поле Папка и выберите диск и папку, где расположена база данных Microsoft Access, в которую нужно экспортировать объект.

  3. Дважды щелкните значок базы данных, в которую экспортируется объект.

  4. В диалоговом окне Экспорт введите имя нового объекта (или используйте текущее имя). При экспорте таблицы выберите в группе параметров Экспорт таблиц переключатель, соответствующий требуемому виду экспорта — «структура и данные» или «только структура». Нажмите кнопку OK, чтобы экспортировать объект.

Примечания

  • Таблицы можно экспортировать только в базы данных, имеющие формат текущей и более ранних версий Microsoft Access.

  • При экспорте таблицы базы данных Access, Microsoft Access экспортирует только данные и описание данных таблицы, но не ее свойства (такие, как ограничения, связи и индексы).

  • Так как Microsoft Access 2000 хранит данные в кодировке Юникод, то при экспорте таблицы в базу данных формата предыдущей версии Access ее данные могут быть преобразованы и изменены. См. сведения о преобразовании баз данных.

  • Нельзя экспортировать представления, сохраненные процедуры и схемы баз данных в проект Microsoft Access или в базу данных Access. Нельзя экспортировать запросы или связи из базы данных Access в проект Access.

  • Одновременно можно экспортировать только один объект. Если нужно за один раз экспортировать несколько объектов, откройте базу данных, в которую должны быть экспортированы объекты, и импортируйте в нее эти объекты. Для получения дополнительных сведений нажмите кнопку [image] .

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

  • При экспорте страницы доступа к данным экспортируется только ссылка на соответствующий HTML-файл. Местоположение HTML-файла не изменяется, что означает, что теперь две страницы доступа к данным используют один и тот же HTML-файл. Если это не желательно, сохраните одну из страниц доступа к данным под другим именем (с помощью команды Сохранить как меню Файл), выберите другое местоположение для нового HTML-файла в диалоговом окне Сохранение в виде страницы доступа к данным и удалите только что сохраненную страницу доступа к данным.


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

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

  1. В окне базы данных выберите имя таблицы, запроса, представления или сохраненной процедуры, которую нужно экспортировать, и выберите в меню Файл команду Экспорт.

  2. В поле со списком Тип файла выберите значение Текстовые файлы (*.txt;*.csv;*.tab;*.asc).

  3. Нажмите кнопку раскрытия списка в поле Папка и выберите диск и папку, в которую будет экспортирован объект.

  4. Введите имя в поле Имя файла и нажмите кнопку Сохранить все.

    Microsoft Access запустит мастер Экспорт текста.

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

Примечание. Чтобы сохранить вместе с таблицей параметры ее форматирования, такие, как шрифт, которые не копируются в текстовый файл, можно сохранить всю таблицу или ее часть в формате RTF (Rich Text Format). Для получения дополнительных сведений нажмите кнопку [image] .


 Экспорт таблицы в файл электронной таблицы

Экспорт таблицы в файл электронной таблицы

  1. В окне базы данных выберите имя таблицы, запроса, представления или сохраненной процедуры, которую нужно экспортировать, и выберите в меню Файл команду Экспорт.

  2. В поле со списком Тип файла выберите требуемый формат электронной таблицы.

  3. Нажмите кнопку раскрытия списка в поле Папка и выберите диск и папку, в которую будет экспортирован объект.

  4. Дважды щелкните существующую таблицу или введите новое имя в поле Имя файла.

    Осторожно! При экспорте в существующий файл электронной таблицы Microsoft Access удаляет и замещает данные этой таблицы, за исключением случаев, когда экспорт выполняется в книги Microsoft Excel версии 5.0 и старше; тогда данные копируются на следующий доступный лист.

    Если на шаге 3 был выбран тип Microsoft Excel 5-7 или Microsoft Excel 97-2000 (*.xls), то для того, чтобы сохранить используемые шрифты, данные в полях подстановок и размеры полей, установите флажок Сохранить формат. В этом случае сохранение файлов займет больше времени.

  5. Нажмите кнопку Сохранить все.

    Microsoft Access создает файл электронной таблицы, содержащий данные из экспортируемой таблицы. Имена полей таблицы помещаются в первую строку электронной таблицы.


 Экспорт таблицы или запроса в файл Microsoft Word источника данных для слияния

Экспорт таблицы или запроса в файл Microsoft Word источника данных для слияния

  1. В окне базы данных выберите имя таблицы или запроса (только для базы данных Microsoft Access), который нужно экспортировать, и выберите в меню Файл команду Экспорт.

  2. В поле Тип файла выберите значение Microsoft Word Merge (*.txt).

  3. Нажмите кнопку раскрытия списка в поле Папка и выберите диск и папку, в которую будет экспортирован объект.

  4. Введите имя в поле Имя файла и нажмите кнопку Сохранить все.

    Microsoft Access автоматически создает источник данных, содержащий имена полей и все данные из таблицы.

Примечание. В файле Word источника данных для слияния первая запись содержит имена полей и называется строкой заголовков. Все остальные записи являются строками данных. Имена полей в записи-строке заголовков должны совпадать с именами полей основного документа. Если имена не совпадают, следует изменить имена полей в источнике данных (его можно открыть в Microsoft Word) или в основном документе.


 Экспорт таблицы или запроса в файл Paradox или dBASE

Экспорт таблицы или запроса в файл Paradox или dBASE

  1. В окне базы данных выберите имя таблицы или запроса (только для базы данных Microsoft Access), который нужно экспортировать, и выберите в меню Файл команду Экспорт.

  2. В поле со списком Тип файла выберите нужный формат базы данных (Paradox или DBASE).

  3. Нажмите кнопку раскрытия списка в поле Папка и выберите диск и папку, в которую будет экспортирован объект.

  4. Введите имя в поле Имя файла и нажмите кнопку Сохранить все.

Примечания

  • Для экспорта в формат Paradox 8.0 или dBASE 7 на компьютере должно быть установлено ядро Borland Database Engine (BDE) версии 4.x или более поздней. Если ядро BDE 4.x или старше на компьютере не установлено, его можно установить вместе с Paradox 8.0 или Delphi. При наличии более старой версии BDE, которая не поддерживает формат файла Paradox 8.0, можно обновить это ядро, посетив Web-узел компании Borland. Если же на компьютере не установлено ядро BDE, то можно выполнять экспорт в форматы Paradox 3.x, 4.x и 5.0, а также в форматы dBASE III, IV и 5.

  • Если имя экспортируемой таблицы или имена ее полей являются недопустимыми в результирующей базе данных, Microsoft Access корректирует эти имена. Например, при экспорте данных в таблицу dBASE будут обрезаны все имена полей, длина которых превышает 10 символов.


 Экспорт таблицы или запроса в таблицу базы данных SQL или другого источника данных ODBC

Экспорт таблицы или запроса в таблицу базы данных SQL или другого источника данных ODBC

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

  1. В окне базы данных выберите имя таблицы или запроса (только для базы данных Microsoft Access), который нужно экспортировать, и выберите в меню Файл команду Экспорт.

  2. В диалоговом окне Экспорт объекта: Тип_объекта 'Имя объекта' в в поле Тип файла выберите значение ODBC Databases ().

  3. В диалоговом окне Экспорт введите имя файла (или оставьте старое имя) и нажмите кнопку OK

    На экране появится диалоговое окно Select Data Source, в котором перечислены источники данных для всех драйверов ODBC, установленных на компьютере. Откройте нужную вкладку, File Data Source или Machine Data Source, и дважды щелкните источник данных ODBC, в который нужно экспортировать объект. Чтобы определить новый источник данных для любого установленного драйвера ODBC, нажмите кнопку New и следуйте инструкциям диалогового окна Create New Data Source и последующих диалоговых окон. См. сведения об источниках данных.

    Разные источники данных, поддерживающие протокол ODBC, предъявляют разные требования для доступа к их данным. Например, большинство из них требует ввода имени пользователя и пароля. Эти сведения можно получить у системного администратора. Введите в диалоговое окно нужные сведения и нажмите кнопку OK.

    Microsoft Access устанавливает связь с источником данных ODBC и создает новую таблицу.

Примечания

  • После экспорта таблицы из базы данных Microsoft Access в базу данных SQL можно добавить к таблице индекс с помощью SQL-запроса к серверу. Для получения дополнительных сведений нажмите кнопку [image] .

  • Для экспорта из проекта Microsoft Access в базу данных Microsoft SQL Server можно использовать службы Data Transformation Services (DTS), которые предлагают более быстрый и гибкий способ экспорта и преобразования данных. Дополнительные сведения см. в документации по Microsoft SQL Server.


 Загрузка данных таблицы, формы или отчета в Microsoft Excel

Загрузка данных таблицы, формы или отчета в Microsoft Excel

  1. В окне базы данных выберите имя таблицы, формы или отчета, данные которых нужно сохранить и загрузить в Microsoft Excel. Чтобы сохранить лишь выделенную область таблицы, откройте таблицу и выделите ее часть.

  2. В меню Сервис выберите команду Связи с Office и подкоманду Анализ в MS Excel.

    Содержимое объекта сохраняется в виде файла Microsoft Excel (с расширением .xls) в используемой по умолчанию папке баз данных. Microsoft Excel автоматически запускается и открывает этот файл.


 Загрузка данных таблицы, формы или отчета в Microsoft Word

Загрузка данных таблицы, формы или отчета в Microsoft Word

  1. В окне базы данных выберите имя таблицы, формы или отчета, данные которых нужно сохранить и загрузить в Microsoft Word. Чтобы сохранить лишь выделенную область таблицы, откройте таблицу и выделите ее часть.

  2. Выберите в меню Сервис команду Связи с Office и подкоманду Публикация в MS Word.

Содержимое объекта сохраняется в файле формата Rich Text Format (.rtf) в используемой по умолчанию папке баз данных. Microsoft Word автоматически запускается и открывает этот файл.


 Сохранение содержимого объекта в файле формата Microsoft Excel или RTF

Сохранение содержимого объекта в файле формата Microsoft Excel или RTF

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

  2. Выберите в меню Файл команду Экспорт.

  3. В поле со списком Тип файла выберите вариант Microsoft Excel 5-7 (*.xls), Microsoft Excel 97-2000 (*.xls) или Rich Text Format (*.rtf).

  4. В поле со списком Папка выберите диск и папку для экспорта.

  5. Введите имя в поле Имя файла (или используйте предложенное имя).

  6. При сохранении в формате Microsoft Excel 5-7, Microsoft Excel 97 или Microsoft Excel 2000 установите флажок Сохранить формат. При сохранении в формате RTF флажок Сохранить формат устанавливается автоматически.

  7. Нажмите кнопку Сохранить все, чтобы сохранить всю таблицу, или Сохранить фрагмент, если на шаге 1 был выделен фрагмент таблицы.


 Создание составного документа Microsoft Word с помощью мастера

Создание составного документа Microsoft Word с помощью мастера

Примечание. Мастер составных документов Microsoft Word можно использовать только в базе данных Microsoft Access, но не в проекте Microsoft Access.

  1. В окне базы данных выберите имя таблицы или запроса (только в базах данных Access), который требуется экспортировать, а затем выберите в меню Сервис команду Связи с Office и подкоманду Слияние с MS Word.

  2. Следуйте инструкциям мастера слияния с MS Word.

  3. В окне Microsoft Word нажмите кнопку Вставить поле слияния, чтобы вставить в документ нужные поля.

Примечание. Допускается также начало операции создания составного документа из Microsoft Word. Дополнительные сведения см. в справочной системе Microsoft Word.


 Экспорт таблицы в генерируемый сервером формат HTML

Экспорт таблицы в генерируемый сервером формат HTML

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

  2. В поле Тип файла выберите значение Microsoft IIS 1-2 (*.htx;*.idc) или Microsoft Active Server Pages (*.asp), в зависимости от необходимого генерируемого сервером формата HTML. См. сведения о генерируемом сервером формате HTML.

  3. Щелкните ярлык на панели адресов или нажмите кнопку раскрытия списка в поле Папка и выберите диск и папку, в которую будет экспортирован объект.

  4. В поле Имя файла введите имя файла.

  5. Нажмите кнопку Сохранить.

  6. Введите необходимые сведения в диалоговых окнах Настройка вывода файлов ASP или Настройка вывода файлов HTX и IDC.

    В поле Шаблон HTML введите местоположение шаблона HTML. См. сведения о файлах шаблонов HTML.

    В поле название источника введите имя источника данных ODBC, к которому будет производиться подключение при обработке генерируемых сервером файлов HTML на Web-сервере. См. сведения об источниках данных ODBC.

    В базе данных Microsoft Access укажите в полях вход под именем и пароль имя пользователя и пароль системы защиты на уровне пользователей, чтобы разрешить пользователям доступ к базе данных Access с Web-страницы. Если имя пользователя или пароль указаны не будут, по умолчанию будут использоваться имя пользователя Admin и пустой пароль. См. сведения о защите на уровне пользователей.

    В проекте Microsoft Access в полях Username и Password введите пароль и имя пользователя, чтобы разрешить пользователям подключаться к базе данных Microsoft SQL Server с Web-страницы. Если не ввести эти данные, по умолчанию будет использоваться имя пользователя Sa и пустой пароль. См. сведения о защите баз данных SQL Server.

Чтобы экспортированная в формат ASP или IDC/HTX таблица была доступна пользователям Интернета, необходимо опубликовать ее. См. сведения об опубликовании генерируемых сервером файлов HTML на Web-сервере.

Примечания

  • Если объект в режиме таблицы содержит запрос с параметрами, Microsoft Access имитирует диалоговое окно Введите значение параметра, создавая дополнительную HTML-страницу параметров, на которой находятся элемент управления «поле» HTML-формы для ввода значения параметра и кнопка запуска запроса. При создании запроса с параметрами необходимо явно задать типы данных параметров. HTML-страница для ввода параметров должна выводиться на экран до вывода Web-страницы, содержащей таблицу. Во время операции экспорта Microsoft Access выполняет запрос и выводит диалоговое окно Введите значение параметра, но в нем достаточно просто нажать кнопку OK, так как введенные данные будут проигнорированы.

  • Поля, имеющие тип данных «Гиперссылка», выводятся в виде строк следующего формата адреса гиперссылки: текст_описания#адрес#дополнительный_адрес#подсказка. Перейти по адресу гиперссылки, щелкнув его в Web-обозревателе, нельзя; однако можно скопировать и вставить адресную часть в поле адреса Web-обозревателя.

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


 Экспорт таблицы в формат статического HTML

Экспорт таблицы в формат статического HTML

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

  2. В поле Тип файла выберите значение Документы HTML (*.html;*.htm).

  3. Щелкните ярлык на панели адресов или нажмите кнопку раскрытия списка в поле Папка и выберите диск и папку, в которую будет экспортирован объект.

  4. В поле Имя файла введите имя файла.

  5. Установите флажок Сохранить формат, чтобы: сохранить таблицу, запрос или форму в формате, подобном представлению этих объектов в режиме таблицы, сделать доступным флажок Автозагрузка и вывести диалоговое окно Параметры вывода в формате HTML после нажатия клавиши Сохранить на шаге 6.

  6. Установите флажок Автозагрузка, если нужно вывести результаты в Web-обозревателе, используемом по умолчанию.

  7. Нажмите кнопку Сохранить.

  8. Если на шаге 5 был установлен флажок Сохранить формат, на экране появится диалоговое окно Параметры вывода в формате HTML. В поле Шаблон HTML можно указать местоположение шаблона HTML. См. сведения о файлах шаблонов HTML.

Чтобы сделать экспортированную в файл HTML таблицу доступной пользователям Интернета, необходимо опубликовать ее. См. сведения об опубликовании статических файлов HTML на Web-сервере.

Примечания

  • Если таблица содержит запрос с параметрами, Microsoft Access сначала запросит значения параметров, а затем экспортирует результаты.

  • Поля, имеющие тип данных «Гиперссылка», выводятся в виде адресов гиперссылки с помощью HTML-тегов <A HREF> .

  • Если на шаге 5 был установлен флажок Сохранить формат, то HTML-таблица будет иметь такой же внешний вид (включая цвет, шрифт и выравнивание), что и исходная таблица.

  • Хотя при экспорте таблицы стандартная тема не применяется, можно применить тему путем создания страницы доступа к данным из существующей Web-страницы (в нашем случае, из созданного файла статического HTML), применения темы в режиме конструктора страницы и сохранения страницы. См. сведения об использовании тем.

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


 Экспорт отчета в формат статического HTML

Экспорт отчета в формат статического HTML

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

  2. В поле Тип файла выберите значение Документы HTML (*.html;*.htm).

  3. Щелкните ярлык на панели адресов или нажмите кнопку раскрытия списка в поле Папка и выберите диск и папку, в которую будет экспортирован объект.

  4. В поле Имя файла введите имя файла.

  5. Установите флажок Автозагрузка, если нужно вывести результаты в Web-обозревателе, используемом по умолчанию.

  6. Нажмите кнопку Сохранить.

    В поле Шаблон HTML диалогового окна Параметры вывода в формате HTML введите местоположение шаблона HTML. Если не выбрать файл шаблона HTML, содержащий описатели перехода, Microsoft Access предложит стандартную схему перехода. См. сведения о файлах шаблонов HTML.

Чтобы сделать экспортированный в формат HTML отчет доступным пользователям Интернета, необходимо опубликовать его. См. сведения об опубликовании статических файлов HTML на Web-сервере.

Примечания

  • Microsoft Access выводит отчет, в отличие от таблицы, в виде нескольких HTML-файлов, по одному файлу на каждую печатную страницу. Имена файлов создаются путем прибавления к имени объекта суффикса, например, «Продажи.html», «ПродажиСтраница2.html», «ПродажиСтраница3.html» и т. д.

  • Если отчет содержит запрос с параметрами, Microsoft Access сначала запросит значения параметров, а затем экспортирует результаты.

  • Поля, имеющие тип данных «Гиперссылка», выводятся в виде адресов гиперссылки с помощью HTML-тегов <A HREF>.

  • Поддерживается большинство элементов управления и возможностей отчетов, включая подчиненные отчеты; не поддерживаются лишь линии, прямоугольники и объекты OLE. Однако можно использовать файл шаблона HTML для включения рисунков в заголовок или примечание отчета.

  • Хотя при экспорте отчета стандартная тема не применяется, можно применить тему путем создания страницы доступа к данным из существующей Web-страницы (в нашем случае, из созданного файла статического HTML), применения темы в режиме конструктора страницы и сохранения страницы. См. сведения об использовании тем.

  • Кроме формата статического HTML, Microsoft Access предоставляет и другие способы вывода информации отчета в Web-обозревателе. Можно вывести на Web-странице список отчета, а также создать страницу доступа к данным с группировкой. Однако нельзя вывести отчет в формате генерируемого сервером HTML.


 Описание файлов шаблонов HTML

Описание файлов шаблонов HTML

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

Шаблон HTML представляет собой текстовый файл, включающий теги и описатели HTML, являющиеся уникальными для Microsoft Access. Эти описатели указывают места для вставки выходных и других сведений в статические или генерируемые сервером файлы HTML. См. пример файла шаблона HTML.

При выводе таблицы, запроса, формы или отчета с указанием файла шаблона HTML в связанном диалоговом окне Параметры вывода Microsoft Access объединяет шаблон HTML с выходными файлами .html, .asp, и .htx, заменяя описатели следующим образом.

Описатель шаблона HTML | Заменяется на
<!--AccessTemplate_Title--> | Имя таблицы, запроса, формы или отчета, отображаемое в строке заголовка Web-обозревателя
<!--AcessTemplate_Body--> | Выходные данные таблицы, запроса, формы или отчета
<!--AccessTemplate_FirstPage--> | Тег HTML, содержащий связь с первой страницей отчета
<!--AccessTemplate_PreviousPage--> | Тег HTML, содержащий связь со страницей отчета, предшествующей текущей странице
<!--AccessTemplate_NextPage--> | Тег HTML, содержащий связь со страницей отчета, следующей после текущей страницы
<!--AccessTemplate_LastPage--> | Тег HTML, содержащий связь с последней страницей отчета
<!--AccessTemplate_PageNumber--> | Номер текущей страницы


 Импорт объектов базы данных из другой базы данных Microsoft Access или проекта Microsoft Access

Импорт объектов базы данных из другой базы данных Microsoft Access или проекта Microsoft Access

  1. Откройте базу данных или переключитесь в окно базы данных открытой базы данных.

  2. Выберите в меню Файл команду Внешние данные и подкоманду Импорт.

  3. Убедитесь, что в поле Тип файла выбран тип Microsoft Access (*.mdb;*.adp;*.mdw;*.mda;*.mde;*.ade).

  4. Щелкните стрелку справа от поля Папка, выберите диск и папку, где расположены база данных Microsoft Access (.mdb) или проект Microsoft Access (.adp), предназначенные для импорта, и дважды щелкните значок базы данных.

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

    Если нужно импортировать только структуру таблиц (а не данные, которые они содержат), нажмите кнопку Параметры и выберите в группе параметров Импорт таблиц переключатель Только структура.

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

    Если при импорте нужно включить связи (только для баз данных Access), пользовательские меню и панели инструментов или спецификации импорта/экспорта (только для баз данных Access), нажмите кнопку Параметры и установите в группе параметров Импорт соответствующие флажки. Microsoft Access не будет импортировать панель инструментов, строку меню или контекстное меню, если их имена совпадают с именами таких же объектов в базе данных Access или в проекте Access, куда импортируются эти объекты.

Примечания

  • Нельзя импортировать представления, сохраненные процедуры и схемы базы данных из проекта Access в базу данных Access. Нельзя импортировать запросы или связи из базы данных Access в проект Access.

  • При импорте страницы доступа к данным импортируется только лишь ссылка на соответствующий HTML-файл. Местоположение HTML-файла не изменяется, что означает, что теперь две страницы доступа к данным используют один и тот же HTML-файл. Если это не желательно, сохраните одну из страниц под другим именем (с помощью команды Сохранить как меню Файл), выберите другое местоположение для нового HTML-файла в диалоговом окне Сохранить в виде страницы доступа к данным и удалите только что сохраненную страницу доступа к данным.

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

  • Хотя разрешается импортировать таблицы из проекта Access в базу данных Access, лучше импортировать таблицу из Microsoft SQL Server. Если таблицы импортируются из одного проекта Access в другой, попробуйте использовать службы Data Transformation Services (DTS), которые предоставляют более быстрый и гибкий способ импорта и преобразования данных. Дополнительные сведения см. в документации Microsoft SQL Server.

  • При импорте таблицы в проект Access, Microsoft Access импортирует только данные и определение данных таблицы, но не ее свойства (такие, как ограничения, связи и индексы).

  • Хотя преобразование базы данных предыдущей версии Microsoft Access обычно выполняется командой Преобразовать базу данных подменю Служебные программы меню Сервис, можно также преобразовать такую базу данных путем импортирования ее объектов. Это полезно, если нужно преобразовать только некоторые объекты базы данных, или если требуется автоматизировать процесс преобразования на Visual Basic с помощью методов CreateDatabase и TransferDatabase.


 Импорт и связывание таблиц из другой базы данных Microsoft Access или проекта Microsoft Access

Импорт и связывание таблиц из другой базы данных Microsoft Access или проекта Microsoft Access

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

  1. Откройте базу данных или переключитесь в окно базы данных открытой базы данных.

  2. Чтобы импортировать таблицы, выберите в меню Файл команду Внешние данные и подкоманду Импорт.

    Чтобы связать таблицы, выберите в меню Файл команду Внешние данные и подкоманду Связь с таблицами.

  3. Убедитесь, что в диалоговом окне Импорт (или Связь) в поле Тип файла выбран тип Microsoft Access (*.mdb;*.adp;*.mdw;*.mda;*.mde;*.ade).

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

    Важно! Если связь устанавливается с файлом, расположенным в локальной сети, используйте стандартный формат записи пути (UNC), не полагаясь на букву, которой подключенный сетевой диск обозначен в проводнике Windows. Эта буква может измениться на компьютере или может быть не определена, в то время как путь UNC является надежным способом, позволяющим Microsoft Access находить источники данных, содержащие связанные таблицы.

  5. В диалоговом окне Импорт объектов выделите все связываемые или импортируемые таблицы.

    Если импортируются только структуры выбранных таблиц (а не содержащиеся в них данные), нажмите кнопку Параметры и в группе параметров Импорт таблиц выберите переключатель только структура. См. сведения об импорте других объектов базы данных.

Примечания

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

  • Хотя разрешается импортировать таблицы из проекта Access в базу данных Access, лучше импортировать таблицу из Microsoft SQL Server. Если таблицы импортируются из одного проекта Access в другой, попробуйте использовать службы Data Transformation Services (DTS), которые предоставляют более быстрый и гибкий способ импорта и преобразования данных. Дополнительные сведения см. в документации Microsoft SQL Server.

  • При импорте таблицы в проект Access, Microsoft Access импортирует только данные и определение данных таблицы, но не ее свойства (такие, как ограничения, связи и индексы).

  • Если база данных, которую необходимо импортировать или связать, защищена паролем, то для продолжения операции необходимо ввести пароль. Связывание таблиц из такой базы данных может иметь непредвиденные последствия. Для получения дополнительных сведений нажмите кнопку [image] .

  • Если устанавливается связь с двумя таблицами, расположенными в одной базе данных Microsoft Access, то остаются в силе все отношения, установленные между этими таблицами в исходной базе данных.

  • При импорте таблицы, содержащей поля подстановки, в базу данных Access, следует также импортировать таблицы или запросы, которые используют подстановочные поля. Если этого не сделать, то при открытии импортированной таблицы в режиме таблицы, Microsoft Access выведет сообщение об ошибке для каждой отсутствующей таблицы или запроса. Чтобы избавиться от этой ошибки, импортируйте недостающие таблицы и запросы. Если вы не можете или не хотите импортировать эти таблицы и запросы, откройте импортированную таблицу в режиме конструктора, выберите подстановочное поле, которые ссылается на отсутствующие таблицу или запрос, откройте вкладку Подстановка и установите свойство Тип элемента управления (DisplayControl) в значение Поле. Повторите эту процедуру для каждого подстановочного поля, ссылающегося на отсутствующие таблицу или запрос.


 Импорт базы данных Microsoft Works

Импорт базы данных Microsoft Works

Базу данных Microsoft Works (.wdb) нельзя непосредственно импортировать в Microsoft Access. Сначала нужно сохранить файл в Microsoft Works в одном из форматов, который поддерживается средствами импорта Microsoft Access.

  1. Откройте базу данных в Microsoft Works.

  2. Выберите в меню Файл команду Сохранить как.

  3. В списке Тип файла выберите тип dBASE IV и нажмите кнопку OK.

  4. Импортируйте созданный на шаге 3 dbf-файл формата dBASE IV в Microsoft Access.

    Инструкции


 Импорт или связывание текстового файла с разделителями или с фиксированной длиной записей

Импорт или связывание текстового файла с разделителями или с фиксированной длиной записей

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

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

  1. Откройте базу данных или переключитесь в окно базы данных открытой базы данных.

  2. Для импорта данных выберите в меню Файл команду Внешние данные и подкоманду Импорт.

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

  3. В диалоговом окне Импорт (или Связь) в поле Тип файла выберите тип Текстовые файлы (*.txt;*.csv;*.tab;*.asc).

  4. Щелкните стрелку справа от поля Папка, выберите диск и папку, где находится файл, и дважды щелкните значок файла.

    Важно! Если связь устанавливается с файлом, расположенным в локальной сети, используйте стандартный формат записи пути (UNC), не полагаясь на букву, которой подключенный сетевой диск обозначен в проводнике Windows. Эта буква может измениться на компьютере или может быть не определена, в то время как путь UNC является надежным способом, позволяющим Microsoft Access находить источники данных, содержащие связанные таблицы.

  5. Следуйте инструкциям диалоговых окон мастера Импорт текста. Нажмите кнопку Дополнительно, чтобы создать или использовать спецификацию импорта/экспорта.

Примечания

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

  • Если импорт текста занимает слишком много времени, это может быть связано с возникновением большого количества ошибок. Чтобы прервать импорт, нажмите клавиши CTRL+BREAK.

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

  • Если все записи текстового файла с фиксированной длиной записей имеют одну и ту же длину, допускается присутствие в середине строки вставленных разделителей строк (например, символов возврата каретки и перевода строки). Если длина записей неодинакова, присутствие внутри строки вставленных символов разделителей строк приведет к ошибкам, поскольку Microsoft Access будет считать их символами окончания записей.


 Импорт или связывание данных из электронных таблиц

Импорт или связывание данных из электронных таблиц

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

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

  1. Откройте базу данных или переключитесь в окно базы данных открытой базы данных.

  2. Чтобы импортировать электронную таблицу, выберите в меню Файл команду Внешние данные и подкоманду Импорт.

    Чтобы связать электронную таблицу, выберите в меню Файл команду Внешние данные и подкоманду Связь с таблицами.

  3. В диалоговом окне Импорт (или Связь) в поле Тип файла выберите тип Microsoft Excel (*.xls) или Lotus 1-2-3 (*.wk*).

  4. Щелкните стрелку справа от поля Папка, выберите диск или папку, в которой расположен файл электронной таблицы, и дважды щелкните его значок.

    Важно! Если связь устанавливается с файлом, расположенным в локальной сети, используйте стандартный формат записи пути (UNC), не полагаясь на букву, которой подключенный сетевой диск обозначен в проводнике Windows. Эта буква может измениться на компьютере или может быть не определена, в то время как путь UNC является надежным способом, позволяющим Microsoft Access находить источники данных, содержащие связанные таблицы.

  5. Следуйте инструкциям диалоговых окон мастера Импорт электронной таблицы. Если импорт выполняется из рабочей книги Microsoft Excel версии 5.0 или более поздней, то можно импортировать данные из одного листа рабочей книги. Нельзя импортировать данные из других файлов многолистных электронных таблиц, например, из рабочих книг Microsoft Excel версии 4.0 или из книг Lotus. Чтобы импортировать данные из таких файлов, нужно сначала сохранить каждый их лист в отдельном файле.

Примечания

  • Можно импортировать или связать как все данные электронной таблицы, так и данные из именованного диапазона ячеек. Хотя для импортируемых в Microsoft Access данных обычно создается новая таблица, можно также добавить данные в существующую таблицу, если заголовки столбцов электронной таблицы совпадают с именами полей таблицы-приемника.

  • Если импорт таблицы занимает слишком много времени, это может быть связано с возникновением большого количества ошибок. Чтобы прервать импорт, нажмите клавиши CTRL+BREAK.

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

  • Можно импортировать данные из электронных таблиц других приложений, сохранив их в формате Microsoft Excel или Lotus 1-2-3.


 Импорт и связывание данных из Microsoft Outlook и с сервера Microsoft Exchange

Импорт и связывание данных из Microsoft Outlook и с сервера Microsoft Exchange

Примечание. Связать данные можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

  1. Откройте базу данных или переключитесь в окно базы данных открытой базы данных.

  2. Чтобы импортировать данные, выберите в меню Файл команду Внешние данные и подкоманду Импорт.

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

  3. В диалоговом окне Импорт (или Связь) в поле Тип файла выберите тип Outlook() или Exchange().

  4. Следуйте инструкциям диалоговых окон Мастер импорта из Exchange/Outlook.

Примечания

  • Для работы мастера импорта из Exchange/Outlook необходимо, чтобы на компьютере были установлены Microsoft Outlook, Outlook Express или Microsoft Exchange.

  • Можно использовать мастер импорта из Exchange/Outlook для связи с папкой «Контакты» Microsoft Outlook и создания документов на бланке и почтовых наклеек путем объединения данных с помощью мастера составных документов Microsoft Word.


 Импорт и связывание файлов dBASE

Импорт и связывание файлов dBASE

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

  1. Откройте базу данных или переключитесь в окно базы данных открытой базы данных.

  2. Чтобы импортировать файлы, выберите в меню Файл команду Внешние данные и подкоманду Импорт.

    Чтобы связать файлы, выберите в меню Файл команду Внешние данные и подкоманду Связь с таблицами.

  3. В диалоговом окне Импорт (или Связь) выберите в поле Тип файлов один из типов файлов dBASE.

  4. Щелкните стрелку справа от поля Папка, выберите диск и папку, где находится файл .dbf, и дважды щелкните значок файла.

    Важно! Если связь устанавливается с файлом, расположенным в локальной сети, используйте стандартный формат записи пути (UNC), не полагаясь на букву, которой подключенный сетевой диск обозначен в проводнике Windows. Эта буква может измениться на компьютере или может быть не определена, в то время как путь UNC является надежным способом, позволяющим Microsoft Access находить источники данных, содержащие связанные таблицы.

    • Если выполняется импортирование, Microsoft Access создает таблицу, имя которой совпадает с именем выбранного файла, а затем импортирует в нее данные из .dbf-файла. Перейдите к шагу 7.

    • Если выполняется связывание, Microsoft Access выводит диалоговое окно, позволяющее ассоциировать индексные файлы dBASE. Перейдите к шагу 5.
  5. Дважды щелкните каждый индекс dBASE (файл .ndx или .mdx), который нужно использовать, и нажмите кнопку Закрыть. Если индексов нет, нажмите кнопку Отмена.

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

  7. Чтобы импортировать или связать еще один файл dBASE, повторите шаги с 4 по 6.

Примечания

  • Чтобы связать (для чтения и записи) таблицу dBASE 7, необходимо установить на компьютере ядро Borland Database Engine (BDE) версии 4.x или более поздней. Если ядро BDE 4.x или старше на компьютере не установлено, его можно установить вместе с dBASE 7 или Delphi. При наличии более старой версии BDE, которая не поддерживает формат файла dBASE 7, можно обновить это ядро, посетив Web-узел компании Borland. Если же нет возможности установить BDE на компьютере, можно устанавливать связь с файлами dBASE III, IV и 5.0.

  • После того как файл .dbf или .dbc будет импортирован или связан, можно задать свойства полей таблицы. Импортировав файл .dbf или .dbc, можно также установить ключевое поле для таблицы. Для получения дополнительных сведений нажмите кнопку [image] .

  • Если устанавливается связь с файлом .dbf и с ним ассоциируется индексный файл (.ndx or .mdx), то для открытия связанной таблицы индексный файл будет необходим. Если удалить или переместить индексные файлы dBASE или информационный файл (.inf), созданный Microsoft Access, то открыть связанную таблицу будет нельзя.

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

  • Если таблицы dBASE хранятся на диске, доступном только для чтения, или на компакт диске, Microsoft Access не может создать файл .inf в той же папке, где находятся файлы .dbf. Чтобы связать такую таблицу, необходимо поместить файл .inf на диск c доступом и для чтения, и для записи. Путь к файлу .inf можно указать в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Импорт или связывание таблиц Paradox

Импорт или связывание таблиц Paradox

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

  1. Откройте базу данных или переключитесь в окно базы данных открытой базы данных.

  2. Чтобы импортировать таблицы, выберите в меню Файл команду Внешние данные и подкоманду Импорт.

    Чтобы связать таблицы, выберите в меню Файл команду Внешние данные и подкоманду Связь с таблицами.

  3. В диалоговом окне Импорт (или Связь) выберите в списке Тип файла элемент Paradox (*.db).

  4. Щелкните стрелку справа от поля Папка, выберите диск и папку, в которой расположен файл .db, и дважды щелкните значок этого файла.

    Важно! Если связь устанавливается с файлом, расположенным в локальной сети, используйте стандартный формат записи пути (UNC), не полагаясь на букву, которой подключенный сетевой диск обозначен в проводнике Windows. Эта буква может измениться на компьютере или может быть не определена, в то время как путь UNC является надежным способом, позволяющим Microsoft Access находить источники данных, содержащие связанные таблицы.

  5. Если выбранная таблица Paradox зашифрована, Microsoft Access запрашивает пароль. Введите пароль таблицы Paradox и нажмите кнопку ОK.

  6. Для того чтобы импортировать или связать другую таблицу Paradox, повторите шаги с 2 по 5. Закончив импорт или установление связи, нажмите кнопку Закрыть.

Примечания

  • Чтобы связать (для чтения и записи) таблицу Paradox 8.0, необходимо установить на компьютер ядро Borland Database Engine (BDE) версии 4.x или более поздней. При отсутствии установленного пакета BDE версии 4.x или более поздней его можно установить вместе с Paradox 8.0 или Delphi. При наличии более старой версии BDE, не поддерживающей формат файлов Paradox 8, можно обновить ядро с Web-узла Borland. Если же на компьютере ядро BDE вообще отсутствует, сохраняется возможность создания связи с таблицами Paradox версий 3.x, 4.x и 5.0.

  • Если связанная таблица Paradox имеет ключевое поле, то для открытия связанной таблицы необходим индексный файл (.px). Если связанная таблица Paradox содержит поле MEMO, для открытия связанной таблицы необходим файл с данными полей MEMO (.mb). Если эти файлы удалены или перемещены, открыть связанную таблицу будет невозможно.

  • Если связать таблицу Paradox, не имеющую ключевого поля, то данные этой таблицы нельзя будет обновлять в Microsoft Access. Чтобы сделать обновление таблицы возможным, следует определить в Paradox ключевое поле для этой таблицы.

  • Объекты OLE, хранящиеся в связанных или импортированных таблицах Paradox, нельзя открывать в Microsoft Access.


 Импорт и связывание таблиц базы данных SQL или данных из других источников ODBC

Импорт и связывание таблиц базы данных SQL или данных из других источников ODBC

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

Важно! Нельзя импортировать или связывать источник данных ODBC (в том числе и SQL), если не установлен соответствующий драйвер.

  1. Откройте базу данных или переключитесь в окно базы данных открытой базы данных.

  2. Чтобы импортировать таблицы, выберите в меню Файл команду Внешние данные и подкоманду Импорт.

    Чтобы связать таблицы, выберите в меню Файл команду Внешние данные и подкоманду Связь с таблицами.

  3. В диалоговом окне Импорт (или Связь) выберите в списке Тип файла элемент ODBC Databases ().

    Важно! Если связь устанавливается с файлом, расположенным в локальной сети, используйте стандартный формат записи пути (UNC), не полагаясь на букву, которой подключенный сетевой диск обозначен в проводнике Windows. Эта буква может измениться на компьютере или может быть не определена, в то время как путь UNC является надежным способом, позволяющим Microsoft Access находить источники данных, содержащие связанные таблицы.

    На экране появится диалоговое окно Select Data Source, в котором перечислены источники данных для всех драйверов ODBC, установленных на компьютере. Откройте нужную вкладку, File Data Source или Machine Data Source, и дважды щелкните источник данных ODBC, который нужно импортировать. Чтобы определить новый источник данных для любого установленного драйвера ODBC, нажмите кнопку New и следуйте инструкциям диалогового окна Create New Data Source и последующих диалоговых окон. См. сведения об источниках данных.

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

    Microsoft Access подключается к источнику данных ODBC и выводит список таблиц, которые можно импортировать или связать.

  5. При связывании таблицы установите флажок Save The Login ID And Password, чтобы сохранить информацию для таблицы в текущей базе данных; в этом случае пользователям не придется каждый раз вводить ее заново. Если оставить флажок сброшенным, все пользователи должны будут вводить свои имя и пароль при каждом открытии таблицы в новом сеансе Microsoft Access. Администратор базы данных SQL может также отключить этот флажок, заставляя тем самым всех пользователей вводить имя и пароль при каждом подключении к базе данных SQL. Для получения сведений о том, как отключить флажок Save The Login ID And Password, нажмите кнопку [image] .

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

Примечания

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

    .
  • Если при импорте, связывании или использовании таблицы базы данных SQL возникают ошибки, их причина, возможно, кроется в учетной записи сервера базы данных SQL или в самой базе данных. Если доступа к таблице базы данных SQL нет, обратитесь к администратору этой базы данных.

  • Чтобы связанную таблицу базы данных SQL можно было редактировать, таблица обычно должна иметь уникальный индекс, расположенный на сервере. Если нужно изменить таблицу, не имеющую уникального индекса, или если нужно изменить представление SQL, то можно создать индекс в Microsoft Access, о котором база данных SQL не будет ничего знать. Для этого создайте управляющий запрос, использующий инструкцию Create Index. Имейте в виду, однако, что индекс должен создаваться по полю или сочетанию полей, каждое значение которого уникально. Если значения поля или сочетания полей повторяются, то изменение таблицы будет невозможно. Чтобы удалить индекс, используйте другой управляющий запрос. Для получения дополнительных сведений о создании таких управляющих запросов нажмите кнопку [image] .

  • Если после установления связи с таблицей базы данных SQL ее структура изменится, обновите связь с помощью диспетчера связанных таблиц. Для получения дополнительных сведений нажмите кнопку [image] .

  • Для импорта таблицы из базы данных Microsoft SQL Server в проект Access лучше использовать службы Data Transformation Services (DTS), которые предоставляют более быстрый и гибкий способ импорта и преобразования данных. Дополнительные сведения см. в документации по Microsoft SQL Server.


 Импорт или связывание данных (только для чтения), расположенных на FTP- или HTTP-сервере Интернета

Импорт или связывание данных (только для чтения), расположенных на FTP- или HTTP-сервере Интернета

Примечание. Нельзя выполнять связывание и импорт из базы данных Microsoft Access, текстового файла или источника данных ODBC, если они расположены на FTP- или HTTP-сервере. Для просмотра списка источников данных, которые можно импортировать или связать, нажмите кнопку [image] .

  1. Откройте базу данных или переключитесь в окно базы данных открытой базы данных.

  2. Для импорта данных выберите в меню Файл команду Внешние данные и подкоманду Импорт.

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

  3. Для импорта или связывания данных с HTTP-сервера введите адрес Интернета в поле Имя файла. Например, чтобы установить связь с файлом Jansales.html на HTTP-сервере //pubweb введите строку http://pubweb/jansales.html.

    Для импорта или связывания данных с сервера FTP либо введите адрес Интернета в поле Имя файла, либо щелкните стрелку справа от поля Папка и выберите Адреса FTP. В списке адресов FTP дважды щелкните нужный адрес, а затем дважды щелкните элемент.

Примечания

  • Хотя текстовый файл нельзя импортировать или связать с помощью команды Импорт, можно использовать макрокоманду «Преобразовать текст» (TransferText) или метод TransferText.

  • Весь файл копируется в папку кэша Microsoft Internet Explorer на локальном компьютере. Этот процесс может занять значительное время, так как передаваемый по Интернету файл может иметь большой объем.

  • Связанная таблица представляет собой статический набор данных исходного удаленного источника данных, созданный при установлении связи. Когда таблица открыта, в ней не будут отражаться изменения, вносимые в это время на удаленном узле, но при следующем открытии этой таблицы Microsoft Access обновляет локальную копию, хранящуюся в папке кэша на локальном компьютере.


 Импорт или связывание (только для чтения) таблиц и списков HTML

Импорт или связывание (только для чтения) таблиц и списков HTML

  1. Откройте базу данных или, если она уже открыта, переключитесь в окно базы данных.

  2. Для импорта таблиц или списков HTML в меню Файл укажите пункт Внешние данные и выберите команду Импорт.

    Для связывания таблиц или списков HTML в меню Файл укажите пункт Внешние данные и выберите команду Связь с таблицами.

  3. В диалоговом окне Импорт или Связь в поле Тип файлов установите значение Документы HTML (*.html;*.htm).

  4. Щелкните ярлык на панели адресов или нажмите кнопку раскрытия в поле со списком Папка.

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

  6. Следуйте инструкциям мастера импорта HTML или мастера ссылок HTML. Для изменения спецификаций импорта/экспорта или указания другого имени файла и форматов полей нажмите кнопку Дополнительно.

  7. Если файл HTML содержит более одной таблицы или списка, повторите шаги 1—5 для каждой импортируемой или связываемой таблицы или списка.

Примечания

  • По умолчанию адреса гиперссылок HTML преобразуются в столбец типа данных гиперссылки, но только в том случае, если все значения в столбце таблицы или списка адресов гиперссылок определяются тегом <A HREF>. Тип данных можно изменить при помощи мастера импорта HTML или мастера ссылок HTML. Для получения дополнительных сведений об адресах гиперссылок нажмите кнопку [image] .

  • Изображения в форматах GIF и JPEG, внедренные в таблицы или списки HTML, игнорируются.

  • Таблица, внедренная в ячейку таблицы в файле HTML, при импорте или связывании воспринимается как отдельная таблица. Внедренный в ячейку таблицы список воспринимается как содержимое ячейки, а элементы в данном списке отделены друг от друга символами конца страницы.

  • Для данных, охватывающих несколько строк или столбцов в таблице HTML, в каждой ячейке автоматически создаются копии данных. С другой стороны, в Excel 2000 данные хранятся только в первой (левой верхней) ячейке, а остальные ячейки остаются пустыми.


 Удаление связи со связанной таблицей в базе данных Microsoft Access

Удаление связи со связанной таблицей в базе данных Microsoft Access

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

  1. В окне базы данных выберите значок Таблицы [image] в списке Объекты и выберите связанную таблицу.

  2. Нажмите клавишу DELETE. Microsoft Access удалит связь и уберет имя таблицы из списка.

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


 Использование таблицы «MSysConf» в базе данных Microsoft Access со связанными базами данных SQL

Использование таблицы «MSysConf» в базе данных Microsoft Access со связанными базами данных SQL

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

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

  • Позволяет отключать средство, обеспечивающее пользователям возможность сохранять в базе данных Microsoft Access имя и пароль для подключения к связанной базе данных SQL.

  • Оптимизирует способ заполнения Microsoft Access записей в фоновом режиме при простое, позволяя задать количество одновременно загружаемых строк данных и время задержки (в секундах) между загрузками. Если таблица «MSysConf» не создана, Microsoft Access использует стандартные значения: 100 записей с загрузкой через каждые 10 секунд.

Структура таблицы «MSysConf»

Таблица «MSysConf» базы данных SQL должна иметь следующую структуру.

Имя столбца | Тип данных | Пустое значение
Config | Тип данных, соответствующий 2-байтовому целому числу | Нет
chValue | VARCHAR(255) | Да
nValue | Тип данных, соответствующий 4-байтовому целому числу | Да
Comments | VARCHAR(255) | Да

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

Все пользователи должны иметь разрешение на использование инструкции Select в этой таблице, и только системный администратор должен иметь разрешение на вставку/обновление/удаление.

Данные в таблице «MSysConf»

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

Config | nValue | Описание
101 | 0 | Запрет локального хранения сетевого имени и пароля связанной таблицы.
101 | 1 | Разрешение локального хранения сетевого имени и пароля связанной таблицы.
102 | D | D — время задержки в секундах между загрузками.
103 | N | N — число загружаемых строк.

Примечания

  • Более длительное время задержки снижает загруженность сети, но увеличивает время, в течение которого данные открыты только для чтения (если сервер использует блокировку, допускающую только чтение).

  • Если при создании не настроить таблицу «MSysConf» должным образом, подключение к таблице базы данных SQL станет невозможным.


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

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

Примечание. Связать таблицу можно только в базе данных Microsoft Access, но не в проекте Microsoft Access.

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

Просмотр или обновление связей

  1. Откройте базу данных, содержащую связи с таблицами.

  2. Выберите в меню Сервис команду Надстройки и подкоманду Диспетчер связанных таблиц.

  3. Установите флажки для таблиц, связи с которыми требуется обновить.

  4. Нажмите кнопку OK для обновления выбранных связей.

    Microsoft Access подтверждает успешное обновление или, если таблица не найдена, выводит на экран диалоговое окно Выбор нового расположения: <имя таблицы>, в котором можно указать новое расположение таблицы.

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

Изменение пути к набору связанных таблиц

  1. Откройте базу данных, содержащую связи с таблицами.

  2. Выберите в меню Сервис команду Надстройки и подкоманду Диспетчер связанных таблиц.

  3. Установите флажок Всегда выдавать запрос нового местонахождения.

  4. Установите флажки для таблиц, связи с которыми требуется изменить, а затем нажмите кнопку OK.

  5. В диалоговом окне Выбор нового расположения: <имя таблицы> укажите новое расположение, нажмите кнопку Открыть, а затем кнопку OK.

Примечания

  • Диспетчер связанных таблиц не перемещает файлы баз данных или таблиц. Если требуется переместить файлы базы данных или таблиц в новое расположение, воспользуйтесь проводником Windows, окном «Мой компьютер» или командами копирования или перемещения MS-DOS. После перемещения базы данных или таблицы можно воспользоваться диспетчером связанных таблиц для обновления связей со связанными таблицами.

  • Диспетчер связанных таблиц не может обновлять связи с таблицами Microsoft Access, имена которых были изменены после связывания. В таких случаях необходимо удалить текущую связь, а затем связать таблицы повторно.


 Сообщения таблицы «Ошибки импорта»

Сообщения таблицы «Ошибки импорта»

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

Примечание. В проекте Microsoft Access таблица «Ошибки импорта» не создается. Пользуйтесь службами преобразования данных (Data Transformation Services — DTS), возможно, являющимися более быстрым и гибким способом импорта и преобразования данных. Дополнительные сведения см. в документации по Microsoft SQL Server.

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

Ошибка | Описание
Обрезание полей | Значение в поле превышает размер, заданный свойством Размер поля (FieldSize) этого поля.
Ошибка преобразования типа | Значение текстового поля или электронной таблицы не совпадает по типу данных с полем, в которое оно вставляется.
Нарушение уникальности ключа | Значение первичного ключа в записи совпадает со значением, уже имеющимся в таблице.
Нарушение условия на значение | Значение противоречит значению свойства Условие на значение (ValidationRule), заданному для этого поля или таблицы.
Null в обязательном поле | Значение Null недопустимо для данного поля, поскольку его свойство Обязательное поле (Required) имеет значение Да.
Значение Null в поле счетчика | Импортируемые данные содержат пустое значение, и выполнялась попытка добавить его в поле счетчика.
Не интерпретируемая запись | Текстовое значение содержит символ-ограничитель (обычно прямые кавычки). Если значение содержит символ-ограничитель, этот символ должен быть повторен в текстовом файле дважды; например: "по 10 дискет 3 1/2"" в коробке"

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


Настройка источников данных ODBC

  1. Нажмите кнопку Windows Пуск, выберите команду Настройка и подкоманду Панель управления, а затем дважды щелкните значок Источники данных ODBC (32 разряда) или ODBC (в Microsoft NT Workstation версии 4.0 или более поздней).

  2. Перейдите на вкладку Пользовательский DSN, Системный DSN или Файловый DSN, в зависимости от типа источника данных, который требуется изменить. Дополнительные сведения об источниках данных.

  3. Для того чтобы определить новый источник данных для текущего установленного драйвера, нажмите кнопку Добавить.

  4. Для того чтобы изменить определение существующего источника данных:
    • Выделите источник данных в списке. При изменении файлового DSN найдите соответствующую папку в поле Папка (при необходимости пользуйтесь кнопкой Вверх), а затем выберите нужный источник данных в этой папке.

    • Нажмите кнопку Настройка.
  5. Закончите действия в диалоговых окнах. Для получения дополнительных сведений о параметрах нажмите кнопку Справка в соответствующем диалоговом окне.


Способы работы с данными формы

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


Способы работы с данными таблицы

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


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

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Добавление данных в режиме таблицы или формы

Добавление данных в режиме таблицы или формы

  1. Откройте таблицу в режиме таблицы или форму в режиме формы.

  2. Нажмите на панели инструментов кнопку Новая запись [image] .

  3. Введите данные и нажмите клавишу TAB для перехода к следующему полю.

  4. В конце записи нажмите клавишу TAB для перехода к следующей записи.


Сохранение записи в режиме таблицы или формы

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

  • Для сохранения данных в записи во время ее изменения выберите в меню Записи команду Сохранить запись.


 Удаление записи в режиме таблицы или формы

Удаление записи в режиме таблицы или формы

  1. Откройте объект в режиме таблицы или форму в режиме формы.

  2. Выберите удаляемую запись.

  3. Нажмите на панели инструментов кнопку Удалить запись [image] .

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

См. сведения об обеспечении целостности данных в базе данных Microsoft Access.

См. сведения об обеспечении целостности данных в проекте Microsoft Access.


 Вставка в поле значения по умолчанию

Вставка в поле значения по умолчанию

  1. Откройте объект в режиме таблицы.

  2. Выберите поле, в которое требуется вставить значение по умолчанию.

  3. Нажмите клавиши CTRL+ALT+ПРОБЕЛ.

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


 Редактирование данных в полях в режимах таблицы или формы

Редактирование данных в полях в режимах таблицы или формы

  1. Откройте объект в режиме таблицы или форму в режиме формы.

  2. Чтобы изменить данные в поле, щелкните это поле.

    Чтобы заменить все значение поля целиком, установите указатель на левую границу поля, чтобы он превратился в указатель «плюс» [image] , и нажмите кнопку мыши.

  3. Введите нужный текст.

Примечания

  • Если при вводе текста допущена ошибка, нажмите клавишу BACKSPACE. Для отмены изменений, внесенных в текущее поле, нажмите клавишу ESC. Чтобы отменить изменения, внесенные во всю запись, снова нажмите клавишу ESC перед выходом из поля.

  • Microsoft Access сохраняет изменения в момент перехода к другой записи.


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

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

  1. Откройте объект в режиме таблицы или форму в режиме формы.

  2. Введите пару двойных кавычек (" ") без пробела между ними, чтобы поместить в поле пустую строку.

Поле сохранит пустое значение, хотя символы кавычек будут удалены при переходе к другому полю или объекту.

Примечания

  • Если при работе с базой данных Microsoft Access возникает сообщение «Поле имяПоля не допускает ввод пустых строк», измените значение свойства Пустые строки. Для получения дополнительных сведений об изменении этого свойства нажмите кнопку [image] .

  • В проекте Microsoft Access пустые строки можно вводить только в поля базы данных Microsoft SQL Server 7.0, имеющие тип данных «varchar» или «nvarchar». Пустые строки не поддерживаются в SQL Server 6.5.


 Отмена изменений при добавлении или редактировании записей в режимах таблицы или формы

Отмена изменений при добавлении или редактировании записей в режимах таблицы или формы

  • Чтобы отказаться от последнего внесенного изменения, нажмите кнопку Отменить [image] на панели инструментов.

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

Отмена изменений становится невозможной при начале изменения следующей записи, применении или удалении фильтра или переходе в другое окно.


 Влияние типа данных поля и условий на значения на ввод данных в режиме таблицы или формы

Влияние типа данных поля и условий на значения на ввод данных в режиме таблицы или формы

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

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

  • Значение несовместимо с типом данных поля. Если введено значение, не соответствующее типу данных поля, Microsoft Access пытается преобразовать его в правильный тип данных. Однако некоторые данные нельзя преобразовать в данные другого типа. Например, нельзя хранить текстовое значение в поле с типом данных «Числовой» в базе данных Microsoft Access или в поле с типом данных smallint в проекте Microsoft Access.

  • Данные нарушают условие на значение, заданное в свойстве Условие на значение (ValidationRule) этого поля.

  • В поле необходимо ввести данные, а была сделана попытка оставить его пустым.

  • Обновление поля было отменено в макросе, связанном с событием До обновления (BeforeUpdate), так как оно противоречит проверяемому условию.

Данные проверяются также при выходе из записи. Перед сохранением записи Microsoft Access проверяет все условия, заданные в свойстве Условие на значение (ValidationRule) записи. Кроме того, если таблица, в которую вносятся изменения, имеет ключ или уникальный индекс, то проверяется, что изменяемая запись не содержит в этом поле или полях значения, совпадающие со значениями в других записях таблицы. Если запись нельзя сохранить, внесите необходимые изменения или нажмите кнопку Отменить [image] для отмены всех изменений, внесенных в запись.


 Выделение полей и записей в режиме таблицы

Выделение полей и записей в режиме таблицы

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

Выделение | Щелкнуть
Данные в поле | В месте начала выделения. Для расширения области выделения перемещайте указатель при нажатой кнопке мыши.
Целое поле | На левой границе поля таблицы, где указатель принимает вид [image] .
Соседние поля | На левой границе поля. Для расширения области выделения перемещайте указатель при нажатой кнопке мыши.
Столбец | В области выделения поля.
Соседние столбцы | На имени поля в верхней части столбца. Для расширения области выделения перемещайте указатель при нажатой кнопке мыши.
Запись | В области выделения записи.
Несколько записей | В области выделения первой записи. Для расширения области выделения перемещайте указатель при нажатой кнопке мыши.
Все записи | Выберите в меню Правка команду Выделить все записи.

Следующая таблица содержит описание действий с клавиатурой, обеспечивающих выделение данных или записей в режиме таблицы.

Выделение | Действие
Данные в поле | Поместите курсор в начало выделяемого текста и, удерживая клавишу SHIFT, нажимайте клавиши клавиши со стрелками для перехода в конец выделяемого текста.
Целое поле | Поместите курсор в поле и нажмите клавишу F2.
Соседние поля | Выделите поле, нажмите клавишу SHIFT и, не отпуская ее, нажмите подходящую клавишу со стрелкой.
Текущий столбец | Нажмите клавиши CTRL+ПРОБЕЛ.
Текущая запись | Нажмите клавиши SHIFT+ПРОБЕЛ.
Несколько записей | Нажмите клавиши SHIFT+ПРОБЕЛ, а затем клавиши SHIFT+СТРЕЛКА ВВЕРХ или SHIFT+СТРЕЛКА ВНИЗ.


 Открытие диалогового окна «Область ввода» для облегчения редактирования поля или текстового поля

Открытие диалогового окна «Область ввода» для облегчения редактирования поля или текстового поля

  1. Откройте объект в режиме таблицы или форму в режиме формы.

  2. Выберите поле, содержимое которого требуется изменить.

  3. Нажмите клавиши SHIFT+F2.

Примечание. Чтобы раскрыть ячейку свойства в окне свойств, можно также щелкнуть ее правой кнопкой и выбрать команду Масштаб.


 Изменение данных в запросе

Изменение данных в запросе

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

Запрос или поле запроса | Изменение | Решение
Запрос, основанный на таблице | Да |
Запрос, основанный на таблицах с отношением «один-к-одному» | Да |
Запрос, основанный на таблицах с отношением «один-ко-многим» | Обычно возможно | Для получения дополнительных сведений нажмите кнопку [image] .
Запрос, основанный на трех и более таблицах с отношением «многие-к-одному-ко-многим». | Нет | Хотя обновлять данные непосредственно в запросе нельзя, их можно обновлять в форме или на странице доступа к данным, основанной на запросе, если свойство формы Тип набора записей (RecordsetType) имеет значение Динамический набор (несогл.).
Перекрестный запрос | Нет |
Запрос к серверу SQL | Нет |
Запрос, вычисляющий сумму, среднее, число значений или выполняющий другие виды вычислений итогов по значениям поля, либо запрос на обновление, имеющий ссылки на поле в строке Обновление из перекрестного запроса, запроса на выборку или подчиненного запроса, содержащего итоговые значения или статистические функции | Нет | С помощью статистических функций по подмножеству в строке Обновление запроса на обновление можно указать ссылки на поля перекрестного запроса, запроса на выборку или подчиненного запроса, содержащего итоговые значения или статистические функции. Для получения дополнительных сведений нажмите кнопку [image] .
Запрос на объединение | Нет |
Запросы, свойство которых Уникальные значения (UniqueValues) имеет значение Да | Нет |
Запрос, включающий связанную таблицу ODBC, не содержащую уникального индекса, или таблицу Paradox, не содержащую ключевого поля | Нет |
Запрос (или базовая таблица), для которого не присвоено разрешение «Обновление данных» | Возможно удаление, но не обновление | Для изменения данных должны быть присвоены разрешения. Для получения дополнительных сведений нажмите кнопку [image] .
Запрос (или базовая таблица), для которого не присвоено разрешение «Обновление данных» | Возможно обновление, но не удаление | Для удаления данных должны быть присвоены разрешения. Для получения дополнительных сведений нажмите кнопку [image] .
Запрос, включающий несколько таблиц или запросов, не объединенных линией объединения в режиме конструктора | Нет | Необходимо объединить свойства таблиц, чтобы их обновить. Для получения дополнительных сведений нажмите кнопку [image] .
Вычисляемое поле | Нет |
Поля только для чтения; база данных была открыта только для чтения или расположена на диске только для чтения | Нет |
Поле записи, которая была удалена или заблокирована другим пользователем | Нет | Заблокированную запись следует обновить сразу же после разблокирования.
Поля MЕМО, гиперссылки или объектов OLE в результатах запроса | Да |


 Копирование и перемещение поля, элемента управления, текста, макрокоманды или другого элемента

Копирование и перемещение поля, элемента управления, текста, макрокоманды или другого элемента

Можно копировать или перемещать такие объекты, как поля, элементы управления, текст или макрокоманды. Также можно копировать объекты базы данных. См. сведения о копировании объектов базы данных.

  1. Выберите элементы, которые необходимо скопировать или переместить.

  2. Чтобы скопировать элемент, нажмите кнопку Копировать [image] на панели инструментов.

    Чтобы переместить элемент, нажмите кнопку Вырезать [image] на панели инструментов.

  3. Выберите место, куда следует поместить элемент.

  4. Нажмите кнопку Вставить [image] на панели инструментов.

Примечания

  • При копировании поля, элемента управления или макрокоманды Microsoft Access копирует все соответствующие им свойства, элементы управления или аргументы макрокоманд. Например, при копировании элемента управления «Поле» Access копирует и его надпись. При копировании макрокоманды путем выбора области выделения строки, Access копирует соответствующие ей аргументы, макросы и условные выражения.

  • Access не копирует процедуры обработки событий, связанные с элементами управления.

  • Для копирования и вставки нескольких объектов данных, например, записей или групп записей, или содержимого полей и элементов управления, можно использовать буфер обмена Office. Однако нельзя использовать буфер обмена Office для копирования таких объектов, как элементы управления, макрокоманды или объекты базы данных. См. сведения о копировании и вставке нескольких объектов.


Удаление поля, элемента управления, текста, макрокоманды или другого элемента

  1. Выберите элемент или элементы, которые нужно удалить.

    См. сведения о выделении нескольких элементов управления.

  2. Нажмите клавишу DELETE.


 Выбор полей и записей в режиме страницы

Выбор полей и записей в режиме страницы

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

Выделение | Щелкните
Данные в поле | В месте начала выделения. Для расширения области выделения перетащите указатель над данными.
Целое поле | Три раза.
Запись | Любое поле на странице доступа к данным с группами.

Следующая таблица содержит описание действий с клавиатурой, обеспечивающих выделение данных или записей в режиме страницы.

Выделение | Действие
Данные в поле | Поместите курсор в начало выделяемого текста и, удерживая клавишу SHIFT, нажимайте клавиши со стрелками для перехода в конец выделяемого текста.
Целое поле | Поместите курсор в поле и нажмите клавиши HOME, SHIFT+END.
Запись | На странице доступа к данным с группами нажмите клавишу TAB.

Примечание. Страница доступа к данным может содержать сводный список или электронную таблицу, для которых имеются собственные способы выделения. Для вывода справки по сводному списку или электронной таблице нажмите кнопку Справка [image] на панели управления соответствующего компонента.


 Редактирование данных в полях в режиме страницы

Редактирование данных в полях в режиме страницы

  1. Перейдите к записи или используйте фильтр для поиска записи, которую нужно отредактировать.

  2. Выберите поле, содержимое которого требуется изменить.

  3. Введите нужный текст.

Примечания

  • Если при вводе текста допущена ошибка, нажмите клавишу BACKSPACE. Для отмены изменений, внесенных в текущее поле, нажмите клавишу ESC. Чтобы отменить изменения, внесенные во всю запись, нажмите кнопку Восстановить запись [image] на панели кнопок перехода по записям.

  • Изменения автоматически сохраняются при переходе к следующей записи, применении или удалении фильтра или переходе к другой Web-странице.


 Отмена изменений при добавлении или редактировании записей в режиме страницы

Отмена изменений при добавлении или редактировании записей в режиме страницы

  • На панели перехода по записям нажмите кнопку Восстановить запись

Отмена изменений становится невозможной при начале изменений следующей записи, применении или удалении фильтра или переходе к другой Web-странице.


 Вывод самых последних данных в режиме страницы

Вывод самых последних данных в режиме страницы

Если ввод данных осуществляется несколькими пользователями одновременно, то на странице доступа к данным могут не отображаться самые последние изменения в базе данных Microsoft Access или в проекте Microsoft Access. Можно загрузить из базы данных самые последние данные.

  • Щелкните страницу правой кнопкой мыши и выберите команду Обновить, либо нажмите клавишу F5.

Осторожно! Если выбрать команду Обновить не сохранив сделанные изменения, то Microsoft Access предупредит о возможной потере внесенных изменений. Чтобы отказаться от обновления, нажмите кнопку Отмена.

Примечания

  • Если загрузка данных занимает много времени и вы хотите прервать ее, нажмите клавишу ESC.

  • Страница доступа к данным может содержать элемент управления сводного списка, использующий для обновления собственный метод. Для вывода справки по сводному списку нажмите кнопку Справка [image] на панели инструментов сводного списка.


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

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

  1. Откройте гиперссылку одним из следующих способов.
    • Откройте документ Microsoft Office, содержащий определенную гиперссылку.

    • Откройте документ, созданный в любом приложении и содержащий действительный адрес гиперссылки, не определенный как гиперссылка.

    • Откройте Web-обозреватель, например Microsoft Internet Explorer.
  2. Выполните одно из следующих действий.
    • В документе Microsoft Office щелкните правой кнопкой мыши определенную гиперссылку. Выберите в контекстном меню команду Гиперссылка и подкоманду Копировать гиперссылку.

    • Выделите в любом документе адрес гиперссылки, а затем в меню Правка выберите команду Копировать.

    • В обозревателе Internet Explorer выберите адрес в поле Адрес или выделите на странице действительный адрес гиперссылки, щелкните его правой кнопкой и выберите из контекстного меню команду Копировать или Копировать ярлык.

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

  3. Переключитесь в Microsoft Access и выполните одно из следующих действий.
    • В базе данных Microsoft Access (.mdb) откройте таблицу или запрос в режиме таблицы.

    • В базе данных Access или в проекте Microsoft Access (.adp) откройте форму в режиме таблицы или в режиме формы,
  4. Поместите курсор в поле гиперссылки таблицы или в текстовое поле или другой элемент управления, который может содержать гиперссылки в форме.

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

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

    В поле или элемент управления будет добавлена гиперссылка. При щелчке этой гиперссылки открывается требуемый документ или Web-страница.


 Ввод гиперссылки путем перетаскивания ярлыка Интернета

Ввод гиперссылки путем перетаскивания ярлыка Интернета

  1. В Microsoft Access выполните одно из следующих действий:
    • В базе данных Microsoft Access (.mdb) откройте таблицу или запрос в режиме таблицы.

    • В базе данных Access или в проекте Microsoft Access (.adp) откройте форму в режиме таблицы или формы, или страницу доступа к данным в режиме страницы.
  2. Перейдите на ярлык Интернета (значок на рабочем столе или элемент в подкаталоге History каталога Windows).

  3. Выделите ярлык Интернета.

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

    Microsoft Access добавляет гиперссылку в выбранный элемент управления. В режиме формы или таблицы можно открыть документ или Web-страницу, щелкнув гиперссылку. На странице доступа к данным поле, в которое введен адрес гиперссылки, не преобразует этот адрес в гиперссылку. Преобразованный в гиперссылку адрес следует искать в другом месте страницы.

Совет. Нажмите кнопку Обновить на панели инструментов обозревателя Internet Explorer, чтобы отобразить адрес гиперссылки в виде отформатированной гиперссылки.


 Ввод гиперссылки в поле или в текстовое поле

Ввод гиперссылки в поле или в текстовое поле

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

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

  3. Введите допустимый адрес гиперссылки. Адрес гиперссылки может содержать до четырех частей, разделенных знаком #:

    экранныйТекст#адрес#допАдрес#всплывающаяПодсказка

    Следующий пример содержит компоненты экранныйТекст, адрес и всплывающаяПодсказка. Обратите внимание, что он также содержит знак # для компонента допАдрес, который опущен:

    Корпорация Майкрософт#http://example.microsoft.com/##Пример страницы для Корпорации Майкрософт

Для получения дополнительных сведений об адресах гиперссылок нажмите кнопку [image] .

Microsoft Access добавит гиперссылку в поле или элемент управления.

Примечания

  • В базе данных Microsoft Access (.mdb) можно открыть конечный документ или Web-страницу гиперссылки, щелкнув соответствующую гиперссылку в таблице, запросе или форме в режиме таблицы, либо в форме в режиме формы.

  • В проекте Microsoft Access (.adp) можно открыть конечный документ или Web-страницу, щелкнув гиперссылку в форме режиме формы или режиме таблицы. В режиме таблицы для таблиц, запросов или сохраненных процедур адрес гиперссылки отображается как строка текста, а не как отформатированная гиперссылка.

  • На странице доступа к данным поле, в которое вводится адрес гиперссылки, отображает адрес гиперссылки как текстовую строку, а не как отформатированную гиперссылку. Адрес в формате гиперссылки следует искать в другом месте страницы.

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

    Нажмите кнопку Обновить на панели инструментов Microsoft Internet Explorer, чтобы отобразить на странице доступа к данным адрес гиперссылки в виде отформатированной гиперссылки.


 Добавление, изменение или удаление пути к рисунку в режиме страницы

Добавление, изменение или удаление пути к рисунку в режиме страницы

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

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

  2. Щелкните поле, содержащее путь к рисунку.

  3. Выполните одно из следующих действий.

    Чтобы добавить путь к рисунку, введите с клавиатуры путь расположения рисунка.

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

    Чтобы удалить путь к рисунку, выделите все содержимое поля и нажмите клавишу DEL.

Примечания

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

  • Путь может быть относительным, путем на локальном компьютере, путем в стандартном формате записи (UNC) или путем URL. Тип пути зависит от требований базы данных.

  • Для физического удаления рисунка необходимо удалить его из файловой системы. Со страницы эта возможность может быть недоступна, в зависимости от структуры страницы. Дополнительные сведения по удалению файлов см. в справочной системе Microsoft Windows.


 Добавление новой записи в режиме страницы

Добавление новой записи в режиме страницы

  1. На панели перехода по записям нажмите кнопку Новая запись [image].

  2. Введите данные в первое поле и нажмите клавишу TAB для перехода к следующему полю.

  3. Добавив данные во все поля, нажмите кнопку Сохранить запись [image], чтобы сохранить запись.

Примечание. Запись автоматически сохраняется при начале изменения другой записи, применении и удалении фильтра или переключении на другую Web-страницу.


 Сохранение записи в режиме страницы

Сохранение записи в режиме страницы

  • Для сохранения данных в записи во время ее изменения нажмите кнопку Сохранить запись [image] на панели перехода по записям.

Примечание. Запись автоматически сохраняется при переходе к другой записи, применении или удалении фильтра или переходе к другой Web-странице.


 Удаление записи в режиме страницы

Удаление записи в режиме страницы

Важно! Отменить удаление записи из базы данных невозможно.

  1. Перейдите к записи или используйте фильтр для поиска записи, которую требуется удалить.

  2. На панели кнопок перехода нажмите кнопку Удалить запись [image] .


 Копирование и перемещение данных из одного поля в другое

Копирование и перемещение данных из одного поля в другое

  1. Откройте таблицу в режиме таблицы или форму в режиме формы.

  2. Выберите данные для копирования или вырезания.

    Инструкции

  3. Для копирования данных нажмите на панели инструментов кнопку Копировать [image] .

    Для перемещения данных нажмите на панели инструментов кнопку Вырезать [image] .

  4. Чтобы заменить текущее значение поля-приемника, выделите все поле.

    Чтобы вставить данные в уже существующие данные, установите курсор в нужное место.

  5. Нажмите кнопку Вставить [image] на панели инструментов.

    Для получения сведений по устранению неполадок, возникающих при вставке, нажмите кнопку [image] .


 Копирование и перемещение данных из нескольких полей в режиме таблицы

Копирование и перемещение данных из нескольких полей в режиме таблицы

  1. Откройте таблицу в режиме таблицы или форму в режиме формы.

  2. Выделите поля или столбцы, содержимое которых требуется скопировать или вырезать.

    Инструкции

  3. Для копирования данных нажмите на панели инструментов кнопку Копировать [image] .

    Для перемещения данных нажмите на панели инструментов кнопку Вырезать [image] .

  4. Выделите поля-приемники данных, или переключитесь в приложение, в которое нужно вставить данные, и выберите в нем место вставки.

  5. Нажмите кнопку Вставить [image] на панели инструментов.

    Для получения сведений по устранению неполадок, возникающих при вставке, нажмите кнопку [image] .


 Копирование и перемещение записей в таблицу

Копирование и перемещение записей в таблицу

  1. Откройте таблицу в режиме таблицы или форму в режиме формы.

  2. Выделите запись или записи для копирования или перемещения.

    Инструкции

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

  3. Чтобы скопировать записи, нажмите на панели инструментов кнопку Копировать [image] .

    Чтобы переместить записи, нажмите на панели инструментов кнопку Вырезать [image] .

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

  5. Для замены уже существующих записей копируемыми выделите записи, которые требуется заменить, и нажмите на панели инструментов кнопку Вставить [image] .

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

Если исходный объект в режиме таблицы содержит больше полей, чем объект-приемник, то лишние поля не вставляются. Для получения сведений по устранению неполадок, возникающих при вставке, нажмите кнопку [image] .


 Копирование и перемещение записей в форму

Копирование и перемещение записей в форму

  1. Откройте объект в режиме таблицы или форму в режиме формы.

  2. Выделите запись или записи для копирования или перемещения.

    Инструкции

  3. Для копирования записей нажмите на панели инструментов кнопку Копировать [image] .

    Для перемещения записей нажмите на панели инструментов кнопку Вырезать [image] .

  4. Откройте форму, в которую требуется скопировать записи.

  5. Для замены уже существующих записей копируемыми выделите записи, которые требуется заменить, и нажмите на панели инструментов кнопку Вставить [image] .

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

Содержимое записей вставляется в поля, имеющие те же имена, что и исходные поля, вне зависимости от их порядка в форме. Если исходная форма, из которой копируются или перемещаются записи, содержит поля, отсутствующие в форме-приемнике, Microsoft Access запрашивает разрешение на вставку только полей с совпадающими именами. Если совпадающих имен полей нет, поля вставляются в соответствии с последовательностью перехода в форме-приемнике, которая может не совпадать с нужным порядком. Поэтому поля, имеющие разные имена в источнике и приемнике, следует вставлять в объект в режиме таблицы, а не в форму.

Для получения сведений по устранению неполадок, возникающих при вставке, нажмите кнопку [image] .


 Копирование и перемещение записей из Microsoft Access в другое приложение

Копирование и перемещение записей из Microsoft Access в другое приложение

  1. Откройте объект в режиме таблицы или форму в режиме формы.

  2. Выделите данные для копирования или перемещения.

    Инструкции

  3. Для копирования данных нажмите на панели инструментов кнопку Копировать [image] .

    Для перемещения данных нажмите на панели инструментов кнопку Вырезать [image] .

  4. Откройте приложение, в которое требуется вставить данные.

  5. Чтобы заменить существующие данные данными из Microsoft Access, выделите заменяемые данные.

    Чтобы вставить данные в существующие данные, установите курсор в место вставки данных.

    Примечание. Если данные вставляются в электронную таблицу Microsoft Excel, выделите ячейку, в которой должен находиться заголовок первого вставляемого столбца. Если вставка осуществляется в документ Microsoft Word для Windows, поместите курсор в то место, где нужно разместить записи. В Word записи вставляются в виде таблицы.

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

Примечания

  • При вставке записей в другие приложения Microsoft Access в первой строке вставляет имена полей, а в последующих строках — данные.

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


 Копирование и перемещение записей из другого приложения в Microsoft Access

Копирование и перемещение записей из другого приложения в Microsoft Access

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

  2. Перед вставкой в объект в режиме таблицы убедитесь, что порядок столбцов в объекте соответствует порядку копируемых или перемещаемых данных.

    Если выполняется вставка в форму, и имена элементов управления в форме совпадают с именами копируемых столбцов, данные будут вставлены в соответствующие элементы управления. Если имена не совпадают или если у столбцов отсутствуют имена, Microsoft Access выполнит вставку данных в соответствии с последовательностью перехода в форме.

  3. Для копирования записей выберите в меню Правка команду Копировать.

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

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

  4. В Microsoft Access откройте объект-получатель записей в режиме таблицы или формы.

  5. Выполните одно из следующих действий.
    • Для замены существующих записей выделите эти записи и нажмите кнопку Вставить [image] на панели инструментов. Чтобы выделить текущую запись в случае, если в форме не выводится область выделения записей, выберите в меню Правка команду Выделить запись.

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


 Копирование и вставка нескольких объектов

Копирование и вставка нескольких объектов

  1. Выделите первый копируемый объект.

  2. На панели инструментов Буфер обмена нажмите кнопку Копировать [image] .

    Чтобы отобразить панель инструментов Буфер обмена, выберите в меню Вид команду Панели инструментов и подкоманду Буфер обмена.

  3. Если следующий копируемый объект находится в другом приложении, переключитесь в это приложение.

  4. Выделите следующий копируемый объект.

  5. На панели инструментов Буфер обмена нажмите кнопку Копировать [image] .

    Если панель инструментов Буфер обмена недоступна, выполните команду Копировать из меню Правка.

  6. Повторяйте шаги с 3 по 5, пока не будут скопированы все нужные объекты (не более 12).

  7. Щелкните местоположение, куда требуется вставить объекты.

  8. Чтобы вставить все скопированные объекты, нажмите кнопку Вставить все [image] на панели инструментов Буфер обмена.

    Если вставлять все скопированные объекты не требуется, или кнопка Вставить все недоступна, существует возможность вставки определенных объектов.

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


 Копирование и вставка нескольких объектов

Копирование и вставка нескольких объектов

Данный раздел содержит справочные сведения по следующим вопросам.

Копирование нескольких объектов

Использование панели инструментов «Буфер обмена»

Буфер обмена Office и буфер обмена Windows

Возможности буфера обмена Office

Дополнительные сведения

Копирование нескольких объектов

Буфер обмена Office можно использовать для сбора и вставки нескольких объектов. Например, можно скопировать текст в документе Microsoft Word, переключиться в Microsoft Excel и скопировать графический объект, переключиться в Microsoft PowerPoint и скопировать маркированный список, переключиться в Microsoft Access и скопировать таблицу, а затем переключиться в Microsoft Word и вставить набор скопированных объектов. Буфер обмена Office автоматически копирует несколько объектов при выполнении любого из следующих действий:

  • последовательное копирование или вырезание двух различных объектов в одном приложении;

  • копирование одного объекта, вставка его и копирование другого объекта в том же приложении;

  • последовательное копирование одного объекта дважды.

Возврат в начало

Использование панели инструментов «Буфер обмена»

Также для копирования нескольких объектов можно отобразить панель инструментов Буфер обмена (меню Вид, подменю Панели инструментов) и нажать кнопку Копировать [image] . Если буфер обмена Office открыт в одном из приложений Microsoft Office, он отображается при переключении в другое приложение Office. Панель инструментов Буфер обмена недоступна в режимах, в которых недоступны команды Копировать, Вырезать и Вставить.

Когда панель инструментов Буфер обмена отображается, можно нажать кнопку Вставить все [image] , чтобы вставить все скопированные объекты, или выбрать отдельный объект, чтобы вставить только этот объект. Команда Вставить (меню Правка) используется для вставки только последнего скопированного объекта. Однако после вставки отдельного объекта или всех объектов с помощью панели инструментов Буфер обмена выполнение команды Вставить (меню Правка) приводит к вставке последнего элемента, вставленного с помощью панели инструментов Буфер обмена.

Примечание. Панель Буфер обмена нельзя изменить.

Возврат в начало

Буфер обмена Office и буфер обмена Windows

Буфер обмена Office не то же самое, что буфер обмена Windows. При копировании нескольких объектов в буфер обмена Office последний копируемый объект всегда копируется в буфер обмена Windows. При очистке буфера обмена Office буфер обмена Windows также очищается. При использовании команды Вставить (меню Правка), кнопки Вставить или сочетания клавиш для вставки (CTRL+V) выполняется вставка содержимого буфера обмена Windows.

Возврат в начало

Возможности буфера обмена Office

Буфер обмена Office способен вместить до 12 объектов. При копировании дополнительного объекта в буфер обмена Office, уже содержащий 12 объектов, выводится сообщение с вопросом, следует ли удалить первый объект или отменить копирование текущего объекта. Скопированные объекты хранятся в буфере обмена Office до закрытия всех приложений Office на данном компьютере.

Вызывать панель «Буфер обмена» Office и вставлять несколько объектов можно только в приложениях Microsoft Excel, Word, Access, Outlook и PowerPoint. Тем не менее, если в каком-либо приложении Office отображается панель инструментов «Буфер обмена», в нее будут автоматически копироваться все объекты, копируемые или вырезаемые в других приложениях.

Возврат в начало

Дополнительные сведения

Копирование и вставка нескольких объектов

Вставка определенных объектов из буфера обмена Office

Очистка буфера обмена Office

Возврат в начало


 Очистка буфера обмена Office

Очистка буфера обмена Office

  • На панели инструментов Буфер обмена нажмите кнопку Очистить буфер обмена [image] .

    Чтобы вывести панель инструментов Буфер обмена, выберите в меню Вид команду Панели инструментов, а затем Буфер обмена.


 Просмотр содержимого буфера обмена Office

Просмотр содержимого буфера обмена Office

  • Выберите в меню Вид команду Панели инструментов и подкоманду Буфер обмена. Если панель инструментов Буфер обмена закреплена, нажмите кнопку Элементы.

Совет. Для просмотра первых 50 символов текста из объекта, находящегося в буфере обмена Office, задержите указатель на кнопке этого объекта. Для графических объектов, рисунков или объектов, не содержащих текста для просмотра, отображается текст «Рисунок n» или «Объект x», где n — номер, отражающий очередность копирования только графических объектов и рисунков, а x — номер, отражающий очередность копирования всех объектов.


 Вставка определенных объектов из буфера обмена Office

Вставка определенных объектов из буфера обмена Office

  1. Щелкните местоположение, куда требуется вставить объекты.

  2. Выберите вставляемый объект на панели инструментов Буфер обмена.

    Если панель инструментов Буфер обмена закреплена, нажмите кнопку Элементы, а затем выберите вставляемый объект.

    Чтобы отобразить панель инструментов Буфер обмена, выберите в меню Вид команду Панели инструментов и подкоманду Буфер обмена.

  3. Повторите шаг 2 для каждого вставляемого объекта.

Совет. Для просмотра первых 50 символов текста из объекта, находящегося в буфере обмена Office, задержите указатель на кнопке этого объекта. Для графических объектов, рисунков или объектов, не содержащих текста для просмотра, отображается текст «Рисунок n» или «Объект x», где n — номер, отражающий очередность копирования только графических объектов и рисунков, а x — номер, отражающий очередность копирования всех объектов.


 Вывод данных, содержащихся в полях таблицы или запроса

Вывод данных, содержащихся в полях таблицы или запроса

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Если нужно создать элемент управления с помощью мастера, убедитесь, что кнопка Мастера [image] на панели элементов нажата.

    Примечания

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

    • Мастера недоступны для обособленных страниц доступа к данным или для страниц, указывающих на другую базу данных. В таком случае элемент управления придется создавать без помощи мастера.
  3. Откройте список полей нажатием кнопки Список полей [image] на панели инструментов.

  4. Выполните одно из следующих действий.
    • Выберите одно или несколько полей в списке полей формы или отчета.
    Выделение | Действие
    Одно поле | Выберите поле.
    Группа соседних полей | Выберите первое поле группы, нажмите клавишу SHIFT и, удерживая ее, выберите последнее поле группы.
    Произвольная группа полей | Нажмите клавишу CTRL и, удерживая ее, выберите нужные поля.
    Все поля | Дважды щелкните заголовок списка полей.

    • Выберите поле, таблицу или запрос в списке полей на странице доступа к данным.
    Выделение | Действие
    Одно поле | Выберите поле.
    Таблица или запрос | Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата, и выберите таблицу или запрос.

  5. Выполните одно из следующих действий.
    • Перетащите поле (поля) из списка полей в форму или отчет.

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

    • Примечание Поля, таблицы и запросы нужно именно перетаскивать из списка полей. Если выбрать поле, таблицу или запрос в списке полей, а затем щелкнуть форму, отчет или страницу доступа к данным, Microsoft Access не создаст элемент управления. Для каждого поля, выбранного в списке полей, Access помещает в форму, отчет или на страницу доступа к данным одно текстовое поле. Если в списке полей страницы доступа к данным были выбраны таблица или запрос, Access помещает на страницу текстовые поля для каждого поля таблицы или запроса. Каждое текстовое поле присоединено к одному полю базового источника данных. Каждое текстовое поле по умолчанию имеет присоединенную подпись.
  6. Перетащите выбранный объект так, чтобы верхний левый угол его значка находился в том месте, где должен располагаться верхний левый угол элемента управления (а не его подписи), и отпустите кнопку мыши.

Примечания

  • Access создает соответствующий полю элемент управления и устанавливает некоторые его свойства, определяемые типом данных поля. Если создаваемый элемент управления имеет не тот тип, который нужен, нажмите соответствующую кнопку на панели элементов перед тем, как перетаскивать поле из списка полей. В формах и отчетах элементы управления создаются также с учетом значения свойства Тип элемента управления (DisplayControl). Для получения дополнительных сведений о свойстве Тип элемента управления (DisplayControl) нажмите кнопку [image] .

  • В формах и отчетах тип элемента управления можно изменить и после его создания.

Инструкции


 Отображение данных, текста и итоговых значений в форме, отчете или на странице доступа к данным

Отображение данных, текста и итоговых значений в форме, отчете или на странице доступа к данным

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

Предполагаемые действия

Дополнительные сведения о присоединенных, свободных и вычисляемых элементах управления

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

Создание присоединенного элемента управления

Создание свободного элемента управления

Создание вычисляемого элемента управления

Создание элемента управления определенного типа (поле, флажок, список и т. п.) в форме

Создание элемента управления определенного типа (надпись, текст, флажок, список и т. п.) в отчете

Создание элемента управления определенного типа (надпись, текст,флажок, список и т. п.) на странице доступа к данным


 Ввод адреса гиперссылки в режиме страницы

Ввод адреса гиперссылки в режиме страницы

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

Вставка гиперссылки или адреса гиперссылки

Перетаскивание ярлыка Интернета

Ввод адреса гиперссылки


 Переход по гиперссылке

Переход по гиперссылке

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

  2. Наведите указатель на гиперссылку. Щелкните гиперссылку, когда указатель примет вид руки.

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


 Изменение сохраненной в таблице гиперссылки в режиме формы или таблицы

Изменение сохраненной в таблице гиперссылки в режиме формы или таблицы

  1. Выполните одно из следующих действий.
    • В базе данных Microsoft Access (.mdb) откройте таблицу или запрос в режиме таблицы.

    • В базе данных Access или в проекте Microsoft Access (.adp) откройте форму в режиме таблицы или в режиме формы.
  2. В режиме таблицы щелкните правой кнопкой поле гиперссылки. В форме щелкните правой кнопкой поле или поле со списком, содержащее гиперссылку.

  3. Для добавления или изменения отображаемого текста выберите в контекстном меню команду Гиперссылка. В поле Отображать текст введите нужный текст для отображения.

  4. Чтобы изменить адрес гиперссылки выберите команду Гиперссылка, а затем Изменить гиперссылку.

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

Примечание. В проекте Access можно изменять гиперссылки в таблице или запросе в режиме таблицы путем прямого ввода в поле гиперссылки. Для получения сведений о синтаксисе, используемом для ввода гиперссылки, нажмите кнопку [image] .


 Удаление сохраненной в таблице гиперссылки в режиме формы или таблицы

Удаление сохраненной в таблице гиперссылки в режиме формы или таблицы

  1. Выполните одно из следующих действий.
    • В базе данных Microsoft Access (.mdb) откройте таблицу или запрос в режиме таблицы.

    • В базе данных Access или в проекте Microsoft Access (.adp) откройте форму в режиме таблицы или в режиме формы.
  2. Перейдите к записи, которая содержит гиперссылку, подлежащую удалению.

  3. В режиме таблицы щелкните правой кнопкой мыши поле гиперссылки. В форме, щелкните правой кнопкой мыши поле или поле со списком, которое содержит гиперссылку.

  4. В контекстном меню выберите команду Гиперссылка и подкоманду Удалить гиперссылку.

Примечания

  • В проекте Access можно удалить гиперссылку в таблице или запросе в режиме таблицы, выделив содержимое поля и нажав клавишу DELETE.

  • В базе данных Access и в проекте Access можно удалить все гиперссылки, хранящиеся в таблице, удалив поле, в котором они хранятся.


 Ввод адреса гиперссылки в режиме формы или в режиме таблицы

Ввод адреса гиперссылки в режиме формы или в режиме таблицы

Существует несколько способов ввода адреса гиперссылки в форму или таблицу, все записи которой имеют разные гиперссылки. В базе данных Microsoft Access (.mdb) можно использовать описанные ниже способы внесения гиперссылки в таблицу, запрос или форму в режиме таблицы или в форму в режиме формы. В проекте Microsoft Access (.adp), можно использовать все эти способы для внесения гиперссылки в форму в режиме формы и режиме таблицы. В режиме таблицы для представления, таблицы и хранимой процедуры необходимо набрать гиперссылку в поле.

Предполагаемые действия

Связывание документа, файла или Web-страницы

Использование кнопки Добавить гиперссылку для создания связи с существующим файлом или Web-страницей

Использование кнопки Добавить гиперссылку для одновременного создания новой страницы доступа к данным и получения ссылки на эту страницу

Вставка гиперссылки или адреса гиперссылки

Вставка текста из документа Microsoft Office

Перетаскивание ярлыка Интернета

Ввод адреса гиперссылки

Связывание объекта текущей базы данных

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

Связывание адреса электронной почты

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


 Проверка орфографии в режиме таблицы

Проверка орфографии в режиме таблицы

  1. Откройте объект в режиме таблицы.

  2. Выберите записи, столбцы, поля или часть текста поля, в которых требуется проверить правописание.

    Инструкции

  3. Нажмите кнопку Орфография [image] на панели инструментов.

Примечания

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

  • Если таблица содержит подтаблицы, Microsoft Access проверяет орфографию только в той таблице или подтаблице, в которой находится курсор.


 Проверка орфографии в режиме формы

Проверка орфографии в режиме формы

  1. Откройте форму в режиме формы.

  2. Выберите поле или текст, в которых требуется проверить правописание.

  3. Нажмите кнопку Орфография [image] на панели инструментов.

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


 Проверка орфографии для объекта базы данных в окне базы данных

Проверка орфографии для объекта базы данных в окне базы данных

  1. Переключитесь в окно базы данных.

  2. Выберите таблицу, запрос, форму, представление или сохраненную процедуру, в которых требуется проверить орфографию.

  3. Нажмите кнопку Орфография [image] на панели инструментов.

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


 Выбор пользовательского словаря для проверки орфографии

Выбор пользовательского словаря для проверки орфографии

  1. Переключитесь в окно базы данных.

  2. Выберите любую таблицу, запрос, форму, режим или сохраненную процедуру.

  3. Нажмите кнопку Орфография [image] на панели инструментов.

    Примечание. Если диалоговое окно Орфография не будет открыто, умышленно сделайте ошибку в каком-либо из существующих слов.

  4. Нажмите кнопку Параметры.

  5. Выберите нужный словарь в поле Язык словаря.


 Автоматическая замена вводимого текста

Автоматическая замена вводимого текста

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

  1. Выберите в меню Сервис команду Автозамена.

  2. Установите флажок Заменять при вводе.

  3. В поле заменять введите текст, который должен автоматически заменяться.

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

  5. Нажмите кнопку Добавить.

Примечания

  • Текст, введенный до установки флажка Заменять при вводе, исправлен не будет.

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


Автоматическое написание дней недели с прописной буквы при вводе данных

  1. Выберите в меню Сервис команду Автозамена.

  2. Установите флажок Названия дней с прописной буквы.


Автоматическое исправление двух прописных букв при вводе данных

  1. Выберите в меню Сервис команду Автозамена.

  2. Установите флажок Исправлять ДВе ПРописные буквы в начале слова.


Отмена автоматической замены конкретного элемента при вводе данных

  1. Выберите в меню Сервис команду Автозамена.

  2. В списке, расположенном в нижней части окна, выберите удаляемый элемент.

  3. Нажмите кнопку Удалить.


Добавление элемента, автоматически заменяемого при проверке орфографии

  1. В диалоговом окне Орфография введите исправленный текст в поле Заменить на.

  2. Нажмите в диалоговом окне Орфография кнопку Автозамена.

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


Отключение режима автоматического исправления вводимых данных

  1. Выберите в меню Сервис команду Автозамена.

  2. Снимите флажки тех параметров, которые требуется отключить.


 Поиск и замена данных

Поиск и замена данных

Способы поиска и замены данных

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

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

  • С помощью диалогового окна Поиск можно найти конкретные записи или определенные значения в полях. Имеется возможность перехода по записям по мере обнаружении каждого вхождения нужного элемента. Если требуется заменить конкретные обнаруженные при поиске значения, следует воспользоваться диалоговым окном Замена.

  • С помощью фильтра можно временно изолировать и просмотреть конкретный набор записей для работы с ним при отображении на экране открытой формы или таблицы.

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

Влияние ограничения предельного числа записей в проекте Microsoft Access

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


 Использование подстановочных знаков для поиска значений

Использование подстановочных знаков для поиска значений

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

  • Известна только часть значения.

  • Требуется найти значения, начинающиеся с конкретной буквы или соответствующие определенному шаблону.

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

Символ | Использование | Пример
* | Соответствует любой цифре или любому символу. Может использоваться в качестве первого или последнего символа текстовой строки. | wh* — поиск слов what, white и why.
? | Соответствует любому текстовому символу. | B?ll — поиск слов ball, bell и bill.
[ ] | Соответствует любому одному символу из заключенных в скобки. | B[ae]ll — поиск слов ball и bell, но не bill.
! | Соответствует любому одному символу, кроме заключенных в скобки. | b[!ae]ll — поиск слов bill и bull, но не bell или ball.
- | Соответствует любому символу из диапазона. Необходимо указывать этот диапазон по возрастанию (от A до Z, но не от Z до A). | b[a-c]d — поиск слов bad, bbd и bcd.
# | Соответствует любой цифре. | 1#3 — поиск значений 103, 113, 123.

Примечания

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

  • При использовании подстановочных знаков для поиска символа звездочки (*), вопросительного знака (?), знака номера (#), открывающей квадратной скобки ([) или дефиса (-) необходимо заключать эти символы в квадратные скобки. Например, для поиска вопросительного знака в диалоговом окне Поиск следует задать образец поиска [?]. При поиске дефиса вместе с другими символами следует разместить дефис до или после всех других символов в скобках. (Однако, если после открывающей скобки располагается восклицательный знак, дефис следует поместить после восклицательного знака). Если выполняется поиск восклицательного знака (!) или закрывающей скобки (]), то заключать их в квадратные скобки не требуется.

  • Невозможно выполнить поиск пары квадратных скобок (открывающей и закрывающей, [ ]), поскольку эта комбинация символов интерпретируется в Microsoft Access как пустая строка. Пару квадратных скобок необходимо заключить в круглые скобки ([ ]).

  • В проектах Microsoft Access используются подстановочные знаки, отличные от используемых в базах данных Access. Для получения дополнительных сведений выполните в указателе электронной документации Microsoft SQL Server поиск по ключевым словам «wildcard characters». При поиске значений в любом другом источнике данных может потребоваться использование других подстановочных знаков. Дополнительные сведения см. в документации к этому источнику данных.


 Поиск конкретной записи с помощью прокрутки объекта в режиме таблицы или формы

Поиск конкретной записи с помощью прокрутки объекта в режиме таблицы или формы

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

  • Перетащите бегунок вверх или вниз по полосе прокрутки.

Microsoft Access отображает рядом с бегунком номер верхней записи, выведенной на экран.

При наличии мыши Microsoft IntelliMouse можно для прокрутки записей использовать колесико мыши.

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


 Поиск записи по ее номеру в режиме таблицы или формы

Поиск записи по ее номеру в режиме таблицы или формы

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

  2. Дважды щелкните число в поле номера записи, чтобы выделить его, или нажмите клавишу F5.

  3. Введите номер нужной записи и нажмите клавишу ENTER.


 Переход между записями в режиме страницы с помощью кнопок перехода

Переход между записями в режиме страницы с помощью кнопок перехода

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

    Кнопки перехода по записям


 Поиск конкретных вхождений образца в поле

Поиск конкретных вхождений образца в поле

Для получения сведений о поиске пустых значений и пустых строк нажмите кнопку [image] .

  1. Если не требуется выполнять поиск по всем полям, в режиме формы или в режиме таблицы выделите поле (столбец), по которому нужно выполнять поиск. (Поиск по отдельному полю выполняется быстрее, чем по всей форме или таблице.)

  2. Нажмите кнопку Найти Найти на панели инструментов.

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

    Если точное значение для поиска неизвестно, можно использовать в поле Образец подстановочные знаки. Для просмотра примеров использования подстановочных знаков нажмите кнопку [image] .

  4. Установите в диалоговом окне Поиск и замена другие нужные значения. Для получения доступа к дополнительным параметрам нажмите кнопку Больше.

  5. Нажмите кнопку Найти.

Примечания

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

  • В окне «Code» диалоговое окно Find имеет дополнительные параметры, отражающие специфику редактора Visual Basic. Оно позволяет задать область поиска путем выбора соответствующего переключателя в группе параметров Search. Access выполняет поиск в процедурах в том же порядке, в котором они были добавлены в модуль. При установленном флажке Use Pattern Matching используется та же семантика, что и в операторе Like.


 Замена конкретных вхождений образца в поле

Замена конкретных вхождений образца в поле

Существует возможность сразу заменить все вхождения образца в поле или заменять каждое вхождение по отдельности. Однако поиск значений Null и пустых строк необходимо выполнять в диалоговом окне Поиск с последующей заменой этих значений вручную. Для получения дополнительных сведений нажмите кнопку [image] .

  1. В режиме формы или таблицы, если не требуется выполнить поиск по всем полям, выберите поле (столбец), по которому требуется выполнить поиск. (Поиск в одном поле выполняется быстрее, чем поиск во всей таблице или форме.)

  2. Выберите в меню Правка команду Заменить.

  3. Введите образец поиска в поле Образец и подставляемое значение в поле Заменить на.

    Если точное значение для поиска неизвестно, можно использовать в поле Образец подстановочные знаки. Для просмотра примеров использования подстановочных знаков нажмите кнопку [image] .

  4. Установите в диалоговом окне Замена все остальные нужные параметры. Для получения доступа к дополнительным параметрам нажмите кнопку Больше.

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

    Для того чтобы выполнять замену каждого вхождения по отдельности, нажимайте кнопку Найти далее, а затем кнопку Заменить. Для пропуска текущего вхождения и поиска следующего нажмите кнопку Найти далее.

Примечания

  • Быстрее выполнить замену большого количества данных в базе данных Microsoft Access или произвести вычисления с данными (например, повысить все оклады в таблице «Сотрудники» на 5 процентов) позволяет использование запроса на обновление вместо диалогового окна Замена. Однако при этом невозможно выполнять замену отдельных вхождений с подтверждением. Кроме того, запрос на обновление при выполнении поиска и замены данных в нескольких полях становится достаточно громоздким. В проекте Microsoft Access для обновления большого количества данных можно использовать сохраненную процедуру.

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

  • В окне «Code» диалоговое окно Replace имеет дополнительные параметры, отражающие специфику редактора Visual Basic. Оно позволяет задать область поиска путем выбора соответствующего переключателя в группе параметров Search. Access выполняет поиск в процедурах в том же порядке, в котором они были добавлены в модуль. При установленном флажке Use Pattern Matching используется та же семантика, что и в операторе Like.


Изменение стандартных параметров операций поиска и замены

  1. В меню Сервис выберите команду Параметры.

  2. Перейдите на вкладку Правка и поиск.

  3. Выберите нужный параметр в группе Поиск и замена по умолчанию.

Примечание. Измененные настройки вступают в силу при следующем запуске Microsoft Access. Чтобы изменить стандартные характеристики для конкретной операции поиска или замены, выберите в меню Правка команду Найти или Заменить, а затем установите нужное значение параметра в диалоговом окне.


 Оптимизация операций поиска и замены

Оптимизация операций поиска и замены

  • Быстрее всего выполняются операции поиска по полному значению поля или по первым символам в одном индексированном поле. Если приходится часто выполнять поиск в одном и том же неиндексированном поле, полезно создать индекс для этого поля.

    Инструкции


 Поиск пустых полей и пустых строк с помощью диалогового окна «Поиск»

Поиск пустых полей и пустых строк с помощью диалогового окна «Поиск»

  1. В режиме формы или режиме таблицы щелкните поле (столбец), в котором нужно выполнить поиск, и нажмите кнопку Найти объект Найти на панели инструментов.

  2. Если нужно, нажмите кнопку Больше.

  3. Выполните одно из следующих действий.
    • Если пустые поля отформатированы (например, содержат текст «Неизвестно»), введите отформатированную строку и убедитесь, что флажок С учетом формата полей установлен. Чтобы найти неотформатированные пустые поля в базе данных Microsoft Access, введите в поле Образец значение Null или Is Null и убедитесь, что флажок С учетом формата полей сброшен.

    • Чтобы найти пустые строки, введите в поле Образец пару двойных кавычек ("") без пробела между ними и убедитесь, что флажок С учетом формата полей сброшен.
  4. В поле Просмотр выберите значение Вверх или Вниз.

  5. В поле Совпадение выберите Поля целиком.

  6. В поле Поиск в выберите поле для поиска.

  7. Чтобы начать или продолжить поиск, нажмите кнопку Найти далее.


 Сходства и различия между запросами на выборку и фильтрами

Сходства и различия между запросами на выборку и фильтрами

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

Фильтр обычно используют при работе в режиме формы или в режиме таблицы для просмотра или изменения подмножества записей. Запрос следует использовать для выполнения следующих действий:

  • просмотр подмножества записей без предварительного открытия конкретной таблицы или формы;

  • выбор таблиц, содержащих нужные записи, с возможностью последующего добавления других таблиц;

  • отбор полей, выводящихся на экран при отображении результирующего набора записей;

  • выполнение вычислений над значениями полей.

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

В следующей таблице сравниваются характеристики запросов и фильтров.

Характеристики | Фильтр | Запрос
Позволяет добавить еще несколько таблиц, записи которых включаются в возвращаемый набор записей. | Нет | Да
Позволяет указать поля, которые должны отображаться в результирующем наборе записей. | Нет | Да
Выводится как отдельный объект в окне базы данных. | Нет | Да
Используется только с закрытой таблицей, запросом или формой | Нет | Да
Создает результирующие наборы записей, которые используются как источник данных для формы или отчета. | Да | Да
Позволяет вычислять суммы, средние значения, подсчитывать количество записей и находить другие итоговые значения. | Нет | Да
Позволяет сортировать записи. | Да | Да
Позволяет вносить изменения в данные, если эта операция не запрещена за счет других условий. | Да | Да (в зависимости от типа запроса). Массовые изменения обычно выполняются с помощью запроса на обновление записей.


 Сравнительная таблица методов фильтрации, используемых в таблицах, запросах и формах

Сравнительная таблица методов фильтрации, используемых в таблицах, запросах и формах

Выполняемые действия | Фильтр по выделенному | Обычный фильтр и поле «Фильтр для» | Окно расширенного фильтра
Поиск записей, удовлетворяющих нескольким условиям. | Да (условия отбора следует задавать поочередно). | Да (условия отбора можно задать одновременно). | Да (условия отбора можно задать одновременно).
Поиск записей, удовлетворяющих хотя бы одному из условий. | Нет | Да | Да
Указание условия отбора с помощью выражения. | Нет | Да | Да
Сортировка записей по возрастанию или по убыванию. | Нет (однако после применения фильтра допускается сортировка записей с помощью кнопок Сортировать по возрастанию [image] или Сортировать по убыванию [image] на панели инструментов). | Нет (однако после применения фильтра допускается сортировка записей с помощью кнопок Сортировать по возрастанию [image] или Сортировать по убыванию [image] на панели инструментов). | Да (допускается сортировка части полей по возрастанию, а других полей по убыванию).


 Создание фильтра в таблице, запросе или форме

Создание фильтра в таблице, запросе или форме

Существуют четыре способа, используемые для отбора записей с помощью фильтров: фильтр по выделенному фрагменту, обычный фильтр, поле «Фильтр для» и расширенный фильтр.

Предполагаемые действия

Рекомендации по выбору способа отбора данных

Сравнение разных способов отбора данных

Использование фильтра по выделенному фрагменту

Использование обычного фильтра

Использование поля «Фильтр для»

Использование окна расширенного фильтра


Изменение фильтра в таблице, запросе или форме

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

Выбор окна для изменения фильтра

Окно фильтра по выделенному фрагменту и фильтра исключения выделенного фрагмента

Поле «Фильтр для»

Окно обычного фильтра

Окно расширенного фильтра


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

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

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

Конечное окно | Исходное окно | Действие
Обычный фильтр | Окно объекта в режиме таблицы или формы | На панели инструментов нажмите кнопку Изменить фильтр [image] .
 | Окно расширенного фильтра | Выберите в меню Фильтр команду Применить фильтр.
Окно расширенного фильтра | Окно объекта в режиме таблицы или формы | Выберите команду Фильтр в меню Записи, а затем команду Расширенный фильтр.
 | Обычный фильтр | В меню Фильтр выберите команду Расширенный фильтр.

Чтобы применить фильтр, заданный в окне обычного или расширенного фильтра, и вывести результаты в режиме таблицы или формы, нажмите кнопку Применение фильтра [image] на панели инструментов. Чтобы закрыть любое из окон фильтра и вернуться к просмотру объекта в режиме таблицы или формы без применения фильтра, нажмите кнопку Закрыть [image] на панели инструментов.

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


 Оптимизация обычного фильтра

Оптимизация обычного фильтра

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

Предполагаемые действия

Оптимизация окна обычного фильтра для всех таблиц, запросов и форм базы данных

Оптимизация обычного фильтра для конкретной формы


 Включение или отключение фильтра в форме

Включение или отключение фильтра в форме

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

    Инструкции

Примечание. Если для свойства Применение фильтров (AllowFilters) задано значение Нет, отключаются фильтр по выделенному фрагменту, обычный фильтр, поле «Фильтр для» и расширенный фильтр.


Добавление полей в фильтр и работа с ними

Предполагаемые действия

Добавление полей в бланк расширенного фильтра

Перемещение поля в бланке расширенного фильтра

Удаление поля из бланка расширенного фильтра

Вставка поля в бланк расширенного фильтра

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


Добавление или изменение порядка сортировки для фильтра

Предполагаемые действия

Сортировка записей с помощью бланка расширенного фильтра

Определение условия отбора или порядка сортировки при использовании символа «звездочка» (*) в бланке запроса

Сведения о проблемах, возникающих при сортировке записей

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


Добавление и изменение условия отбора для фильтра

Предполагаемые действия

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

Ввод условия отбора для фильтра

Примеры условий отбора, содержащих выражения, для фильтров

Вставка и удаление условий отбора для расширенного фильтра


 Применение фильтра в таблице, запросе или форме

Применение фильтра в таблице, запросе или форме

  • В форме, таблице или любом окне фильтра нажмите кнопку Применение фильтра [image] на панели инструментов.

Примечания

  • При применении фильтра к таблице Microsoft Access будет также применять его для всех содержащихся в ней подтаблиц.

  • Для того, чтобы автоматически применить фильтр при открытии формы, следует указать в свойстве формы Открытие (OnOpen) макрос, содержащий макрокоманду «ПрименитьФильтр» (ApplyFilter), или процедуру обработки события, в которой используется метод ApplyFilter объекта DoCmd.

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


 Использование существующего запроса в виде фильтра в форме или таблице

Использование существующего запроса в виде фильтра в форме или таблице

Для каждой таблицы, подтаблицы, формы или подчиненной формы можно сохранять только один фильтр. Однако существует возможность использования созданных ранее запросов в качестве дополнительных фильтров. Запрос, применяемый как фильтр, должен соответствовать определенным требованиям. Для получения дополнительных сведений об этих требованиях нажмите кнопку [image] .

  1. Выберите таблицу, подтаблицу, форму или подчиненную форму, к которой нужно применить фильтр.

  2. Перейдите в окно фильтра или расширенного фильтра.

    Инструкции

  3. Нажмите кнопку Загрузить из запроса [image] на панели инструментов.

  4. В списке Фильтр выберите запрос и нажмите кнопку OK.

  5. Нажмите кнопку Применение фильтра [image] на панели инструментов.

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


 Удаление фильтра в таблице, запросе или форме

Удаление фильтра в таблице, запросе или форме

  • Чтобы удалить фильтр и снова вывести на экран все записи, ранее отображавшиеся в таблице, запросе или форме, нажмите кнопку Удалить фильтр [image] на панели инструментов окна режима таблицы или режима формы.

  • Чтобы удалить фильтр в сетевой (общей) базе данных и просмотреть, какие записи были добавлены, удалены или изменены с момента открытия таблицы, запроса или формы, выполните в режиме таблицы или в режиме формы команду Удалить фильтр из меню Записи.

Примечания

  • Удаление фильтра не приводит к его уничтожению. Фильтр можно применить повторно, нажав кнопку Применить фильтр [image] на панели инструментов. При удалении фильтра из таблицы Microsoft Access также удаляет все фильтры, применявшиеся к любой из подчиненных таблиц в этой таблице.

  • Для удаления фильтра, также можно использовать макрокоманду «ПоказатьВсеЗаписи» в макросе или соответствующий ей метод ShowAllRecords в программе Visual Basic для приложений.


 Удаление фильтра из таблицы, запроса или формы

Удаление фильтра из таблицы, запроса или формы

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

  1. Выберите таблицу, подтаблицу, форму или подчиненную форму, фильтр которой нужно удалить.

  2. Переключитесь в окно расширенного фильтра.

    Инструкции

  3. Выберите в меню Правка команду Очистить бланк.

  4. Нажмите кнопку Примемение фильтра [image] на панели инструментов.


 Удаление или применение унаследованного фильтра в отчете

Удаление или применение унаследованного фильтра в отчете

  1. Откройте отчет в режиме конструктора. Если отчет уже открыт, убедитесь, что он выделен.

  2. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств отчета.

  3. В ячейке свойства Фильтр включен (FilterOn) выберите Нет, чтобы удалить фильтр, или Да, чтобы применить его.

Примечания

  • Фильтр применяется автоматически при открытии отчета, когда установлено свойство Открытие (ОnOpen) в макросе, который использует макрокоманду «Применить фильтр» (ApplyFilter), или в процедуры, использующей соответствующий этой макрокоманде метод ApplyFilter объекта DoCmd. Для автоматического применения фильтра используется также макрокоманда «Открыть отчет» (OpenReport) или соответствующий ей метод.

  • При необходимости фильтр может быть удален. Для получения дополнительных сведений нажмите кнопку [image] .


 Влияние фильтра и порядка сортировки таблицы или запроса на новые формы или отчеты

Влияние фильтра и порядка сортировки таблицы или запроса на новые формы или отчеты

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

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

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


 Изменение унаследованного порядка сортировки в отчете

Изменение унаследованного порядка сортировки в отчете

  1. Откройте отчет в конструкторе отчета. Если он уже открыт, убедитесь, что он выделен.

  2. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств отчета.

  3. Выделите ячейку свойства Порядок сортировки (SortOrder) и укажите поле и порядок сортировки.
    • Для сортировки записей по одному полю по возрастанию введите имя поля в квадратных скобках ([ ]), затем наберите ASC.

      [имяПоля1] ASC

    • Для сортировки записей по одному полю по убыванию введите имя поля в квадратных скобках ([ ]), затем наберите DESC.

      [имяПоля1] DESC

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

      [имяПоля1] ASC,
      [      имяПоля2] DESC

Примечание. Если после имен полей не указать в явном виде ASC или DESC, то сортировка будет выполняться по возрастанию — сначала по первому указанному полю, потом по второму, и так далее.


 Изменение или удаление унаследованного фильтра в отчете

Изменение или удаление унаследованного фильтра в отчете

  1. Откройте отчет в режиме конструктора. Если отчет уже открыт, убедитесь, что он выделен.

  2. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств отчета.

  3. В ячейке свойства Фильтр (Filter) измените или удалите предложение WHERE инструкции SQL. При удалении предложения WHERE задайте для свойства Фильтр включен (FilterOn) значение Нет.

Совет. Пользователи, не знакомые с языком SQL, имеют возможность изменить предложение WHERE путем изменения фильтра в базовой таблице или запросе. Для этого следует перейти в режим конструктора, открыть окно свойств таблицы или запроса, а затем скопировать обновленное условие WHERE из ячейки свойства Фильтр (Filter) таблицы или запроса в ячейку свойства Фильтр (Filter) отчета.


 Удаление или применение унаследованного порядка сортировки в отчете

Удаление или применение унаследованного порядка сортировки в отчете

  1. Откройте отчет в режиме конструктора. Если отчет уже открыт, убедитесь, что он выделен.

  2. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств отчета.

  3. В ячейке свойства Сортировка включена (OrderByOn) выберите Нет, чтобы отменить сортировку, или Да, чтобы включить ее.

Примечание. Порядок сортировки, задаваемый в мастере по созданию отчетов или в диалоговом окне Сортировка и группировка в режиме конструктора отчетов, подавляет унаследованный порядок сортировки.


 Использование условий отбора в запросах или расширенных фильтрах для получения определенных записей

Использование условий отбора в запросах или расширенных фильтрах для получения определенных записей

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

Чтобы установить условие отбора для поля в бланке запроса, введите выражение в ячейку Условие отбора для данного поля. В предыдущем примере выражением является «Литва». Могут быть использованы и более сложные выражения, например, «Between 1000 And 5000». Если запрос содержит связанные таблицы, то в значениях, указываемых в условии отбора для полей из связанных таблиц, учитывается регистр, то есть они должны соответствовать регистру значений в базовой таблице.

Для того же поля или для других полей можно ввести дополнительные условия отбора. Если выражения вводятся в несколько ячеек Условие отбора, то они автоматически объединяются с помощью операторов And или Or. Если выражения находятся в разных ячейках, но в одной строке, то Microsoft Access использует оператор And, что означает, что будут возвращены только записи, отвечающие условиям отбора, указанным во всех ячейках. Если же выражения находятся в разных строках бланка запроса, то Microsoft Access использует оператор Or, что означает, что возвращены будут записи, отвечающие условиям отбора, указанным любой ячейке.

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

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

Можно также указать условия отбора для изменения результатов вычислений. При помощи условий отбора можно ограничить группы, для которых производятся вычисления, записи, включенные в вычисления, или результаты вычислений, выводимые на экран. Для получения дополнительных сведений о вводе условия отбора в запрос, выполняющий вычисления, нажмите кнопку [image] .


 Куда вводить выражения в запросах и фильтрах?

Куда вводить выражения в запросах и фильтрах?

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

В бланке запроса выражения вводятся в разных местах, в зависимости от выполняемой операции. (Места ввода выражений показаны в следующей таблице.) После ввода выражения в бланк запроса и нажатия клавиши ENTER выражение отображется на экране с использованием синтаксиса, понятного Microsoft Access. Если в выражение не был включен оператор, то подразумевается, что был использован оператор =. Например, если в качестве условия отбора в поле «Страна» будет введено Дания, то Microsoft Access отобразит на экране «Дания», а выражение интерпретирует как Страна="Дания". Если выражение содержит ссылки на имена полей, то эти поля должны находиться в одной из таблиц, добавленных в запрос (исключениями являются использование функции DLookup или подчиненного запроса). Перетаскивание полей в выражение в бланке запроса невозможно.

Действие | Место ввода выражения
Определение условия отбора для запросов на выборку, перекрестных запросов или запросов на изменение, а также для расширенных фильтров | Ячейка Условие отбора в бланке запроса или в расширенном фильтре.
Создание вычисляемых полей | Ячейка Поле в бланке запроса или в расширенном фильтре.
Обновление записей в зависимости от результатов выражения (только запросы на обновление) | Ячейка Обновление в бланке запроса на обновление.
Определение записей, с которыми будет работать пользователь, их группировки, условий группировки или способа сортировки записей | Инструкция SQL в режиме SQL.
Определение условия отбора при использовании обычного фильтра | Поле в окне обычного фильтра для специального выражения, либо выбрать выражение из списка, представленного в поле.

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


Создание выражения

Предполагаемые действия

Создание выражения с помощью построителя выражений

Создание выражения без помощи построителя выражений

Дополнительные сведения о выражениях

Просмотр примеров выражений

Не можете сделать выбор?


Примеры выражений, используемых в запросах и фильтрах

Предполагаемые действия

Примеры выражений, выполняющих вычисления или управляющих значениями полей

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

Примеры выражений, используемых в запросе на обновление записей

Примеры выражений, используемых в инструкциях SQL в режиме запроса SQL

Сведения о месте расположения выражений в запросах и фильтрах

Сведения о создании выражения


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

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

Данный раздел содержит справочные сведения по следующим вопросам.

Способы отбора записей до их загрузки из базы данных

Способы отбора записей после их загрузки из базы данных

Способы отбора записей до их загрузки из базы данных

Для отбора данных до их загрузки страницей доступа к данным можно основать страницу на запросе, включающем условия отбора (поиска), ограничивающие круг записей. Кроме того, в проекте Microsoft Access можно определить фильтр в свойстве Серверный фильтр (ServerFilter) в программе на языке Visual Basic для приложений или Microsoft Visual Basic Scripting Edition (VBScript), а в базе данных Microsoft Access можно определить фильтр с помощью свойства Фильтр (Filter) в Visual Basic для приложений или Microsoft Visual Basic Scripting Edition (VBScript). На странице доступа к данным с группировкой можно создать фильтр, загружающий данные для конкретной группы, например, заказы конкретного клиента. Данные на такой странице доступа к данным не отображаются до тех пор, пока в режиме страницы или приложении Microsoft Internet Explorer не будет выбрана группа из раскрывающегося списка. После выбора группы применяется фильтр, и загружаются только заданные записи. Для страниц доступа к данным без группировки также можно создавать фильтры. В этом случае вместо выбора группы, записи которой требуется просмотреть, следует выбрать значение в поле, которое назначено полем фильтра. Отбор выполняется, как при использовании обычного фильтра. Загружаются все записи, содержащие заданное значение.

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

Возврат в начало

Способы отбора записей после их загрузки из базы данных

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

Возврат в начало

Возврат в раздел Создание фильтра на странице доступа к данным


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

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

Предполагаемые действия

Отбор записей до их загрузки из базы данных

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

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

Создание фильтра с помощью программы на языках Visual Basic или Microsoft Visual Basic Scripting Edition (VBScript) в проекте Microsoft Access

Создание фильтра с помощью программы на языках Visual Basic или VBScript в базе данных Microsoft Access

Отбор записей после их загрузки из базы данных

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

Создание гиперссылки для отбора записей на странице доступа к данным, на которую указывает эта ссылка

Не можете сделать выбор?


 Поиск конкретных данных с помощью фильтра на странице доступа к данным в режиме страницы

Поиск конкретных данных с помощью фильтра на странице доступа к данным в режиме страницы

С помощью фильтра можно находить записи по определенному значению определенного поля. Например, можно найти все записи, поле «Страна» которых имеет значение «Германия». При применении фильтра на странице доступа к данным будут показаны только те записи, которые содержат выбранное значение. Если удалить фильтр, снова будут отображаться все имеющиеся записи. На страницах доступа к данным с группировкой можно фильтровать как список групп (т.е. заголовки групп), так и записи в группах.

  • В поле в режиме страницы на странице доступа к данным выберите значение, которое нужно использовать при отборе записей, и нажмите кнопку Фильтр по выделенному [image] на панели перехода по записям.

    Для страниц доступа к данным с группами отобразите записи группы, которые требуется отфильтровать, выделите значение, по которому будет выполняться отбор записей, и нажмите кнопку Фильтр по выделенному [image] на панели перехода по записям для этой группы. Фильтр применяется только к текущей группе. Другими словами, если на странице сгруппированы заказы клиентов по странам и выполняется отбор записей для Бразилии по конечной дате 6 февраля 98 года, то фильтр будет применен только к записям для Бразилии, не затрагивая записи по другим странам.

    Можно еще более сузить подмножество записей, продолжая выбирать значения и нажимать кнопку Фильтр по выделенному [image] до тех пор, пока не останутся только нужные записи. Например, если требуется просмотреть только записи по клиентам в Германии с конечной датой 5 декабря 98 года, то нужно выделить значение «Германия» в поле «Страна», нажать кнопку Фильтр по выделенному [image], выделить «05.12.98» в поле «КонечнаяДата» и еще раз нажать кнопку Фильтр по выделенному [image].

Примечания

  • Если выбрана только часть значения поля, страница доступа к данным все равно использует для отбора записей полное значение поля.

  • Фильтр можно удалять и повторно применять в течение одного и того же сеанса работы.

  • Данная процедура не применима к сводному списку или электронной таблице. Эти компоненты могут быть отфильтрованы независимо от остальных данных на странице доступа к данным и, кроме того, могут поддерживать дополнительные возможности отбора данных. Для получения дополнительных сведений нажмите кнопку Справка [image] на панели инструментов сводного списка или электронной таблицы, а затем выполните поиск по ключевому слову «фильтр».


 Удаление фильтра на странице доступа к данным в режиме страницы с целью вывода всех записей

Удаление фильтра на странице доступа к данным в режиме страницы с целью вывода всех записей

  • В режиме страницы для страницы доступа к данным нажмите кнопку Удалить фильтр Значок фильтра на панели перехода по записям.

Примечания

  • Удаление фильтра не приводит к его уничтожению. Фильтр можно применить повторно, даже после закрытия и повторного открытия страницы доступа к данным. Для этого следует нажать кнопку Применить фильтр Значок фильтра на панели перехода по записям.

  • Данная процедура не применима к сводному списку или электронной таблице. Эти компоненты могут быть отфильтрованы независимо от остальных данных на странице доступа к данным и, кроме того, могут поддерживать дополнительные возможности отбора данных. Для получения дополнительных сведений нажмите кнопку Справка [image] на панели инструментов сводного списка или электронной таблицы, а затем выполните поиск по ключевому слову «фильтр».


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

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

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

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

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


 Сортировка записей в таблице, запросе или форме

Сортировка записей в таблице, запросе или форме

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

Предполагаемые действия

Сортировка записей в режиме таблицы или в режиме формы

Сортировка записей с помощью расширенного фильтра или указание сортировки отбираемых записей в режиме конструктора запроса

Не можете сделать выбор?


 Сортировка данных на странице доступа к данным в режиме страницы

Сортировка данных на странице доступа к данным в режиме страницы

Существует возможность сортировки данных на странице доступа к данным, включая сгруппированные данные. На страницах с группами можно сортировать список групп или записи в группе.

  1. На странице доступа к данным в режиме страницы щелкните поле, которое будет использоваться для сортировки записей. Для страниц с группами отобразите записи конкретной группы, которые требуется отсортировать, а затем выберите значение, по которому будет выполняться сортировка.

  2. Выполните одно из следующих действий.
    • Для сортировки по возрастанию нажмите кнопку Сортировка по возрастанию [image].

    • Для сортировки по убыванию нажмите кнопку Сортировка по убыванию [image].

Примечания

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

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

  • При закрытии страницы доступа к данным порядок сортировки утрачивается. При открытии страницы данные можно отсортировать повторно.

  • Порядок сортировки чисел, текста и специальных символов в базе данных зависит от настроек языка и стандартов на панели управления Windows.

  • Данная процедура не применима к сводному списку или электронной таблице. Эти компоненты могут быть отсортированы независимо от остальных данных на странице доступа к данным и, кроме того, могут поддерживать дополнительные возможности сортировки. Для получения дополнительных сведений нажмите кнопку Справка [image] на панели инструментов сводного списка или электронной таблицы, а затем выполните поиск по ключевому слову «сортировка».


 Удаление порядка сортировки в таблице, запросе или форме

Удаление порядка сортировки в таблице, запросе или форме

  • В режиме таблицы или в режиме формы выберите в меню Записи команду Удалить фильтр. Если порядок сортировки был задан в окне расширенного фильтра, в котором также задаются условия отбора для фильтра, то имеется возможность отменить порядок сортировки, указанный в бланке в ячейке строки Сортировка, не изменяя для фильтра условия отбора.


 Факторы, которые следует учитывать при сортировке записей в таблице, запросе, форме или отчете

Факторы, которые следует учитывать при сортировке записей в таблице, запросе, форме или отчете

  • При сохранении таблицы, запроса или формы сохраняется и их порядок сортировки. Если новая форма или отчет основываются на таблице или запросе, порядок сортировки которых был сохранен вместе с ними, то он наследуется и новой формой или отчетом.

  • В одном или нескольких полях результатов запроса или расширенного фильтра может быть отсортировано до 255 символов.

  • Порядок сортировки зависит от языка, указанного в диалоговом окне Параметры при создании базы данных. Чтобы проверить или изменить настройку языка, выберите команду Параметры в меню Сервис, а затем перейдите на вкладку Общие и просмотрите значение в списке Порядок сортировки базы данных. Если база данных содержит связанные таблицы из базы данных, использующей порядок сортировки для другого языка, Microsoft Access использует порядок сортировки, указанный для базы данных, содержащей связь с таблицей, а не для базы данных, в которой хранится сама таблица.

  • Если бланк запроса или фильтра содержит знак «звездочка» из списка полей, то определить в нем порядок сортировки можно, только добавив в него поля, которые необходимо отсортировать. Для получения дополнительных сведений нажмите кнопку [image] .

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

  • Числа, хранящиеся в текстовых полях, сортируются как строки символов, а не как числовые значения. Поэтому для выполнения их сортировки в числовом порядке все текстовые строки должны иметь одинаковую длину. В начало строк с меньшим количеством символов следует добавить незначащие нули. Например, результатом сортировки по возрастанию текстовых строк «1», «2», «11» и «22» будет «1», «11», «2», «22». Еще одним решением данной проблемы для полей, не содержащих значения Null, будет использование функции Val для сортировки числовых значений строк. Например, если столбец «Возраст» является текстовым полем, содержащим числовые значения, то для расположения записей этого столбца в должном порядке можно указать в ячейке Поле функцию Val([Возраст]), а в ячейке Сортировка указать нужный порядок сортировки. Если числовые значения или значения дат хранятся только в текстовом поле, рекомендуется изменить тип данных этого поля таблицы на числовой, денежный или даты/времени. После этого при выполнении сортировки по этому полю числа или даты будут располагаться в надлежащем порядке без ввода дополнительных нулей.

  • При сортировке поля по возрастанию записи, в которых это поле пусто (содержит значение Null), ставятся в начало списка. Если поле содержит как записи со значениями Null, так и записи с пустыми строками, то при сортировке первыми будут отображены поля с пустыми значениями, а сразу за ними поля с пустыми строками.

  • Сортировка полей с типом данных «Поле объекта OLE» невозможна.


 Совместное использование базы данных Access в сети

Совместное использование базы данных Access в сети

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

Совместное использование целой базы данных Access

Совместное использование только таблиц базы данных Access

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

Репликация базы данных Access

Создание приложения в архитектуре клиент/сервер

Совместное использование целой базы данных Access

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

Возврат в начало

Совместное использование только таблиц базы данных Access

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

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

Возврат в начало

Совместное использование объектов базы данных Access или страниц доступа к данным в Интернете

Один или несколько объектов базы данных можно поместить в статический файл HTML или генерируемый сервером файл HTML, либо создать страницу доступа к данным, а затем просматривать их в обозревателе, таком как Internet Explorer, через Интернет. См. сведения о трех типах Web-страниц, создаваемых средствами Access.

Возврат в начало

Репликация базы данных Access

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

Возврат в начало

Создание приложения в архитектуре клиент/сервер

При работе в среде клиент/сервер можно использовать имеющиеся дополнительные возможности и способы защиты, создав приложение в архитектуре клиент/сервер. Для получения дополнительных сведений см. главу 16 «Multiuser Database Applications» в книге Руководство программиста по Visual Basic для Microsoft Office 2000.

Возврат в начало


Редактирование данных в базе данных Access при работе в многопользовательской среде

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

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

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

Маркер | Описание
 | Запись является текущей; изменения в нее не вносились.
 | В запись внесены изменения, которые еще не сохранены. Пока на экране находится этот маркер, другие пользователи не видят изменения, внесенные вами в эту запись. Если запись заблокирована, другие пользователи не смогут ее изменить. Для того чтобы освободить запись и сделать ее доступной для других пользователей, следует сохранить или отменить внесенные изменения.
 | Запись заблокирована другим пользователем. В нее нельзя вносить изменения. При попытке ввести данные в заблокированную запись раздается звуковой сигнал.

Для получения дополнительных сведений о выборе способа блокировки записей нажмите кнопку [image] .


 Сохранение изменений макета сетевой (общей) базы данных Microsoft Access

Сохранение изменений макета сетевой (общей) базы данных Microsoft Access

Данный раздел содержит справочные сведения по следующим вопросам.

Сохранение изменений макета сетевой (общей) базы данных Microsoft Access

Различия между серьезными и второстепенными изменениями макета

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

Дополнительные сведения

Сохранение изменений макета сетевой (общей) базы данных Microsoft Access

Во время совместной работы нескольких пользователей с базой данных Access сохранение изменений ее макета невозможно. Единственный способ обеспечить сохранение изменений состоит в открытии базы данных Access в монопольном режиме.

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

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

Страницы доступа к данным обрабатываются по-другому. Хотя для создания, переименования, перемещения и удаления страницы доступа к данным все же требуется переход в монопольный режим (поскольку это приводит к изменению сведений в базе данных Access), для редактирования страницы доступа к данным переход в монопольный режим не требуется (поскольку соответствующий файл HTML существует в файловой системе вне базы данных).

Возврат в начало

Различия между серьезными и второстепенными изменениями макета

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

  • изменения объектов базы данных (за исключением таблиц и запросов), сделанные в режиме конструктора;

  • изменения в окне свойств формы в режиме формы;

  • компиляция проекта, изменение свойств проекта, а также добавление или удаление ссылок в редакторе Visual Basic;

  • переименование, вставка или удаление объекта базы данных;

  • сохранение объекта базы данных в виде объекта базы данных другого типа;

  • добавление или изменение элементов управления на панели команд;

  • редактирование пользовательских групп в окне базы данных;

  • создание, переименование, перемещение или удаление страницы доступа к данным.

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

  • изменение свойств форматирования таблицы, таких как типы линий и шрифты;

  • закрепление, снятие закрепления, скрытие и отображение столбцов таблицы;

  • изменение размеров столбцов и строк таблицы;

  • изменение фильтра или порядка сортировки для формы или таблицы;

  • изменение состояния подчиненной таблицы (развернута или свернута);

  • изменение связи OLE/DDE объекта OLE или изменение содержимого свободной рамки объекта;

  • изменение настроек принтера;

  • изменение панели команд, например, ее расположения и режима отображения;

  • изменение макета окна базы данных.

Возврат в начало

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

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

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

  • Использование исходного текста программы. Например, можно использовать Microsoft Visual SourceSafe версии 6.0 в сочетании с надстройкой для работы с исходным текстом, обеспечивающую поддержку Visual Source Safe Code в Access. Данная надстройка доступна в выпуске Microsoft Office 2000 для разработчиков. При использовании Visual SourceSafe для поддержания оптимального быстродействия рекомендуется регулярно запускать анализатор быстродействия (меню Сервис, подменю Анализ, команда Быстродействие).

Возврат в начало

Дополнительные сведения

Совместное использование базы данных Access в сети

Разделение базы данных Access на таблицы и объекты

Открытие базы данных Access

Указание режима открытия базы данных Access (монопольный или общий доступ), используемого по умолчанию

Возврат в начало


 Выбор стратегии блокировки записей при работе с базой данных Access в многопользовательской среде

Выбор стратегии блокировки записей при работе с базой данных Access в многопользовательской среде

Когда один пользователь изменяет запись, Microsoft Access позволяет автоматически запретить другим пользователям вносить изменения до тех пор, пока первый пользователь не закончит внесение своих изменений.

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

  • Отсутствует. Редактируемая запись не блокируется. При попытке сохранения изменений в записи, которую в это же время изменял другой пользователь, Microsoft Access выводит сообщение, предлагающее следующие возможности: сохранить данный вариант записи, уничтожив изменения, внесенные другим пользователем; скопировать свою версию записи в буфер обмена; отказаться от собственных изменений. Эта стратегия позволяет изменять записи в любое время, но при внесении изменений разными пользователями могут возникать конфликты.

  • Изменяемой записи. Microsoft Access блокирует изменяемую в данный момент запись, не позволяя изменять ее другим пользователям. Заблокированными могут оказаться другие записи, расположенные рядом на диске. Если другой пользователь пытается изменить заблокированную запись, в его объекте в режиме таблицы появляется маркер [image] . Эта стратегия гарантирует завершение всех начатых изменений. Это хороший выбор, если противоречия с другими пользователями возникают редко.

  • Всех записей. Microsoft Access блокирует все записи формы или объекта в режиме таблицы (и базовых таблиц) на весь период их открытия, поэтому другие пользователи не могут изменить или заблокировать записи. Эта стратегия накладывает очень жесткие ограничения. Ее следует использовать только в тех случаях, когда известно, что кроме вас изменение записей никому не требуется.

Для получения сведений о задании одного из этих параметров нажмите кнопку [image] .

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


 Способы оптимизации быстродействия при многопользовательской работе с базой данных Access

Способы оптимизации быстродействия при многопользовательской работе с базой данных Access

Следующие рекомендации могут помочь в оптимизации работы базы данных Microsoft Access в многопользовательской среде.

  • Поместите на сетевой сервер только таблицы, а остальные объекты базы данных оставьте на компьютерах пользователей. База данных при этом будет работать быстрее, так как по сети будут передаваться только данные. Отделить таблицы от других объектов базы данных можно при помощи мастера разделения баз данных. Для получения дополнительных сведений нажмите кнопку [image] .

  • Выберите подходящую стратегию блокирования записей. Для получения дополнительных сведений нажмите кнопку [image] .

  • Выберите стратегию уровней блокировки.

  • Избегайте противоречий при настройке параметров Период обновления, Период повторов обновления, Число повторов обновления и Период обновления ODBC (если применим). Для получения дополнительных сведений нажмите кнопку [image] .

  • Оптимизируйте производительность таблиц. Для получения дополнительных сведений нажмите кнопку [image] .

  • Улучшите работу базы данных с помощью связанных таблиц. Для получения дополнительных сведений нажмите кнопку

    .
  • Улучшите производительность таблиц Access, связанных с таблицами SQL. Для получения дополнительных сведений нажмите кнопку [image] .

  • Преобразуйте файл рабочей группы. Для получения дополнительных сведений нажмите кнопку [image] .


 Совместное использование базы данных Access на сетевом сервере

Совместное использование базы данных Access на сетевом сервере

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

  2. Скопируйте базу данных Microsoft Access на сетевой сервер.

  3. Убедитесь, что для базы данных Access задано открытие в режиме совместного доступа. Этот режим используется по умолчанию.

    Инструкции

Примечание. Чтобы совместно используемой базе данных Access можно было обращаться с другого компьютера, на нем должен присутствовать один из следующих элементов: локальная установка Microsoft Access, сетевая установка Microsoft Access (лицензированная по количеству пользователей) или пользовательское приложение. Лицензию на свободную установку пользовательского приложения на другие компьютеры можно приобрести вместе с Microsoft Office 2000 для разработчиков (MOD).


 Совместное использование базы данных Access без сетевого сервера

Совместное использование базы данных Access без сетевого сервера

  1. Скопируйте базу данных Microsoft Access в общую папку. (Сведения об общих папках можно найти в указателе справки Microsoft Windows.)

  2. Убедитесь, что для базы данных Access задано открытие в режиме совместного доступа. Этот режим используется по умолчанию.

    Инструкции

Примечание. Чтобы к совместно используемой базе данных Access можно было обращаться с другого компьютера, на нем должен присутствовать один из следующих элементов: локальная установка Microsoft Access, сетевая установка Microsoft Access (лицензированная по количеству пользователей) или пользовательское приложение. Лицензию на свободную установку пользовательского приложения на другие компьютеры можно приобрести вместе с Microsoft Office 2000 для разработчиков (MOD).


 Разделение существующей базы данных на таблицы и объекты

Разделение существующей базы данных на таблицы и объекты

Следующие действия приводят к разделению базы данных Microsoft Access на два файла, в одном из которых содержатся таблицы, а в другом запросы, формы, отчеты, макросы, модули и ярлыки страниц доступа к данным. Это позволяет пользователям иметь доступ к общему источнику данных и при этом создавать свои собственные формы, отчеты и другие объекты.

  1. В меню Сервис выберите команду Служебные программы и подкоманду Разделение баз данных.

  2. Следуйте инструкциям в диалоговых окнах мастера по разделению баз данных.


 Указание режима открытия базы данных Access (монопольный или общий доступ), используемого по умолчанию

Указание режима открытия базы данных Access (монопольный или общий доступ), используемого по умолчанию

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

  1. В меню Сервис выберите команду Параметры.

  2. Перейдите на вкладку Другие.

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

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

Примечания

  • В многопользовательской среде база данных Access может быть открыта для монопольного доступа и/или только для чтения, даже если по умолчанию принят режим общего доступа. Для получения дополнительных сведений нажмите кнопку [image] .

  • Если в многопользовательской среде действует система защиты, то можно запретить пользователям открывать базу данных для монопольного доступа, лишив их возможности получать соответствующее разрешение. Для получения дополнительных сведений об удалении разрешений на доступ нажмите кнопку [image] .

  • При открытии файла базы данных Access (.mdb) в режиме общего доступа Microsoft Access также создает файл сведений о блокировке (.ldb) с тем же именем (например, Борей.ldb) и в той же папке, что и файл базы данных. В файле сведений о блокировке сохраняются имя компьютера (например, mypc) и имена всех совместно работающих пользователей базы данных в системе защиты (например, Admin). Microsoft Access использует эти сведения для управления совместной работой. В большинстве случаев Microsoft Access автоматически удаляет файл сведений о блокировке при закрытии файла базы данных последним пользователем.


 Советы по внесению изменений в объекты базы данных Access при работе в многопользовательской среде

Советы по внесению изменений в объекты базы данных Access при работе в многопользовательской среде

  • Рекомендуется разработать объекты до того, как другим пользователям будет разрешено открывать базу данных Microsoft Access для общего доступа. При необходимости внесения изменений в структуру можно быть уверенным, что база данных Access больше никем не используется, если при ее открытии выбрать вариант Монопольно в меню кнопки Открыть диалогового окна Открытие файла базы данных. См. сведения о сохранении изменений в общей базе данных Microsoft Access.

  • Если другой пользователь открыл таблицу или просматривает данные в запросах, формах или отчетах, для которых эта таблица является базовой, изменять структуру этой таблицы нельзя. Microsoft Access выводит на экран сообщение о том, что таблица доступна только для чтения.

  • Если объекты зависят друг от друга, обновляйте их все одновременно, чтобы другие пользователи не начали работать с несогласованными версиями объектов. Например, при добавлении полей в форму следует до обновления формы добавить поля в базовый запрос.

  • Если изменить запрос, открытый другим пользователем, этот пользователь должен закрыть и снова открыть измененный объект, чтобы получить самую свежую его версию. В модулях языка Visual Basic для приложений другие пользователи не могут выполнять измененные процедуры Function или Sub без закрытия и повторного открытия базы данных.


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

  1. В меню Сервис выберите команду Параметры.

  2. Перейдите на вкладку Другие.

  3. Выберите один из параметров в группе Блокировка по умолчанию.

    Для получения сведений об этих параметрах нажмите кнопку [image] .


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

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

  1. В меню Сервис выберите команду Параметры.

  2. Перейдите на вкладку Другие.

  3. Чтобы установить по умолчанию для текущей базы данных Microsoft Access блокировку записей, установите флажок Блокировка записей при открытии БД.

    Чтобы установить по умолчанию для текущей базы данных Microsoft Access блокировку страниц, снимите флажок Блокировка записей при открытии БД.

Примечания

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

  • Если флажок Блокировка записей при открытии БД установлен, то блокировка записей используется по умолчанию для доступа к данным через формы, таблицы и программы, использующие объект recordset для перебора записей, но не через запросы на изменение или программы, выполняющие массовые операции с использованием инструкций SQL. Дополнительные сведения см. в главе 16 «Multiuser Database Applications» книги Руководство программиста по Visual Basic для Microsoft Office 2000.


 Как избежать конфликтов блокировки данных при работе с базой данных Access в многопользовательской среде

Как избежать конфликтов блокировки данных при работе с базой данных Access в многопользовательской среде

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

  • Период обновления (с). Этот параметр задает число секунд, по истечении которых Microsoft Access автоматически обновляет записи в объекте в режиме таблицы или в режиме формы. Допустимыми являются значения от 0 до 32 766 секунд. При обновлении текущей таблицы или формы записи не переупорядочиваются, новые записи не добавляются, а удаленные записи не убираются с экрана. Для просмотра этих изменений необходимо повторно запросить базовые записи для таблицы или формы.

  • Период повтора обновления (мс). Этот параметр задает число миллисекунд, по истечении которых Microsoft Access автоматически пытается сохранить измененную запись, заблокированную другим пользователем. Допустимыми являются значения от 0 до 1000 миллисекунд.

  • Число повторов обновления. Этот параметр задает число попыток сохранения измененной записи, заблокированной другим пользователем. Допустимыми являются значения от 0 до 10.

  • Период обновления ODBC (с). Этот параметр задает интервал, после которого Microsoft Access автоматически обновляет записи, доступ к которым осуществляется по протоколу ODBC. Допустимыми являются значения от 1 до 32 766 секунд.

Для получения сведений о задании одного из этих параметров нажмите кнопку [image] .


Задание значений параметров обновления при работе с базой данных Access в сети и по протоколу ODBC

  1. В меню Сервис выберите команду Параметры.

  2. Перейдите на вкладку Другие.

  3. Введите значения в поля тех параметров, которые требуется изменить.

    Для получения сведений об этих параметрах нажмите кнопку [image] .


 Вывод на экран самых свежих данных в базе данных Access в режиме таблицы или формы

Вывод на экран самых свежих данных в базе данных Access в режиме таблицы или формы

При работе с сетевой базой данных Microsoft Access, другие пользователи могут изменять данные в то же время, когда вы просматриваете эти данные в таблице или в форме. Microsoft Access регулярно обновляет данные через заданные интервалы времени. Частоту автоматического обновления данных можно регулировать. Для получения дополнительных сведений нажмите кнопку [image] .

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

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

  2. Выберите команду Обновить в меню Записи.

Команда Обновить обновляет только те данные, которые уже находятся в таблице или форме. Она не изменяет порядок следования записей, не выводит на экран новые записи и не убирает удаленные записи, а также записи, переставшие удовлетворять условию отбора. Чтобы выполнить эти действия, следует повторно запросить записи из источника данных, нажав клавиши SHIFT+F9.


 Изменение периода автоматического обновления информации в базе данных Access в режиме таблицы или формы

Изменение периода автоматического обновления информации в базе данных Access в режиме таблицы или формы

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

  2. Выберите команду Параметры в меню Сервис.

  3. Откройте вкладку Другие.

  4. В поле Период обновления (с) введите в секундах величину интервала, через который будет выполняться автоматическое обновление данных. Например, если ввести число 120, данные будут обновляться через каждые 2 минуты.

Примечание. Этот параметр действует только при работе с базой данных в сети. Он позволяет обновлять только те данные, которые уже существуют в таблице или форме. При этом не изменяется порядок следования записей, не выводятся новые записи и не убираются удаленные записи, а также записи, переставшие удовлетворять условию отбора. Чтобы выполнить эти действия, следует повторно запросить записи из источника данных с помощью клавиш SHIFT+F9.


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

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

В режиме таблицы или формы кнопки перехода расположены в нижней части окна. Эти кнопки предназначены для быстрого перемещения по записям.

Кнопки перехода по записям


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

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

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

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

  2. Выберите в меню Вид команду Панели инструментов.

  3. Установите флажок для панели Формат (Режим таблицы).

  4. Нажмите кнопку Закрыть.

Поле Перейти к полю является крайним слева элементом панели инструментов Формат (Режим таблицы). В этом поле можно выбрать имя поля текущей записи, к которому требуется перейти.


 Перемещение столбцов в режиме таблицы

Перемещение столбцов в режиме таблицы

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

  2. Выделите перемещаемые столбцы.

    Чтобы выделить один столбец, щелкните область выделения поля в этом столбце.

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

  3. Снова нажмите и удерживайте кнопку мыши в области выделения поля.

  4. Перетащите столбцы в нужное положение.

Примечания

  • Если столбцы не перемещаются, возможно, они закреплены. См. сведения о закрепленных столбцах.

  • В проекте Microsoft Access изменения в формате режима таблицы сохранять нельзя, за исключением режима таблицы для форм. Если нужно сохранить изменения формата режима таблицы для таблицы, представления или сохраненной процедуры проекта Access, создайте с помощью мастера автоформ таблицу в виде формы (мастер установит для свойства Источник записей (RecordSource) значение, соответствующее таблице, и добавит все поля в форму) и установите для свойств Режим по умолчанию (DefaultView) и Допустимые режимы (ViewsAllowed) формы значение Таблица (после этого форма будет функционировать как таблица).


 Изменение ширины столбцов в режиме таблицы

Изменение ширины столбцов в режиме таблицы

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

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

    Изменение ширины столбца или изменение его размера по размеру данных

  3. Перетащите правую границу, пока столбец не достигнет подходящей ширины.

Примечания

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

  • В проекте Microsoft Access изменения в формате режима таблицы сохранять нельзя, за исключением режима таблицы для форм. Если нужно сохранить изменения формата режима таблицы для таблицы, представления или сохраненной процедуры проекта Access, создайте с помощью мастера автоформ таблицу в виде формы (мастер установит свойство Источник записей (RecordSource) в значение, соответствующее таблице, и добавит все поля в форму) и установите для свойств Режим по умолчанию (DefaultView) и Допустимые режимы (ViewsAllowed) формы значение Таблица (после этого форма будет функционировать как таблица).


 Изменение высоты строк в режиме таблицы

Изменение высоты строк в режиме таблицы

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

  2. Установите указатель на границу между двумя областями выделения записей, расположенными в левой части объекта в режиме таблицы, как показано на следующем рисунке.

    Изменение высоты строки для всех строк

  3. Перетащите нижнюю границу строки, пока строка не достигнет нужной высоты.

Примечания

  • Эта операция одновременно изменяет высоту всех строк объекта в режиме таблицы.

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

  • В проекте Microsoft Access изменения в формате режима таблицы сохранять нельзя, за исключением режима таблицы для форм. Если нужно сохранить изменения формата режима таблицы для таблицы, представления или сохраненной процедуры проекта Access, создайте с помощью мастера автоформ таблицу в виде формы (мастер установит свойство Источник записей (RecordSource) в значение, соответствующее таблице, и добавит все поля в форму) и установите для свойств Режим по умолчанию (DefaultView) и Допустимые режимы (ViewsAllowed) формы значение Таблица (после этого форма будет функционировать как таблица).


 Закрепление и освобождение столбцов в режиме таблицы

Закрепление и освобождение столбцов в режиме таблицы

Можно закрепить один или несколько столбцов таблицы так, что они будут расположены в левой части таблицы и будут отображаться на экране независимо от прокрутки.

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

  2. Выделите столбцы, которые нужно закрепить.

    Чтобы выделить столбец, щелкните область выделения поля этого столбца.

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

  3. Чтобы закрепить выделенные столбцы, выберите в меню Формат команду Закрепить столбцы.

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

Примечание. Нельзя сохранить изменения табличного форматирования для объекта в режиме таблицы в проекте Microsoft Access, если он не является формой. Если нужно сохранить изменения табличного форматирования для таблицы, представления или сохраненной процедуры в проекте Access, воспользуйтесь мастером автоформ для создания таблицы в виде формы (который быстро установит свойство Источник записей (RecordSource) на таблицу и добавит в форму все поля), а затем установите свойства Режим по умолчанию (DefaultView) и Допустимые режимы (ViewsAllowed) формы в значение Таблица (благодаря которому форма будет функционировать как таблица).


 Скрытие столбцов в режиме таблицы

Скрытие столбцов в режиме таблицы

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

  2. Выделите столбцы, которые требуется скрыть.

    Для выделения одного столбца щелкните область выделения поля этого столбца.

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

  3. Выберите в меню Формат команду Скрыть столбцы.

Примечания

  • Для получения сведений об отображении скрытых столбцов нажмите кнопку [image] .

  • В проекте Microsoft Access изменения в формате режима таблицы сохранять нельзя, за исключением случаев, когда в режиме таблицы открывается форма. Если нужно сохранить изменения формата режима таблицы для таблицы, представления или сохраненной процедуры проекта Access, создайте с помощью мастера автоформ таблицу в виде формы (мастер установит свойство Источник записей (RecordSource) в значение, соответствующее таблице, и добавит все поля в форму) и установите свойства Режим по умолчанию (DefaultView) и Допустимые режимы (ViewsAllowed) формы в значение Таблица (благодаря чему форма будет функционировать как таблица).


 Отображение скрытых столбцов в режиме таблицы

Отображение скрытых столбцов в режиме таблицы

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

  2. Выберите команду Отобразить столбцы в меню Формат.

  3. В диалоговом окне Отображение столбцов выберите имена столбцов, которые требуется вывести на экран.

Примечание. Нельзя сохранить изменения табличного форматирования для объекта в режиме таблицы в проекте Microsoft Access, если он не является формой. Если нужно сохранить изменения табличного форматирования для таблицы, представления или сохраненной процедуры в проекте Access, воспользуйтесь мастером автоформ для создания таблицы в виде формы (который быстро установит свойство Источник записей (RecordSource) на таблицу и добавит в форму все поля), а затем установите свойства Режим по умолчанию (DefaultView) и Допустимые режимы (ViewsAllowed) формы в значение Таблица (благодаря которому форма будет функционировать как таблица).


 Задание стандартных характеристик внешнего вида режима таблицы

Задание стандартных характеристик внешнего вида режима таблицы

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

  2. Выберите команду Параметры в меню Сервис.

  3. Выберите вкладку Режим таблицы.

  4. Выберите нужные параметры.

Примечание. Изменение данных параметров не влияет на формат таблиц, которые были изменены ранее с помощью команд меню «Формат». Чтобы и эти таблицы имели такой же формат, необходимо выполнить в них те же изменения с помощью команд меню «Формат» или удалить сохраненные свойства с помощью программы Visual Basic.


 Изменение шрифта, его стиля, размера и цвета в режиме таблицы

Изменение шрифта, его стиля, размера и цвета в режиме таблицы

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

  2. Выберите команду Шрифт в меню Формат.

  3. Выберите нужные параметры.

Примечания

  • Изменение формата отдельной таблицы приведет к отмене стандартного формата таблицы, определенного во вкладке Режим таблицы диалогового окна Параметры меню Сервис.

  • Изменения в формате режима таблицы нельзя сохранять в проекте Microsoft Access, за исключением случаев, когда в режиме таблицы открывается форма. Если нужно сохранить изменения формата режима таблицы для таблицы, представления или сохраненной процедуры в проекте Access, то с помощью мастера автоформ создайте таблицу в виде формы (мастер установит свойство Источник записей (RecordSource) в значение, соответствующее таблице, добавит все поля в форму и установит свойства Режим по умолчанию (DefaultView) и Допустимые режимы (ViewsAllowed) формы в значение Таблица (определяя, что форма должна выглядеть как таблица).


 Изменение стиля линии сетки и фонового цвета в режиме таблицы

Изменение стиля линии сетки и фонового цвета в режиме таблицы

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

  2. Выберите команду Режим таблицы в меню Формат.

  3. Выберите нужные параметры.

Примечания

  • Изменение формата отдельной таблицы приведет к отмене стандартного формата таблицы, определенного во вкладке Режим таблицы диалогового окна Параметры меню Сервис.

  • Изменения в формате режима таблицы нельзя сохранять в проекте Microsoft Access, за исключением случаев, когда в режиме таблицы открывается форма. Если нужно сохранить изменения формата режима таблицы для таблицы, представления или сохраненной процедуры в проекте Access, то с помощью мастера автоформ создайте таблицу в виде формы (мастер установит свойство Источник записей (RecordSource) в значение, соответствующее таблице, добавит все поля в форму и установит свойства Режим по умолчанию (DefaultView) и Допустимые режимы (ViewsAllowed) формы в значение Таблица (определяя, что форма должна выглядеть как таблица).


 Добавление поля (столбца) в таблицу в режиме таблицы

Добавление поля (столбца) в таблицу в режиме таблицы

  1. Откройте таблицу в режиме таблицы.

  2. Щелкните столбец, слева от которого требуется добавить новый столбец, и выберите в меню Вставка команду Столбец.

  3. Дважды щелкните заголовок нового столбца и введите его имя, придерживаясь соглашений об именах объектов Microsoft Access.

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

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


 Использование подтаблиц

Использование подтаблиц

Данный раздел содержит справочные сведения по следующим вопросам.

Что такое подтаблица?

Способы использования подтаблиц

Подтаблицы таблиц и запросов

Вложение подтаблиц

Формы, подчиненные формы и подтаблицы

Сравнение подтаблиц в базе данных Microsoft Access и проекте Microsoft Access

Дополнительные сведения

Что такое подтаблица?

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

Таблица «Поставщики» в режиме таблицы, содержащая подтаблицу таблицы «Товары»

Возврат в начало

Способы использования подтаблиц

Access автоматически создает подтаблицу в таблице, имеющей отношение «один-к-одному» или являющейся стороной «один» в отношении «один-ко-многим», если свойство таблицы Имя подтаблицы (SubdatasheetName) имеет значение Авто. Отношение определяется по совпадению полей первичного ключа и внешнего ключа в связанных таблицах. См. сведения по определению отношений.

Тем не менее, подтаблицу можно добавить в любую таблицу, запрос или форму. Подтаблица может использовать в качестве источника данных таблицу или запрос (указанный в свойстве Имя подтаблицы (SubdatasheetName)). Подтаблица, относящаяся к подчиненной форме, может использовать в качестве источника данных таблицу, запрос или форму (указанную в свойстве подчиненной формы Объект-источник (SourceObject)).

Возврат в начало

Подтаблицы таблиц и запросов

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

По умолчанию Access не отображает в подтаблице внешний ключ или совпадающие поля. Можно на время отобразить внешний ключ или совпадающие поля с помощью команды Отображение столбцов (меню Формат), но при следующем открытии таблицы, содержащей подтаблицу, столбцы вновь будут скрыты. Скрытие или отображение этих полей изменяет только внешний вид подтаблицы, не изменяя отношений или объекта-источника.

Добавить подтаблицу в таблицу или запрос в режиме таблицы, а также изменить подтаблицу можно с помощью команды Подтаблица (меню Вставка). Связываемые поля таблицы и подтаблицы указываются в полях Подчиненные поля и Основные поля диалогового окна Вставка подтаблицы. Эти поля соответствуют свойствам Подчиненные поля (LinkChildFields) и Основные поля (LinkMasterFields) таблицы или запроса, содержащего подтаблицу. Если оставить эти поля пустыми, Access выведет под каждой строкой таблицы все строки подтаблицы, а не только совпадающие строки.

Возврат в начало

Вложение подтаблиц

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

Возврат в начало

Формы, подчиненные формы и подтаблицы

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

  • В форму подтаблица вставляется путем добавления подчиненной формы с последующим определением объекта-источника путем указания таблицы, запроса или формы в свойстве Объект-источник (SourceObject) подчиненной формы. Подтаблица формы соответствует подчиненной форме. Если в качестве объекта-источника подчиненной формы используется форма, то для свойства Режим по умолчанию (DefaultView) может быть задано значение Таблица, Простая форма или Ленточная форма. Таким образом, в форме в режиме таблицы можно также просматривать подтаблицу в виде простой или ленточной формы. Можно переключаться между режимами таблицы и формы в подтаблице, выбирая команду Таблица подчиненной формы в меню Вид. Как и для подтаблиц таблицы и запроса, если свойства подчиненной формы Подчиненные поля (LinkChildFields) и Основные поля (LinkMasterFields) не определены, Access отображает все строки объекта-источника, а не только совпадающие.

  • Хотя форма может иметь более одной подчиненной формы, каждая из которых может иметь до двух уровней вложения, в режиме таблицы для формы отображается только одна подтаблица. Access выводит подтаблицу, соответствующую первой подчиненной форме в порядке перехода по форме. Однако, если в качестве объекта-источника подчиненной формы используется таблица или запрос, а ее свойство Режим по умолчанию (DefaultView) имеет значение Таблица, то в подтаблицу, соответствующую этой подчиненной форме, можно вложить еще одну подтаблицу и создать до восьми уровней вложения в форме в режиме таблицы или в режиме формы.

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

  • Если объектом-источником для подчиненной формы является форма, то в подтаблице, соответствующей этой подчиненной форме, можно постоянно отображать внешний ключ или совпадающие поля.

Что такое подчиненные формы.

Возврат в начало

Сравнение подтаблиц в базе данных Microsoft Access и проекте Microsoft Access

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

Возврат в начало

Дополнительные сведения

Вставка или изменение подтаблицы в таблице или запросе базы данных Access

Возврат в начало


 Вставка или изменение подтаблицы в таблице или запросе базы данных Access

Вставка или изменение подтаблицы в таблице или запросе базы данных Access

Примечание. Подтаблицу в таблице или в запросе можно использовать только в базе данных Microsoft Access, но не в проекте Microsoft Access.

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

  2. В меню Вставка выберите команду Подтаблица.

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

  4. Выберите таблицу или запрос из списка.

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

  6. В поле Основные поля выберите поле, которое должно быть первичным ключом (или полем соответствия) для таблицы или запроса, являющихся основной таблицей, открытой на шаге 1.

Примечания

  • Если в поле Подчиненные поля или Основные поля нужно задать несколько полей, введите их имена, разделяя их точкой с запятой (;), например, Фамилия;Имя.

  • При вставке или изменении подтаблицы можно создать самообъединение. Например, предположим, что требуется вывести список сотрудников, подчиняющихся каждому менеджеру, в виде подтаблицы таблицы «Сотрудники» учебной базы данных «Борей».Откройте таблицу «Сотрудники», выберите команду Подтаблица в меню Вставка, откройте вкладку Таблицы, выберите таблицу «Сотрудники», выберите в списке Подчиненные поля поле Подчиняется, а в списке Основные поля — поле КодСотрудника.


 Развертывание или свертывание подтаблицы

Развертывание или свертывание подтаблицы

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

Чтобы развернуть подтаблицу для строки таблицы или подтаблицы

  • Щелкните маркер развертывания (+) слева от строки.

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

  • В меню Формат выберите команду Подтаблица и подкоманду Развернуть все.

Чтобы свернуть подтаблицу для строки таблицы или подтаблицы

  • Щелкните маркер развертывания (-) слева от строки.

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

  • В меню Формат выберите команду Подтаблица и подкоманду Свернуть все.


 Удаление подтаблицы из таблицы или запроса базы данных Access

Удаление подтаблицы из таблицы или запроса базы данных Access

Примечание. Подтаблицу в таблице или в запросе можно использовать только в базе данных Microsoft Access, но не в проекте Microsoft Access.

  1. Откройте таблицу или запрос, содержащий подтаблицу, в режиме таблицы.

  2. В меню Формат выберите команду Подтаблица и подкоманду Удалить.

Примечание. Удаление подтаблицы не приводит к удалению таблицы или запроса и никак не влияет на связи.


Создание одной или нескольких подчиненных форм

Предполагаемые действия

Одновременное создание формы и подчиненной формы

Создание подчиненной формы и добавление ее в существующую форму

Добавление формы в другую существующую форму в качестве подчиненной

Создание формы с двумя подчиненными формами

Создание формы с подчиненной формой, содержащей другую подчиненную форму.


Запросы: что это такое и как они работают

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Открытие или запуск запроса

Открытие или запуск запроса

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

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

Предлагаемые действия

Открытие запроса в режиме конструктора

Просмотр результатов запроса на выборку или перекрестного запроса в режиме таблицы

Переключение между режимами отображения запроса

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

Выполнение запросов на создание таблицы, добавление и удаление записей


Создание запроса

В ряде случаев Microsoft Access предлагает автоматическое создание запросов, и пользователю не приходится самостоятельно их создавать.

Предполагаемые действия

Сведения о типах создаваемых запросов

Сведения о запросах на автоподстановку значений

Сохранение инструкции SQL в качестве запроса

Создание фильтра, сохраняемого как запрос

Мастера используются для создания запросов:

Простой запрос на выборку

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

Запрос на поиск повторяющихся записей

Запрос на поиск записей без подчиненных

Без использования мастеров создаются запросы:

Запрос на выборку

Запрос с параметрами

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

Запросы SQL (запрос на объединение, запрос к серверу, управляющий запрос, подчиненный запрос)

Запросы на изменение (создание таблицы, удаление, добавление и обновление записей)

Запрос на автоподстановку значений


 Создание запроса на основе фильтра таблицы, запроса или формы

Создание запроса на основе фильтра таблицы, запроса или формы

Вместо того, чтобы создавать запрос с нуля в режиме конструктора запроса, можно создать его автоматически, сохранив существующий в таблице, запросе или форме фильтр в виде запроса. Запрос предоставляет большую гибкость, чем фильтр. Для получения дополнительных сведений нажмите кнопку [image] .

  1. Откройте фильтр в окне обычного фильтра или расширенного фильтра и нажмите кнопку Сохранить как запрос [image] на панели инструментов.

  2. Введите имя запроса и нажмите кнопку OK.

    В окне базы данных появится новый запрос. В этот запрос автоматически включаются все поля базовой таблицы, так как свойство Вывод всех полей (OutputAllFields) запроса автоматически получает значение Да, но при необходимости макет запроса можно изменить. Для получения дополнительных сведений об изменении запроса и о задании его свойств нажмите кнопку [image] .

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


 Поиск повторяющихся записей или значений полей в таблице при помощи мастера запросов

Поиск повторяющихся записей или значений полей в таблице при помощи мастера запросов

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

Примечание. Microsoft Access может автоматически удалять повторяющиеся записи в таблице, хотя с помощью мастера поиска повторяющихся записей делать этого нельзя. Для получения дополнительных сведений нажмите кнопку [image] .

  1. В окне базы данных выберите значок Запросы [image] в списке Объекты и нажмите кнопку Создать на панели инструментов окна базы данных.

  2. В диалоговом окне Новый запрос выберите мастера Повторяющиеся записи.

  3. Нажмите кнопку OK.

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

    Если получился не тот запрос, который был нужен, можно снова запустить мастера или изменить этот запрос в режиме конструктора. Для получения дополнительных сведений об изменении запроса в режиме конструктора нажмите кнопку [image] .

Можно вручную удалить каждую повторяющуюся запись. Для получения дополнительных сведений нажмите кнопку [image] .


Способы настройки запроса

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Разработка и изменение запроса

Разработка и изменение запроса

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

При создании или изменении запроса в многопользовательской среде следует учитывать некоторые особые правила. Для получения дополнительных сведений нажмите кнопку [image] .

Предполагаемые действия

Работа с таблицей или запросом в запросе

Добавление таблицы или запроса

Удаление таблицы или запроса

Работа с объединениями

Объединение нескольких таблиц

Изменение типа объединения двух таблиц

Удаление объединения двух таблиц

Работа с полями

Добавление поля

Удаление поля

Перемещение поля

Вставка поля между другими полями

Изменение имени поля

Отображение и скрытие поля в результатах запроса

Установка свойств

Работа с бланком запроса

Изменение ширины столбца

Очистка бланка

Добавление столбца в бланк запроса

Установка условия отбора или порядка сортировки

Вставка или удаление строки условия отбора

Задание и изменение условия отбора

Задание порядка сортировки результирующего набора записей

Выполнение вычислений над данными

Работа с инструкциями SQL в запросе

Прямое изменение инструкций SQL


Использование символа звездочки (*) в бланке запроса

  • В запросе удобнее применять символ звездочки (*), а не выбирать все поля. При использовании символа звездочки в результаты запроса автоматически включаются все поля, добавленные в базовые таблицу или запрос после создания данного запроса. Все удаленные поля будут автоматически удаляться из запроса.

  • При использовании звездочки невозможно сортировать записи или задавать условия отбора для полей, если эти поля не были добавлены в бланк запроса вместе с символом звездочки. Для получения дополнительных сведений нажмите кнопку [image] .

  • Если звездочка вводится в строку Поле с помощью клавиатуры, а не методом перетаскивания, то имя таблицы также следует ввести с клавиатуры. Например, введите Клиенты.*.

    Звездочка включает в запрос все поля таблицы


 Обработка пустых полей в запросах

Обработка пустых полей в запросах

Когда поле не содержит значения, оно содержит значение Null либо, для полей типа «Текстовый», «Поле MEMO» и «Гиперссылка», значение Null или пустую строку. Наличие в поле значений Null может отразиться на результатах запроса. Ниже приводятся рекомендации по работе со значениями Null и пустыми строками в запросах. (Для получения сведений о различиях между значениями Null и пустыми строками нажмите кнопку [image] ).

Данный раздел содержит сведения по следующим вопросам.

Объединение полей, содержащих значения Null

Поиск значений Null или пустых строк

Влияние значений Null на числовые вычисления

Преобразование значений Null в нули

Объединение текстовых полей, содержащих значения Null

Сортировка полей, содержащих значения Null и пустые строки

Использование подстановочного знака «звездочка» (*) для возврата значений, отличных от Null

Объединение полей, содержащих значения Null

При объединении таблиц в запросе в результирующий набор будут включены только записи, не имеющие значений Null в связанных полях. Например, для создания списка поставщиков и клиентов, которые живут в одной области, следует создать запрос, включающий таблицы «Поставщики» и «Клиенты», и связать эти таблицы по полю «Область». При просмотре результатов будут выведены значения только тех записей, которые содержат непустое значение в поле «Область» в обеих таблицах.

Возврат в начало

Поиск значений Null или пустых строк

При использовании запроса для поиска значений Null или пустых строк введите Is Null в ячейку Условие отбора, чтобы выполнить поиск значений Null, или введите пару прямых кавычек ("") в ячейку Условие отбора, чтобы выполнить поиск пустых строк (не следует вводить пробел между символами кавычек).

Возврат в начало

Влияние значений Null на числовые вычисления

Если используется статистическая функция для вычисления суммы, среднего, числа элементов или другого итогового значения поля, то записи со значениями Null в этом поле не будут включены в вычисления. Это правило действует при использовании статистических функций в строке Групповая операция бланка запроса, в мастере простых запросов или в пользовательском выражении. Например, при использовании функции Count для подсчета числа значений поля, она возвратит число всех записей со значениями, отличными от Null. Если требуется найти общее число записей, включая записи со значениями Null, используйте функцию Count с подстановочным знаком «звездочка» (*).

Включение записей со значениями Null при использовании функции Count

Если в выражении (например, [НаСкладе]+[вЗаказе]) используется арифметический оператор (такой как +, -, *, /), и одно из полей в выражении содержит значение Null, то результатом всего выражения будет значение Null.

Возврат в начало

Преобразование значений Null в нули

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

Nz([СтоимостьЗаказа],0)+Nz([СтоимостьДоставки],0)

Для получения дополнительных сведений о функции Nz нажмите кнопку [image] .

Возврат в начало

Объединение текстовых полей, содержащих значения Null

Если при использовании выражения для объединения в одно двух полей, содержащих текстовые значения, одно или оба этих поля включают значения Null, используйте для объединения этих значений оператор & вместо оператора +. Оператор & объединяет значения, даже когда в них содержатся значения Null, в то время как оператор + возвращает значение Null, если хотя бы одно из объединяемых значений Null. Например:

ПолноеИмя: [Фамилия] & " " & [Имя]

Возврат в начало

Сортировка полей, содержащих значения Null и пустые строки

При сортировке поля по возрастанию все записи, в которых это поле содержит значение Null, ставятся в начало. Если поле содержит и значения Null, и пустые строки, то при сортировке значения Null ставятся в начало, а сразу за ними следуют пустые строки.

Возврат в начало

Использование подстановочного знака «звездочка» (*) для возврата значений, отличных от Null

Если в запросе при определении условий отбора для поля используется выражение Like "*", в результирующий набор будут включены записи, в которых это поле содержит пустые строки, но не будут включены записи, содержащие значения Null.

Возврат в начало

Дополнительные сведения

Способы выполнения вычислений в запросе

Статистические функции и другие элементы в строке «Групповая операция» бланка запроса

Указание порядка сортировки для запроса


Запрет на вывод в запросе повторяющихся записей

Предполагаемые действия

Запрет на вывод в запросе повторяющихся записей на основании значений полей базовой таблицы

Запрет на вывод в запросе повторяющихся записей лишь на основании значений полей в бланке

Не можете сделать выбор?


 Отображение только максимальных или минимальных значений результатов запроса

Отображение только максимальных или минимальных значений результатов запроса

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

  1. Откройте запрос в режиме конструктора.

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

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

  4. Выберите поле со списком Набор значений [image] на панели инструментов.

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

    Примечание. Чтобы вывести процентную долю, укажите после числа знак процента (%).

    Задание процента выводимых максимальных или минимальных значений

  6. Для просмотра результатов запроса нажмите кнопку Вид [image] на панели инструментов.

Примечание. Задание значения свойства Набор значений (TopValues) в окне свойств запроса приводит к тем же результатам, что и ввод значения в поле Набор значений на панели инструментов.


 Способы объединения данных из нескольких таблиц или запросов в запросе

Способы объединения данных из нескольких таблиц или запросов в запросе

Запросы удобно использовать для объединения или выполнения действий над данными, расположенными в нескольких таблицах или запросах. Например, необходимо просмотреть данные о клиенте, а также заказы, которые он разместил. Для получения этих сведений необходимо получить данные из таблиц «Клиенты» и «Заказы».

При добавлении в запрос нескольких таблиц или запросов необходимо убедиться, что их списки полей соединены друг с другом линиями объединения, что позволяет Microsoft Access определить тип объединения.

Линии связи показывают отношения между таблицами

Если таблицы в запросе не соединены прямо или косвенно друг с другом, то для Microsoft Access остается неизвестным, какие записи связаны с какими, и на экране отображаются все комбинации записей между двумя таблицами (это называется «полное объединение» или «декартово произведение»). Таким образом, если таблица содержит 10 записей, то в результате запроса будет 100 записей (10X10). Также время выполнения запроса очень увеличится, а полученные в конечном счете результаты будут не столь значимы.

Если ранее в окне «Схема данных» были созданы связи между таблицами, то при добавлении связанных таблиц в режиме конструктора линии объединения выводятся на экран автоматически. Если необходима целостность данных, то над линией объединения автоматически отображается цифра «1», означающая, что таблица находится на стороне «один» в отношении связей «один-ко-многим», а также знак целостности [image] для указания таблиц, находящихся на стороне «многие».

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

Иногда таблицы, добавляемые в запрос, не содержат полей, которые могут быть объединены. В этом случае рекомендуется создать одну или несколько дополнительных таблиц или запросов, которые будут служить в качестве моста между таблицами, данные которых должны быть использованы. Например, если в запрос добавить таблицы «Клиенты» и «Заказано», то между ними не будет линии связи, так как они не содержат полей, которые могут быть объединены. А таблица «Заказы» связана с обеими таблицами. Таким образом, таблицу «Заказы» можно включить в запрос, тем самым обеспечив связь между указанными двумя таблицами.

Дополнительная таблица в объединении обеспечивает отношение между таблицами

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

Примеры различных типов объединений и их влияние на результаты запроса. Если требуется выделить записи, основанные на значении из объединенного поля, которое больше, меньше, не равно, равно, больше или равно или меньше или равно значению из другого объединенного поля, необходимо в режиме SQL создать инструкцию SQL.

Примечание. При создании запроса по нескольким таблицам пользователь может иметь или не иметь возможность обновления данных. Для получения дополнительных сведений нажмите кнопку [image] .


Типы объединения и их влияние на результаты запроса

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Разрешение или запрет автоматических объединений между таблицами и запросами в запросе

Разрешение или запрет автоматических объединений между таблицами и запросами в запросе

Даже если связи между таблицами не были определены, Microsoft Access автоматически создает объединения при добавлении в запрос двух таблиц, если в них есть поля с одинаковым или совместимым типом данных и если одно из полей объединения является ключевым. Это автоматическое объединение можно разрешить или запретить.

  1. В меню Сервис выберите команду Параметры.

  2. Откройте вкладку Таблицы и запросы.

  3. Установите или сбросьте флажок Автоматическое объединение.

Примечания

  • Если автоматическое объединение было запрещено, можно по-прежнему создавать объединения вручную.

  • Данный параметр распространяется только на новые запросы.


 Объединение нескольких таблиц и запросов в запросе

Объединение нескольких таблиц и запросов в запросе

  • В режиме конструктора запроса перетащите поле из списка полей одной таблицы или запроса в соответствующее поле (поле, имеющее одинаковый или совместимый тип данных и содержащее подобные данные) списка полей другой таблицы или запроса.

    При использовании объединения этого типа Microsoft Access выбирает записи из обеих таблиц или запросов только тогда, когда значения полей объединения совпадают.

Перетащите поле для объединения таблиц

Примечания

  • Числовые поля могут быть объединены только если свойство Размер поля (FieldSize) имеет значения Байт, Целое или Длинное целое.

  • Тип объединения можно изменить таким образом, что из таблицы или запроса будут выбраны все записи, независимо от того, содержит ли вторая таблица или запрос соответствующие им записи. Для получения дополнительных сведений нажмите кнопку [image] .


 Объединение двух копий одной и той же таблицы в запросе

Объединение двух копий одной и той же таблицы в запросе

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

  1. В режиме конструктора запроса дважды добавьте таблицу в запрос.

  2. Создайте объединение путем перетаскивания поля из списка полей первой таблицы в соответствующее поле в списке полей другой таблицы.

Примечания

  • Для получения сведений о том, как выполнить самообъединение в указанном выше примере, нажмите кнопку [image] .

  • К имени таблицы во втором списке полей автоматически добавляется «_1». Например, если таблица «Сотрудники» была добавлена дважды, то в первом списке полей она будет называться «Сотрудники», а во втором — «Сотрудники_1». Переименовать таблицу так, чтобы ее название было более описательным, можно с помощью свойства Псевдоним (Alias) списка полей. Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение типа объединения между таблицами или запросами в запросе

Изменение типа объединения между таблицами или запросами в запросе

  1. Откройте запрос в режиме конструктора.

  2. Дважды щелкните линию объединения между списками полей таблиц или запросов.

    Дважды щелкните линию объединения, чтобы открыть диалоговое окно «Параметры объединения»

  3. В диалоговом окне Параметры объединения выберите нужный тип объединения и нажмите кнопку OK.

Примеры различных типов объединений и их влияние на результаты запроса

Примечания

  • Установленный по умолчанию тип объединения таблиц можно изменить в окне «Схема данных».Для получения дополнительных сведений нажмите кнопку [image] .

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


 Удаление линии объединения между таблицами или запросами в запросе

Удаление линии объединения между таблицами или запросами в запросе

  • В режиме конструктора запроса выделите линию объединения и нажмите клавишу DEL.

Выберите удаляемую линию объединения

Примечание. Можно запретить автоматическое создание объединений между таблицами в запросе. Для получения дополнительных сведений нажмите кнопку [image] .


Отображение или скрытие по умолчанию названий таблиц в бланке запроса

  1. В меню Сервис выберите команду Параметры.

  2. Откройте вкладку Таблицы и запросы.

  3. Установите или сбросьте флажок Вывод имен таблиц.

Примечание. Действие этого параметра распространяется только на новые запросы.


 Создание запроса на автоподстановку значений

Создание запроса на автоподстановку значений

Для осуществления автоподстановки значений в новые записи должны быть выполнены определенные условия. Для получения дополнительных сведений нажмите кнопку [image] .

  1. Создайте запрос на выборку, добавив для этого две таблицы, связанные отношением «один-ко-многим».

    Инструкции

  2. Добавьте поля в бланк запроса.

    Необходимо включить объединенные поля на стороне «многие» отношения «один-ко-многим».

    Включение объединенных полей для создания запроса на автоподстановку значений

  3. В случае необходимости для определения особых записей в строке Условие отбора укажите требуемое условие.

    Инструкции

  4. Для просмотра результатов запроса нажмите кнопку Вид [image] на панели инструментов.

    При вводе новых данных в объединенное поле на стороне «многие» поиск и подстановка соответствующих данных на стороне «один» будет осуществляться автоматически.

Примечание. Для получения сведений о разрешении вопросов в запросах на автоподстановку значений нажмите кнопку [image] .


Добавление и изменение условия отбора

Предполагаемые действия

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

Ввод условия отбора в запрос

Задание нескольких условий отбора одновременно

Использование условий отбора

Примеры условий отбора, содержащих выражения

Задание условия отбора после выполнения вычислений

Ввод условия отбора с помощью звездочки (*) в бланке

Создание запроса с параметрами, запрашивающего ввод условий отбора при каждом запуске

Вставка и удаление условий отбора в запросе


Использование условия отбора

Предполагаемые действия

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

Извлечение записей, значения в которых начинаются с определенных букв, цифр или слов, заканчиваются ими или содержат их

Извлечение записей, содержащих значения, не совпадающие с определенным значением

Извлечение записей, которые содержат непустые значения (значение, не равное Null)

Извлечение записей с пустыми значениями

Извлечение записей с текущим значением даты

Извлечение записей, содержащих значение из списка значений


 Ввод условия отбора в запрос или расширенный фильтр для получения соответствующих записей

Ввод условия отбора в запрос или расширенный фильтр для получения соответствующих записей

Для получения дополнительных сведений об использовании условий отбора нажмите кнопку [image] .

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

  2. Выберите первую ячейку Условие отбора для поля, для которого необходимо установить условие отбора.

  3. Введите выражение для условия отбора либо непосредственно, либо с помощью построителя выражений. Чтобы вывести построитель выражений, щелкните правой кнопкой ячейку Условие отбора и выберите команду Построить. Для получения дополнительных сведений об использовании построителя выражений нажмите кнопку [image] .

    Полученные записи отвечают условиям отбора, указанным в обоих столбцах.

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

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

  4. Для ввода другого выражения в то же самое поле или в другое поле перейдите в соответствующую ячейку Условие отбора и введите выражение.

Примечания

  • Для просмотра примеров выражений, используемых в условиях отбора, нажмите кнопку [image] .

  • Для получения дополнительных сведений о вводе условия отбора в запрос, выполняющий вычисления, нажмите кнопку [image] .


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

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Определение условия отбора или порядка сортировки при использовании символа «звездочка» (*) в бланке запроса

Определение условия отбора или порядка сортировки при использовании символа «звездочка» (*) в бланке запроса

  1. Откройте запрос в режиме конструктора.

  2. Перетащите символ «звездочка» (*) из списка полей в строку Поле в бланке запроса.

  3. Добавьте поля, которые требуется отсортировать, или для которых требуется задать условия отбора, перетащив их из списка полей в строку Поле.

  4. В ячейке Сортировка выберите порядок сортировки полей.

    Инструкции

  5. В строку Условие отбора введите условия отбора для соответствующих полей.

    Инструкции

  6. Для всех полей за исключением символа «звездочка» снимите флажок Вывод на экран; иначе эти поля будут отображены в результатах запроса дважды.

  7. Для просмотра результатов нажмите кнопку Вид на панели инструментов.


 Вставка или удаление строки условий отбора в запросе или расширенном фильтре

Вставка или удаление строки условий отбора в запросе или расширенном фильтре

  • Чтобы вставить строку условий отбора, в режиме конструктора запроса или в окне расширенного фильтра выделите строку, над которой нужно вставить новую, и выберите в меню Вставка команду Строки. Новая строка будет вставлена над выделенной строкой.

  • Чтобы удалить строку условия отбора, щелкните любое место в этой строке и выберите команду Удалить строки в меню Правка.


 Определение поля или условий для поля с помощью подчиненного запроса

Определение поля или условий для поля с помощью подчиненного запроса

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

  1. Создайте новый запрос.

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

  3. Если подчиненный запрос используется для определения условий для поля, введите инструкцию SELECT в ячейку строки Условие отбора в столбце этого поля. Инструкцию SELECT необходимо заключить в круглые скобки.

    Инструкция SELECT в ячейке строки «Условие отбора» определяет подчиненный запрос.

    Если подчиненный запрос используется для определения поля, введите инструкцию SELECT в ячейку строки Поле. Инструкцию SELECT в ячейке Поле необходимо заключить в круглые скобки. После выхода из ячейки Microsoft Access автоматически вставит стандартное имя поля «Выражение1:», «Выражение2:» и т.д. перед инструкцией SELECT.

    Примечание. Для того чтобы иметь больше места при вводе инструкции SELECT в ячейку Условие отбора или Поле, нажмите клавиши SHIFT+F2 и откройте окно Область ввода.

    Окно «Область ввода» отображает длинные инструкции подчиненного запроса.

    Для переименования поля замените «Выражение1:» на имя поля, например, «Прибыль:».

  4. Для просмотра результатов нажмите кнопку Вид [image] на панели инструментов.

Примечания

  • Для просмотра примеров определения условий отбора с помощью подчиненного запроса нажмите кнопку [image] .

  • Не допускается группировка записей по полю, определенному с помощью подчиненного запроса.

  • Инструкция SELECT подчиненного запроса не может определить запрос на объединение или перекрестный запрос.


 Выбор записей, значения которых находятся с заданными значениями в определенном отношении: between, >, <, >=, <=, <>

Выбор записей, значения которых находятся с заданными значениями в определенном отношении: between, >, <, >=, <=, <>

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

  2. Введите в ячейку строки Условие отбора выражение, определяющее диапазон значений с помощью оператора Between...And или операторов сравнения (<, >, <>, <= и >=). Например, можно указать отбор заказов, размещенных до 1-янв-94 или товаров, запас которых составляет от 10 до 35 единиц. В следующей таблице приведены примеры определения диапазонов значений с помощью операторов.
    Выражение | Описание
    >234 | Числа, превышающие 234
    Between #02.02.93# And #01.12.93# | Даты в диапазоне от 2-фев-93 до 1-дек-93
    <1200.45 | Числа, меньшие чем 1200,45
    >="Иванов" | Все фамилии, начиная с «Иванов» и до конца алфавита

Примечание. Числовые значения и даты отображаются в бланке запроса в формате, соответствующем настройкам, выбранным в окне «Язык и стандарты» панели управления Windows. Например, месяц/день/год для США, день.месяц.год для России или год/день/месяц для Швеции.


 Выбор с помощью запроса записей, содержащих значения, не совпадающие с определенным значением

Выбор с помощью запроса записей, содержащих значения, не совпадающие с определенным значением

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

  2. Введите в ячейку строки Условие отбора для соответствующего поля выражение, содержащее оператор Not. Например, выражение Not Ф* в ячейке Условие отбора для поля «Название» определяет отбор всех названий, не начинающихся с буквы «Ф», а выражение Not 2 для поля КодДоставки определяет отбор всех транспортных компаний, код которых не равен 2.


 Выбор с помощью запроса записей с непустыми значениями

Выбор с помощью запроса записей с непустыми значениями

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

  2. Введите в ячейку строки Условие отбора для соответствующего поля выражение Not Null или Is Not Null. Например, чтобы просмотреть список поставщиков, имеющих факс, введите Not Null или Is Not Null в ячейку строки Условие отбора для поля «Факс» таблицы сведений о поставщиках.


 Выбор с помощью запроса записей, содержащих значение текущей даты

Выбор с помощью запроса записей, содержащих значение текущей даты

Microsoft Access определяет текущую дату по системным часам компьютера.

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

  2. Введите в ячейку строки Условие отбора для соответствующего поля выражение Date() (без пробела между скобками). Например, чтобы найти все заказы, дата исполнения которых совпадает с текущей датой, введите выражение Date() в поле «ДатаИсполнения».


 Выбор с помощью запроса записей, содержащих значение из списка значений

Выбор с помощью запроса записей, содержащих значение из списка значений

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

  2. Введите в ячейку строки Условие отбора для соответствующего поля выражение, в котором используется оператор In. Например, для поиска поставщиков из Франции, Германии или Японии введите следующее выражение в ячейку Условие отбора для поля «Страна» таблицы «Поставщики»:

    In(Франция,Германия,Япония)

    Это же условие может быть задано в следующем виде:

    Франция Or Германия Or Япония


 Выбор с помощью запроса записей с пустыми значениями

Выбор с помощью запроса записей с пустыми значениями

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

  2. Введите в ячейку строки Условие отбора для соответствующего поля выражение Is Null. Например, чтобы просмотреть список поставщиков, у которых нет факса, введите Is Null в ячейку строки Условие отбора для поля «Факс» таблицы сведений о поставщиках.


 Отображение в вычисляемом поле части содержимого текстового поля

Отображение в вычисляемом поле части содержимого текстового поля

  1. Создайте запрос в режиме конструктора запроса. Добавьте в запрос таблицы, служащие источниками записей.

  2. Для отображения части значения текстового поля введите выражение, содержащее функцию Left, Right или Mid в пустую ячейку строки Поле в бланке запроса.

    Эти функции используют следующий синтаксис:

    Left(строка,n)
    Right(строка,n)
    Mid(строка,начало,n)

    Аргумент строка представляет либо имя поля (заключенное в квадратные скобки) либо строковое выражение; n определяет число возвращаемых символов; аргумент начало задает позицию первого возвращаемого символа.

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

    Значение поля
    «ИнвНомер»
    Выражение
    Возвращаемое значение
    BA-7893-R12 | Left([ИнвНомер],2) | BA
    BA-7893-R12 | Right([ИнвНомер],3) | R12
    BA-7893-R12 | Mid([ИнвНомер],4,4) | 7893
  3. Добавьте в бланк запроса любые другие поля, которые требуется вывести в запросе.


 Отображение в вычисляемом поле части содержимого поля даты

Отображение в вычисляемом поле части содержимого поля даты

  1. Создайте запрос в режиме конструктора запроса. Добавьте в запрос таблицы, служащие источниками записей.

  2. Введите выражение, содержащее функцию DatePart, в пустую ячейку строки Поле в бланке запроса.

    Эта функция использует следующий синтаксис:

    DatePart(компонентДаты,дата)

    Аргумент компонентДаты задается с помощью специальных символов, определяющих часть даты, которую требуется возвратить. Например, «yyyy» определяет год в формате четырех разрядов, а «q» — календарный квартал. Аргумент дата представляет либо поле типа «Дата/время», либо дату в явном представлении, например, «7-фев-93».

    Ниже приводятся примеры вызова функции DatePart для поля «ДатаРазмещения» из таблицы «Заказы».

    Значение в поле
    «ДатаРазмещения»
    Выражение
    Возвращаемое значение
    3-июн-93 | DatePart("m",[ДатаРазмещения]) | 6 (номер месяца)
    28-мар-92 | DatePart("yyyy",[ДатаРазмещения]) | 1992 (год, представленный 4-мя цифрами)
  3. Добавьте в бланк запроса любые другие поля, которые требуется вывести в запросе.


 Способы выполнения вычислений в запросе

Способы выполнения вычислений в запросе

Существует ряд вычислений, которые можно выполнить в запросе, например, найти сумму или среднее по значениям одного поля, перемножить значения двух полей или вычислить дату, отстоящую от текущей на три месяца.

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

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

Вычисления, отображаемые в запросе

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

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

Выражения, определяемые пользователем, дают возможность выполнять действия с числами, датами и текстовыми значениями в каждой записи с использованием данных из одного или нескольких полей. Например, выражение позволяет умножить значения одного поля на итоговое значение, найти разность значений двух полей типа «Дата, время», соединять несколько строковых значений в текстовом поле или создавать подчиненные запросы. Заполняя ячейки в строке Групповая операция в бланке запроса, можно выполнить расчеты для групп записей и вычислить сумму, среднее, количество или другой тип итогового значения для вычисляемого поля.

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

Вычисляемые поля в бланке запроса

При выполнении расчетов допускаются сложные выражения — например, Sum([На складе]+[Ожидается]). Имеется возможность определить для вычисляемого поля условие отбора данных, используемых в расчетах.

Результаты вычислений не должны обязательно отображаться в поле. Их можно использовать в условиях отбора для определения записей, которые выбираются в запросе, или для определения записей, над которыми производятся какие-либо действия. Например, следующее выражение в ячейке строки Условие отбора позволяет отбирать в запросе только записи, которые имеют значение в поле «ДатаНазначения», попадающее в интервал между текущей датой и датой, отстоящей от нее на три месяца.

Вычисления для определения условия отбора записей

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

Вычисления для обновления данных


Выполнение вычислений в запросе

Предполагаемые действия

Дополнительные сведения о выполнении вычислений в запросах

Дополнительные сведения о типах итоговых вычислений

Использование мастера для создания запроса, в котором вычисляется сумма или среднее, подсчитывается число значений или определяются другие итоговые значения для одной или нескольких групп записей

Использование бланка запроса для вычисления суммы, среднего, числа элементов или других итоговых значений

Создание вычисляемого поля с помощью выражения, определяемого пользователем

Примеры определения условий отбора с помощью выражений

Примеры вычислений, используемых для обновления данных

Не можете сделать выбор?


Запросы на выборку и их использование

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

Примеры запросов на выборку

Возврат в раздел Типы запросов


 Создание простого запроса на выборку с помощью мастера

Создание простого запроса на выборку с помощью мастера

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

  1. В окне базы данных выберите значок Запросы [image] в списке Объекты и нажмите кнопку Создать на панели инструментов окна базы данных.

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

  3. Нажмите кнопку OK.

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

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

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

    Если получился не тот запрос, который был нужен, можно снова запустить мастера или изменить этот запрос в режиме конструктора. Для получения дополнительных сведений об изменении запроса в режиме конструктора нажмите кнопку [image] .

Для устранения неполадок с запросами нажмите кнопку [image] .


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

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

Примеры запросов на выборку
  1. Добавление таблицы в запрос

    Способы объединения данных из нескольких таблиц или запросов в запросе

    Добавление в запрос таблицы или запроса

    Объединение нескольких таблиц и запросов в запросе

    Изменение типа объединения между таблицами или запросами в запросе

  2. Добавление полей в запрос

    Добавление полей к бланку запроса

    Добавление столбца в бланк запроса

  3. Задание условий отбора для запроса

    Использование условий отбора для поиска определенных записей в запросе

    Ввод условия отбора в запрос

    Вставка или удаление строки условий отбора в запросе

  4. Выполнение вычислений в запросе

    Создание поля, выполняющего вычисления или манипулирующего значениями поля в запросе

    Примеры выражений, вычисляющих или управляющих значениями, используя вычисляемые поля

  5. Доработка запроса

    Установка значений свойств запроса, полей запроса или списков полей

    Сортировка записей с помощью бланка запроса

    Создание запроса на автоподстановку значений

    Запросы с автоподстановкой значений, обеспечивающие автоматический ввод данных


 Запросы на изменение и их использование

Запросы на изменение и их использование

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

Данный раздел содержит примеры следующих запросов.

Запрос на удаление

Запрос на обновление записей

Запрос на добавление

Запрос на создание таблицы

Запрос на удаление

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

Для получения сведений о создании запросов на удаление нажмите кнопку [image] .

Возврат в начало

Запрос на обновление записей

Вносит общие изменения в группу записей одной или нескольких таблиц. Например, на 10 процентов поднимаются цены на все молочные продукты или на 5 процентов увеличивается зарплата сотрудников определенной категории. Запрос на обновление записей позволяет изменять данные в существующих таблицах.

Для получения сведений о создании запроса на обновление записей нажмите кнопку [image] .

Возврат в начало

Запрос на добавление

Добавляет группу записей из одной или нескольких таблиц в конец одной или нескольких таблиц. Например, появилось несколько новых клиентов, а также база данных, содержащая сведения о них. Чтобы не вводить все данные вручную, их можно добавить в таблицу «Клиенты». Запрос на добавление также полезен при выполнении следующих действий.

  • Добавление полей на основе условий отбора. Например, необходимо добавить имена и адреса клиентов с очень крупными заказами.

  • Добавление записей, если некоторые поля из одной таблицы не существуют в другой. Например, в демонстрационной базе данных «Борей» таблица «Клиенты» содержит 11 полей. Пусть требуется добавить записи из другой таблицы с полями, соответствующими 9 из 11 полям таблицы «Клиенты». Запрос на добавление добавит данные в совпадающие поля и пропустит остальные.

Для получения сведений о создании запросов на добавление записей нажмите кнопку [image] .

Возврат в начало

Запрос на создание таблицы

Создает новую таблицу на основе всех или части данных из одной или нескольких таблиц. Запрос на создание таблицы полезен для выполнения следующих действий.

  • Создание таблицы для экспорта в другую базу данных Microsoft Access. Например, требуется создать таблицу, содержащую несколько полей из таблицы «Сотрудники», а затем экспортировать эту таблицу в базу данных, используемую отделом кадров.

  • Создание страниц доступа к данным, отображающих данные, соответствующие указанному моменту времени. Например, 15 мая 1999 г. требуется создать страницу доступа к данным, отображающую итоговые значения продаж за первый квартал на основании данных, содержавшихся в базовых таблицах на 9:00 1 апреля 1999 г. Страница доступа к данным, основанная на запросе или инструкции SQL, извлекает из таблиц последние данные (на 15 мая 1999 г.), а не данные на конкретную дату и время. Чтобы получить данные именно в том виде, который они имели на 9:00 1 апреля 1999 г., создайте запрос на создание таблицы, отбирающий данные на указанный момент времени и сохраняющий их в новой таблице. Затем используйте в качестве основы для страницы доступа к данным эту таблицу, а не запрос.

  • Создание резервной копии таблицы.

  • Создание архивной таблицы, содержащей старые записи. Например, можно создать таблицу, сохраняющую все старые заказы, прежде чем удалить их из текущей таблицы «Заказы».

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

Для получения сведений о разработке запросов на создание таблицы нажмите кнопку [image] .

Возврат в начало


 Создание новой таблицы в запросе на создание таблицы

Создание новой таблицы в запросе на создание таблицы

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

    Инструкции

  2. В режиме конструктора запроса нажмите кнопку раскрытия списка рядом с кнопкой Тип запроса [image] на панели инструментов и выберите команду Создание таблицы. Будет открыто диалоговое окно Создание таблицы.

  3. В поле Имя таблицы введите имя таблицы, которую необходимо создать или заменить.

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

  5. Нажмите кнопку OK.

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

  7. Для полей, перемещенных в бланк запроса, введите условие в ячейку Условие отбора.

    Для получения дополнительных сведений об определении условий отбора нажмите кнопку [image] .

  8. Для просмотра новой таблицы до ее создания, нажмите кнопку Вид [image] на панели инструментов. Чтобы вернуться в режим конструктора запроса и изменить или запустить запрос, снова нажмите кнопку Вид [image] на панели инструментов.

  9. Для создания новой таблицы нажмите кнопку Запуск [image] на панели инструментов.

Примечания

  • Чтобы остановить выполнение запроса, нажмите клавиши CTRL+BREAK.

  • Данные во вновь созданной таблице не наследуют свойства полей или настройки ключевых полей исходных таблиц.


 Изменение группы записей с помощью запроса на обновление

Изменение группы записей с помощью запроса на обновление

  1. Создайте запрос, выбрав таблицы или запросы, включающие записи, которые необходимо обновить, и поля, которые должны быть использованы в условиях отбора.

    Инструкции

  2. В режиме конструктора запроса нажмите стрелку рядом с кнопкой Тип запроса [image] на панели инструментов и выберите команду Обновление.

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

  4. При необходимости задайте условие отбора в ячейке Условие отбора.

    Для получения дополнительных сведений об определении условий отбора нажмите кнопку [image] .

  5. Для полей, которые необходимо обновить, введите в ячейку Обновление выражение или значение, которое должно быть использовано для изменения полей, как показано на приведенном ниже рисунке.

    Задание выражения для изменения группы записей

    Для просмотра примеров выражений нажмите кнопку [image] .

  6. Чтобы просмотреть список записей, которые будут обновлены, нажмите кнопку Вид [image] на панели инструментов. Выводимый список не будет содержать новых значений. Для возврата в режим конструктора запроса снова нажмите кнопку Вид [image] на панели инструментов. Завершите создание запроса в режиме конструктора.

  7. Нажмите кнопку Запуск [image] на панели инструментов, чтобы обновить записи.

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


 Примеры выражений в запросах на обновление записей

Примеры выражений в запросах на обновление записей

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

Выражение | Результат
"Продавец" | Изменяет значение на «Продавец»
#8/10/96# | Изменяет значение даты на 10-авг-96
Да | Изменяет в логическом поле значения «Нет» на «Да»
"PN"&[код] | Присоединяет строку «PN» в начало каждого определенного поля
[Цена]*[Количество] | Вычисляет произведение полей «Цена» и «Количество»
[Фрахт]*1,5 | Увеличивает значение стоимости фрахта на 50 процентов
DSum("[Количество]*[Цена]", "Заказано","[КодТовара]=" & [КодТовара]) | Если значение поля «КодТовара» в текущей таблице совпадает со значением поля «КодТовара» в таблице «Заказано», обновляет итоговые значения продаж, рассчитываемые как произведение полей «Цена» и «Количество».
Right([ИмяПоля],5) | Обрезает левые символы в поле, оставляя пять правых символов


 Добавление записей из одной таблицы в другую с помощью запроса на добавление записей

Добавление записей из одной таблицы в другую с помощью запроса на добавление записей

  1. Создайте запрос, содержащий таблицу, записи из которой необходимо добавить в другую.

    Инструкции

  2. В режиме конструктора запроса нажмите стрелку рядом с кнопкой Тип запроса [image] на панели инструментов и выберите команду Добавление. На экране появится диалоговое окно Добавление.

  3. В поле Имя таблицы введите имя таблицы, в которую необходимо добавить записи.

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

    Можно также ввести путь к базе данных Microsoft FoxPro, Paradox или dBASE, а также строку подключения к базе данных SQL.

  5. Нажмите кнопку OK.

  6. Перетащите из списка полей в бланк запроса поля, которые необходимо добавить или которые будут использоваться при определении условия отбора. При желании можно добавить поле первичного ключа, если оно имеет тип данных «Счетчик». Для получения дополнительных сведений нажмите кнопку [image] .

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

  7. Если в обеих таблицах выделенные поля имеют одинаковые имена, то соответствующие имена автоматически вводятся в строку Добавление. Если имена полей двух таблиц отличны друг от друга, нужно будет указать в строке Добавление имена полей таблицы-приемника.

  8. Для полей, перемещенных в бланк запроса, введите в ячейку Условие отбора условие отбора, по которому будет осуществляться добавление.

    Для получения дополнительных сведений об определении условий отбора нажмите кнопку [image] .

  9. Для предварительного просмотра добавляемых записей нажмите кнопку Вид [image] на панели инструментов. Для возврата в режим конструктора снова нажмите кнопку Вид [image] на панели инструментов. Продолжите внесение изменений в режиме конструктора.

  10. Для добавления записей нажмите кнопку Запуск [image] на панели инструментов.

Примечание. Чтобы остановить выполнение запроса, нажмите комбинацию клавиш CTRL+BREAK.


Удаление группы записей при помощи запроса

Предполагаемые действия

Удаление записей из одной или нескольких таблиц, связанных отношением «один-к-одному»

Удаление записей с помощью запроса, включающего только таблицу на стороне «один» отношения «один-ко-многим»

Удаление записей с помощью запроса, включающего обе таблицы, связанные отношением «один-ко-многим»

Не можете сделать выбор?


 Перекрестные запросы и их использование

Перекрестные запросы и их использование

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

Для получения сведений о создании перекрестного запроса с помощью мастера нажмите кнопку [image] . Для получения сведений о самостоятельном создании перекрестного запроса нажмите кнопку [image] .

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

Для получения сведений о создании сводного списка на странице доступа к данным нажмите кнопку [image] .


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

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Создание перекрестного запроса без помощи мастера

Создание перекрестного запроса без помощи мастера

Для просмотра примера перекрестного запроса перед началом работы нажмите кнопку [image] .

  1. В окне базы данных выберите значок Запросы [image] в списке Объекты и нажмите кнопку Создать на панели инструментов окна базы данных.

  2. В диалоговом окне Новый запрос выберите в списке строку Конструктор и нажмите кнопку OK.

  3. В окне диалога Добавление таблицы выберите вкладку, содержащую объекты, данные из которых будут использованы в запросе.

  4. Дважды щелкните объекты, которые нужно добавить в запрос, и нажмите кнопку Закрыть.

  5. Добавьте поля в строку Поле в бланке запроса и задайте условия отбора.

  6. На панели инструментов нажмите кнопку Тип запроса [image] и выберите Перекрестный.

  7. Для поля или полей, значения которых должны быть представлены в виде заголовков строк, щелкните ячейку строки Перекрестная таблица и выберите значение Заголовки строк.

    Для таких полей нужно оставить в строке Групповая операция значение Группировка, установленное по умолчанию.

  8. Для поля, значения которого должны быть представлены в виде заголовков столбцов, щелкните ячейку строки Перекрестная таблица и выберите значение Заголовки столбцов. Значение Заголовки столбцов можно задать только для одного поля. Для этого поля нужно оставить в ячейке строки Групповая операция значение Группировка, установленное по умолчанию.

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

    Инструкции

  9. Для поля, значения которого нужно использовать при создании перекрестной таблицы, щелкните ячейку строки Перекрестная таблица и выберите Значение.

    Значение Значение может быть выбрано только для одного поля.

  10. В строке Групповая операция выберите статистическую функцию, которая будет использована для заполнения перекрестной таблицы (например, Sum, Avg или Count).

  11. Чтобы задать условие отбора, ограничивающее отбираемые заголовки строк до выполнения вычислений, введите выражение в строку Условие отбора для поля со значением Заголовки строк в ячейке строки Перекрестная таблица. Например, можно вывести итоговые суммы продаж для некоторых категорий товаров, таких как мясные или рыбные продукты.

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

  12. Для просмотра результатов запроса нажмите кнопку Вид [image] на панели инструментов.

    Если требуется прервать выполнение запроса после его запуска, нажмите клавиши CTRL+BREAK.

Примечания

  • Запрос «Квартальные обороты по товарам» учебной базы данных «Борей» является примером перекрестного запроса. Чтобы просмотреть этот запрос, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте запрос «Квартальные обороты по товарам» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .

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

  • Значения поля, в ячейке «Перекрестная таблица» которого установлено значение Заголовки столбцов, могут включать символы, которые обычно не допускаются в именах полей, например, разделители десятичных разрядов. Microsoft Access заменяет такие символы в таблице знаком подчеркивания.

  • Для получения сведений об устранении неполадок при использовании перекрестных запросов нажмите кнопку [image] .

  • Для получения сведений о создании сводного списка на странице доступа к данным нажмите кнопку [image] .


 Создание перекрестных запросов с помощью мастера

Создание перекрестных запросов с помощью мастера

Для просмотра примера перекрестного запроса нажмите кнопку [image] .

  1. В окне базы данных выберите значок Запросы [image] в списке Объекты и нажмите кнопку Создать на панели инструментов окна базы данных.

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

  3. Нажмите кнопку OK.

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

    Если полученный запрос не соответствует требованиям, можно снова обратиться к мастеру или внести изменения в запрос в режиме конструктора. Для получения дополнительных сведений о внесении изменений в запрос в режиме конструктора нажмите кнопку [image] .

Для устранения неполадок с запросами нажмите кнопку [image] .

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

Для получения сведений о создании сводного списка на странице доступа к данным нажмите кнопку [image] .


 Сортировка или ограничение заголовков столбцов, выводимых в перекрестном запросе

Сортировка или ограничение заголовков столбцов, выводимых в перекрестном запросе

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

  1. Создайте перекрестный запрос с помощью или без помощи мастера.

  2. Отобразите его в режиме конструктора.

  3. Щелкните фон окна режима конструктора запроса вне бланка запроса и списка полей.

  4. Откройте окно свойств запроса нажатием кнопки Свойства [image] на панели инструментов.

  5. В ячейку свойства Заголовки столбцов (ColumnHeadings) введите заголовки столбцов в том порядке, в котором они должны отображаться в запросе. Заголовки столбцов следует разделять точкой с запятой или использовать символ разделителя списка, принятый в данной стране. (Для того чтобы найти конкретный символ разделителя списка, откройте окно «Язык и стандарты» панели управления Windows.)

    Вводимые заголовки столбцов должны точно соответствовать заголовкам столбцов в запросе в режиме таблицы. Например, если в заголовке столбца в режиме таблицы выводится «USA», следует ввести именно «USA», а не «US». (После нажатия клавиши ENTER или перевода указателя в другую ячейку имя каждого заголовка заключается в кавычки).

  6. Для просмотра результатов запроса нажмите кнопку Вид [image] на панели инструментов.

Примечания

  • Если перекрестный запрос выполняется часто или если он используется как базовый для формы, отчета или страницы доступа к данным, то описанные выше действия по заданию фиксированных заголовков столбцов позволяют уменьшить время выполнения запроса.

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


 Запросы с параметрами и их использование

Запросы с параметрами и их использование

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

Запросы с параметрами также удобно использовать в качестве основы для форм, отчетов и страниц доступа к данным. Например, на основе запроса с параметрами можно создать месячный отчет о доходах. При печати данного отчета Microsoft Access выводит на экран приглашение ввести месяц, доходы за который должны быть приведены в отчете. После ввода месяца Microsoft Access выполняет печать соответствующего отчета. Для получения сведений о создании запросов с параметрами нажмите кнопку [image] .

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


 Создание запроса с параметрами, запрашивающего ввод условий отбора при каждом запуске

Создание запроса с параметрами, запрашивающего ввод условий отбора при каждом запуске

Запрос с параметрами выводит одно или несколько предопределенных диалоговых окон, в которых пользователь должен ввести значения параметров (условия отбора). Можно также создать собственное диалоговое окно, запрашивающее параметры запроса. Для получения дополнительных сведений нажмите кнопку [image] .

  1. Создайте запрос на выборку или перекрестный запрос.

  2. В режиме конструктора запроса перетащите поля из списка полей в бланк запроса.

  3. Для каждого поля, которое предполагается использовать как параметр, введите в ячейку строки Условие отбора текст приглашения, заключенный в квадратные скобки. Это приглашение будет выводиться при запуске запроса. Текст приглашения должен отличаться от имени поля, но может включать его.

    Текст, указанный в ячейке «Условие отбора», выводится в качестве приглашения при запуске запроса

    Для поля, которое выводит даты, можно ввести приглашения следующего вида "Введите начальную дату:" и "Введите конечную дату:", чтобы задать границы диапазона значений. В ячейке Условие отбора поля наберите Between [Введите начальную дату:] And [Введите конечную дату:].

  4. Для просмотра результатов нажмите кнопку Вид [image] на панели инструментов и введите значение параметра. Чтобы вернуться в режим конструктора запроса, снова нажмите кнопку Вид [image] на панели инструментов.

Примечания

  • Необходимо определить тип данных для параметров в перекрестном запросе или в запросе с параметрами, являющемся базовым для диаграммы или для перекрестного запроса. В перекрестном запросе необходимо также задать значение свойства Заголовки столбцов (ColumnHeadings). В других запросах с параметрами необходимо указать тип данных параметра для логических полей и для полей из таблиц во внешних базах данных SQL. Для получения дополнительных сведений об указании типа данных параметра нажмите кнопку [image] . Для получения дополнительных сведений о свойстве Заголовки столбцов (ColumnHeadings) нажмите кнопку [image] .

  • Чтобы запросить у пользователя один или несколько символов для поиска записей, которые начинаются с этих символов или содержат их, создайте запрос с параметрами, использующий оператор LIKE и подстановочный знак (*). Например, выражение:

    LIKE [Введите первый символ для поиска: ] & "*"

    выполняет поиск слов, начинающихся с указанного символа. Выражение:

    LIKE "*" & [Введите любой символ для поиска: ] & "*"

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

  • В отчетах параметры можно распечатывать. Для получения дополнительных сведений нажмите кнопку [image] .


 Запросы SQL и их использование

Запросы SQL и их использование

Запрос SQL — это запрос, создаваемый при помощи инструкций SQL. Примерами запросов SQL могут служить запросы на объединение, запросы к серверу, управляющие и подчиненные запросы.

Данный раздел содержит примеры следующих запросов.

Запрос на объединение

Запрос к серверу

Управляющий запрос

Подчиненный запрос

Запрос на объединение

Запросы этого типа комбинируют поля (столбцы) из одной или нескольких таблиц или запросов в одно поле в результатах запроса. Например, если шесть поставщиков ежемесячно посылают новые списки оборудования, то с помощью запроса на объединение эти списки можно объединить в один, а затем поместить результаты в новую таблицу, созданную с помощью запроса на создание таблицы, основанного на запросе на объединение. Для просмотра примеров запросов на объединение нажмите кнопку [image] .

Для получения сведений о создании запросов на объединение нажмите кнопку [image] .

Возврат в начало

Запрос к серверу

Запросы этого типа отправляют команды непосредственно в базы данных ODBC, такие как Microsoft FoxPro, причем используются только команды, поддерживаемые сервером. Например, запрос к серверу можно использовать для загрузки записей или изменения данных.

Для получения сведений о создании запросов к серверу нажмите кнопку [image] .

Возврат в начало

Управляющий запрос

Запросы данного типа создают, удаляют и изменяют таблицы или создают индексы в базах данных, таких как таблицы Microsoft Access или Microsoft FoxPro.

Для получения сведений о создании управляющих запросов нажмите кнопку [image] .

Возврат в начало

Подчиненный запрос

Запрос этого типа представляет собой инструкцию SQL SELECT, вложенную в запрос на выборку или запрос на изменение. Чтобы определить новое поле, данную инструкцию можно ввести в строку Поле в бланке запроса. Чтобы указать для данного поля условие отбора, введите инструкцию в строку Условие отбора. Подчиненные запросы используются для:

  • проверки наличия результатов подчиненного запроса (используются зарезервированные слова EXISTS или NOT EXISTS);

  • поиска значений в основном запросе, которые равны, превышают или меньше значений, возвращаемых подчиненным запросом (используются зарезервированные слова ANY, IN или ALL);

  • создания подчиненных запросов внутри подчиненных запросов (вложенные запросы).

Для получения сведений о создании подчиненных запросов нажмите кнопку [image] .

Возврат в начало


Использование инструкций SQL в запросах, формах, отчетах, макросах и модулях

Предполагаемые действия

Просмотр и изменение инструкции SQL для существующего запроса

Создание инструкции SQL с помощью запроса в режиме конструктора для последующего копирования и вставки

Изменение базовой инструкции SQL для формы или отчета

Использование инструкции SQL как источника строк для списка или поля со списком

Создание запросов SQL (запрос на объединение, запрос к серверу, управляющий запрос, подчиненный запрос)

Выполнение запроса на изменение или управляющего запроса из макроса вместо использования сохраненного запроса

Использование инструкций SQL в программе

Не можете сделать выбор?


 Использование режима конструктора запроса для создания инструкции SQL, предназначенной для вставки в другом месте базы данных

Использование режима конструктора запроса для создания инструкции SQL, предназначенной для вставки в другом месте базы данных

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

  1. В режиме конструктора запроса создайте запрос, из которого нужно создать инструкцию SQL.

  2. Щелкните стрелку рядом с кнопкой Вид [image] на панели инструментов и нажмите кнопку Режим SQL.

  3. Выделите частично или полностью инструкцию SQL и нажмите клавиши CTRL+C для копирования выделенного текста в буфер обмена.

  4. Поместите курсор в то место, в которое нужно вставить инструкцию SQL, например, в ячейку свойства или в окно «Code» редактора Visual Basic.

  5. Нажмите клавиши CTRL+V.

Примечания

  • Запросы можно создавать и редактировать в режиме SQL, а не в режиме конструктора. Для этого переключитесь в режим SQL и введите или измените инструкцию SQL этого запроса. Если затем переключиться в режим конструктора, инструкция SQL будет представлена в бланке запроса.

  • Для большинства свойств запроса, доступных в окне свойств в режиме конструктора, имеются эквивалентные предложения или параметры языка SQL.

  • При создании с помощью мастера формы, отчета или страницы доступа к данным на основе нескольких таблиц, или при создании с помощью мастера списка или поля со списком, Microsoft Access автоматически создает инструкцию SQL, которая будет использоваться в качестве источника записей формы, отчета или страницы, либо в качестве источника строк списка или поля со списком. Если мастер не использовался, можно создать инструкцию SQL в ячейках свойств Источник записей (RecordSource) или Источник строк (RowSource), нажав кнопку построителя [image] рядом с соответствующей ячейкой и создав запрос в режиме конструктора запроса.

  • Некоторые типы запросов SQL нельзя создать в бланке запроса. Для таких запросов используется режим SQL. Для получения дополнительных сведений нажмите кнопку [image] .


 Просмотр и изменение инструкции SQL для существующего запроса

Просмотр и изменение инструкции SQL для существующего запроса

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

  1. Создайте запрос или откройте существующий.

  2. Щелкните стрелку рядом с кнопкой Вид [image] на панели инструментов и выберите вариант Режим SQL.

    Microsoft Access выводит эквивалентную инструкцию SQL для запроса, созданного в режиме конструктора.

  3. Если требуется, внесите изменения в инструкцию SQL.

  4. Для просмотра соответствующих изменений в режиме конструктора запроса щелкните стрелку рядом с кнопкой Вид на панели инструментов и выберите вариант Конструктор.


 Использование выражений в инструкциях SQL

Использование выражений в инструкциях SQL

Выражения вводят в инструкции SQL при редактировании запросов в режиме SQL, а также в значения некоторых свойств и аргументов. Например, с помощью инструкции SQL можно определить значение свойства Источник строк (RowSource) списка в форме или отчете для создания списка.

Ввод выражений в режиме SQL

Для ввода выражения в запрос в режиме SQL раскройте список кнопки Вид [image] на панели инструментов и выберите вариант Режим SQL. Microsoft Access отобразит инструкцию SQL, соответствующую активному запросу.

Допускается ввод выражений в инструкцию SELECT, а также в предложения WHERE, ORDER BY, GROUP BY или HAVING.

Для просмотра примеров выражений в инструкциях SQL нажмите кнопку [image] .

Ввод выражений SQL в значения свойств и аргументов

В качестве значений некоторых свойств и аргументов можно вводить инструкции SQL. Проще всего скопировать и вставить выражение из окна режима SQL. Например, выражения SQL можно использовать в качестве аргумента «Условие отбора» макрокоманд «ОткрытьФорму» (OpenForm) и «ПрименитьФильтр» (ApplyFilter), в качестве аргументов, определяющих подмножество или условия в статистических функциях по подмножеству, а также как значения свойств Источник записей (RecordSource) или Источник строк (RowSource) форм и отчетов.


 Изменение базового запроса или инструкции SQL в форме или отчете

Изменение базового запроса или инструкции SQL в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Дважды щелкните область выделения формы или область выделения отчета, чтобы открыть окно свойств.

  3. Нажмите кнопку построителя [image] рядом с ячейкой свойства Источник записей (RecordSource), чтобы открыть запрос. Инструкцию SQL можно изменить тем же способом, что и запрос — просто перетащите поля и задайте условия и порядок сортировки в бланке запроса.

Примечание. Если нужно просто изменить одну таблицу или запрос на другую, нажмите кнопку со стрелкой рядом с ячейкой свойства Источник записей (RecordSource) и выберите нужную таблицу или запрос из списка.


 Разрешение другим пользователям просматривать или выполнять запрос без изменения данных или его структуры

Разрешение другим пользователям просматривать или выполнять запрос без изменения данных или его структуры

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

  1. Откройте запрос в режиме конструктора.

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

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств запроса.

  4. Задайте для свойства При запуске предоставляются права (RunPermissions) значение Владельца.

    При установке этого значения выполняется следующее:

    • все пользователи запроса имеют права владельца на просмотр или выполнение запроса;

    • только владелец запроса имеет право сохранять изменения в запросе;

    • владельца запроса может сменить только сам владелец.

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


 Изменение прав по умолчанию для всех новых запросов

Изменение прав по умолчанию для всех новых запросов

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

  1. Выберите команду Параметры в меню Сервис.

  2. Перейдите к вкладке Таблицы/Запросы.

  3. Выберите требуемое значение параметра в группе При запуске предоставляются права.

    Если выбран параметр владельца, то:

    • все пользователи запроса имеют права владельца на просмотр или выполнение запроса;

    • только владелец запроса имеет право сохранять изменения в запросе;

    • владельца запроса может изменить только сам владелец.

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


 Установка значений свойств запроса, полей запроса или списков полей

Установка значений свойств запроса, полей запроса или списков полей

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

  1. Откройте запрос в режиме конструктора.

  2. Выберите поле, список полей или запрос.
    • Для того чтобы выбрать поле, щелкните соответствующую ячейку в строке Поле.

    • Для того чтобы выбрать список полей, щелкните любое место списка.

    • Для того чтобы выбрать весь запрос, щелкните любое место окна конструктора запроса вне бланка запроса и списка полей.
  3. Нажмите кнопку Свойства [image] на панели инструментов для вывода окна свойств выбранного объекта.

  4. В окне свойств выберите ячейку свойства и выполните одно из следующих действий.
    • Если в ячейке свойства появляется кнопка раскрытия списка, нажмите эту кнопку и выберите значение в списке.

    • Введите в ячейку свойства значение или выражение.

    • Если рядом с ячейкой свойства появляется кнопка построителя [image] , нажмите ее, чтобы вызвать построитель.

      Если требуется больше места для ввода или редактирования значения свойства, нажмите клавиши SHIFT+F2 для открытия окна Область ввода.

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


 Связь свойств полей запроса со свойствами полей в базовой таблице или запросе

Связь свойств полей запроса со свойствами полей в базовой таблице или запросе

Поле в запросе по умолчанию наследует все свойства, которые оно имеет в базовой таблице или запросе. Например, если в таблице свойство Формат поля (Format) поля «ДатаРазмещения» имеет значение Средний формат даты, то поле «ДатаРазмещения» в результирующем наборе записей запрос также имеет Средний формат даты. В окне свойств запроса выводятся только те свойства поля, которые может изменить пользователь.

Если изменяется свойство поля в режиме конструктора таблицы, то любой новый или существующий запрос автоматически наследует изменения, если это свойство ранее не было изменено в запросе в режиме конструктора. Значения свойств, заданные в режиме конструктора запроса, не изменяются в результате последующих изменений в режиме конструктора таблицы, а значения свойств таблицы не зависят от изменений, сделанных в режиме конструктора запроса.

Вычисляемые поля, в которых отображаются данные, не сохраняемые в таблице, не наследуют свойства таблицы. Например, если в запрос следует включить поле, в котором вычисляется значение типа «Денежный», то значения этого поля не будут отображаться в данном формате, пока свойство Формат поля (Format) этого поля не получит значение Денежный.

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


 Отображение или скрытие имен таблиц для каждого поля в бланке запроса

Отображение или скрытие имен таблиц для каждого поля в бланке запроса

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

  • В режиме конструктора запроса выберите команду Имена таблиц в меню Вид.

Чтобы отображать или не отображать по умолчанию имена таблиц, выберите в меню Сервис команду Параметры, откройте вкладку Таблицы и запросы и установите или сбросьте флажок Вывод имен таблиц.


Изменение значения по умолчанию свойства «Вывод всех полей» (OutputAllFields)

Изменение данного параметра распространяется только на новые запросы и не затронет уже существующие.

  1. В меню Сервис выберите команду Параметры.

  2. Откройте вкладку Таблицы и запросы и установите или снимите флажок Вывод всех полей.

Примечание. Этот параметр определяет, будут ли в результатах запроса автоматически выводиться все поля базовых таблиц или запросов (без добавления их в бланк запроса), или только те поля, которые были добавлены в бланк запроса.


 Открытие или закрытие списка полей для формы, отчета или страницы доступа к данным

Открытие или закрытие списка полей для формы, отчета или страницы доступа к данным

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Список полей [image] на панели инструментов.

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


 Вывод или скрытие сетки для формы, отчета и страницы доступа к данным

Вывод или скрытие сетки для формы, отчета и страницы доступа к данным

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. В меню Вид выберите команду Сетка.


Фиксация кнопки панели элементов

  • Дважды щелкните кнопку панели элементов, которую нужно зафиксировать.

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

Чтобы отменить фиксацию, нажмите клавишу ESC.


 Открытие и закрытие панели элементов

Открытие и закрытие панели элементов

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Панель элементов [image] на панели инструментов.


 Окна свойств: общие сведения

Окна свойств: общие сведения

В Microsoft Access свойства используются для определения характеристик таблиц, запросов, полей, форм, отчетов и страниц доступа к данным. Каждый раздел и элемент управления в форме, отчете или на странице доступа к данным также имеет свойства. Свойства элемента управления определяют структуру, внешний вид и поведение элемента, а также характеристики текста или данных, в нем содержащихся. Свойства устанавливаются в окне свойств. Например, на следующем рисунке отображено окно свойств для элемента управления «Итоги продаж». Здесь для свойства Формат (Format) задано значение Денежный.

Окно свойств поля «Итоги продаж»


 Варианты специальной вставки, доступные в формах и отчетах

Варианты специальной вставки, доступные в формах и отчетах

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

Пункт списка «Как» | Результат выбора
Имя приложения (например, «Лист Microsoft Excel») | Объект отображается в свободной рамке объекта. Выбор этого элемента списка обеспечивает возможность изменения объекта непосредственно в форме или отчете.
Рисунок или Точечный рисунок | Объект отображается в рамке рисунка. Выбор одного из этих элементов позволяет повысить быстродействие формы или отчета, однако делает невозможным редактирование объекта в форме или отчете.

Текст Скопированный текст (например, текст из ячейки Microsoft Excel) отображается в надписи, если объект внедрен, или в текстовом поле, если объект связан. При связывании поля таким способом Microsoft Access создает в поле связь DDE. При переходе в режим формы или предварительного просмотра на экране отображается связанный текст.


 Диаграммы в формах, отчетах и страницах доступа к данным

Диаграммы в формах, отчетах и страницах доступа к данным

Данный раздел содержит справочные сведения по следующим вопросам.

Для чего нужны диаграммы

Диаграммы в формах и отчетах

Диаграммы в страницах доступа к данным

Для чего нужны диаграммы

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

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

Возврат в начало

Диаграммы в формах и отчетах

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

В этом режиме доступны несколько типов диаграмм, включая двумерные (2-D) и трехмерные (3-D). Параметры форматирования позволяют включать в диаграммы текст и графику, изменять цвета и добавлять линии тренда и планки погрешностей.

См. сведения по созданию диаграмм в формах или отчетах.

Возврат в начало

Диаграммы в страницах доступа к данным

Для создания динамических интерактивных диаграмм в страницах доступа к данным, которые можно просматривать на Web-узлах с помощью обозревателя, используйте Web-компонент Microsoft Office — Microsoft Office Chart. Например, можно создать диаграмму на основании таблицы, хранящей данные о продажах. При изменении этих данных диаграмма будет обновляться; таким образом, посетители Web-страницы всегда будут получать самую свежую информацию.

Диаграммы в страницах доступа к данным могут использовать данные из таблиц или запросов, либо из электронных таблиц или сводных списков. Здесь можно использовать различные типы 2D-диаграмм, включая в них текст, изменяя цвета и применяя другие параметры форматирования, например, добавляя линии тренда и планки погрешностей.

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

Для создания диаграмм в странице требуется обозреватель Microsoft Internet Explorer версии 5 или более поздней, но пользователи Internet Explorer версии 4.x или более поздней могут просматривать диаграммы, обновляемые при изменении данных.

См. сведения по созданию диаграмм в страницах.

Возврат в начало


 Изменение диаграмм в формах или отчетах

Изменение диаграмм в формах или отчетах

При редактировании диаграммы существует два типа изменений: косметическое изменение и изменение данных.

Косметическое изменение подразумевает изменение размера диаграммы в форме или отчете, либо изменение при помощи Microsoft Graph таких параметров внешнего вида диаграммы как расположение составных частей, формат текста, цвета и узоры, масштаб осей.

Изменение данных подразумевает изменение базовой таблицы или другого источника записей, либо изменение запроса в свойстве Источник строк (RowSource).

При использовании мастера диаграмм для создания диаграммы, отображающей данные Microsoft Access, следует выбрать таблицу или другой источник записей, включающий поля, отображаемые в диаграмме. Эта базовая таблица или другой источник записей содержит данные, например, объем продаж или список клиентов. По завершении выбора параметров в мастере диаграмм Microsoft Access создает в свойстве Источник строк (RowSource) запрос, основанный на выбранной базовой таблице или другом источнике записей. Запрос, указанный в свойстве Источник строк (RowSource), отражает заданные в мастере диаграмм параметры отбора данных, такие как диапазон дат или заказы из определенного региона.

Например, если данные по объемам продаж в диаграмме неверны, то источником ошибки могут быть данные, содержащиеся в базовой таблице или в структуре базового источника записей. В этом случае следует исправить базовую таблицу или другой источник записей. Однако, если в диаграмму по ошибке не включено какое-либо поле, то следует или повторно создать диаграмму с помощью мастера, или отредактировать запрос, указанный в свойстве Источник строк (RowSource).

Дополнительные сведения

Изменение внешнего вида диаграммы

Изменение данных в базовой таблице или другом источнике записей

Настройка формата диаграммы


 Добавление новой диаграммы в форму или отчет

Добавление новой диаграммы в форму или отчет

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. В меню Вставка выберите команду Диаграмма.

    Совет. Если диаграммы приходится создавать часто, добавьте кнопку Диаграмма [image] на панель инструментов.

    Инструкции

  3. В форме или отчете укажите место, в которое необходимо поместить диаграмму.

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

    Примечание. Хотя бы одно из выбранных полей должно иметь числовой тип данных, например, «Денежный».

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

Примечания

  • В проекте Microsoft Access мастер диаграмм использовать нельзя; диаграмму в него можно добавить, вставив объект Диаграмма Microsoft Graph 2000 (меню Вставка, команда Объект).

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

  • Мастер диаграмм создает в ячейке свойства Источник строк (RowSource) запрос, который учитывает условия, заданные при заполнении диалоговых окон мастера диаграмм. Если диаграмма выглядит не так, как нужно, нажмите кнопку [image] .

  • Мастер диаграмм не позволяет создавать лепестковые, поверхностные и комбинационные диаграммы. Однако в Microsoft Graph можно изменить тип диаграммы, созданной в мастере диаграмм, на любой другой, в том числе и на любой из вышеупомянутых. См. сведения по использованию Microsoft Graph.


 Связывание существующей диаграммы в форме или отчете с определенной записью

Связывание существующей диаграммы в форме или отчете с определенной записью

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

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что нужная диаграмма выделена, и нажмите кнопку Свойства [image] .

  3. В ячейках свойств Подчиненные поля (LinkChildFields) и Основные поля (LinkMasterFields) введите имя поля, которое присутствует в ячейке свойства Источник строк (RowSource) и однозначно идентифицирует каждую запись, например, имя ключевого поля.

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

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


 Добавление существующей диаграммы в форму или отчет

Добавление существующей диаграммы в форму или отчет

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

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Нажмите кнопку Свободная рамка объекта [image] на панели элементов.

  3. В форме или отчете укажите место, в которое необходимо поместить диаграмму.

  4. В диалоговом окне Вставка объекта щелкните переключатель Создать из файла и укажите путь к файлу. Если путь неизвестен, нажмите кнопку Обзор.

  5. Если диаграмму нужно связать, а не внедрить, установите флажок Связь.

  6. Если требуется, чтобы диаграмма отображалась в виде значка, установите флажок В виде значка.


 Добавление кнопки построения диаграммы на панель инструментов в режиме конструктора формы или отчета

Добавление кнопки построения диаграммы на панель инструментов в режиме конструктора формы или отчета

Примечание. Кнопку Диаграмма можно добавлять только в базе данных Microsoft Access, но не в проекте Microsoft Access.

  1. Переключитесь в нужный режим и убедитесь, что панель инструментов, на которую нужно добавить кнопку Диаграмма, выведена на экран.

  2. Щелкните панель инструментов правой кнопкой мыши.

  3. Выберите команду Настройка.

  4. Выберите вкладку Команды.

  5. В списке Категории выберите Элементы управления.

  6. Перетащите из списка Команды кнопку Диаграмма [image] на выбранную панель инструментов.


 Изменение размера диаграммы в форме или отчете

Изменение размера диаграммы в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите диаграмму.

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

  4. Перетаскивайте маркер, пока объект не достигнет нужного размера, а затем отпустите кнопку мыши.


 Изменение внешнего вида диаграммы в форме или отчете

Изменение внешнего вида диаграммы в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Для открытия приложения Microsoft Graph дважды щелкните диаграмму.

  3. Внесите необходимые изменения.

    См. сведения о настройке диаграммы.

    Для получения дополнительных сведений об использовании приложения Microsoft Graph выберите команду Справка по Microsoft Graph в меню Справка.

  4. Завершив редактирование, в меню Файл приложения Microsoft Graph выберите команду Закрыть.

  5. Подтвердите обновление объекта, нажав кнопку Да.

Примечание. Несмотря на то, что допускается изменение данных, по которым строится диаграмма, путем редактирования таблицы в Microsoft Graph, Microsoft Access будет игнорировать эти изменения данных, а также некоторые изменения в форматировании. Чтобы действительно изменить данные, которые выводятся в диаграмме, следует изменить базовую таблицу или другой источник записей, либо запрос, указанный в свойстве ИсточникСтрок (RowSource). Для получения дополнительных сведений об изменении этого запроса нажмите кнопку [image] .


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

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

Чтобы изменить данные в базовой таблице

  • Откройте базовую таблицу в режиме таблицы и внесите в данные необходимые изменения.

Чтобы изменить данные в базовом источнике записей

  • Откройте базовый источник записей в режиме конструктора и внесите в данные необходимые изменения.

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

Если изменение данных в базовой таблице или другом источнике записей не привело ни к каким результатам, попробуйте изменить запрос в ячейке свойства Источник строк (RowSource). Для получения дополнительных сведений об изменении запроса в свойстве «Источник строк» нажмите кнопку [image] .


 Преобразование диаграммы в рисунок в форме или отчете для экономии места на диске

Преобразование диаграммы в рисунок в форме или отчете для экономии места на диске

Если диаграмма не связана с записью, то для экономии пространства на диске ее можно преобразовать в рисунок. Диаграмму, преобразованную в рисунок, невозможно изменить.

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите диаграмму.

  3. Выберите в меню Формат команду Преобразовать элемент в и подкоманду Изображение.


 Графические фильтры и форматы файлов, используемые Microsoft Access

Графические фильтры и форматы файлов, используемые Microsoft Access

Рисунки многих популярных графических форматов можно вставлять в форму, отчет или на страницу доступа к данным непосредственно или с использованием отдельных графических фильтров при помощи команды Рисунок из меню Вставка. Для вставки в формы и отчеты рисунков формата Enhanced Metafile (.emf), точечных рисунков Windows (.bmp, .rle, .dib), метафайлов Windows (.wmf) и значков (.ico) не обязательно устанавливать отдельный графический фильтр. Однако такие фильтры необходимы для вставки файлов всех остальных графических форматов, перечисленных ниже.

Форматы файлов, требующие отдельного графического фильтра
Computer Graphics Metafile (.cgm) | Kodak Photo CD (.pcd)
CorelDRAW (.cdr) | Macintosh PICT (.pct)
Encapsulated PostScript (.eps) | PC Paintbrush (.pcx)
FlashPix (.fpx) | Portable Network Graphics (.png)
Graphic Interchange Format (.gif) | Tagged Image File Format (.tif)
Hanako (.jsh, .jah, .jbh) | WordPerfect Graphics (.wpg)
JPEG File Interchange Format (.jpg) | X-Bitmap (.xbm)

При работе со страницами не требуется устанавливать отдельный графический фильтр для вставки точечных рисунков Windows (.bmp, .rle, .dib). Однако необходимы графические фильтры для вставки рисунков в форматах Graphic Interchange Format (.gif), JPEG File Interchange Format (.jpg), Portable Network Graphics (.png) и X-Bitmap (.xbm).

Перечисленные выше графические фильтры не прилагаются к версии Microsoft Access 2000, устанавливаемой независимо от Office. Для их установки необходимо иметь профессиональный выпуск Microsoft Office 2000 или независимо установленные приложения Microsoft Word 2000 и Access 2000.

Примечание. Дополнительные сведения о каждом отдельном графическом фильтре см. в документации по Word.


Формы: что это такое и как они работают

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


Создание формы

Предполагаемые действия

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

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

Создание формы без помощи мастера

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


Способы настройки формы

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


Добавление рисунка или другого объекта в форму, отчет или на страницу доступа к данным

Предполагаемые действия

Добавление свободного рисунка в форму, отчет или на страницу доступа к данным

Добавление свободного объекта (например, документа Microsoft Excel или Microsoft Word) в форму или отчет

Добавление свободного рисунка или объекта (например, документа Microsoft Excel или Microsoft Word) в форму или отчет

Добавление свободного рисунка на страницу доступа к данным

Не можете сделать выбор?


 Создание формы или отчета на основе записей, отобранных с помощью фильтра

Создание формы или отчета на основе записей, отобранных с помощью фильтра

  1. Выведите на экран записи, отобранные с помощью фильтра, и нажмите кнопку раскрытия списка, расположенную рядом с кнопкой Новый объект на панели инструментов.
    • Для автоматического создания стандартной формы или отчета с помощью мастера выберите команду Автоформа или Автоотчет.

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

      Источником записей для нового объекта служит таблица или запрос, в которых был создан фильтр. Объект наследует этот фильтр.

  2. Завершите разработку макета или внесите другие необходимые изменения в форму или отчет, а затем сохраните их.

Примечания

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

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


 Открытие формы

Открытие формы

  1. В окне базы данных щелкните значок Формы [image] в списке Объекты.

  2. Выберите форму, которую требуется открыть.

  3. Нажмите кнопку Открыть для открытия формы в режиме формы или кнопку Конструктор для открытия формы в режиме конструктора.

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

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


 Переключение между режимами отображения формы

Переключение между режимами отображения формы

  • Нажмите кнопку Вид на панели инструментов. Для переключения в режим, обозначенный рисунком, нажмите саму кнопку. Для просмотра списка всех доступных режимов щелкните стрелку рядом с этой кнопкой .

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


Режимы отображения формы

Формы могут быть выведены на экран в трех видах: режим конструктора, режим формы и режим таблицы.

Создание формы осуществляется в режиме конструктора.

Форма в режиме конструктора

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

Форма в режиме формы и в режиме таблицы


 Выделение формы или отчета

Выделение формы или отчета

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Щелкните область выделения формы или область выделения отчета.

    Область выделения формы или область выделения отчета

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


 Выделение раздела в форме или отчете

Выделение раздела в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Щелкните область выделения раздела или любое место в строке заголовка раздела.

    Область выделения раздела и строка заголовка раздела

    Для выделения раздела также можно щелкнуть любое место фона раздела.


 Изменение шага сетки в форме или отчете

Изменение шага сетки в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Дважды щелкните область выделения формы или область выделения отчета, чтобы открыть окно свойств.

  3. Для изменения шага сетки по горизонтали введите новое значение свойства Число делений по X (GridX). Для изменения шага сетки по вертикали введите новое значение свойства Число делений по Y (GridY). Чем больше делений, тем меньше расстояние между ними, т. е. шаг сетки.

Примечание. По умолчанию устанавливается 10 делений на сантиметр по горизонтали и по вертикали. При использовании в качестве единиц измерения дюймов по умолчанию устанавливается 24 деления на дюйм по горизонтали и по вертикали. Допустимыми являются любые целые числа в диапазоне от 1 до 64. Точки сетки становятся невидимыми, если количество делений превышает 24 на дюйм или 9 на сантиметр.


 Задание свойств формы, отчета, раздела или элемента управления

Задание свойств формы, отчета, раздела или элемента управления

  1. Откройте форму в режиме конструктора форм или отчет в режиме конструктора отчетов. Если свойство Разрешить изменения макета (AllowDesignChanges) формы имеет значение Все режимы, то можно также задать значения свойств в режиме формы и режиме таблицы.

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

    • Для того чтобы задать значения свойств для раздела формы или отчета, дважды щелкните область выделения раздела для открытия окна свойств раздела.

    • Для того чтобы задать значения свойств для элемента управления, убедитесь, что он выделен, и нажмите кнопку Свойства [image] на панели инструментов. Также для открытия окна свойств можно дважды щелкнуть нужный элемент управления.
  3. В окне свойств выберите ячейку свойства и выполните одно из следующих действий.
    • Если в ячейке свойства есть кнопка со стрелкой, нажмите ее и выберите значение из списка.

    • Введите в ячейку свойства значение или выражение.

    • Если рядом с ячейкой свойства есть кнопка построителя [image] , нажмите ее для вывода построителя или диалогового окна со списком построителей. Например, построитель запросов используется для изменения макета базового запроса для формы или отчета.
  4. Если размер ячейки свойства не достаточен для задания или изменения значения свойства, нажмите клавиши SHIFT+F2 (или щелкните правой кнопкой и выберите команду Масштаб), чтобы открыть окно Область ввода.

Если окно свойств пусто, или в нем не отображаются нужные свойства, нажмите кнопку [image] .

Совет. Для получения справки по каждому из свойств в окне выберите нужное свойство и нажмите клавишу F1.


 Задание размера, который должна иметь форма при ее открытии

Задание размера, который должна иметь форма при ее открытии

  1. Откройте форму в режиме формы.

  2. Задайте нужный размер формы, перетащив ее границы в режиме формы.

  3. Нажмите кнопку Сохранить [image] на панели инструментов.

Примечание. Если для свойства Автоматический размер (AutoResize) задано значение Да, размер формы автоматически устанавливается так, чтобы записи полностью отображались на экране. Для задания собственного размера формы убедитесь, что для свойства Автоматический размер (AutoResize) задано значение Нет.


 Возврат к ранее сохраненной версии формы или отчета

Возврат к ранее сохраненной версии формы или отчета

Существует возможность отменить все изменения — включая изменения в программах Microsoft Visual Basic — сделанные в режиме конструктора формы или отчета, и вернуться к последней сохраненной версии формы или отчета.

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

Для возврата к последней сохраненной версии выполните следующие действия.

  • Выполните команду Вернуть из меню Файл.

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


 Предварительный просмотр формы

Предварительный просмотр формы

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

  1. Нажмите кнопку Предварительный просмотр [image] на панели инструментов.

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

Предварительный просмотр формы из окна базы данных

  1. Щелкните значок Формы [image] в списке Объекты.

  2. Выберите форму для предварительного просмотра.

  3. Нажмите кнопку Предварительный просмотр [image] на панели инструментов.

Изображение формы в режиме предварительного просмотра зависит от того, из какого режима выполняется просмотр.

Исходный | Отображение формы при просмотре
Режим конструктора | Режим формы
Режим формы | Режим формы
Режим таблицы | Режим таблицы
Окно базы данных | Режим, установленный свойством формы Режим по умолчанию (DefaultView)

Для получения сведений о просмотре формы в различных масштабах нажмите кнопку [image] .

Для получения сведений о просмотре двух и более страниц формы одновременно нажмите кнопку [image] .


Печать формы

Предполагаемые действия

Установка ориентации и других параметров страницы

Печать формы в режиме конструктора, формы или таблицы

Печать формы из окна базы данных

Печать выделенных записей в форме или таблице

Печать текущей записи

Печать формы с помощью ярлыка


 Печать выделенных записей в форме или таблице

Печать выделенных записей в форме или таблице

  1. Откройте форму в режиме формы или отчет в режиме таблицы.

  2. Выберите запись, которую требуется напечатать, щелкнув область выделения записи или нажав клавиши SHIFT+ПРОБЕЛ (в режиме редактирования перед тем как нажать клавиши SHIFT+ПРОБЕЛ, нажмите клавишу F2). Чтобы выбрать несколько записей, щелкните область выделения первой записи и, не отпуская кнопку мыши, перетащите указатель на последнюю запись, которую требуется распечатать.

  3. Выберите в меню Файл команду Печать.

  4. В диалоговом окне Печать в группе Печатать выберите параметр Выделенные записи.


 Разрешение изменения свойств формы в режимах формы и таблицы

Разрешение изменения свойств формы в режимах формы и таблицы

  1. Откройте форму в режиме конструктора.

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

  3. Установите свойство Разрешить изменения макета (Allow Design Changes) в значение Все режимы.

Если свойство Разрешить изменения макета (Allow Design Changes) имеет значение Все режимы, то свойства формы и ее элементов управления можно изменять в режиме формы и режиме таблицы.


 Открытие формы только для ввода данных

Открытие формы только для ввода данных

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Ввод данных (DataEntry) выберите значение Да, если требуется, чтобы форма открывалась для ввода данных (с пустой записью); если требуется, чтобы форма открывалась с отображением всех записей, выберите значение Нет.


 Задание режима открытия формы (одна запись, несколько записей или таблица)

Задание режима открытия формы (одна запись, несколько записей или таблица)

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Режим по умолчанию (DefaultView) установите одно из следующих значений.
    Значение | Описание
    Простая форма | Отображает одну полную запись за один сеанс. (Только в режиме формы)
    Ленточная форма | Отображает столько полных записей, сколько помещается в области данных формы. (Только в режиме формы)
    Таблица | Отображает только записи, распределенные в виде строк и столбцов. Записи могут уходить за экран.

Примечание. Для выключения режима формы или режима таблицы установите свойство Допустимые режимы (ViewsAllowed).


Разделы формы

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Добавление и удаление заголовка, примечания и колонтитулов формы

Добавление и удаление заголовка, примечания и колонтитулов формы

  1. Откройте форму в режиме конструктора.

  2. В меню Вид выберите команду Заголовок/Примечание формы или Колонтитулы.

Примечания

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

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

  • Верхний и нижний колонтитулы, а также заголовок и примечание формы, можно добавлять только парами. Если какой-либо из этих разделов не нужен, можно изменить его размер до нулевой высоты, либо (только для заголовков и примечаний) установить его свойство Вывод на экран (Visible) в значение Нет. С помощью свойства Режим вывода (DisplayWhen) можно выбрать режим вывода заголовков и примечаний: всегда, только при печати или только на экран.
Пример использования в формах разделов различных типов


 Скрытие линий границ между разделами в форме

Скрытие линий границ между разделами в форме

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Разделительные линии (DividingLines) выберите значение Нет.


 Подстройка размера формы под размер ее содержимого

Подстройка размера формы под размер ее содержимого

  1. Откройте форму в режиме формы.

  2. Выберите команду По размеру формы в меню Окно.

    Примечание. Если окно формы развернуто, команда По размеру формы будет недоступна.

  3. Чтобы сохранить размер формы, нажмите кнопку Сохранить [image] на панели инструментов.

При выборе команды По размеру формы Microsoft Access устанавливает размеры формы в зависимости от того, какое значение задано для свойства формы Режим по умолчанию (DefaultView): Простая форма или Ленточная форма.

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

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


 Выравнивание формы по центру в окне приложения при первом открытии

Выравнивание формы по центру в окне приложения при первом открытии

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. Задайте для свойства Выравнивание по центру (AutoCenter) значение Да.

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


Изменение единицы измерения линейки в форме или отчете

  1. Нажмите кнопку Пуск и выберите команду Настройка и подкоманду Панель управления.

  2. Дважды щелкните значок «Язык и стандарты».

  3. Выберите вкладку Числа.

  4. В поле со списком Система единиц выберите Метрическая или U.S..


 Изменение последовательности перехода в форме

Изменение последовательности перехода в форме

  1. Откройте форму в режиме конструктора.

  2. В меню Вид выберите команду Последовательность перехода.

  3. В группе Раздел выберите раздел, который нужно изменить.

  4. Выполните одно из следующих действий.
    • Чтобы задать последовательность перехода слева направо и сверху вниз, нажмите кнопку Авто.

    • Для создания другой последовательности перехода щелкните в списке область выделения элемента управления, порядок которого необходимо изменить. (Несколько элементов управления можно выделить одновременно, перемещая указатель при нажатой кнопке мыши.) Снова щелкните область выделения и переместите элемент управления в нужную позицию в списке.
  5. Нажмите кнопку OK.

  6. Для проверки последовательности перехода переключитесь в режим формы.. (В режиме конструктора порядок перехода всегда соответствует порядку, в котором добавлялись элементы управления.)

Примечания

  • Если нужно разрешить выбор элемента управления в форме, но исключить его из последовательности перехода, установите его свойство Переход по Tab (TabStop) в значение Нет.

  • Можно также указать, какой записи или странице будет передан фокус при нажатии клавиши TAB в последнем поле текущей записи.

    Инструкции


 Определение порядка перехода для последнего поля формы

Определение порядка перехода для последнего поля формы

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Цикл табуляции (Cycle) установите одно из следующих значений.
    Значение | Описание
    Все записи | При нажатии клавиши TAB в последнем поле записи фокус перемещается в первое поле следующей записи.
    Текущая запись | При нажатии клавиши TAB в последнем поле записи фокус перемещается назад в первое поле в текущей записи.
    Текущая страница | При нажатии клавиши TAB в последнем поле страницы формы фокус перемещается назад в первое поле текущей страницы.


 Удаление контекстного меню формы

Удаление контекстного меню формы

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Контекстные меню (ShortcutMenu) выберите Нет.


 Удаление области выделения записей в форме

Удаление области выделения записей в форме

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Область выделения (RecordSelectors) выберите значение Нет.


 Удаление кнопок перехода по записям в форме

Удаление кнопок перехода по записям в форме

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Поле номера записи (NavigationButtons) выберите значение Нет.


 Отключение кнопки закрытия формы

Отключение кнопки закрытия формы

  1. В режиме конструктора формы дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  2. В ячейке свойства Кнопка закрытия (CloseButton) установите значение Нет.

Примечания

  • Если свойство Кнопка закрытия (CloseButton) имеет значение Нет, Microsoft Access отключает кнопку Закрыть [image] и команду Закрыть оконного меню.

  • Чтобы совсем удалить кнопку Закрыть, можно воспользоваться свойством Тип границы (BorderStyle). Для получения дополнительных сведений нажмите кнопку [image] .


 Добавление и удаление полос прокрутки формы или текстового поля

Добавление и удаление полос прокрутки формы или текстового поля

  1. Откройте форму в режиме конструктора.

  2. Откройте для данного текстового поля или формы окно свойств. Для этого выделите поле или форму и на панели инструментов нажмите кнопку Свойства [image] . Чтобы открыть окно свойств формы, дважды щелкните область выделения формы.

  3. В ячейке свойства Полосы прокрутки (ScrollBars) установите нужное значение.


 Скрытие разделительных линий между записями в ленточной форме

Скрытие разделительных линий между записями в ленточной форме

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Разделительные линии (DividingLines) выберите значение Нет.


 Удаление кнопки оконного меню формы

Удаление кнопки оконного меню формы

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Кнопка оконного меню (ControlBox) выберите значение Нет.

Примечания

  • Если для свойства формы Тип границы (BorderStyle) задано значение Отсутствует, форма выводится без оконного меню, даже если для свойства Кнопка оконного меню (ControlBox) задано значение Да.

  • Если свойство Кнопка оконного меню (ControlBox) имеет значение Нет, кнопки Свернуть, Развернуть и Закрыть также не отображаются.


 Удаление кнопок развертывания и свертывания формы

Удаление кнопок развертывания и свертывания формы

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Кнопки размеров окна (MinMaxButtons) выберите требуемое значение.

Примечание. Если свойство Тип границы (BorderStyle) формы имеет значение Отсутствует или Окна диалога, форма выводится без кнопок Свернуть и Развернуть, даже если свойство Кнопки размеров окна (MinMaxButtons) имеет значение Свертывания, Развертывания или Все.


 Временное открытие любой формы как диалогового окна

Временное открытие любой формы как диалогового окна

  1. Создайте макрос или процедуру обработки события, использующие для открытия формы макрокоманду «ОткрытьФорму» (OpenForm).

  2. Задайте для аргумента «Режим окна» макрокоманды «ОткрытьФорму» (OpenForm) значение «Окно диалога» (константу acDIALOG в процедуре обработки события).

    При открытии формы, аргумент которой «Режим окна» имеет значение «Окно диалога», Microsoft Access задает для свойств формы Всплывающее окно (PopUp) и Модальное окно (Modal) значение Да до тех пор, пока форма не будет закрыта. При этом также отключаются определенные пользователем сочетания клавиш и некоторые другие функциональные клавиши Microsoft Access, а также до закрытия или скрытия формы приостанавливается выполнение макроса или процедуры обработки события. Для скрытия формы следует задать свойству формы Вывод на экран (Visible) значение Нет с помощью макрокоманды «ЗадатьЗначение» (SetValue).


Работа с группами элементов управления в форме или отчете

Предполагаемые действия

Группировка полей или других элементов управления

Разгруппирование полей или других элементов управления

Изменение размеров текстового поля или другого элемента управления в группе

Перемещение текстового поля или другого элемента управления в группе

Выделение одного элемента управления, входящего в группу

Добавление текстового поля или другого элемента управления в существующую группу

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

Удаление текстового поля или другого элемента управления, расположенного в группе


Условное форматирование текстового поля и других элементов управления в форме или отчете

Предполагаемые действия

Изменение в форме цвета элемента управления, получающего фокус

Изменение формата значения, отвечающего определенному условию, в элементе управления

Изменение, добавление или удаление условного форматирования элемента управления

Не уверены в выборе?


 Копирование параметров условного форматирования текстового поля или другого элемента управления в форме или отчете

Копирование параметров условного форматирования текстового поля или другого элемента управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите элемент управления, имеющий параметры условного форматирования, которые нужно скопировать.

  3. Нажмите кнопку Формат по образцу [image] на панели инструментов.

  4. Щелкните элемент управления, в который нужно скопировать параметры условного форматирования.


 Подчиненные формы: что это такое и как они работают

Подчиненные формы: что это такое и как они работают

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

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

Главная форма с подчиненной формой

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

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

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

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

Дополнительные сведения

Примеры различных типов подчиненных форм

Создание одной или нескольких подчиненных форм


 Типы подчиненных форм

Типы подчиненных форм

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

Подчиненная форма в режиме таблицы

Подчиненная форма, отображенная в виде ленточной формы

Подчиненная форма, отображенная в виде ленточной формы, выглядящей, как таблица

Дополнительные сведения

Подчиненные формы: что это такое и как они работают

Создание одной или нескольких подчиненных форм

Настройка представления ленточной подчиненной формы в виде таблицы, имеющей заголовок и примечание


 Изменение макета подчиненной формы

Изменение макета подчиненной формы

Способ изменения макета подчиненной формы зависит от того, как отображается форма: в режиме таблицы или в режиме формы как простая или ленточная форма.

Предполагаемые действия

Изменение макета подчиненной формы, отображаемой в режиме таблицы

Изменение макета подчиненной формы, отображаемой в виде простой или ленточной формы

Изменение режима отображения подчиненной формы


 Связь главной и подчиненной форм в Microsoft Access

Связь главной и подчиненной форм в Microsoft Access

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

При создании формы и подчиненной формы, основанных на таблицах, связанных отношением «один-ко-многим», главная форма представляет сторону «один» отношения, а подчиненная форма представляет сторону «многие». Главная форма синхронизируется с подчиненной формой таким образом, что в подчиненной форме выводятся только записи, связанные с записью в главной форме. Если подчиненная форма создается с помощью мастера или путем перетаскивания формы, таблицы или запроса из окна базы данных в другую форму, Microsoft Access автоматически синхронизирует главную форму с подчиненной формой при соблюдении двух следующих условий.

  • Определены отношения для выбранных таблиц или для базовых таблиц выбранных запросов.

  • Главная форма основана на таблице с первичным ключом, а подчиненная форма основана на таблице, содержащей поле с таким же именем, как и у этого первичного ключа, и с таким же или совместимым типом данных. Например, если первичный ключ базовой таблицы главной формы имеет тип данных «Счетчик», а его свойство Размер поля (FieldSize) имеет значение Длинное целое, то соответствующее поле в базовой таблице подчиненной формы должно иметь тип данных «Числовой» со свойством Размер поля (FieldSize), имеющим значение Длинное целое. При выборе запроса или запросов базовые таблицы этих запросов должны соответствовать тем же условиям.

Примечание. Для связывания главной и подчиненной форм Microsoft Access использует свойства подчиненной формы Основные поля (LinkMasterFields) и Подчиненные поля (LinkChildFields). Если по каким-либо причинам Microsoft Access не связывает форму и подчиненную форму, пользователь может связать формы самостоятельно.


 Связывание главной формы и подчиненной формы

Связывание главной формы и подчиненной формы

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

  1. Откройте главную форму в режиме конструктора формы.

  2. Убедитесь, что элемент управления подчиненной формы выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств элемента управления подчиненной формы.

  3. Введите связываемые поля или элементы управления в ячейки свойств Подчиненные поля (LinkChildFields) и Основные поля (LinkMasterFields). Чтобы ввести несколько связываемых полей или элементов управления, разделите их имена точкой с запятой. Если указываются несколько полей или элементов управления, их имена должны вводиться в обоих свойствах в одинаковом порядке.
    • В ячейке свойства Подчиненные поля (LinkChildFields) введите имена всех связываемых полей подчиненной формы. (В этом свойстве нельзя указывать имя элемента управления.)

    • В ячейку свойства Основные поля (LinkMasterFields) введите имена всех связываемых полей или элементов управления основной формы.

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

  4. Переключитесь в режим формы, чтобы проверить действие связи.

Примечания

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

  • Связываемые поля должны содержать данные одного вида и иметь тот же или совместимый тип данных или размер поля. Например, поля типа «Счетчик», свойство Размер поля (FieldSize) которых установлено в значение Длинное целое, совместимы с полями типа «Числовой» со свойством Размер поля (FieldSize), имеющим значение Длинное целое.

  • Убедитесь, что в ячейке свойства Подчиненные поля (LinkChildFields) введено имя поля (заданное в свойстве Данные (ControlSource)), а не имя элемента управления (заданное в свойстве Имя (Name)). В ячейке свойства Основные поля (LinkMasterFields) может быть указано как имя поля, так и имя элемента управления.

  • Для получения сведений об устранении неполадок с подчиненными формами нажмите кнопку [image] .


 Определение режима отображения подчиненной формы

Определение режима отображения подчиненной формы

При создании подчиненной формы с помощью мастера форм или мастера подчиненных форм, Microsoft Access устанавливает значение свойства Режим по умолчанию (DefaultView) подчиненной формы в соответствии с тем, что выбрал пользователь в диалоговых окнах мастера. Следующие действия могут быть полезными при создании подчиненной формы без помощи мастера, или для изменения режима, выбранного в мастере.

  1. Откройте главную форму в режиме конструктора. Подчиненная форма будет выведена в режиме конструктора в элементе управления «подчиненная форма».

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

  3. Дважды щелкните область выделения формы, чтобы открыть окно свойств подчиненной формы.

  4. В ячейке свойства Режим по умолчанию (DefaultView) выберите один из режимов: Простая форма, Ленточная форма или Таблица.

  5. В ячейке свойства Допустимые режимы (ViewsAllowed) выберите Форма, если переключение в режим таблицы не нужно. Выберите значение Таблица, если не нужно переключаться в режим формы. Если требуется сохранить возможность переключения между режимами таблицы и формы, выберите значение Все.

Примечания

  • Для просмотра примеров подчиненных форм различных типов нажмите кнопку [image] .

  • Также можно изменить режим по умолчанию для подчиненной формы, открыв ее напрямую из окна базы данных.


 Переходы между главной формой и подчиненной формой в режиме формы

Переходы между главной формой и подчиненной формой в режиме формы

Использование клавиши TAB

  • Для перехода из последнего поля в главной форме в первое поле в подчиненной форме нажмите клавишу TAB.

  • Для перехода из первого поля в подчиненной форме в последнее поле в главной форме нажмите клавиши CTRL+SHIFT+TAB.

  • Для перехода из последнего поля подчиненной формы в следующее поле главной формы или в первое поле следующей записи или следующей страницы главной формы нажмите клавиши CTRL+TAB. Если свойство Цикл табуляции (Cycle) формы имеет значение Текущая запись или Текущая страница, для перехода к следующей записи необходимо пользоваться кнопками перехода или другими предусмотренными в форме способами перехода к следующей записи.

Использование мыши

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

  • Для того чтобы переключиться из подчиненной формы в главную форму, щелкните элемент управления в главной форме (но не фоновую область главной формы).


 Переключение между режимом таблицы и режимом формы в подчиненной форме

Переключение между режимом таблицы и режимом формы в подчиненной форме

  1. Откройте главную форму в режиме формы.

  2. Выберите произвольное место в подчиненной форме.

  3. В меню Вид выберите команду Таблица подчиненной формы.

Примечание. Для переключения режимов свойство Допустимые режимы (ViewsAllowed) подчиненной формы должно иметь значение Все.


 Настройка представления подчиненной формы в виде таблицы, имеющей заголовок и примечание

Настройка представления подчиненной формы в виде таблицы, имеющей заголовок и примечание

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

  1. Откройте форму, которая будет использоваться в качестве подчиненной, в режиме конструктора.

  2. Добавьте заголовок и примечание формы, если это еще не сделано. (Для этого в меню Вид выберите команду Заголовок/примечание формы.)

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

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

  5. Если для записей подчиненной формы должны вычисляться итоговые значения, создайте в примечании формы вычисляемые элементы управления.

  6. Задайте размеры каждой области. Например, задайте размеры области данных равными размерам одной строки таблицы. Если в примечании нет ни одного элемента управления, установите его свойство Высота (Height) в значение 0 или свойство Вывод на экран (Visible) в значение Нет.

  7. Дважды щелкните область выделения формы, чтобы открыть окно свойств формы.

  8. В ячейке свойства Режим по умолчанию (DefaultView) выберите значение Ленточная форма. В этом случае записи будут выводиться в форме последовательно, подобно таблице.

Примечания

  • Если свойство Режим по умолчанию (DefaultView) установлено в значение Таблица (Datasheet), Microsoft Access скрывает заголовок и примечание при открытии формы в режиме формы.

  • Форма «Квартальные обороты» в учебной базе данных «Борей» содержит ленточную подчиненную форму, имеющую заголовок и примечание и выглядящую как таблица. Чтобы просмотреть эту форму, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте форму «Квартальные обороты» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Создание вычисляемого элемента управления в форме или отчете

Создание вычисляемого элемента управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Нажмите на панели элементов кнопку, соответствующую типу элемента управления, который нужно использовать в качестве вычисляемого элемента управления.

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

  3. В форме или отчете выберите место, в которое следует поместить элемент управления.

  4. Выполните одно из следующих действий.
    • Если используется поле, то можно ввести выражение непосредственно в него.

    Выражение в текстовом поле

    • Для любого допустимого элемента управления, убедитесь, что он выбран, нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств элемента управления, и введите выражение в ячейку свойства Данные (ControlSource). Чтобы использовать построитель выражений для создания выражения в базе данных Microsoft Access (.mdb), нажмите кнопку построителя [image] рядом с ячейкой свойства Данные (ControlSource).

Примечания

  • В вычисляемом элементе управления перед каждым выражением помещайте знак равенства (=).

  • Если при вводе выражения в ячейку Данные (ControlSource) потребуется больше места, нажмите сочетание клавиш SHIFT+F2 для открытия окна Область ввода.

  • Для получения дополнительных сведений о создании выражений в базе данных Microsoft Access (.mdb) нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании выражений в проекте Microsoft Access (.adp) нажмите кнопку [image] .

  • Если форма основана на запросе, можно поместить выражение в запрос, а не в вычисляемый элемент управления. Для получения сведений о создании вычисляемого поля в запросе в базе данных Microsoft Access (.mdb) нажмите кнопку [image] . Для получения сведений о создании вычисляемого поля в запросе в проекте Microsoft Access (.adp) нажмите кнопку [image] .


 Вычисление итогового значения для одной записи и вывод его в форме

Вычисление итогового значения для одной записи и вывод его в форме

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Поле Поле на панели элементов.

  3. Выберите в области данных формы место, в которое следует поместить поле.

  4. Выполните одно из следующих действий.
    • Поместите курсор в поле и введите выражение, вычисляющее значение. Для просмотра примеров выражений, которые можно использовать для вычисления значений для одной записи, нажмите кнопку [image] .

    • Убедитесь, что нужное поле выбрано, нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств, и введите выражение в ячейку свойства Данные (ControlSource). В базе данных Microsoft Access (.mdb) для того чтобы использовать построитель выражений при создании выражения, нажмите кнопку построителя [image] рядом с ячейкой свойства Данные (ControlSource).

Примечания

  • Если при вводе выражения в ячейку Данные (ControlSource) потребуется больше места, нажмите сочетание клавиш SHIFT+F2 для открытия окна Область ввода.

  • Для получения дополнительных сведений о создании выражений в базе данных Microsoft Access (.mdb) нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании выражений в проекте Microsoft Access (.adp) нажмите кнопку [image] .

  • Если форма основана на запросе, можно поместить выражение в запрос, а не в вычисляемый элемент управления. Для получения сведений о создании вычисляемого поля в запросе в базе данных Microsoft Access (.mdb), нажмите кнопку [image] . Для получения сведений о создании вычисляемого поля в запросе в проекте Microsoft Access (.adp), нажмите кнопку [image] .


 Вычисление итогового значения для подчиненной формы и вывод его в форме

Вычисление итогового значения для подчиненной формы и вывод его в форме

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

Главная и подчиненная формы в режиме формы

Для расчета промежуточной стоимости заказа следует добавить текстовое поле в область примечаний подчиненной формы и ввести в ячейку свойства Данные (ControlSource) выражение, содержащее функцию Sum. Например, следующее выражение вычисляет общую стоимость заказов для всех товаров в форме «Заказы»:

=Sum([Количество]*[Цена])

Вычисляемый элемент управления в примечании подчиненной формы в режиме конструктора

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

Выражение в главной форме, ссылающееся на вычисляемый элемент управления в подчиненной форме

Примечания

  • При вычислении общего значения нельзя использовать в аргументе функции Sum имя вычисляемого элемента управления. Например, даже при наличии элемента управления, вычисляющего общую стоимость товара (количество * цена_за_единицу), придется использовать в выражении полный синтаксис =Sum([Количество]*[Цена]). Поэтому при использовании выражения, содержащего статистическую функцию (например, Sum), лучше определить выражение в базовом запросе или инструкции SQL формы. При этом можно будет использовать имя вычисляемого поля в функции Sum. Например, можно определить в базовом запросе вычисляемое поле ОбщаяСтоимость: [Количество]*[Цена] и использовать имя поля в выражении, вычисляющем сумму: =Sum([ОбщаяСтоимость]). Для получения сведений о создании вычисляемого поля в запросе в базе данных Microsoft Access (.mdb) нажмите кнопку [image] . Для получения сведений о создании вычисляемого поля в запросе в проекте Microsoft Access (.adp), нажмите кнопку [image] .

  • Форма «Заказы» в учебной базе данных «Борей» содержит пример подчиненной формы, которая вычисляет промежуточную сумму, выводимую в главной форме. Для просмотра этой формы откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, а затем откройте форму «Заказы» в режиме конструктора. Для получения сведений об открытии базы данных «Борей» нажмите кнопку [image] .


Проверка условий на значения и ограничение ввода данных в формах

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

Предполагаемые действия

Создание маски ввода для элемента управления

Отключение и блокировка элемента управления

Создание условия на значение для элемента управления

Общие сведения о порядке, в котором применяются различные условия на значение

Общие сведения о сложных условиях на значения, задаваемых с помощью макросов или процедур обработки событий


 Запрет на открытие формы в режиме формы или в режиме таблицы

Запрет на открытие формы в режиме формы или в режиме таблицы

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Допустимые режимы (ViewsAllowed) выберите значение Форма, чтобы отключить режим таблицы, или значение Таблица, чтобы запретить режим формы.

Примечание. Это свойство можно использовать вместе со свойством Режим по умолчанию (DefaultView), чтобы указать режим открытия формы и определить для пользователей возможность переключаться в другие режимы. Для просмотра результатов использования различных комбинаций этих свойств нажмите кнопку [image] .


 Установка для формы атрибута «только для чтения»

Установка для формы атрибута «только для чтения»

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Разрешить изменение (AllowEdits) выберите значение Нет.

  4. В ячейке свойства Разрешить добавление (AllowAdditions) выберите значение Нет.

  5. В ячейке свойства Разрешить удаление (AllowDeletions) выберите значение Нет.


 Разрешение или запрет пользователям добавлять или удалять записи в форме

Разрешение или запрет пользователям добавлять или удалять записи в форме

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейках свойств Разрешить удаление (AllowDeletions) и/или Разрешить добавление (AllowAdditions) выберите Да или Нет.


 Разрешение или запрет пользователям редактировать сохраненные записи в форме

Разрешение или запрет пользователям редактировать сохраненные записи в форме

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Разрешить изменение (AllowEdits) выберите Да или Нет.


Создание всплывающих форм и специальных диалоговых окон

Предполагаемые действия

Создание немодальных всплывающих форм

Создание пользовательского диалогового окна

Временное открытие формы как диалогового окна

Свойства, используемые при построении всплывающих форм и специальных диалоговых окон

Не можете сделать выбор?


 Свойства, используемые для создания или изменения всплывающих форм и пользовательских диалоговых окон

Свойства, используемые для создания или изменения всплывающих форм и пользовательских диалоговых окон

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

Свойство | Определяет
Всплывающее окно (PopUp) | Открытие формы как всплывающей формы. Всплывающая форма всегда располагается над другими окнами Microsoft Access.
Модальное окно (Modal) | Открытие формы как немодальной (допускается переход в другие окна) или как модальной (форма сохраняет фокус вплоть до своего закрытия).
Тип границы (BorderStyle) | Тип границы и элементы границы (заголовок, кнопка Закрыть [image] , оконное меню, кнопки Развернуть и Свернуть), используемые в форме. Также определяет возможность изменения размера формы.
Кнопка оконного меню (ControlBox) | Вывод формы в режиме формы с кнопкой оконного меню.
Кнопки размеров окна (MinMaxButtons) | Отображение на форме кнопок Свернуть и Развернуть в режиме формы. Если свойство Тип границы (BorderStyle) имеет значение Окна диалога, то Microsoft Access автоматически убирает кнопки Свернуть и Развернуть.
Кнопка закрытия (CloseButton) | Определяет доступность кнопки Закрыть.
Полосы прокрутки (ScrollBars) | Вывод формы с полосами прокрутки.
Поле номера записи (NavigationButtons) | Вывод формы с полем номера записи и кнопками перемещения по записям.
Область выделения (RecordSelectors) | Вывод формы с областью выделения записи.
Контекстные меню (ShortcutMenu) | Вывод контекстных меню при нажатии правой кнопки мыши.
Выравнивание по центру (AutoCenter) | Автоматическое выравнивание формы по центру в окне приложения при ее открытии.
Разрешить изменение (AllowEdits) | Возможность любого изменения пользователем сохраненных в форме записей.
Разрешить удаление (AllowDeletions) | Возможность удаления записей пользователем через форму.
Разрешить добавление (AllowAdditions) | Возможность добавления записей пользователем через форму.
Работа с записями (DataEntry) | Отображение в форме при ее открытии всех записи или пустой (новой) записи.
Режим по умолчанию (DefaultView) | Вывод формы в режиме таблицы, в виде простой формы (для одной записи) или в виде ленточной формы (для нескольких записей).
Допустимые режимы (ViewsAllowed) | Возможность переключения между режимом формы и режимом таблицы.


 Использование формы для ввода условий отбора данных для отчета

Использование формы для ввода условий отбора данных для отчета

Создание свободной формы для ввода в запрос условий отбора

  1. Создайте свободную форму.

  2. В режиме конструктора задайте следующие значения свойств формы.
    Свойство | Значение
    Подпись (Caption) | Имя, которое будет выводиться в строке заголовка формы.
    Режим по умолчанию (DefaultView) | Простая форма
    Допустимые режимы (ViewsAllowed) | Форма
    Полосы прокрутки (ScrollBars) | Отсутствуют
    Область выделения (RecordSelectors) | Нет
    Поле номера записи (NavigationButtons) | Нет
    Тип границы (BorderStyle) | Окно диалога
  3. Добавьте свободное поле для каждого вводящегося условия.

  4. Определите свойства этих полей следующим образом.
    Свойство | Значение
    Имя (Name) | Имя, описывающее тип условия; например, НачальнаяДата.
    Формат поля (Format) | Формат, соответствующий типу данных, используемому в условии. Например, если определяется условие на дату, выберите значение Средний формат даты.
  5. Сохраните форму и присвойте ей имя, например, «Условия продаж».

    Кнопки OK и Отмена следует добавлять в форму после определения связанных с этими кнопками макросов.

Создание для формы группы макросов

  1. В окне базы данных выберите значок Запросы [image] , а затем нажмите кнопку Создать на панели инструментов окна базы данных.

    В данном случае создается группа из четырех макросов.

  2. Создайте макрос, открывающий свободную форму. Для этого нажмите кнопку Имена макросов [image] на панели инструментов, открывающую столбец Имя макроса. Введите имя макроса, например, Открыть Условия продаж, в ячейку столбца Имя макроса, а затем выберите макрокоманду ОткрытьФорму (OpenForm). Определите аргументы макрокоманды следующим образом:
    Аргумент | Значение
    Имя формы | Имя свободной формы; например, «Условия продаж»
    Режим | Форма
    Режим данных | Изменение
    Режим окна | Окно диалога

    Добавьте вторую макрокоманду, «ОтменитьСобытие» (CancelEvent), отменяющую просмотр или печать отчета при нажатии в форме кнопки Отмена. После этого нажмите на панели инструментов кнопку Условия [image] , открывающую столбец Условие, и введите в ячейку столбца Условие следующее выражение:

    Not IsLoaded("Условия продаж")

    Функция IsLoaded определена в модуле «Служебные функции» в учебной базе данных «Борей». С ее помощью проверяется, открыта форма в режиме формы или в режиме таблицы. Перед вызовом этой функции необходимо описать ее в базе данных. (Эту функцию можно скопировать и вставить в модуль служебных функций базы данных.) Для получения сведений об описании функции нажмите кнопку [image] . Для получения сведений об открытии базы данных «Борей» нажмите кнопку [image] .

  3. Создайте макрос, закрывающий форму. Введите имя макроса, например, «Закрыть Условия продаж», а затем выберите макрокоманду «Закрыть» (Close). Определите аргументы макрокоманды следующим образом:
    Аргумент | Значение
    Тип объекта | Форма
    Имя объекта | Имя свободной формы
    Сохранить | Нет
  4. Создайте макрос для кнопки OK. Этот макрос делает форму скрытой. Введите имя макроса, например, «OK», а затем выберите макрокоманду «ЗадатьЗначение» (SetValue). Определите аргументы макрокоманды следующим образом:
    Аргумент | Значение
    Элемент | [Visible]
    Выражение | Нет
  5. Создайте макрос для кнопки Отмена. Этот макрос закрывает форму. Введите имя макроса, например, «Отмена», а затем выберите макрокоманду «Закрыть» (Close). Определите аргументы макрокоманды следующим образом:
    Аргумент | Значение
    Тип объекта | Форма
    Имя объекта | Имя свободной формы
    Сохранить | Нет
  6. Сохраните и закройте группу макросов. Присвойте группе макросов имя, например, совпадающее с именем свободной формы.

Добавление в форму кнопок «OK» и «Отмена»

  1. Снова откройте свободную форму в режиме конструктора.

  2. Создайте кнопку OK и определите ее свойства следующим образом. (Убедитесь, что кнопка Мастера [image] на панели элементов не нажата).
    Свойство | Значение
    Имя (Name) | OK
    Подпись (Caption) | OK
    По умолчанию (Default) | Да
    Нажатие кнопки (OnClick) | Имя макроса; например, «Условия продаж.OK»
  3. Создайте кнопку Отмена и определите ее свойства следующим образом.
    Свойство | Значение
    Имя (Name) | Отмена
    Подпись (Caption) | Отмена
    Нажатие кнопки (OnClick) | Имя макроса; например, «Условия продаж.Отмена»
  4. Сохраните и закройте форму.

Ввод условий в базовый запрос или сохраненную процедуру отчета

  1. Откройте базовый запрос или сохраненную процедуру в режиме конструктора.

  2. Введите условия отбора данных. В выражении для условий отбора следует указать семейство Forms, имя формы и имена элементов управления.
    • Например, в базе данных Microsoft Access (.mdb) для формы с именем «Условия продаж» можно использовать следующее выражение для ссылки на элементы управления в запросе с именами «Начальная дата» и «Конечная дата»:

      Between [Forms]![Условия продаж]![Начальная дата] And [Forms]![Условия продаж]![Конечная дата]

    • В проекте Microsoft Access (.adp) необходимо сначала явно задать имена параметров в сохраненной процедуре; например:

      @Beginning_Date datetime, @Ending_Date datetime

      а затем использовать эти параметры в предложении WHERE; например:

      WHERE Продажи.ДатаОтгрузки Between @Beginning_Date And @Ending_Date

      В проекте Access ссылка на элементы управления формы задается в свойстве отчета InputParameters, как показано на следующем рисунке.

Задайте значение для свойства «InputParameters» в главном отчете (только для проекта Access)

  1. Откройте отчет в режиме конструктора.

  2. Задайте в качестве значения свойства InputParameters отчета строку, указывающую параметры, передаваемые в сохраненную процедуру, к которой присоединен отчет. Как показано в следующем примере, эта строка должна представлять собой выражение, включающее параметры, указанные в сохраненной процедуре, и ссылки на элементы управления диалогового окна:

    @Beginning_date datetime = [Forms]![Условия продаж]![Начальная дата], @Ending_date datetime = [Forms]![Условия продаж]![Конечная дата]

Связывание макросов с главным отчетом

  1. Откройте отчет в режиме конструктора.

  2. Задайте значения для следующих свойств отчета.
    Свойство | Значение
    Открытие (OnOpen) | Имя макроса, открывающего свободную форму; например, «Условия продаж.Открыть Условия продаж»
    Закрытие (OnClose) | Имя макроса, закрывающего свободную форму; например, «Условия продаж.Закрыть Условия продаж»


Отчеты: что это такое и как они работают

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Открытие отчета

Открытие отчета

  1. В окне базы данных щелкните значок Отчеты [image] в списке Объекты.

  2. Выберите имя отчета, который требуется открыть.

  3. Нажмите на панели инструментов окна базы данных кнопку Конструктор, чтобы открыть отчет в режиме конструктора, или кнопку Просмотр, чтобы открыть отчет в режиме предварительного просмотра.

Совет. Можно также открыть отчет в режиме предварительного просмотра, перетащив его из окна базы данных в рабочую область приложения.


Создание отчета

Предполагаемые действия

Создание отчета с помощью Автоотчета. После выбора источника записей и макета (в столбец, ленточный или табличный) Автоотчет создает отчет, который использует все поля источника записей и применяет последний использованный автоформат.

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

Создание отчета без помощи мастера


 Переключение между режимами отображения отчета

Переключение между режимами отображения отчета

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

  1. Откройте отчет в любом режиме.

  2. Нажмите кнопку Вид на панели инструментов, чтобы перейти в режим, обозначенный рисунком. Для просмотра списка всех возможных режимов щелкните стрелку рядом с этой кнопкой.


Способы настройки отчета

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


Разделы отчета

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Шаблоны форм и отчетов

Шаблоны форм и отчетов

Если форма или отчет создаются с помощью мастера, то по умолчанию задаются стандартные характеристики формы или отчета, определяемые используемым шаблоном.

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

Для форм или отчетов по умолчанию используются шаблоны с именем «Обычный». Однако пользователь имеет возможность указать в качестве шаблона имя любой существующей формы или отчета. Допускается также создание специальных форм и отчетов, предназначенных для использования в виде шаблонов. Для получения дополнительных сведений о назначении нового шаблона нажмите кнопку [image] .

Примечания

  • Замена шаблона не влияет на уже созданные формы и отчеты.

  • Шаблон не создает элементы управления в новой форме или отчете.

  • Microsoft Access сохраняет настройки параметров Шаблон формы и Шаблон отчета в файле рабочей группы, а не в базе данных Microsoft Access (файл .mdb) или проекте Microsoft Access (файл .adp). Изменение этих настроек затрагивает все открываемые и создаваемые базы данных или проекты Access. Чтобы просмотреть имя текущего шаблона, используемого для новых форм и отчетов, выберите команду Параметры в меню Сервис, а затем перейдите на вкладку Формы и отчеты.

  • Для того чтобы использовать новые шаблоны в других базах данных или проектах Access, следует скопировать или экспортировать шаблоны в эти базы данных или проекты. Если шаблон находится не в базе данных или проекте Access, то для всех создаваемых форм и отчетов используется шаблон «Обычный». Однако имена шаблонов отображаются в полях параметров Шаблон формы и Шаблон отчета для каждой базы данных или проекта Access, даже если эти шаблоны находятся не в каждой базе данных или проекте Access.


Назначение нового шаблона для формы или отчета

  1. Выберите команду Параметры в меню Сервис.

  2. Откройте вкладку Формы и отчеты.

  3. Введите имя нового шаблона в поле Шаблон формы или Шаблон отчета.

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

  4. Нажмите кнопку OK.

    Для получения дополнительных сведений о шаблонах нажмите кнопку [image] .


Задание величины полей, ориентации и других параметров страницы

Предполагаемые действия

Установка параметров таблицы, запроса, формы или отчета

Установка параметров страницы доступа к данным


Предварительный просмотр отчета

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

Предполагаемые действия

Просмотр образца макета отчета

Просмотр полного содержимого отчета


 Печать отчета

Печать отчета

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

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

  2. Выберите в меню Файл команду Печать.

  3. Укажите нужные параметры в диалоговом окне Печать.
    • В группе Принтер выберите принтер.

    • В группе Печатать выберите печать всего отчета или определенного диапазона страниц.

    • В группе Копии укажите число печатающихся копий и, при необходимости, печать с раскладкой по копиям.
  4. Нажмите кнопку OK.

Совет. Для вывода отчета на печать без открытия диалогового окна нажмите кнопку Печать [image] на панели инструментов.


 Изменение масштаба изображения при предварительном просмотре таблицы, формы или отчета

Изменение масштаба изображения при предварительном просмотре таблицы, формы или отчета

  • На панели инструментов окна предварительного просмотра нажмите кнопку раскрытия списка рядом с полем Масштаб и выберите в списке или введите в поле нужный масштаб в процентах.

Примечания

  • При выборе масштаба Окно страница выводится в масштабе, позволяющем полностью вписать страницу в текущие размеры окна.

  • Для переключения между выбранным масштабом и масштабом Окно следует поместить указатель на документ и нажать кнопку мыши, когда указатель примет вид лупы.

  • Для перехода по страницам отчета пользуйтесь кнопками перехода в нижней части окна предварительного просмотра. Для перемещения по текущей странице можно использовать полосы прокрутки или колесико мыши Microsoft IntelliMouse.


 Предварительный просмотр нескольких страниц одновременно

Предварительный просмотр нескольких страниц одновременно

Просмотр двух страниц

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

  2. Нажмите кнопку Две страницы [image] на панели инструментов.

Просмотр нескольких страниц

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

  2. Нажмите кнопку Несколько страниц [image] на панели инструментов.

  3. Перетаскивая указатель мыши, выберите количество страниц, которое должно отображаться на экране.

Возврат в режим просмотра одной страницы

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

  2. Нажмите кнопку Одна страница [image] на панели инструментов.

Примечание. Для перемещения по страницам отчета пользуйтесь кнопками перехода в нижней части окна предварительного просмотра. Для перемещения по текущей странице можно использовать полосы прокрутки или колесико мыши Microsoft IntelliMouse.


 Печать каждой записи, группы или раздела на отдельной странице формы или отчета

Печать каждой записи, группы или раздела на отдельной странице формы или отчета

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Дважды щелкните область выделения раздела, чтобы открыть окно свойств.

  3. Выберите одно из следующих значений свойства раздела Конец страницы (ForceNewPage).
    • Отсутствует. (Значение по умолчанию). Раздел печатается на текущей странице.

    • До раздела. Раздел печатается с начала новой страницы.

    • После раздела. Следующий раздел печатается с начала новой страницы.

    • До и после раздела. Раздел печатается с начала новой страницы. Печать следующего раздела также начнется с новой страницы.

Примечания

  • Свойство Конец страницы (ForceNewPage) определено для всех разделов, кроме верхнего и нижнего колонтитулов.

  • Для того чтобы печатать каждую запись на отдельной странице, следует задать для свойства Конец страницы (ForceNewPage) области данных значение После раздела. Для печати каждой группы на отдельной странице задайте значение До раздела для свойства Конец страницы (ForceNewPage) заголовка группы или значение После раздела для свойства Конец страницы (ForceNewPage) области примечаний группы.


 Применение встроенных форматов к форме, отчету или элементу управления

Применение встроенных форматов к форме, отчету или элементу управления

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выполните одно из следующий действий.
    • Для форматирования всей формы или отчета выберите область выделения формы или область выделения отчета.

    • Для форматирования отдельного раздела выберите область выделения раздела.

    • Для форматирования одного или нескольких элементов управления выберите эти элементы управления.
  3. Нажмите кнопку Автоформат [image] на панели инструментов.

  4. Выберите имя формата в списке.

  5. Для того чтобы задать отдельные атрибуты форматирования (шрифт, цвет или тип границы), нажмите кнопку Параметры.

Примечание. Для применения фонового рисунка необходимо выделить всю форму или отчет.


 Настройка автоформата для формы или отчета

Настройка автоформата для формы или отчета

  1. Откройте существующую форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. В меню Формат выберите команду Автоформат.

  3. В диалоговом окне Автоформат выберите автоформат из списка.

  4. Нажмите кнопку Параметры и выберите используемые атрибуты.

  5. Нажмите кнопку Настройка и выберите нужный переключатель. Существуют следующие варианты:
    • создание нового автоформата на основе открытой формы или отчета;

    • обновление выбранного автоформата на основе открытой формы или отчета;

    • удаление выбранного автоформата из списка.
  6. Нажмите кнопку OK два раза, чтобы закрыть диалоговые окна.


 Добавление фонового рисунка к отчету

Добавление фонового рисунка к отчету

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

  1. Откройте отчет в режиме конструктора.

  2. Дважды щелкните область выделения отчета, чтобы открыть окно свойств.

  3. Укажите в свойстве Рисунок (Picture) файл .bmp, .ico, .wmf, .dib или .emf. Если были установлены графические фильтры для других приложений, то можно использовать любые файлы, поддерживаемые этими фильтрами. Если путь или имя файла точно неизвестны, нажмите кнопку построителя [image] .

  4. В свойстве Тип рисунка (PictureType) укажите тип рисунка — внедренный или связанный. Внедренный рисунок сохраняется в файле базы данных. Если внедрить этот же рисунок в другую форму или отчет, он будет добавлен в файл базы данных еще раз. Связанный рисунок не сохраняется в базе данных — его файл должен присутствовать на жестком диске. Если требуется сэкономить место на диске, используйте для данного свойства значение Связанный.

  5. Свойство Масштабы рисунка (PictureSizeMode) позволяет изменять пропорции рисунка. Данное свойство может иметь три значения.
    • Фрагмент. Рисунок выводится на экран в натуральную величину. Если размеры рисунка превышают размеры рамки, то рисунок обрезается.

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

    • По размеру рамки. Масштабирует рисунок так, чтобы он заполнял область либо по горизонтали, либо по вертикали. Использование данного значения не приведет ни к обрезанию рисунка, ни к искажению его пропорций.
  6. Положение рисунка на странице задается с помощью свойства Выравнивание рисунка (PictureAlignment). Microsoft Access выравнивает рисунок относительно полей страницы отчета. Данное свойство может иметь следующие значения: Сверху слева, Сверху справа, По центру, Снизу слева и Снизу справа.

  7. Чтобы размножить рисунок по всей странице, установите свойство Мозаичное заполнение (PictureTiling) в значение Да. Заполнение начинается с позиции, указанной в ячейке свойства Выравнивание рисунка (PictureAlignment).

    Примечание. При размножении фоновых рисунков лучше всего устанавливать свойство Выравнивание рисунка (PictureSizeMode) в значение Фрагмент.

  8. Свойство Страницы с рисунком (PicturePages) позволяет указать, на каких страницах отчета следует помещать рисунок. Возможные значения: Все страницы, Первая страница и Отсутствует.

Примечания

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

  • Инструкции

  • В качестве фонового рисунка вместо точечного рисунка можно использовать метафайл. Для получения дополнительных сведений нажмите кнопку [image] .

  • Пример использования фонового рисунка можно найти в отчете «Продажи по сотрудникам и странам» учебной базы данных «Борей». Чтобы просмотреть отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Продажи по сотрудникам и странам» в режиме конструктора. Для получения сведений о том, как открыть базу данных «Борей», нажмите кнопку [image] .


 Вставка разрыва страницы в отчет

Вставка разрыва страницы в отчет

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

  1. Откройте отчет в режиме конструктора.

  2. Нажмите кнопку Разрыв страницы [image] на панели элементов.

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

    Разрыв страницы обозначается короткой точечной линией на левой границе отчета.

    Для того, чтобы каждая группа или запись в отчете выводилась на отдельной странице, следует настроить свойство Конец страницы (ForceNewPage) для заголовка группы, примечания группы или области данных.

    Инструкции

Примечание. Отчет «Каталог» в учебной базе данных «Борей» содержит пример использования разрыва страницы в заголовке отчета. Откройте базу данных «Борей», находящуюся в подкаталоге Samples каталога Office, а затем откройте отчет «Каталог» в режиме конструктора. Для получения дополнительных сведений о базе данных «Борей» нажмите кнопку [image] .


 Добавление номеров страниц в форму или отчет

Добавление номеров страниц в форму или отчет

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите в меню Вставка команду Номера страниц.

  3. В диалоговом окне Номера страниц выберите формат, расположение и выравнивание номеров страниц. Можно использовать следующие параметры выравнивания.
    • По левому краю. Добавляет поле номера страницы к левому полю страницы.

    • По центру. Размещает поле номера страницы по центру между левым и правым полями страницы.

    • По правому краю. Добавляет поле номера страницы к правому полю страницы.

    • Внутри. Добавляет поле номера страницы к левому или правому полям страницы. Нечетные номера страниц печатаются слева, а четные — справа.

    • Снаружи. Добавляет поле номера страницы к левому или правому полям страницы. Четные номера страниц печатаются слева, а нечетные — справа.
  4. Для печати номера первой страницы установите флажок Отображать номер на первой странице.

Microsoft Access создает номера страниц при помощи выражений. Чтобы просмотреть примеры выражений для номеров страниц, нажмите кнопку [image] .


 Добавление в форму или отчет поля текущей даты и времени

Добавление в форму или отчет поля текущей даты и времени

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите в меню Вставка команду Дата и время.

  3. Чтобы вставить текущую дату, установите флажок Формат даты и выберите нужный формат.

  4. Чтобы вставить текущее время, установите флажок Формат времени и выберите нужный формат.

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


 Примеры выражений для нумерации страниц

Примеры выражений для нумерации страниц

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

Выражение | Результат
=[Page] | 1, 2, 3
="Стр. " & [Page] | Стр. 1, Стр. 2, Стр. 3
="Стр. " & [Page] & " из " & [Pages] | Стр. 1 из 3, Стр. 2 из 3, Стр. 3 из 3
=[Page] & " из " & [Pages] & " стр." | 1 из 3 стр., 2 из 3 стр., 3 из 3 стр.
="Стр. " & [Page] & "/" & [Pages] | Стр. 1/3, Стр. 2/3, Стр. 3/3
=[Страна] & " - " & [Page] | Россия - 1, Россия - 2, Россия - 3
=Format([Page], "000") | 001, 002, 003


 Добавление или удаление заголовка, примечания и колонтитулов отчета

Добавление или удаление заголовка, примечания и колонтитулов отчета

  1. Откройте отчет в режиме конструктора.

  2. Выберите в меню Вид команду Заголовок/примечание отчета или Колонтитулы.

Примечания

  • Заголовок и примечание, а также верхний и нижний колонтитулы, можно добавлять только парами. Если какой-либо из этих разделов не нужен, установите его свойство Вывод на экран (Visible) в значение Нет. Можно также удалить из этого раздела все элементы управления и изменить его размер до нулевой высоты (или установить его свойство Высота (Height) в значение 0).

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

  • См. пример использования в отчетах разделов различных типов.


 Отказ от печати верхнего или нижнего колонтитула на страницах, на которых печатается заголовок или примечание отчета

Отказ от печати верхнего или нижнего колонтитула на страницах, на которых печатается заголовок или примечание отчета

  1. Откройте отчет в режиме конструктора.

  2. Дважды щелкните область выделения отчета, чтобы открыть окно свойств.

  3. Выберите одно из следующих значений свойства отчета Верхний колонтитул (PageHeader) или Нижний колонтитул (PageFooter).
    • Все страницы. (Используется по умолчанию). Колонтитул печатается на всех страницах.

    • Без заголовка. Колонтитул не печатается на одной странице с заголовком отчета.

    • Без примечания. Колонтитул не печатается на одной странице с примечанием отчета.

    • Без заголовка/примечания. Колонтитул не печатается на одной странице ни с заголовком, ни с примечанием отчета.

Примечание. При заданном для свойства Верхний колонтитул (PageHeader) значении Без примечания или Без заголовка/примечания Microsoft Access печатает примечание отчета на отдельной странице.


 Изменение размеров заголовка, примечаний и других разделов в форме или отчете

Изменение размеров заголовка, примечаний и других разделов в форме или отчете

Каждый раздел формы или отчета может иметь собственную высоту. Однако ширина всех разделов в форме или отчете должна быть одинаковой. Изменение ширины одного раздела приводит к автоматическому изменению ширины всех остальных разделов.

Изменение ширины или высоты

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Установите указатель на правую или нижнюю границу раздела.

  3. Для изменения высоты раздела перетащите границу вверх или вниз. Для изменения ширины раздела перетащите границу вправо или влево.

Изменение высоты раздела

Изменение ширины раздела

Одновременное изменение ширины и высоты

  • Установите указатель на правый нижний угол раздела и перетащите его в любом направлении.

Изменение высоты и ширины раздела


 Печать содержимого записи на одной странице или в одном столбце формы или отчета

Печать содержимого записи на одной странице или в одном столбце формы или отчета

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Дважды щелкните область выделения раздела, чтобы открыть окно свойств.

  3. Установите свойство Не разрывать (KeepTogether) в значение Да. Если содержимое раздела не умещается на текущей странице, Microsoft Access начинает печать раздела со следующей страницы. Если размер раздела больше размера страницы, свойство Не разрывать (KeepTogether) игнорируется.

    Свойство Не разрывать (KeepTogether) определено для всех разделов, кроме верхнего и нижнего колонтитулов.

Совет. Если вместе нужно удержать данные всей группы (например, заголовок группы, записи из области данных и примечание группы), установите свойство Не разрывать (KeepTogether) этой группы.

Инструкции


 Создание почтовых и других наклеек

Создание почтовых и других наклеек

  1. В окне базы данных выберите значок Отчеты [image] .

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новый отчет выберите мастер Почтовые наклейки.

  4. Выберите таблицу или запрос, которые содержат данные для наклеек, и нажмите кнопку OK.

  5. Следуйте инструкциям диалоговых окон мастера.

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

Примечания

  • Для получения дополнительных сведений о создании наклеек, предназначенных для печати на матричном принтере, нажмите кнопку [image] .

  • Отчет «Наклейки для клиентов» учебной базы данных «Борей» печатает в одной строке три почтовых наклейки. Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Наклейки для клиентов» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Создание почтовых и других наклеек для печати на матричном принтере

Создание почтовых и других наклеек для печати на матричном принтере

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

Назначение принтера и размера бумаги по умолчанию

  1. Нажмите кнопку Пуск и выберите команду Настройка и подкоманду Панель управления.

  2. Дважды щелкните значок «Принтеры», выберите значок матричного принтера, а затем выберите команду Использовать по умолчанию в меню Файл.

  3. В меню Файл выберите команду Свойства и вкладку Бумага.

  4. В поле Размер бумаги выберите значок Другой.

  5. В диалоговом окне Определяемые пользователем размеры выберите единицу измерения и введите значения ширины и высоты страницы наклеек.

    Ширина — это расстояние между левой границей самой левой наклейки и правой границей самой правой наклейки. Высота — это расстояние между верхней границей первой строки наклеек и верхней границей следующей строки наклеек. Например, если в строке помещаются две наклейки с размерами 7 на 5 см. с промежутком между наклейками в 1 см., выберите в группе Единицы измерения переключатель 0.1 миллиметра и установите в поле Ширина значение 1500, а в поле Высота значение 600.

  6. Нажмите кнопку OK для сохранения настроек диалогового окна Определяемые пользователем размеры.

  7. Нажмите кнопку OK для сохранения параметров диалогового окна Свойства принтера.

После назначения принтера по умолчанию и задания размера бумаги можно приступать к созданию отчета для печати наклеек на матричном принтере с помощью мастера наклеек или без мастера, в режиме конструктора отчета. Для получения дополнительных сведений об использовании мастера наклеек нажмите кнопку [image] .

Создание отчета для печати наклеек без помощи мастера

  1. Создайте пустой отчет, связанный с таблицей или запросом, содержащими данные, которые нужно использовать.

    Инструкции

  2. В режиме конструктора отчета выберите команду Колонтитулы в меню Вид, чтобы удалить верхний и нижний колонтитулы. (В этом отчете понадобится только область данных.)

  3. Задайте в качестве ширины и высоты области данных ширину и высоту одной наклейки.

    Инструкции

  4. Добавьте поля в область данных и проверьте, что они не перекрываются. (Располагайте поля на расстоянии не менее 0.5 см от каждой границы области данных.)

    Инструкции

  5. В меню Файл выберите команду Параметры страницы.

  6. Установите следующие значения в диалоговом окне Параметры страницы.
    • Если матричный принтер не является используемым по умолчанию, на вкладке Страница выберите переключатель другой принтер. Нажмите кнопку Принтер и выберите в списке матричный принтер.

    • На вкладке Страница в группе Бумага выберите в поле размер значение Определяемые пользователем размеры, а в поле подача — значение С перфорацией.

    • На вкладке Поля задайте для всех полей значение 0,0.

    • На вкладке Столбцы в группе Размер столбца установите флажок По размеру данных.

      Если в строке печатается несколько наклеек, необходимо определить следующие параметры в группе Параметры сетки.вкладки Столбцы.

    • В поле число столбцов введите число наклеек в строке.

    • В поле интервал введите величину промежутка между нижним краем наклейки в одной строке и верхним краем наклейки в следующей строке.

    • В поле столбцов введите величину промежутка между правым краем одной наклейки и левым краем следующей наклейки в строке.

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


Изменение наклеек, созданных с помощью мастера

Предполагаемые действия

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

Имеются следующие возможности внесения отдельных изменений:

Изменение шрифта в элементах управления

Изменение размера шрифта в элементах управления

Изменение размеров элементов управления

Добавление элементов управления

Изменение параметров страницы


Примеры группировки записей в отчете

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Сортировка записей в отчете

Сортировка записей в отчете

В отчете допускается сортировка не более чем по 10 полям или выражениям.

  1. Откройте отчет в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

  3. В первой строке бланка выберите в ячейке столбца Поле/выражение имя поля или введите выражение.

    Поле или выражение, указанное в первой строке, определяет первый (основной) уровень сортировки. Вторая строка бланка определяет второй уровень сортировки и т.д.

    При заполнении ячейки столбца Поле/выражение в ячейку столбца Порядок сортировки автоматически вводится значение По возрастанию. При выборе порядка сортировки По возрастанию значения сортируются от А к Я и от 0 к 9.

  4. Для изменения порядка сортировки выберите вариант По убыванию в ячейке Порядок сортировки. При выборе порядка сортировки По убыванию значения сортируются от Я к А и от 9 к 0.

Примечание. Отчет «Наклейки для клиентов» учебной базы данных «Борей» сортирует записи по значениям трех полей. Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Наклейки для клиентов» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Группировка записей в отчете

Группировка записей в отчете

Для группировки записей в отчете можно использовать до 10 полей или выражений. Чтобы просмотреть примеры группировки записей, нажмите кнопку [image] .

  1. Откройте отчет в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

  3. Укажите порядок сортировки данных в отчете.

    Инструкции

  4. Выберите поле или выражение, для которого задаются параметры группировки.

  5. Задайте значения свойств группы, перечисленных в следующем списке. Чтобы создать уровень группировки и определить другие свойства группы, необходимо задать значение Да по крайней мере для одного из свойств Заголовок группы (GroupHeader) или Примечание группы (GroupFooter).
    • Заголовок группы (GroupHeader). Добавляет или удаляет заголовок группы, определяемой полем или выражением.

    • Примечание группы (GroupFooter). Добавляет или удаляет примечание группы, определяемой полем или выражением.

    • Группировка (GroupOn). Определяет способ группировки значений. Список доступных значений этого свойства зависит от типа данных поля, по которому выполняется группировка. При группировке по выражению выводится полный список значений данного свойства.

    • Интервал (GroupInterval). Определяет любой допустимый интервал значений поля или выражения, по которому проводится группировка.

    • Не разрывать (KeepTogether). Задает или отменяет обязательную печать группы на одной странице.

Дополнительные сведения

Для получения дополнительных сведений о группировке в текстовых полях нажмите кнопку [image] .

Для получения дополнительных сведений о группировке в полях даты/времени нажмите кнопку [image] .

Для получения дополнительных сведений о группировке в денежных, числовых полях и в полях счетчика нажмите кнопку [image] .

Примечание. Отчет «Продажи по сотрудникам и странам» в учебной базе данных «Борей» использует два уровня группировки. Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Продажи по сотрудникам и странам» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Изменение порядка сортировки и группировки в отчете

Изменение порядка сортировки и группировки в отчете

  1. Откройте отчет в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

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

  4. Снова щелкните область выделения и перетащите строку на новую позицию в бланке.

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


 Добавление дополнительного поля или выражения для сортировки или группировки в отчете

Добавление дополнительного поля или выражения для сортировки или группировки в отчете

  1. Откройте отчет в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

  3. В окне Сортировка и группировка щелкните область выделения строки, в которую требуется вставить новое поле или выражение, и нажмите клавишу INSERT.

  4. В ячейке столбца Поле/выражение пустой строки выберите имя поля, по которому выполняется сортировка, или введите выражение.

    При заполнении ячейки столбца Поле/выражение в ячейку столбца Порядок сортировки автоматически вводится значение По возрастанию.

  5. Если нужно изменить порядок сортировки, выберите строку По убыванию в списке Порядок сортировки.


 Удаление в отчете выражения или поля, используемого при сортировке или группировке

Удаление в отчете выражения или поля, используемого при сортировке или группировке

  1. Откройте отчет в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

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

  4. Нажмите кнопку Да, чтобы удалить уровень сортировки и группировки, или кнопку Нет, чтобы сохранить его.

Примечание. Если удаляемое поле или выражение имеет связанный раздел (заголовок или примечание), то Microsoft Access удалит заголовок или примечание вместе во всеми содержащимися в нем элементами управления.


 Печать данных группы на одной странице или в одном столбце отчета

Печать данных группы на одной странице или в одном столбце отчета

  1. Откройте отчет в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

  3. Задайте уровни группировки в отчете.

    Инструкции

  4. Выберите поле или выражение, определяющее группу, которую требуется удерживать на одной странице.

  5. В окне Сортировка и группировка в бланке свойств группы установите свойство Не разрывать (KeepTogether) в одно из следующих значений.
    • Вся группа. Заголовок группы, все записи в области данных и область примечаний группы печатаются на одной странице или в одном столбце.

    • С первыми данными. Заголовок группы печатается на странице или в столбце только в том случае, если удается напечатать на той же странице первую запись из области данных.
  6. Откройте окно свойств отчета.

    Инструкции

  7. Выберите значение свойства Неразрывная группа (GroupKeepTogether).
    • На странице. Группа помещается на одну страницу.

    • В столбце. Группа помещается в один столбец или строку.

Примечания

  • Если необходимо удерживать вместе данные из конкретного раздела отчета, например, записи в области данных, следует задать для свойства Не разрывать (KeepTogether) этого раздела значение Да.

    Инструкции

  • Отчет «Список товаров» учебной базы данных «Борей» группирует товары по первой букве названия. Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Список товаров» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Вывод каждой группы в отчете с новой строки или столбца

Вывод каждой группы в отчете с новой строки или столбца

  1. Создайте отчет, содержащий несколько столбцов и имеющий хотя бы один уровень группировки.

    Для получения сведений о создании отчета, содержащего несколько столбцов, нажмите кнопку [image] . Для получения сведений о создании уровней группировки нажмите кнопку [image] .

  2. В режиме конструктора отчета выберите команду Параметры страницы из меню Файл.

  3. Перейдите на вкладку Столбцы. В группе Параметры сетки для параметра Число столбцов должно быть задано значение больше 1.

  4. В группе Макет столбца выполните одно из следующих действий:
    • для того чтобы начинать каждую группу в новом столбце, выберите параметр «Сверху вниз»;

    • для того чтобы начинать каждую группу в новой строке, выберите параметр «Слева направо».
  5. Нажмите кнопку OK.

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

  7. Задайте для свойства Новая строка или столбец (NewRowOrCol) одно из следующих значений.
    Значение | Описание
    Отсутствует | (Значение по умолчанию). Разбиение строк и столбцов определяется настройками, заданными в диалоговом окне Параметры страницы и свободным местом на листе бумаги.
    До раздела | Печать текущего раздела (для которого определяется свойство, например, заголовка группы) начинается с новой строки или столбца. Печать следующего раздела, например, области данных, начнется в той же строке или столбце.
    После раздела | Печать текущего раздела , например, заголовка группы, начинается в текущей строке или столбце. Печать следующего раздела, например, области данных, начнется с новой строки или столбца.
    До и после раздела | Печать текущего раздела, например, заголовка группы, начинается с новой строки или столбца. Печать следующего раздела, например, области данных, также начнется с новой строки или столбца.

Примечания

  • Для просмотра примеров отчетов, в которых каждая группа начинается в новом столбце или новой строке, нажмите кнопку [image] .

  • Отчет «Товары по типам» учебной базы данных «Борей» начинает каждую группу в новом столбце. Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Товары по типам» в режиме конструктора. Для получения сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Сброс счетчика номеров страниц для каждой группы в отчете

Сброс счетчика номеров страниц для каждой группы в отчете

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

  1. Создайте макрос, в котором макрокоманда «ЗадатьЗначение» (SetValue) задает для свойства Page значение 1.

    Инструкции

    Определите, следует ли выводить номера страниц в верхнем или нижнем колонтитуле, и укажите следующие значения аргументов макрокоманды «ЗадатьЗначение» (SetValue).

    Позиция Аргументы
    Верхний колонтитул Элемент: [Page]

    Выражение: 0
    Нижний колонтитул Элемент: [Page]

    Выражение: 1
  2. Сохраните и закройте макрос.

Изменение отчета

  1. Откройте отчет в режиме конструктора.

  2. Создайте поле для номера страницы в верхнем или нижнем колонтитуле отчета.

    Инструкции

  3. Задайте следующие значения для свойств заголовка группы и примечаний группы первого уровня.

    Если номер страницы выводится в верхнем колонтитуле, задайте следующие значения для свойств.

    Раздел | Свойство | Значение | Цель
    Заголовок группы | Конец страницы | До раздела | Печать каждой группы с новой страницы.
    Примечание группы | Форматирование | Имя макроса, созданного в предыдущей процедуре. | Сброс номера страницы до 1 для каждой новой группы.

    Если номер страницы выводится в нижнем колонтитуле, установите следующие значения для свойств.

    Раздел | Свойство | Значение | Цель
    Заголовок группы | Форматирование | Имя макроса, созданного в предыдущей процедуре. | Сброс номера страницы до 1 для каждой новой группы.
    Примечание группы | Конец страницы | После раздела | Печать каждой группы с новой страницы.

Примечание. Отчет «Продажи по сотрудниками и странам» учебной базы данных «Борей» использует процедуру обработки событий, заданную в ячейке свойства Форматирование (OnFormat). Чтобы просмотреть этот отчет, откройте базу данных, расположенную в подкаталоге Samples каталога Office, а затем откройте отчет «Продажи по сотрудниками и странам» в режиме конструктора. Для получения сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Повторение заголовка группы на другой странице или в другом столбце

Повторение заголовка группы на другой странице или в другом столбце

  1. Откройте отчет в режиме конструктора.

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

  3. Выберите значение Да для свойства Повторение раздела (RepeatSection).


 Скрытие повторяющихся данных в отчете

Скрытие повторяющихся данных в отчете

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

Скрытие повторяющихся данных в отчете, использующем только сортировку записей

  1. Создайте отчет, сортирующий записи по одному или нескольким полям, которые могут содержать повторяющиеся значения.

    Инструкции

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

  3. Чтобы вывести окно свойств текстового поля, содержащего данные, которые могут повторяться, убедитесь, что текстовое поле выбрано и нажмите кнопку Свойства [image] на панели инструментов.

  4. Задайте для свойства Не выводить повторы (HideDuplicates) значение Да.

    Примечание. В любом текстовом поле, свойство Не выводить повторы (HideDuplicates) которого имеет значение Да, Microsoft Access печатает значение для первой записи, в которой оно встречается, и, если записи с повторяющимся значением продолжаются на следующей странице, в начале новой страницы.

Скрытие повторяющихся данных в отчете, использующем группировку записей

  1. Создайте отчет с одним или несколькими уровнями группировки.

    Инструкции

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

  3. Чтобы вывести окно свойств текстового поля, убедитесь, что нужное текстовое поле выделено, и нажмите кнопку Свойства [image] на панели инструментов.

  4. Установите свойство Не выводить повторы (HideDuplicates) в значение Да.

  5. Удалите линии и все остальные элементы управления из заголовка группы.

  6. Дважды щелкните область выделения раздела заголовка группы для вывода окна его свойств.

  7. Установите свойство Высота (Height) заголовка группы в значение 0.

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


 Вычисление итогового значения для одной записи и вывод его в отчете

Вычисление итогового значения для одной записи и вывод его в отчете

  1. Откройте отчет в режиме конструктора.

  2. Добавьте в область данных вычисляемое поле.

    Инструкции

  3. Чтобы открыть окно свойств поля, убедитесь, что нужное поле выбрано, и нажмите кнопку Свойства [image] на панели инструментов.

  4. Введите выражение в ячейку свойства Данные (ControlSource).

    Выражение в текстовом поле в области данных отчета

    Совет. В базе данных Microsoft Access (.mdb) можно нажать кнопку построителя [image] , чтобы создать выражение с помощью построителя выражений.

Примечания

  • Если отчет основан на запросе, можно поместить выражение в базовый запрос отчета. Это может повысить производительность отчета и, если требуется вычислять итоговые значения по группам записей, позволяет использовать имя вычисляемого поля в статистической функции. Для получения дополнительных сведений нажмите кнопку [image] .

  • Для просмотра примеров выражений, которые можно использовать для вычисления значений для одной записи, нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании выражений в базе данных Microsoft Access (.mdb) нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании выражений в проекте Microsoft Access (.adp) нажмите кнопку [image] .


 Вычисление в отчете итоговых или средних значений для групп записей или для всех записей

Вычисление в отчете итоговых или средних значений для групп записей или для всех записей

  1. Откройте отчет в режиме конструктора.

  2. Добавьте вычисляемое поле в одну из следующих областей.

    Инструкции

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

    • Для вычисления итогового значения по всем записям отчета добавьте поле в заголовок отчета или в примечание отчета.
  3. Чтобы открыть окно свойств поля, убедитесь, что нужное поле выбрано, и нажмите кнопку Свойства [image] на панели инструментов.

  4. В ячейку свойства Данные (ControlSource) введите выражение, содержащее функцию Sum, чтобы вычислить итоговое значение, или функцию Avg для вычисления среднего значения.

    Элементы управления, вычисляющие общие значения, в заголовке группы и в примечании отчета

    Совет. В базе данных Microsoft Access (.mdb) можно нажать кнопку построителя [image] , чтобы создать выражение с помощью построителя выражений.

Примечания

  • Для получения дополнительных сведений о создании выражений в базе данных Microsoft Access (.mdb) нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании выражений в проекте Microsoft Access (.adp) нажмите кнопку [image] .

  • Для получения дополнительных сведений о вычислении итоговых и средних значений с помощью статистических функций Sum и Avg нажмите кнопку [image] .

  • Для просмотра примеров выражений, в которых используются статистические функции, нажмите кнопку [image] .

  • Пример вычисления итоговых значений по группам записей и по всем записям содержится в отчете «Продажи по сотрудникам и странам» в учебной базе данных «Борей». Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Продажи по сотрудникам и странам» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Вычисление в отчете суммы с накоплением

Вычисление в отчете суммы с накоплением

  1. Откройте отчет в режиме конструктора.

  2. Добавьте текстовое поле в одну из областей отчета.

    Инструкции

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

    • Для вычисления суммы с накоплением по каждой группе записей добавьте присоединенное поле или вычисляемое поле в заголовок группы или в примечание группы.
  3. Чтобы открыть окно свойств поля, убедитесь, что нужное поле выбрано, и нажмите кнопку Свойства [image] на панели инструментов.

  4. Задайте для свойства Сумма с накоплением (RunningSum) значение, соответствующее нужному типу суммы с накоплением.
    • Для группы. Значение сбрасывается в 0 в начале каждой группы более высокого уровня.

    • Для всего. Сумма накапливается до конца отчета.

Примечания

  • Для просмотра примера отчета, в котором вычисляется сумма с накоплением, нажмите кнопку [image] .

  • Если для свойства Сумма с накоплением (RunningSum) задано значение Для всего, то общее итоговое значение можно повторить в примечании отчета. Создайте в примечании отчета поле и задайте в качестве значения его свойства Данные (Control Source) имя поля, в котором вычисляется сумма с накоплением, например: =[СуммаЗаказа].


 Вычисление относительных значений в отчете

Вычисление относительных значений в отчете

  1. Откройте отчет в режиме конструктора.

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

    Инструкции

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

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

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

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

  4. Чтобы открыть окно свойств поля, убедитесь, что нужное поле выбрано, и нажмите кнопку Свойства [image] на панели инструментов.

  5. Введите в ячейку свойства Данные (ControlSource) выражение, в котором значение элемента или промежуточное итоговое значение делится на общее итоговое значение. Например, разделите значение элемента управления «ЕжедневныйИтог» на значение элемента управления «ОбщийИтог».

    Совет. В базе данных Microsoft Access (.mdb) можно нажать кнопку построителя [image] , чтобы воспользоваться построителем выражений для создания выражения.

  6. При необходимости, задайте для свойства поля Формат поля (Format) значение Процентный.

    Поля, вычисляющие относительные значения, в режиме конструктора

Примечания

  • Для получения дополнительных сведений о создании выражений в базе данных Microsoft Access (.mdb) нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании выражений в проекте Microsoft Access (.adp) нажмите кнопку [image] .

  • Пример вычисления относительных значений содержится в отчете «Продажи по сотрудникам и странам» в учебной базе данных «Борей». Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Продажи по сотрудникам и странам» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Вычисление итогового значения для вычисляемого элемента управления в форме или отчете

Вычисление итогового значения для вычисляемого элемента управления в форме или отчете

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

=Sum([Количество]*[Цена])

Однако если вычисляемое поле включено в базовый запрос, например,

=ОбщаяСтоимость: [Количество]*[Цена]

то имя этого поля можно использовать в функции Sum:

=Sum([ОбщаяСтоимость])

Примечания

  • Для получения дополнительных сведений о создании вычисляемого поля в запросе в базе данных Microsoft Access (.mdb) нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании вычисляемого поля в запросе в проекте Microsoft Access (.adp) нажмите кнопку [image] .

  • Для получения дополнительных сведений о функции Sum нажмите кнопку [image] .

  • Для получения дополнительных сведений о функции DSum нажмите кнопку [image] .


Пример отчета, в котором вычисляется сумма с накоплением

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

В следующем примере у двух расположенных справа присоединенных полей свойство Сумма с накоплением (RunningSum) имеет значение Для группы и Для всего, соответственно.

Поля, вычисляющие суммы с накоплением, в режиме конструктора

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

Суммы с накоплением в печатном отчете


 Нумерация записей в области данных отчета

Нумерация записей в области данных отчета

  1. Откройте отчет в режиме конструктора.

  2. Добавьте в область данных вычисляемое поле.

    Инструкции

  3. Чтобы открыть окно свойств поля, убедитесь, что нужное поле выбрано, и нажмите кнопку Свойства [image] на панели инструментов.

  4. Введите в ячейку свойства Данные (ControlSource) выражение =1.

  5. В ячейке свойства Сумма с накоплением (RunningSum) выберите значение Для всего.

    Во время предварительного просмотра или вывода отчета на печать номер каждой следующей записи будет увеличиваться на 1 (1, 2, 3...).

Примечание. Отчет «Продажи по годам» учебной базы данных «Борей» содержит пример нумерации записей в области данных. Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Продажи по годам» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Подсчет количества записей во всем отчете

Подсчет количества записей во всем отчете

  1. Откройте отчет в режиме конструктора.

  2. Добавьте вычисляемое поле в заголовок отчета или в примечание отчета.

    Инструкции

  3. Чтобы открыть окно свойств поля, убедитесь, что нужное поле выбрано, и нажмите кнопку Свойства [image] на панели инструментов.

  4. Введите в ячейку свойства Данные (СontrolSource) поля выражение =Count(*). В этом выражении используется функция Count для подсчета количества всех записей в отчете, даже если некоторые поля в некоторых записях пусты. Для получения дополнительных сведений о функции Count нажмите кнопку [image] .


 Подсчет количества записей в каждой группе отчета

Подсчет количества записей в каждой группе отчета

  1. Откройте отчет в режиме конструктора.

  2. Добавьте в область данных вычисляемое поле.

    Инструкции

  3. Чтобы открыть окно свойств поля, убедитесь, что нужное поле выбрано, и нажмите кнопку Свойства [image] на панели инструментов.

  4. Задайте указанные значения для следующих свойств.
    Свойство | Значение
    Имя (Name) | ЧислоЗаписей
    Данные (ControlSource) | =1
    Сумма с накоплением (RunningSum) | Для группы
    Вывод на экран (Visible) | Нет
  5. Добавьте вычисляемое поле в примечание группы.

  6. Чтобы открыть окно свойств поля, убедитесь, что нужное поле выбрано, и нажмите кнопку Свойства [image] на панели инструментов.

  7. Задайте в качестве значения свойства Данные (ControlSource) имя элемента управления из области данных, в котором рассчитывается сумма с накоплением, например: =[ЧислоЗаписей].


 Объединение текстовых значений из нескольких полей в форме, отчете и на странице доступа к данным

Объединение текстовых значений из нескольких полей в форме, отчете и на странице доступа к данным

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Добавьте вычисляемое поле для объединяемых полей.

    Совет. На страницах доступа к данным можно вместо вычисляемого поля использовать присоединенный элемент HTML.

  3. Чтобы открыть окно свойств поля, убедитесь, что нужное поле выбрано, и нажмите кнопку Свойства [image] на панели инструментов.

  4. В ячейку свойства Данные (ControlSource) введите выражение, объединяющее значения соответствующих полей.

    Например, чтобы напечатать такой адрес:

    Мытищи, Московская область, 179321, Комарова 20, 123

    введите выражение:

    =[Город] & ", " & [Регион] & " " & [Индекс] & " " & [Адрес]

    Совет. В форме или отчете в базе данных Microsoft Access (.mdb) также можно нажать кнопку построителя, чтобы [image] создать выражение с помощью построителя выражений.

Примечания

  • Для получения дополнительных сведений о создании выражений в базе данных Microsoft Access (.mdb) нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании выражений в проекте Microsoft Access (.adp) нажмите кнопку [image] .

  • Для получения сведений об использовании полей, которые в некоторых записях могут быть пустыми, нажмите кнопку [image] .

  • Примерами отчетов, использующих объединение текстовых значений, являются отчеты «Продажи по сотрудникам и странам» и «Наклейки для клиентов» в учебной базе данных «Борей». Для просмотра одного из этих отчетов откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет в режиме конструктора. Для получения сведений об открытии учебной базы данных «Борей» нажмите кнопку [image] .


 Объединение текстовых значений нескольких полей, некоторые из которых могут не содержать данных

Объединение текстовых значений нескольких полей, некоторые из которых могут не содержать данных

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

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

Например, если известно, что в некоторых записях поле «Область» является пустым, используют следующее выражение:

=[Индекс] & " " & IIf(IsNull([Область]),"", " " & [Область]) & ", " & [Город] ", " & [Адрес]

Если поле «Область» пусто, функция возвращает пустую строку, что определяется аргументом "". Если в поле «Область» имеется значение, возвращается пробел и название области, что определяется аргументом " " & [Область].

Примечания

  • Для получения дополнительных сведений о функции Ilf нажмите кнопку [image] .

  • Пример объединения текстовых значений с использованием функции IIf содержится в отчете «Счет» в учебной базе данных «Борей». Для просмотра этого отчета откройте базу данных «Борей» в папке Samples, а затем откройте отчет «Счет» в режиме конструктора. Для получения сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Вывод на печать в заголовке группы в отчете или на странице доступа к данным первых нескольких символов значения

Вывод на печать в заголовке группы в отчете или на странице доступа к данным первых нескольких символов значения

  1. Откройте отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов и убедитесь, что свойства в окне Сортировка и группировка заданы следующим образом:
    Свойство | Значение | Объекты
    Поле/выражение | (Выберите поле или введите выражение). | Отчеты
    GroupRecordSource | (Устанавливается при нажатии на панели инструментов кнопки Повысить уровень или Группировать по таблицам. | Страницы доступа к данным
    Заголовок группы | Да | Отчеты, страницы
    Примечание группы | Да или Нет | Отчеты, страницы
    Группировка | По первым знакам | Отчеты, страницы
    Интервал | (Введите количество символов) | Отчеты, страницы
    Не разрывать | (Выберите значение) | Отчеты
    Сортировка по умолчанию | (Введите имена полей, по которым требуется выполнить сортировку.) | Страницы доступа к данным
  3. Добавьте вычисляемое поле в заголовок группы.

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

  4. Чтобы открыть окно свойств, убедитесь, что нужное поле или присоединенный элемент HTML выделены, и нажмите кнопку Свойства [image] на панели инструментов.

  5. Введите в ячейку свойства Данные (ControlSource) выражение (содержащее функции Left или Right), которое позволит отобрать требуемое количество символов.

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

    Выражение | Возвращаемое значение
    =Left([КодПредмета], 2) | МБ
    =Right([КодПредмета], 3) | 100

    Совет. В форме или отчете в базе данных Microsoft Access (.mdb) можно нажать кнопку построителя [image] ,чтобы создать выражение с помощью построителя выражений.

Примечания

  • Для получения дополнительных сведений о создании выражений в базе данных Microsoft Access (.mdb) нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании выражений в проекте Microsoft Access (.adp) нажмите кнопку [image] .

  • Для получения дополнительных сведений о функции Left нажмите кнопку [image] .

  • Для получения дополнительных сведений о функции Right нажмите кнопку [image] .

  • Пример вывода на печать первой буквы названия каждой группы товаров в заголовке группы содержится в отчете «Список товаров» в учебной базе данных «Борей». Для просмотра этого отчета откройте базу данных «Борей» из подпапки Samples папки программ Office, а затем откройте отчет «Список товаров» в режиме отчета. Для получения сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Подчиненные отчеты: что это такое и как они работают

Подчиненные отчеты: что это такое и как они работают

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

Данные из несвязанных источников записей в главном отчете с двумя подчиненными отчетами

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

Свободный главный отчет с двумя подчиненными отчетами, отображающий несвязанные данные

Данные из одного источника записей в главном отчете и подчиненном отчете

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

Главный отчет и подчиненный отчет, присоединенные к одному и тому же источнику записей

Данные из связанных источников записей в главном отчете и двух подчиненных отчетах

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

Главный отчет с двумя подчиненными отчетами, отображающий связанные данные

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

Уровень 1 | Уровень 2
Подчиненный отчет 1 | Подчиненный отчет 2
Подчиненный отчет 1 | Подчиненная форма 1
Подчиненная форма 1 | Подчиненная форма 2

Примечание. Подчиненные отчеты используются в отчетах «Продажи по типам» и «Продажи по годам» в учебной базе данных «Борей». Для просмотра этих отчетов откройте базу данных Борей.mdb из подпапки Samples папки программ Office, а затем откройте отчет в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


Создание подчиненного отчета

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

Предполагаемые действия

Создание подчиненного отчета в существующем отчете

Добавление существующего отчета в другой существующий отчет

Дополнительные сведения о подчиненных отчетах


 Связь между главным и подчиненным отчетом

Связь между главным и подчиненным отчетом

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

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

  • Определены отношения для выбранных таблиц или для базовых таблиц выбранных запросов.

  • Главный отчет основан на таблице с первичным ключом, а подчиненный отчет основан на таблице, содержащей поле с таким же именем, как и у этого первичного ключа, и с таким же или совместимым типом данных. Например, если первичный ключ базовой таблицы главной формы имеет тип данных «Счетчик», а его свойство Размер поля (FieldSize) имеет значение Длинное целое, то соответствующее поле в базовой таблице подчиненной формы должно иметь тип данных «Числовой» со свойством Размер поля (FieldSize), имеющим значение Длинное целое. При выборе запроса или запросов базовые таблицы этих запросов должны соответствовать тем же условиям.

Примечание. При связывании главного и подчиненного отчетов Microsoft Access использует свойства Основные поля (LinkMasterFields) и Подчиненные поля (LinkChildFields) элемента управления «Подчиненная форма/отчет». Если по каким-либо причинам Access не связывает главный и подчиненный отчет автоматически, пользователь имеет возможность задать значения этих свойств самостоятельно.

Инструкции


 Связывание главного отчета и подчиненного отчета

Связывание главного отчета и подчиненного отчета

Если подчиненный отчет создается с помощью мастера по созданию отчетов или мастера по созданию подчиненных отчетов, то при выполнении некоторых условий Microsoft Access автоматически связывает главный отчет с подчиненным отчетом. Для получения дополнительных сведений нажмите кнопку [image] . Если такие условия не выполняются, для связывания отчетов необходимо выполнить следующие действия.

  1. Откройте главный отчет в режиме конструктора.

  2. Чтобы открыть окно свойств, убедитесь, что элемент управления подчиненного отчета выделен, и нажмите кнопку Свойства [image] на панели инструментов.

  3. Определите связываемые поля. Чтобы ввести несколько связываемых полей или элементов управления, разделите их имена точкой с запятой. Если указываются несколько полей или элементов управления, их имена должны вводиться в свойства Подчиненные поля (LinkChildFields) и Основные поля (LinkMasterFields) в одинаковом порядке.
    • В ячейке свойства Подчиненные поля (LinkChildFields) введите имена связываемых полей подчиненного отчета.

    • В ячейку свойства Основные поля (LinkMasterFields) введите имена всех связываемых полей или элементов управления основного отчета.

    Примечание. В ячейке свойства Подчиненные поля (LinkChildFields) нельзя использовать имя элемента управления.

    Если вы не уверены, какие поля должны быть связываемыми, нажмите кнопку построителя [image] рядом с ячейкой свойства, чтобы открыть построитель связей с полями формы/отчета.

Примечания

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

  • Связываемые поля должны содержать данные одного вида и иметь одинаковые или совместимые типы данных или размеры полей. Например, поле типа «Счетчик» совместимо с числовым полем, свойство Размер поля (FieldSize) которого имеет значение Длинное целое.

  • Для получения сведений об устранении неполадок с подчиненными отчетами нажмите кнопку [image] .


 Создание отчета, печатающегося в несколько столбцов

Создание отчета, печатающегося в несколько столбцов

  1. Создайте отчет.

    Инструкции

    Примечания

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

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

  3. В диалоговом окне Параметры страницы выберите вкладку Столбцы.

  4. В группе Параметры сетки введите в поле число столбцов число столбцов, выводимых на каждой странице.

  5. Введите в поле интервал строк величину интервала по высоте между записями в области данных.

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

  6. Введите в поле столбцов величину интервала между столбцами.

  7. В группе Размер столбца введите в поле ширина ширину столбца, например, 8 сантиметров. Высоту области данных можно задать как в поле высота, так и изменяя размер раздела в режиме конструктора.

  8. Выберите один из параметров в группе Макет столбца: сверху вниз или слева направо.

  9. Откройте вкладку Страница.

  10. В группе «Ориентация» выберите «книжная» или «альбомная».

  11. Нажмите кнопку OK.

Примечания

  • Для получения дополнительных сведений о том, как начинать каждую группу с новой строки или столбца, нажмите кнопку [image] .

  • Отчет «Товары по типам» учебной базы данных «Борей» выводит данные в несколько столбцов. Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Товары по типам» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


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

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

Создание базового запроса

  1. Создайте перекрестный запрос.

    Инструкции

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

  3. В ячейке свойства Заголовки столбцов (СolumnHeadings) введите заголовки столбцов, которые должны выводиться в отчете, разделяя их точкой с запятой. Если заголовок столбца содержит пробелы, заключите его в двойные кавычки (" "). Например, в запросе, показывающем сведения о продажах за квартал, можно ввести:

    "Кв. 1";"Кв. 2";"Кв. 3";"Кв. 4"

Создание отчета

  1. Создайте пустой отчет, связанный с перекрестным запросом.

    Инструкции

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

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


 Отмена печати отчета, не содержащего записей

Отмена печати отчета, не содержащего записей

  1. Откройте отчет в режиме конструктора.

  2. Дважды щелкните область выделения отчета, чтобы открыть окно его свойств.

  3. Выберите в списке свойства Отсутствие данных (OnNoData) элемент [Процедура обработки событий] или имя макроса, отменяющего просмотр или печать отчета.
    • При использовании макроса, команду «Cообщение» (MsgBox) можно применять для вывода причины, объясняющей отсутствие данных для отчете, а команду «ОтменитьСобытие» (CancelEvent) — для отмены печати или предварительного просмотра. Для получения дополнительных сведений о создании макросов нажмите кнопку [image] .

    • В случае процедуры обработки события, используйте инструкцию MsgBox для вывода сообщения и установите аргумент «Cancel» Sub-процедуры Report_NoData в значение True. Для получения дополнительных сведений о настройке процедуры обработки события нажмите кнопку [image] .

Примечание Отчет «Продажи по сотрудниками и странам» учебной базы данных «Борей» использует процедуру обработки событий, заданную в ячейке свойства Отсутствие данных (OnNoData). Чтобы просмотреть этот отчет, откройте базу данных, расположенную в подкаталоге Samples каталога Office, а затем откройте отчет «Продажи по сотрудниками и странам» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Печать условий отбора в заголовке отчета

Печать условий отбора в заголовке отчета

  1. В базе данных Microsoft Access (.mdb) создайте параметры условий отбора а базовом запросе отчета. В проекте Microsoft Access (.adp), создайте параметры в базовой сохраненной процедуре отчета.

  2. Откройте отчет в режиме конструктора.

  3. Создайте свободное поле для каждого отображаемого параметра. Для этого нажмите кнопку Поле Поле на панели элементов, а затем щелкните нужное место в области заголовка отчета.

  4. Чтобы открыть окно свойств поля, убедитесь, что нужное поле выделено, и нажмите кнопку Свойства [image] на панели инструментов.

  5. Выполните одно из следующих действий.
    • В базе данных Access задайте в качестве значения свойства Данные (ControlSource) параметры, заданные в ячейке Условие отбора запроса. Например, если в отчете заданы следующие параметры:

      Between [Начальная дата] And [Конечная дата]

      и требуется отображать их в двух полях, введите в ячейку свойства Данные (ControlSource) первого поля значение

      [Начальная дата]

      а в ячейку свойства Данные (ControlSource) второго поля значение

      [Конечная дата]

      Если требуется отображать значения обоих параметров в одном поле, следует ввести в ячейку свойства Данные (ControlSource) выражение, например:

      ="С " & [Начальная дата] & " по " & [Конечная дата]

    • В проекте Access задайте в качестве значения свойства InputParameters отчета строку, указывающую параметры, передаваемые в сохраненную процедуру, к которой присоединен отчет. Как показано в следующем примере, эта строка должна представлять собой выражение, включающее параметры, указанные в сохраненной процедуре, и текст, который должен отображаться в приглашении; текст приглашения следует заключить в квадратные скобки ([ ]):

      @Beginning_date datetime = [Начальная дата], @Ending_date datetime = [Конечная дата]

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

      ="Продажи с "& [Начальная дата] &" по "& [Конечная дата]

  6. Для просмотра условий отбора напечатайте отчет или откройте его в режиме предварительного просмотра. Microsoft Access отобразит значения параметров в точности так, как они введены в приглашении.

Примечание. В отчете «Продажи по сотрудникам и странам» в учебной базе данных «Борей» условия отчета печатаются в заголовке отчета. Чтобы просмотреть этот отчет, откройте базу данных «Борей» из подпапки Samples папки программ Office, а затем откройте отчет «Список товаров» в режиме конструктора. Для получения сведений об открытии базы данных «Борей» нажмите кнопку [image] .


Советы по оптимизации отчетов и подчиненных отчетов

Существует ряд способов повысить скорость печати отчетов. Наряду с перечисленными ниже советами полезно проверить конкретные отчеты с помощью анализатора быстродействия. Для получения сведений об использовании анализатора быстродействия нажмите кнопку [image] .

Советы по повышению быстродействия

  • Не создавайте перекрывающиеся элементы управления.

  • Не создавайте лишние рисунки и другие графические объекты.

  • Преобразуйте свободные рамки объекта, в которых выводятся рисунки, в рамки рисунков.

  • Старайтесь использовать черно-белые рисунки вместо цветных.

  • По возможности, не выполняйте сортировку и группировку по выражениям.

  • Индексируйте поля, по которым проводится сортировка и группировка.

  • Создавайте подчиненные отчеты на базе запросов, а не на базе таблиц. Включайте в запросы только необходимые поля. Лишние поля замедляют выполнение подчиненных отчетов.

  • Индексируйте в подчиненном отчете все поля, связанные с главным отчетом.

  • Индексируйте в подчиненном отчете все поля, используемые в условиях отбора.

  • Старайтесь не использовать статистические функции по подмножеству. Включите поле в базовый запрос отчета или используйте подчиненный отчет.

  • Убедитесь, что базовый запрос отчета оптимизирован.

  • Используйте свойство HasData или событие «Отсутствие данных» (No Data) для присоединения отчета к пустому набору записей или наоборот.


 Страницы доступа к данным: что это такое и как они работают

Страницы доступа к данным: что это такое и как они работают

Страницы доступа к данным представляют собой специальный тип Web-страниц, предназначенный для просмотра и работы через Интернет или интрасеть с данными, хранящимися в базах данных Microsoft Access или базах данных Microsoft SQL Server. Страница доступа к данным может также включать данные из других источников, таких как Microsoft Excel.

Данный раздел содержит справочные сведения по следующим вопросам.

Разработка различных типов страниц доступа к данным

Использование страниц доступа к данным в Internet Explorer

Использование страниц доступа к данным в Microsoft Access

Разработка различных типов страниц доступа к данным

Страницы доступа к данным разрабатываются в режиме конструктора страниц в Microsoft Access. Страница представляет собой отдельный файл, хранящийся за пределами Microsoft Access; однако при создании этого файла Microsoft Access автоматически добавляет ярлык к нему в окно базы данных. Разработка страниц доступа к данным аналогична разработке форм и отчетов: используется список полей, панель элементов, элементы управления, диалоговое окно Сортировка и группировка и т.д. Тем не менее, разработка страниц доступа к данным имеет ряд существенных отличий от разработки форм и отчетов. Способ разработки страницы зависит от ее предназначения.

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

  • Ввод данных. Этот тип страниц доступа к данным используется для просмотра, добавления и редактирования записей. См. сведения о страницах доступа к данным, используемых для ввода данных.

  • Анализ данных. Страницы доступа к данным этого типа могут включать сводные списки — аналог форм Microsoft Access или отчетов Microsoft Excel — которые позволяют реорганизовывать данные для их анализа различными способами. Страница может содержать диаграммы для анализа тенденций, закономерностей и выполнения сравнений между данными в базе данных или электронные таблицы, в которые можно вводить и редактировать данные, а также использовать формулы для выполнения некоторых вычислений, выполняемых в Microsoft Excel. См. пример страницы доступа к данным, используемой для анализа данных.

Возврат в начало

Использование страниц доступа к данным в Internet Explorer

Страница доступа к данным непосредственно связана с базой данных. При просмотре в Microsoft Internet Explorer для пользователя отображается копия страницы. Поэтому любой отбор данных, сортировка и другие изменения способа отображения данных — включая изменения в сводном списке или электронной таблице — влияют только на копию страницы. Однако изменения в самих данных — изменение значений, добавление или удаление данных — сохраняются в исходной базе данных, и поэтому доступны всем, кто просматривает страницу.

Для получения справки по работе со страницей в Internet Explorer пользователю достаточно нажать кнопку Справка [image] на панели перехода по записям. Файл справки для вывода на экран автоматически добавляется к каждой странице доступа к данным, публикуемой с панелью перехода по записям. При удалении панели перехода по записям или отключении кнопки Справка на этой панели следует предоставить конечным пользователям страницы инструкции по работе с ней.

Примечание. Для просмотра страницы доступа к данным и работы с ней в Интернете или интрасети пользователям необходим Microsoft Internet Explorer 5 и лицензия Microsoft Office 2000.

Возврат в начало

Использование страниц доступа к данным в Microsoft Access

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

Для получения справки по работе со страницей в режиме страницы следует нажать кнопку Справка на панели инструментов режима страницы для вызова справочной системы Access. По нажатию кнопки Справка на панели перехода по записям страницы на экран выводится справка по работе со страницей в Internet Explorer. Как говорилось выше, этот файл справки автоматически добавляется к странице доступа к данным, публикуемой с панелью перехода по записям. Можно удалить эту кнопку «Справка» со страниц, используемых только в Access, либо изменить свойства кнопки для предоставления настроенной справки.

Возврат в начало

Дополнительные сведения

Создание страницы доступа к данным


 Создание страницы доступа к данным

Создание страницы доступа к данным

Для создания страницы доступа к данным или открытия страницы в режиме конструктора, режиме просмотра страниц или Microsoft Internet Explorer необходимо установить Internet Explorer версии 5 или более поздней, если он еще не установлен.

Предполагаемые действия

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

Создание страницы доступа к данным с помощью мастера. Мастер задает подробные вопросы об источниках записей, полях, макете страницы, форматах и создает страницу на основании полученных ответов

Преобразование существующей Web-страницы в страницу доступа к данным

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


 Выбор между формой, отчетом, снимком отчета и страницей доступа к данным

Выбор между формой, отчетом, снимком отчета и страницей доступа к данным

Каждый объект базы данных Microsoft Access имеет конкретное назначение. В следующей таблице Да указывает на то, что объект лучше всего подходит для выполнения конкретной задачи, Возможно указывает на то, что объект пригоден для выполнения задачи, но не оптимально, а Нет указывает на то, что объект совсем не подходит для выполнения данной задачи.

Задача или назначение | Форма | Отчет | Снимок отчета | Страница доступа к данным
Ввод, редактирование данных и взаимодействие с ними в пределах базы данных Microsoft Access или проекта Microsoft Access | Да | Нет | Нет | Да
Ввод, редактирование данных и взаимодействие с ними через Интернет или интрасеть за пределами базы данных Access или проекта Access; пользователи должны обязательно иметь лицензию Microsoft Office 2000, но устанавливать Office не обязательно | Нет | Нет | Нет | Да
Печать данных для распространения | Возможно | Да | Да | Возможно
Распространение данных по электронной почте | Нет | Нет | Да (статические данные) | Да (изменяющиеся данные)


 Стратегии создания страниц доступа к данным

Стратегии создания страниц доступа к данным

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

Анализ данных

Ввод и редактирование данных

Наглядное отображение данных

Просмотр данных

Анализ данных

Для анализа данных можно использовать сводные списки, так как они позволяют организовывать данные различными способами. Сводный список можно присоединить к данным базы данных или использовать данные с листа Microsoft Excel. Сводный список можно использовать как единственный элемент управления на странице доступа к данным или с другими элементами управления.

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

  • При использовании сводного списка на странице доступа к данным с группировкой:
    • поместите сводный список и присоединенные элементы управления в раздел;

    • убедитесь, что сводный список находится на самом нижнем уровне группировки;

    • если сводный список является единственным элементом управления в разделе, удалите или скройте раздел кнопок перехода для уровня группировки, на котором находится сводный список;

    • убедитесь, что для свойства Размер страницы доступа (DataPageSize) в окне Сортировка и группировка установлено значение 1.

Инструкции по созданию сводного списка на странице доступа к данным.

Возврат в начало

Ввод и редактирование данных

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

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

  • Помещайте элементы управления в основной части страницы или в разделах. Если раздел не используется, его можно удалить.

  • Создайте только один уровень группировки. Окно Сортировка и группировка будет содержать только один источник группы записей.

  • убедитесь, что для свойства Размер страницы доступа (DataPageSize) в окне Сортировка и группировка установлено значение 1.

  • Используйте компонент электронной таблицы для создания электронных таблиц, с помощью которых выполняются вычисления с полями записи. Вычисляемые значения можно отобразить в электронной таблице или скрыть электронную таблицу и отобразить рассчитанные значения в присоединенных элементах управления HTML.

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

  • Если требуется редактировать данные из таблиц, имеющих отношение «один-ко-многим», создайте одну страницу, присоединенную к таблице на стороне «один» этого отношения, и вторую таблицу, присоединенную к таблице на стороне «многие». Затем с помощью диалогового окна Добавить гиперссылку можно создать связь между двумя страницами доступа к данным. Если требуется, чтобы данные с обеих страниц выводились на одной странице, можно воспользоваться редактором HTML (например, Microsoft FrontPage) для создания кадров.

См. сведения о создании страниц доступа к данных, используемых для ввода данных.

Возврат в начало

Наглядное отображение данных

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

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

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

  • убедитесь, что для раздела, содержащего электронную таблицу, свойство Размер страницы доступа (DataPageSize) в окне Сортировка и группировка имеет значение 1.

Инструкции по созданию электронной таблицы на странице доступа к данным.

Инструкции по созданию диаграммы на странице доступа к данным.

Возврат в начало

Просмотр данных

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

  • Помещайте присоединенные элементы управления в раздел.

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

  • Удаляйте ненужные кнопки с панели перехода по записям.

  • Для сокращения времени загрузки страницы доступа к данным в Microsoft Internet Explorer рекомендуется следующее.
    • Используйте присоединенные элементы управления HTML вместо полей.

    • Установите для свойства Развернуто по умолчанию (ExpandedByDefault) всех уровней группировки значение Нет.

    • Для свойства Размер страницы доступа (DataPageSize) в окне Сортировка и группировка, определяющего число записей, отображаемых в группе на странице, лучше установить низкое, чем высокое значение, или значение Все. Чем ниже значение этого свойства, тем быстрее отображаются записи.

Инструкции по созданию страницы доступа к данным с группировкой записей.

Возврат в начало


 Страницы доступа к данным, используемые для ввода данных

Страницы доступа к данным, используемые для ввода данных

Данный раздел содержит справочные сведения по следующим вопросам.

Использование страниц доступа к данным для ввода данных

Страница ввода данных в режиме конструктора

Страница ввода данных в режиме страницы или в Internet Explorer

Использование страниц доступа к данным для ввода данных

Использование страниц доступа к данным для ввода данных аналогично использованию форм ввода данных: допускается ввод, редактирование и удаление данных в базе данных. Однако страницу можно использовать за пределами базы данных Microsoft Access, предоставляя пользователям, имеющим лицензию Microsoft Office 2000, возможность обновлять данные через Интернет или интрасеть.

Ниже показан внешний вид страницы доступа к данным «Товар», используемой для ввода и обновления сведений о товарах, в режиме страницы и в Microsoft Internet Explorer версии 5 или более поздней.

Страница ввода данных в режиме страницы

Возврат в начало

Страница ввода данных в режиме конструктора

Основная часть страницы. Представляет собой основную часть макета страницы доступа к данным. Основную часть страницы ввода данных можно использовать для отображения информационного текста, присоединенных элементов управления и разделов. По умолчанию положение разделов и других элементов на основной части страницы является относительным, т.е. элементы располагаются один за другим в том порядке, в котором они появляются в источнике HTML. Положение элемента определяется предшествующим содержимым. При просмотре в режиме страницы или в Internet Explorer, содержимое основной части упорядочивается по размеру окна Web-обозревателя.

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

Существует два типа разделов, обычно используемых на страницах ввода данных: разделы заголовка группы и перехода по записям. На странице ввода данных можно использовать только заголовок группы; таким образом, примечание группы недоступно, но можно использовать раздел подписей.

  • Заголовок группы. Используется для отображения данных и вычисления значений.

  • Переход по записям. Используется для отображения кнопок перехода по записям для уровня группировки. Раздел перехода по записям для группы отображается после раздела заголовка группы. Помещать в раздел перехода по записям присоединенные элементы управления нельзя.

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

Каждый уровень группировки на странице доступа к данным имеет источник записей. Имя источника записей отображается в строке заголовка каждого раздела для данного уровня группировки. Ниже показана страница доступа к данным «Товары» в режиме конструктора.

Составные части страницы ввода данных в режиме конструктора

Возврат в начало

Страница ввода данных в режиме страницы или в Internet Explorer

Ниже показано, как выглядят разделы на странице доступа к данным «Товары», открытой в режиме страницы или в Internet Explorer. Ввод и редактирование данных возможны только на страницах доступа к данным с только одним уровнем группировки, на которых отображается только одна запись. Для отображения одной записи следует в режиме конструктора страницы в окне Сортировка и группировка задать для свойства уровня группировки Размер страницы доступа к данным (DataPageSize) значение 1.

Разделы на странице ввода данных в режиме страницы

Возврат в начало

Дополнительные сведения

Создание страницы доступа к данным


 Группировка записей на страницах доступа к данным

Группировка записей на страницах доступа к данным

Данный раздел содержит справочные сведения по следующим вопросам.

Преимущества страниц доступа к данным с группировкой

Страница доступа к данным с группировкой в режиме конструктора

Страница доступа к данным с группировкой в режиме страницы или в Internet Explorer

Преимущества страниц доступа к данным с группировкой

Группировка записей на странице доступа к данным аналогична группировке записей в отчете: создается иерархия, которая группирует записи от общих категорий к конкретным деталям. Однако, страницы доступа к данным имеют некоторые преимущества над печатаемыми отчетами.

  • Страницы, присоединенные к данным базы данных, отображают текущие данные благодаря наличию подключения к базе данных.

  • Страницы интерактивны. Пользователи имеют возможность фильтровать, сортировать и просматривать нужные записи.

  • Страницы могут распространяться в электронном виде с помощью электронной почты. Получатели будут видеть текущие данные при каждом открытии сообщения.

Ниже показан внешний вид страницы доступа к данным «Заказы по датам», которая отображает итоговые сведения о заказах, сгруппированные по датам, в режиме страницы или в Microsoft Internet Explorer версии 5 или более поздней.

Страница доступа к данным с одной развернутой группой

Возврат в начало

Страница доступа к данным с группировкой в режиме конструктора

Основная часть страницы. Представляет собой основную часть макета страницы доступа к данным. Основную часть страницы доступа к данным с группировкой можно использовать для отображения информационного текста и разделов. По умолчанию положение текста, разделов и других элементов на основной части страницы является относительным, т.е. элементы располагаются один за другим в том порядке, в котором они появляются в источнике HTML. Положение элемента определяется предшествующим содержимым. При просмотре в режиме страницы или в Internet Explorer содержимое основной части упорядочивается по размеру окна Web-обозревателя.

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

Существует четыре типа разделов, доступных на страницах доступа к данным с группировкой: разделы заголовка группы, примечаний группы, подписей и перехода по записям. Можно использовать те разделы, которые нужны для уровня группировки.

  • Раздел заголовка группы. Используется преимущественно для отображения данных и вычисления итоговых значений. Для группировки данных необходимо как минимум два уровня группировки. Заголовок группы на нижнем уровне группировки подобен разделу данных в отчете: он повторяется до тех пор, пока не будут распечатаны все записи текущего раздела.

  • Раздел примечаний группы. Используется преимущественно для вычисления итоговых значений. Отображается перед разделом перехода по записям для уровня группировки. Примечание группы недоступно для нижнего уровня группировки на странице доступа к данным.

  • Раздел подписей. Используется для отображения подписей столбцов данных. Отображается непосредственно перед заголовком группы. Данный раздел отображается только в том случае, когда развернута группа, находящаяся на следующем уровне сверху. В раздел подписей нельзя помещать присоединенные элементы управления.

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

Каждый уровень группировки имеет источник записей. Имя источника записей отображается в строке заголовка каждого раздела для данного уровня группировки. Ниже показана страница доступа к данным «Заказы» в режиме конструктора.

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

Возврат в начало

Страница доступа к данным с группировкой в режиме страницы или в Internet Explorer

Ниже показан внешний вид разделов на той же странице доступа к данным , открытой в режиме страницы или в Internet Explorer версии 5 или более поздней. Количество записей, которые требуется отображать на странице для каждого уровня группировки можно задать значением свойства Размер страницы доступа к данным (DataPageSize) в окне Сортировка и группировка в режиме конструктора страницы. В данном примере свойство Размер страницы доступа к данным (DataPageSize) имеет значение 2 для уровня группировки «ценаЗаказа-ДатаЗаказа» и Все для уровня группировки «ценаЗаказа».

Страница доступа к данным с группировкой с развернутыми записями одной группы

Возврат в начало

Дополнительные сведения

Создание страницы доступа к данным со сгруппированными записями.

См. сведения о группировке записей по интервалам значений числовых, денежных полей и полей счетчика

См. сведения о группировке записей по интервалам значений дат и времени

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


 Подключение страницы доступа к данным или другой Web-страницы к базе данных

Подключение страницы доступа к данным или другой Web-страницы к базе данных

Если при создании страницы доступа к данным или при открытии в Microsoft Access Web-страницы, созданной не в Access, не открыта ни одна база данных, Access запрашивает сведения о подключении. Если не указать сведения о подключении в ответ на приглашение, их необходимо будет указать после открытия страницы; в противном случае связать данные из базы данных со страницей не удастся. Кроме того, в случае изменения расположения базы данных после создания страницы доступа к данным, в свойстве ConnectionString которой сохраняется исходное расположение базы данных, сведения о подключении страницы необходимо изменить.

  1. В режиме конструктора страницы доступа к данным откройте список полей.

  2. Щелкните правой кнопкой значок базы данных вверху списка.

  3. Выберите в контекстном меню команду Подключение.

  4. Укажите сведения о подключении к базе данных, которая будет использоваться для страницы доступа к данным.

    Для получения сведений о параметрах вкладки Connection нажмите кнопку Справка.

Примечания

  • Если при создании страницы доступа к данным или при открытии Web-страницы, созданной не в Microsoft Access, уже имеется открытая база данных Microsoft Access или проект Microsoft Access, то страница автоматически подключается к открытой базе данных, а сведения о подключении сохраняются в свойстве ConnectionString страницы.

  • Свойства ConnectionString можно также изменять непосредственно в окне свойств страницы доступа к данным.

  • Сводный список на странице доступа к данным может иметь собственную строку подключения, если в нем отображаются данные из внешнего источника. Существует возможность изменения сведений о подключении сводного списка из Access при помощи редактора подключений в разделе Источник данных на панели свойств сводной таблицы.


 Источники данных для страниц доступа к данным

Источники данных для страниц доступа к данным

Данный раздел содержит справочные сведения по следующим вопросам.

Типы источников данных для страниц доступа к данным

Типы источников данных для Web-компонентов Microsoft Office на страницах доступа к данным

Типы источников данных для страниц доступа к данным

Страницы доступа к данным используют данные из баз данных Microsoft Access или баз данных Microsoft SQL Server версии 6.5 или более поздней. Чтобы создать страницу, использующую данные одной из таких баз данных, необходимо подключить страницу к базе данных. При наличии открытой базы данных Microsoft Access или проекта Microsoft Access, подключенного к базе данных Microsoft SQL Server, создаваемая страница доступа к данным автоматически подключается к текущей базе данных, путь к которой сохраняется в свойстве Строка подключения (ConnectionString) страницы доступа к данным. При просмотре страницы в Internet Explorer 5 или в режиме страницы текущие данные из базы данных, являющейся источником данных, отображаются с использованием пути, определенного в свойстве Строка подключения (ConnectionString). Если при разработке страницы доступа к данным база данных находится на локальном диске, Microsoft Access использует локальный путь, что делает данные недоступными для других пользователей. Поэтому важно переместить или скопировать базу данных в сетевую папку, доступную конечным пользователям. Если база данных расположена в сети, откройте ее с помощью адреса UNC. В случае перемещения или копирования базы данных после окончания разработки страницы необходимо обновить значение свойства Строка подключения (ConnectionString), указав путь к новому расположению.

Когда страница доступа к данным подключена к базе данных, на вкладке База данных в списке полей отображаются папки, содержащие все доступные в этой базе данных таблицы и запросы. Эти источники записей используются для добавления данных на страницу доступа к данным. Если на значке базы данных стоит красный крестик (X), а папки под значком не отображаются, то для продолжения разработки страницы следует подключить страницу доступа к данным к базе данных.

Возврат в начало

Типы источников данных для Web-компонентов Microsoft Office на страницах доступа к данным

Хотя данные на страницы доступа к данным поступают из баз данных Microsoft Access или Microsoft SQL Server, на странице могут использоваться элементы управления Web-компонентами Microsoft Office для отображения данных из баз данных любого из двух типов или из других источников. Например, страница может содержать сводный список, электронную таблицу или диаграмму с данными из листа Microsoft Excel или из базы данных, созданной не в Microsoft Access и не в Microsoft SQL Server. В зависимости от источника, данные в этих элементах управления могут представлять собой снимки исходных данных или изменяемые данные, отображаемые через отдельное подключение, существующее между элементом управления и источником данных.

Для создания Web-компонента с данными, источником которых является не текущая база данных, может потребоваться использование программы, отличной от Microsoft Access, для предварительной публикации этих данных на Web-странице. Например, чтобы создать сводный список, содержащий данные из листа Microsoft Excel, необходимо опубликовать данные из Microsoft Excel. Затем, в Microsoft Access, можно открыть соответствующую Web-страницу и сделать из нее страницу доступа к данным, добавив элементы управления, присоединенные к базе данных Microsoft Access или Microsoft SQL Server. Можно выполнить дальнейшую настройку страницы, добавив надписи, рисунки и другие компоненты, улучшающие ее внешний вид. Работая в Microsoft Access, можно создать сводный список, использующий данные из внешнего источника, отличного от Microsoft Excel. Для этого при создании элемента управления следует указать сведения о подключении в разделе Источник данных окна Панель свойств: Сводная таблица.

Возврат в начало

Дополнительные сведения

Web-компоненты Microsoft Office

Архитектура OLE DB и Data Link


 Открытие страницы доступа к данным

Открытие страницы доступа к данным

Для создания страницы доступа к данным или открытия страницы в режиме конструктора, режиме страницы или в Microsoft Internet Explorer необходимо установить Internet Explorer версии 5 или более поздней, если он еще не установлен.

Открытие страницы в режиме конструктора или в режиме страницы

  1. В окне базы данных щелкните значок Страницы [image] в списке Объекты.

  2. Выберите страницу доступа к данным, которую требуется открыть.

  3. На панели инструментов окна базы данных выполните одно из следующих действий.
    • Чтобы открыть страницу в режиме конструктора, нажмите кнопку Конструктор.

    • Чтобы открыть страницу в режиме страницы, нажмите кнопку Открыть.

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

Открытие страницы в Internet Explorer

Выполните одно из следующих действий.

  • Откройте страницу доступа к данным в Access в режиме конструктора или в режиме страницы, а затем выполните команду Предварительный просмотр Web-страницы из меню Файл.

  • Если Internet Explorer является стандартным Web-обозревателем, то для открытия страницы в Internet Explorer достаточно дважды щелкнуть файл HTML в проводнике Windows, без предварительно открытия в Microsoft Access.


 Переключение между режимами отображения страницы доступа к данным

Переключение между режимами отображения страницы доступа к данным

Для создания страницы доступа к данным или открытия страницы в режиме конструктора, в режиме страницы или в Microsoft Internet Explorer необходимо установить Internet Explorer версии 5 или более поздней, если он еще не установлен.

Переключение между режимами в Microsoft Access

  1. Откройте страницу доступа к данным в режиме конструктора или в режиме страницы.

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

Переключение между Microsoft Access и Internet Explorer

Выполните одно из следующих действий.

  • В Microsoft Access откройте страницу в режиме конструктора или в режиме страницы, а затем выберите команду Предварительный просмотр Web-страницы в меню Файл.

  • В Internet Explorer выберите команду Править в Microsoft Access из меню Файл, чтобы открыть страницу в Microsoft Access в режиме конструктора.


 Добавление данных на страницу доступа к данным при помощи списка полей

Добавление данных на страницу доступа к данным при помощи списка полей

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

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

Подключение к базе данных

Автоматическое определение связанных полей

Добавление отдельных элементов управления для каждого поля

Добавление сводной таблицы с несколькими полями

Автоматическое построение запроса SQL для страницы доступа к данным

Автоматическое построение определения данных страницы доступа к данным

Подключение к базе данных

Для того чтобы добавить данные на страницу доступа к данным, необходимо подключиться к базе данных Microsoft Access или базе данных Microsoft SQL Server. Когда страница подключена к одной из этих баз данных, на вкладке База данных списка полей отображаются папки, содержащие все таблицы и запросы, доступные в базе данных. Если на значке базы данных в списке полей отображается красный крестик (X), а папки под ним не отображаются, для продолжения разработки страницы доступа к данным необходимо подключить ее к базе данных.

Возврат в начало

Автоматическое определение связанных полей

Если щелкнуть в списке полей маркер развертывания рядом с конкретной таблицей или запросом, отобразится список полей для этого источника записей. Если источником записей является таблица, над списком папок отображается папка «Связанные таблицы». Эта папка содержит список таблиц и полей, связанных с таблицей, которая развернута в списке полей. Если задержать указатель на таблице из папки «Связанные таблицы», отобразится поле, связывающее таблицы. При добавлении полей непосредственно из связанных таблиц или из запросов, использующих связанные таблицы, Microsoft Access автоматически использует существующие отношения при создании страницы доступа к данным. При добавлении на страницу полей из несвязанных таблиц или из таблиц, не имеющих множественных отношений с таблицами, которые уже используются на странице, Microsoft Access каждый раз выводит приглашение определить новое отношение. Отношения, определяемые таким образом, используются только для текущей страницы доступа к данным; в базу данных они не добавляются.

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

Возврат в начало

Добавление отдельных элементов управления для каждого поля

Поля можно перетаскивать на страницу доступа к данным по одному для создания элементов управления, присоединенных к данному полю. Также можно перетаскивать из списка полей целые таблицы или другие источники записей, для одновременного добавления всех содержащихся в них полей. Если на панели элементов выбрано средство Мастера [image] , то при перетаскивании в раздел целой таблицы Microsoft Access выводит на экран мастер макета с вопросом, следует ли добавить поля как отдельные элементы управления или как сводный список. Если требуется, чтобы пользователи могли редактировать данные в полях, или требуется расположить элементы управления свободным образом, используйте отдельные элементы управления. За редкими исключениями, Microsoft Access автоматически создает элемент управления подходящего типа, основанный на типе данных, хранящихся в поле. Кроме того, можно выбрать нужный тип создаваемого элемента управления перед перетаскиванием поля на страницу доступа к данным.

Возврат в начало

Добавление сводной таблицы с несколькими полями

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

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

Возврат в начало

Автоматическое построение запроса SQL для страницы доступа к данным

При перетаскивании полей и источников записей на страницу доступа к данным и добавлении уровней группировки, порядков сортировки и т.д. Microsoft Access автоматически создает запрос, переводящий изменения макета и структуры на распознаваемый базой данных язык SQL (Structured Query Language). Используя существующие отношения, определенные между источниками записей, Microsoft Access создает запрос, загружающий выбранные данные, и представляет их указанным способом. Если поля добавляются из источников записей, не имеющих отношений, Microsoft Access выводит на экран диалоговое окно Создание отношения, позволяющее пользователю самостоятельно определить отношение.

Возврат в начало

Автоматическое построение определения данных страницы доступа к данным

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

Возврат в начало

Дополнительные сведения

Источники данных для страниц доступа к данным


 Обновление списка полей страницы доступа к данным, чтобы вывести новые таблицы или запросы

Обновление списка полей страницы доступа к данным, чтобы вывести новые таблицы или запросы

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

  • На вкладке База данных списка полей щелкните правой кнопкой значок базы данных в верхней части списка полей, а затем выберите команду Обновить.


 Определение новых связей между источниками записей на странице доступа к данным

Определение новых связей между источниками записей на странице доступа к данным

Если на страницу доступа к данным добавляются поля из таблиц или запросов, между которыми не установлены связи, Microsoft Access предложит определить эти связи.

  • В диалоговом окне Создание отношения укажите, какое поле следует использовать для связи источника записей, который был только что добавлен на страницу доступа к данным, и источника или источников записей, входящих в определение данных страницы доступа к данным. Укажите также тип отношения между двумя источниками записей.

Примечания

  • Связи, определенные в диалоговом окне Создание отношения, относятся только к текущей странице доступа к данным. Они не вносятся в базу данных, поэтому они не будут отображаться в окне схемы данных в базе данных Microsoft Access, или в окне схемы базы данных в проекте Microsoft Access.

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


 Выделение страницы доступа к данным, раздела, элемента управления и других элементов

Выделение страницы доступа к данным, раздела, элемента управления и других элементов

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выполните одно из следующих действий.
    • Чтобы выделить страницу, выберите команду Выделить страницу в меню Правка.

    • Чтобы выделить основной текст, щелкните любое место за пределами раздела.

    • Чтобы выделить раздел, щелкните заголовок этого раздела.

    • Чтобы выделить элемент управления, щелкните этот элемент управления.

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


 Задание свойств документа, например, названия, темы и автора, для страницы доступа к данным

Задание свойств документа, например, названия, темы и автора, для страницы доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора или в режиме страницы.

  2. В меню Файл выберите команду Свойства страницы.

  3. Задайте нужные свойства на следующих вкладках.
    • Общие. Содержит те же сведения, которые отображаются, если щелкнуть правой кнопкой имя файла в проводнике Microsoft Windows, а затем выбрать в контекстном меню команду Свойства. Единственное отличие состоит в том, что при просмотре этих свойств в Microsoft Access параметры в группе Атрибуты доступны только для чтения.

    • Документ. Сведения, вводимые на этой вкладке, добавляются в объект Document SummaryInfo семейства Documents. Эти сведения аналогичны сведениям о документе, которые можно предоставить в других приложениях Microsoft Office. Сведения о документе позволяют лучше определить страницу как из Microsoft Access, так и из других программ, таких как программа поиска файлов Microsoft Windows. Значение База гиперссылки на вкладке Документ используется для создания базового пути гиперссылки, добавляемого в начало относительного значения свойства Адрес гиперссылки (HyperlinkAddress).

    • Статистика. Здесь указаны такие сведения как дата и время создания активной страницы, дата и время ее последнего изменения, автор изменений, число правок, а также общее время правок.

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

    • Прочие. Свойства, вводимые на этой вкладке, становятся свойствами объекта Document UserDefined семейства Documents.


 Задание свойств страниц доступа к данным, их разделов и элементов управления

Задание свойств страниц доступа к данным, их разделов и элементов управления

  1. Откройте страницу доступа к данным в режиме конструктора.

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

    • Для того чтобы выделить раздел, щелкните заголовок этого раздела.

    • Для того чтобы выбрать элемент управления, щелкните этот элемент управления.
  3. Нажмите кнопку Свойства [image] на панели инструментов. Microsoft Access отобразит в строке заголовка окна свойств имя выделенного объекта.


 Вычисление итогового или другого значения для одной записи на странице доступа к данным

Вычисление итогового или другого значения для одной записи на странице доступа к данным

Предполагаемые действия

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

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


 Вычисление суммы, среднего или другого общего значения для группы записей на странице доступа к данным

Вычисление суммы, среднего или другого общего значения для группы записей на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора. На странице должно быть как минимум два уровня группировки.

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

  3. Убедитесь, что присоединенный элемент HTML выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  4. В ячейке свойства TotalType выберите из списка нужную функцию, вычисляющую общее значение: Sum, Avg, Min, Max, Count, Any или StDev.


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

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

  1. Откройте страницу доступа к данным в режиме конструктора. На странице должно быть как минимум два уровня группировки.

  2. Создайте присоединенный элемент управления HTML, присоединенный к полю, по которому должно вычисляться общее значение, в заголовке группы высшего уровня группировки.

  3. Убедитесь, что присоединенный элемент управления HTML выделен, и нажмите кнопку Повысить уровень [image] на панели инструментов.

  4. Снова выделите присоединенный элемент HTML и нажмите кнопку Свойства [image] на панели инструментов.

  5. В ячейке свойства TotalType выберите из списка нужную функцию, вычисляющую общее значение: Sum, Avg, Min, Max, Count, Any или StDev.

    Остальные шаги выполнять не обязательно.

  6. Создайте подпись для присоединенного элемента HTML.

  7. Выберите элемент развертывания в заголовке, содержащем общее значение, и нажмите клавишу DELETE.

  8. Выберите раздел кнопок перехода для уровня группировки, содержащего общее значение, и нажмите клавишу DELETE. Access удалит раздел и содержащиеся в нем кнопки перехода по записям.


 Примеры выражений, используемых на страницах доступа к данным

Примеры выражений, используемых на страницах доступа к данным

Выражения, используемые в текстовых полях и присоединенных элементах HTML

Примеры выражений с текстовыми значениями

Примеры выражений, содержащих арифметические операторы

Примеры выражений, содержащих ссылки на значения элементов управления

Примеры выражений, вычисляющих и обрабатывающих даты

Примеры выражений, возвращающих одно из двух возможных значений

Дополнительная информация о создании выражений в базе данных Microsoft Access (.mdb)

Дополнительная информация о создании выражений в проекте Microsoft Access (.adp)

Функции, которые можно использовать на страницах доступа к данным в элементах управления и базовых запросах

Выражения, которые можно использовать в элементах управления «Электронная таблица»

Примеры часто используемых формул


Темы

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

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

Можно применить к странице тему впервые, применить другую тему либо убрать тему с помощью команды Тема из меню Формат. Перед применением тему можно просмотреть, выбрав ее из списка доступных тем и просмотрев отображение образцов элементов страницы доступа к данным в поле Образец темы. Кроме того, перед применением темы в диалоговом окне Тема можно выбрать использование более ярких цветов для текста и рисунков, а также использование фона на странице доступа к данным. Анимация рисунков темы действует только при просмотре страницы доступа к данным в Web-обозревателе, но не в Microsoft Access.

После установки Access на жестком диске доступны различные темы. Если на компьютере установлено приложение Microsoft FrontPage версии 4.0 или 98, можно использовать также темы FrontPage. Кроме того, существуют различные дополнительные темы, доступные через Интернет. Чтобы загрузить эти дополнительные темы, выберите команду Microsoft на Web в меню Справка.

Дополнительные сведения

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


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

Предполагаемые действия

Получение дополнительных сведений о темах

Применение темы к существующей странице доступа к данным

Применение темы к новой странице доступа к данным

Выбор темы по умолчанию для новых страниц доступа к данным


 Выбор темы по умолчанию для новых страниц доступа к данным

Выбор темы по умолчанию для новых страниц доступа к данным

  1. Откройте любую страницу доступа к данным в режиме конструктора.

  2. В меню Формат выберите команду Тема.

  3. В списке Выберите тему укажите тему.

  4. Нажмите кнопку По умолчанию.

  5. Нажмите кнопку Да.


Удаление темы страницы доступа к данным

Предполагаемые действия

Удаление темы существующей страницы доступа к данным

Удаление темы, используемой по умолчанию для новых страниц доступа к данным


 Добавление фонового рисунка на страницу доступа к данным

Добавление фонового рисунка на страницу доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. В меню Формат выберите команду Фон и подкоманду Рисунок.

  3. В диалоговом окне Выбор рисунка убедитесь, что в поле со списком Тип файлов установлено значение Рисунки, и укажите файл рисунка, который нужно сделать фоновым.

  4. Нажмите кнопку OK.

Примечание. Для настройки фонового рисунка можно использовать следующие свойства, расположенные в окне свойств: BackgroundPostionX, BackgroundPositionY и BackgroundPositonRepeat.


 Добавление фонового звука на страницу доступа к данным

Добавление фонового звука на страницу доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. В меню Формат выберите команду Фон и подкоманду Звук.

  3. В диалоговом окне Вставка звука убедитесь, что в поле со списком Тип файлов установлено значение Все звуки (*.wav;*.au), и укажите файл звука, который нужно сделать фоновым.

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

    • Нажмите кнопку Связать с файлом, чтобы создать ссылку на звуковой файл.

    Звук будет воспроизводиться при открытии страницы в режиме страницы или в обозревателе Internet Explorer.


 Изменение источника записей для раздела страницы доступа к данным

Изменение источника записей для раздела страницы доступа к данным

Эту процедуру можно выполнять только для тех страниц, которые имеют лишь один уровень группировки.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Щелкните заголовок раздела, который нужно изменить, и нажмите кнопку Свойства [image] на панели инструментов.

  3. В ячейке свойства RecordSource выберите из списка источник записей.


 Изменение размеров заголовка, примечаний и других разделов на странице доступа к данным

Изменение размеров заголовка, примечаний и других разделов на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Щелкните заголовок того раздела, который нужно изменить. Microsoft Access отобразит по периметру раздела маркеры изменения размера.

  3. Щелкните маркер выделения. Когда указатель примет вид стрелки, перетащите маркер в соответствующем направлении: верхний или нижний маркер — вверх или вниз, боковой маркер — вправо или влево, угловой маркер — в любом направлении.

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


 Добавление несвязанного раздела на страницу доступа к данным, которая его не содержит

Добавление несвязанного раздела на страницу доступа к данным, которая его не содержит

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. В меню Вставка выберите команду Несвязанный раздел.

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


 Добавление или удаление примечания группы на странице доступа к данным

Добавление или удаление примечания группы на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

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

  4. В ячейке свойства Примечание группы (GroupFooter) выберите одно из следующих значений.
    • Чтобы добавить примечание группы, выберите значение Да. Microsoft Access добавит для выбранного источника группы записей примечание группы над разделом кнопок перехода. В примечание группы можно встроить элементы управления, вычисляющие итоги по группе.

    • Чтобы удалить примечание группы, выберите значение Нет. Access удалит примечание группы и все находящиеся в нем элементы управления.

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


 Добавление или удаление раздела подписей группы на странице доступа к данным

Добавление или удаление раздела подписей группы на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

  3. Выберите источник группы записей, для которого нужно добавить или удалить раздел подписей.

  4. В ячейке свойства Раздел подписей (CaptionSection) выберите одно из следующих значений.
    • Чтобы добавить раздел подписей, выберите значение Да. Microsoft Access добавит раздел подписей над заголовком группы. В разделе подписей можно создать новые названия или вставить уже существующие.

    • Чтобы удалить раздел подписей, выберите значение Нет. Access удалит раздел подписей и все содержащиеся в нем элементы управления.

Примечание. Нельзя добавлять в раздел подписей присоединенные элементы управления.


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

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

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

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

  4. В ячейке свойства Раздел кнопок перехода (RecordNavigationSection) выберите одно из следующих значений.
    • Чтобы добавить раздел, нажмите кнопку Да. Microsoft Access добавит раздел и кнопки перехода по записям.

    • Чтобы удалить раздел, нажмите кнопку Нет. Access удалит раздел кнопок перехода и все содержащиеся в нем элементы управления.

Совет. Раздел кнопок перехода и содержащиеся в нем элементы управления можно также удалить, выделив его рамку и нажав клавишу DELETE.

Примечания

  • При удалении кнопок перехода или раздела кнопок перехода по записям данного уровня группировки, Microsoft Access автоматически установит свойство Размер страницы доступа к данным (DataPageSize) в значение Все. Если удалить кнопки перехода или раздел кнопок перехода по записям для самого первого уровня группировки, то при открытии страницы в режиме страницы или в Microsoft Internet Explorer будут отображены все записи этой группы. В результате загрузка страницы может потребовать больше времени.

  • Нельзя добавлять в раздел кнопок перехода присоединенные элементы управления.


 Изменение последовательности перехода на страницах доступа к данным

Изменение последовательности перехода на страницах доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выберите элемент управления, место которого в последовательности перехода нужно изменить, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств этого элемента.

  3. В ячейке свойства TabIndex введите новый номер элемента в последовательности перехода.

  4. Чтобы проверить новый порядок перехода, переключитесь в режим страницы.

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


 Исключение текстового поля или другого элемента управления из последовательности перехода на странице доступа к данным

Исключение текстового поля или другого элемента управления из последовательности перехода на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выберите элемент управления, который требуется удалить из порядка перехода, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств этого элемента.

  3. Введите в ячейку свойства TabIndex значение -1.

Примечание. Пока свойство Disabled элемента управления имеет значение False, элемент управления можно выделить щелчком в режиме страницы или в Web-обозревателе, даже если его свойство TabIndex имеет значение -1.


 Вывод названия и другого информационного текста на странице доступа к данным

Вывод названия и другого информационного текста на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выполните одно из следующих действий.
    • Чтобы добавить название, щелкните текст прототипа Название страницы.

    • Чтобы добавить другой информационный текст, щелкните текст прототипа Основной текст и введите текст заголовка.
  3. Используйте кнопки на панели инструментов Формат (страница) для изменения шрифта, его размера и других характеристик текста.

Примечание. Чтобы отобразить на странице HTML-текст, создайте присоединенный элемент HTML в теле страницы или в разделе.


 Форматирование текста в виде маркированного или нумерованного списка на странице доступа к данным

Форматирование текста в виде маркированного или нумерованного списка на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите текст.

  3. На панели инструментов нажмите кнопку Нумерация [image] или Маркеры [image] .


 Увеличение или уменьшение величины отступа текста на странице доступа к данным

Увеличение или уменьшение величины отступа текста на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите текст.

  3. Нажмите кнопку Увеличить отступ [image] или Уменьшить отступ [image] на панели инструментов.


 Удаление текста-прототипа в верхней части страницы доступа к данным

Удаление текста-прототипа в верхней части страницы доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Щелкните Название страницы.

  3. Введите текст заголовка.

Даже если текст-прототип не будет удален, он не будет показан на странице в режиме страницы и в Microsoft Internet Explorer.


 Группировка записей на страницах доступа к данным

Группировка записей на страницах доступа к данным

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

Общие сведения о группировке записей на странице доступа к данным.

Предполагаемые действия

Группировка записей по каждому значению в поле для группировки. Например, группировка продаж по фамилии сотрудника.

Группировка записей с помощью выражения

Группировка записей по первым n символам в тексте. Например, группировка товаров по первой букве названия товара.

Группировка записей по интервалам даты и времени. Например, группировка продаж по месяцам.

Группировка записей по интервалам значений числовых, денежных полей и полей счетчика. Например, группировка продаж по значению суммы отгрузки в интервалах длиной 1000.

Примечание. Можно использовать любые из описанных выше способов для создания страницы с группами и создать фильтр который позволит выбрать группу записей, отображаемую при открытии страницы в режиме страницы или в Microsoft Internet Explorer.


 Объединение двух групп на странице доступа к данным

Объединение двух групп на странице доступа к данным

При объединении двух групп Microsoft Access перемещает элементы управления из заголовка и примечания выбранного уровня группировки в заголовок и примечание группы более низкого уровня.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Щелкните строку заголовка или примечания группы, которую требуется объединить с группой на один уровень ниже.

  3. Нажмите кнопку Понизить уровень [image] на панели инструментов.


 Изменение порядка группировки записей на страницах доступа к данным

Изменение порядка группировки записей на страницах доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите заголовок группы, уровень группировки которой нужно понизить.

  3. Нажмите кнопку Понизить уровень [image] на панели инструментов.

    Microsoft Access переместит элементы управления из заголовка и примечания выделенной группы в заголовок и примечание группы более низкого уровня.

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

  5. Выполните одно из следующих действий.
    • Для группировки по одному полю таблицы или запроса нажмите кнопку Повысить уровень [image] на панели инструментов.

    • Для группировки по таблице или запросу нажмите кнопку Группировать по таблицам [image] на панели инструментов.

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


 Установка или изменение режима сортировки по умолчанию для записей на странице доступа к данным

Установка или изменение режима сортировки по умолчанию для записей на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

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

  4. В поле свойства Сортировка по умолчанию (DefaultSort) введите имена полей, по которым требуется выполнить сортировку. Имена разделяются запятыми. После каждого имени может стоять пробел и ключевое слово ASC или DESC, задающее порядок сортировки, например, ДатаЗаказа DESC, КодЗаказа ASC. Если порядок сортировки не задан, Microsoft Access выполняет сортировку по возрастанию.

    Примечание. Если элемент управления, в котором нужно выполнить сортировку, присоединен к выражению, необходимо ввести псевдоним элемента управления, отображаемый в его свойстве Данные (ControlSource). Например, если свойство Данные (ControlSource) нужного элемента управления имеет значение ГруппаОтпускнойЦены: ОтпускнаяЦена, введите в ячейку свойства Сортировка по умолчанию (DefaultSort) значение ОтпускнаяЦена.


 Указание числа записей, одновременно выводимых в группе на странице доступа к данным

Указание числа записей, одновременно выводимых в группе на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

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

  4. В ячейке свойства Размер страницы доступа к данным (DataPageSize) выберите значение из списка или введите с клавиатуры.

Если задать значение Все для свойства Размер страницы доступа к данным (DataPageSize) уровня группировки, который является единственным или самым высшим уровнем группировки на странице, то при открытии страницы в режиме страницы или в Microsoft Internet Explorer будут отображаться все записи. Если страница содержит большое число записей, время загрузки страницы может увеличиться.

Примечание. Если уровень группировки не имеет раздела кнопок перехода или кнопок перехода по записям, то для просмотра всех записей этого уровня группировки необходимо задать для свойства Размер страницы доступа (DataPageSize) значение Все.


 Выбор режима по умолчанию для отображения группы — развернутой или свернутой — на странице доступа к данным

Выбор режима по умолчанию для отображения группы — развернутой или свернутой — на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

  3. Выберите нужный источник группы записей.

    Примечание. Значение свойства Развернуто по умолчанию (ExpandedByDefault) определяет отображение или скрытие записей следующего уровня группировки при отображении страницы в режиме страницы или в Microsoft Internet Explorer.

  4. В ячейке свойства Развернуто по умолчанию (ExpandedByDefault) выполните одно из следующих действий.
    • Для того чтобы при открытии страницы записи следующего уровня группировки отображались, выберите значение Да.

    • Для того чтобы при открытии страницы записи следующего уровня группировки были скрыты, выберите значение Нет.

Примечание. Страница будет быстрее загружаться в режиме страницы или в Microsoft Internet Explorer, если для свойства Развернуто по умолчанию (ExpandedByDefault) наивысшего уровня группировки на странице установить значение Нет.


 Советы по оптимизации страниц доступа к данным

Советы по оптимизации страниц доступа к данным

Существует ряд способов повышения скорости загрузки страниц доступа к данным в режиме страницы или в Microsoft Internet Explorer 5.

  • Не создавайте перекрывающиеся элементы управления.

  • Не создавайте лишние рисунки и другие графические объекты. Старайтесь использовать черно-белые рисунки вместо цветных.

  • Убедитесь, что в окне Сортировка и группировка свойство Развернуто по умолчанию (ExpandedByDefault) для самого верхнего уровня группировки имеет значение Нет. Установка значения Нет для этого свойства нижних уровней группировки повысит скорость других взаимодействий после открытия страницы.

  • Установите для свойства Размер страницы доступа (DataPageSize) в окне Сортировка и группировка, определяющего число записей, отображаемых в группе на странице, низкое, а не высокое значение или значение Все. Чем ниже значение этого свойства, тем быстрее отображаются записи.

  • Для отображения данных, которые не обновляются (например, значений счетчика, гиперссылок и значений, извлекаемых из выражений) используйте присоединенные элементы управления HTML, а не поля.

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

  • При использовании страниц доступа к данным в Microsoft Access закрывайте все неиспользуемые объекты базы данных.

  • При использовании страниц доступа к данным в Internet Explorer закрывайте все окна, которые не используются.

  • На страницах доступа к данным, используемых для ввода данных, установите для свойства страницы DataEntry значение Истина, чтобы страница открывалась с пустой записью.

  • Индексируйте все поля, по которым проводится сортировка, группировка или отбор.

  • На страницах доступа к данным с группировкой, содержащих записи с отношением «один-ко-многим», группируйте записи по таблице, а не по полю или выражению.

  • На страницах доступа к данным с группировкой, основанных на таблицах с отношением «один-ко-многим», присоединяйте каждый раздел к таблице, а не к запросу. Microsoft Access загружает записи из таблицы только по мере необходимости их отображения на странице. При использовании запроса Access загружает все записи до отображения записей на странице. Используйте запрос только при необходимости ограничения использования данных на странице, вычисления статистических значений или выполнения задач, возможных только в запросе.


 Web-компоненты Microsoft Office

Web-компоненты Microsoft Office

Web-компоненты Microsoft Office состоят из двух файлов .cab (msowcin.cab, msowc.cab), которые содержат несколько выполняемых файлов, которые все вместе называются Web-компонентами Microsoft Office. В число Web-компонентов Office входят Microsoft Jet 4.0 OLE DB Provider, Microsoft OLE DB Provider для SQL Server, Microsoft Office Data Source Control (MSODSC), несколько других элементов ActiveX с файлами справки и прочие связанные файлы. После установки Web-компонентов Office на компьютере можно использовать страницы доступа к данным, а также использовать в интерактивном режиме электронные таблицы, сводные списки и диаграммы в Internet Explorer версии 5 или более поздней.

Web-компоненты Office устанавливаются вместе с Microsoft Office 2000 для разработчиков, а также профессионального, расширенного или стандартного выпусков. Если Web-компоненты Office не установлены на компьютере пользователя, имеющего лицензию на узел Microsoft Office 2000 , разрешающую распространение через интрасеть, системный администратор может настроить Microsoft Internet Explorer на автоматическую загрузку Web-компонентов Office из интрасети организации при первом просмотре страницы и работе с ней. Это позволяет пользователям узла использовать страницы без необходимости устанавливать на свои компьютеры программное обеспечение Microsoft Office 2000.

Сведения о выполнении настройки Web-компонентов Office см. в издании Ресурсы Microsoft Office 2000.


 Элементы управления: что это такое и как они работают

Элементы управления: что это такое и как они работают

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

В Microsoft Access используются следующие типы элементов управления, все доступные через панель инструментов в режиме конструктора форм, режиме конструктора отчета или режиме конструктора страниц доступа к данным: поле, надпись, группа параметров, переключатель, флажок, список, кнопка, рисунок, линия, прямоугольник и дополнительные элементы ActiveX. Для форм и отчетов существуют следующие дополнительные элементы управления: выключатель, поле со списком, присоединенная рамка объекта, свободная рамка объекта, набор вкладок, подчиненная форма/отчет, разрыв страницы. Страницы доступа к данным также включают следующие компоненты: раскрывающийся список, гиперссылка, бегущая строка и сводный список, электронная таблица и диаграмма.

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

Связанный, свободный и вычисляемый элементы управления

Дополнительные сведения об элементах управления Microsoft Access.


Элементы управления Microsoft Access

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

Данный раздел содержит справочные сведения по следующим вопросам.

Элементы управления для ввода, отображения и отбора данных

Элементы управления для анализа данных

Элементы управления для связывания с Web-страницами

Элементы управления для вывода графики и анимированного текста

Элементы управления для пользовательской настройки

Элементы управления для организации данных

Элементы управления для ввода, отображения и отбора данных

Флажки

Поля со списком

Кнопки

Раскрывающиеся списки

Надписи

Списки

Переключатели

Группы параметров

Подчиненные формы

Подчиненные отчеты

Поля

Выключатели

Возврат в начало

Элементы управления для анализа данных

Диаграммы Office

Сводные списки Office

Электронные таблицы Office

Возврат в начало

Элементы управления для связывания с Web-страницами

Гиперссылки и присоединенные гиперссылки

Возврат в начало

Элементы управления для вывода графики и анимированного текста

Гиперрисунки

Рисунки, свободные и связанные рамки объекта

Бегущая строка

Возврат в начало

Элементы управления для пользовательской настройки

Элементы ActiveX

Возврат в начало

Элементы управления для организации данных

Элементы развертывания

Линии

Разрывы страниц

Кнопки перехода по записям

Прямоугольники

Вкладки

Возврат в начало


 Присоединение свободного текстового поля или другого элемента управления к полю или столбцу

Присоединение свободного текстового поля или другого элемента управления к полю или столбцу

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Убедитесь, что элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов.

  3. В ячейку свойства Данные (ControlSource) введите имя поля, с которым связывается элемент управления.

Примечание. Если элемент управления связывается с полем данным способом, а также если меняется базовое поле, к которому присоединен элемент управления, то свойства элемента управления не будут установлены в соответствии со значениями таких же свойств поля. Однако в формах и отчетах для свойств Условие на значение (ValidationRule), Сообщение об ошибке (ValidationText) и Значение по умолчанию (DefaultValue) элемента управления будут установлены значения соответствующих свойств базового поля, поскольку эти свойства накладывают ограничения на значение поля, а не только элемента управления. При создании в форме или отчете присоединенного элемента управления путем перетаскивания полей из списка полей этот элемент управления наследует некоторые свойства поля. Для получения дополнительных сведений о том, какие свойства наследуются и как реализуется это наследование в формах и отчетах, нажмите кнопку [image] .


 Создание свободного текстового поля или другого элемента управления

Создание свободного текстового поля или другого элемента управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Чтобы при создании элемента управления можно было использовать мастера, кнопка Мастера [image] на панели элементов должна быть нажата.

    Примечания

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

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

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

    Примечания

    • Если просто нажать и отпустить кнопку мыши, Microsoft Access создаст элемент управления стандартного размера. Чтобы создать элемент управления определенного размера, нажмите кнопку мыши и, удерживая ее, перетаскивайте указатель до тех пор, пока элемент не примет нужный размер.

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


Создание определенного типа поля или другого элемента управления в форме

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

Данный раздел содержит справочные сведения по следующим вопросам.

Элементы управления для ввода, отображения и отбора данных

Элементы управления для анализа данных

Элементы управления для объединения данных

Элементы управления для настройки Web и формы

Элементы управления для ввода, отображения и отбора данных

Флажки, переключатели и группы переключателей, не входящее в группу

Кнопки

Элементы управления для рисунка или другого объекта, созданного в другом приложении (например, документа Word)

Надписи

Списки и поля со списком

Группа с флажками, выключателями или переключателями

Подчиненные формы

Поля

Возврат в начало

Элементы управления для анализа данных

Диаграммы

Элементы управления для отображения данных Microsoft Access в сводном отчете Microsoft Excel

Возврат в начало

Элементы управления для объединения данных

Элементы управления с несколькими страницами или вкладками

Возврат в начало

Элементы управления для настройки Web и формы

Отображение Web-страницы на форме

Добавление элемента ActiveX

Возврат в начало


Создание текстового поля или другого элемента управления на странице доступа к данным

Данный раздел содержит справочные сведения по следующим вопросам.

Элементы управления для ввода, отображения и отбора данных

Элементы управления для анализа данных

Элементы управления, служащие гиперссылками

Элементы управления для вывода графики и анимированного текста

Дополнительные элементы управления

Элементы управления для организации данных

Создание элементов управления

Элементы управления для ввода, отображения и отбора данных

Присоединенные элементы HTML

Флажки или переключатели, не входящие в группу параметров

Кнопки

Списки и раскрывающиеся списки

Надписи

Группы параметров, содержащие флажки или переключатели

Поля

Возврат в начало

Элементы управления для анализа данных

Диаграммы

Элементы управления для отображения данных Microsoft Access в сводном списке

Электронные таблицы

Возврат в начало

Элементы управления, служащие гиперссылками

Гиперссылки

Присоединенные гиперссылки

Возврат в начало

Элементы управления для вывода графики и анимированного текста

Элементы управления для вывода рисунков

Элементы управления «Гиперрисунок»

Элементы управления «Бегущая строка»

Возврат в начало

Дополнительные элементы управления

Элементы ActiveX

Возврат в начало

Элементы управления для организации данных

Элементы развертывания

Кнопки перехода по записям

Линии

Прямоугольники

Возврат в начало


Создание поля или другого элемента управления в отчете

Предполагаемые действия

Создание надписи

Создание элемента управления-поля

Создание флажка или переключателя, не входящего в группу

Создание группы, содержащей флажки или переключатели

Создание линии

Создание прямоугольника

Создание подчиненного отчета

Создание рамки для рисунка или другого объекта, созданного в другом приложении

Создание диаграммы

Создание элемента ActiveX


 Выделение текстового поля или другого элемента управления

Выделение текстового поля или другого элемента управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Щелкните элемент управления.

Если к элементу управления в форме или отчете присоединена подпись, он приобретает следующий вид:

Выделенный элемент управления с присоединенной подписью в форме или отчете

На странице доступа к данным элемент управления с присоединенной подписью имеет следующий вид:

Выделенный элемент управления с присоединенной подписью на странице доступа к данным

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


 Выделение соседствующих элементов управления в форме или отчете

Выделение соседствующих элементов управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Начав с любого места вне элемента управления, перетащите прямоугольную рамку выделения, чтобы в нее поместились все выделяемые элементы управления.

Советы

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

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


 Выделение разнесенных или перекрывающихся элементов управления в форме или отчете

Выделение разнесенных или перекрывающихся элементов управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Нажмите клавишу SHIFT и, удерживая ее, щелкните каждый элемент управления, который требуется выделить.


 Исключение одного или нескольких элементов управления из группы выбранных элементов

Исключение одного или нескольких элементов управления из группы выбранных элементов

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


 Перемещение текстового поля или другого элемента управления вместе с подписью

Перемещение текстового поля или другого элемента управления вместе с подписью

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выберите элемент управления или его подпись.

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

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

Элемент управления в форме или отчете: указатель принимает форму руки

Элемент управления на странице доступа к данным: указатель принимает вид крестообразной стрелки

Примечания

  • При перемещении элемента управления в форме или отчете можно сохранить его выравнивание по вертикали или по горизонтали относительно других элементов управления. Для этого во время выделения и перемещения элемента управления следует удерживать в нажатом положении клавишу SHIFT. Элемент управления можно перемещать только по вертикали или по горизонтали, в зависимости от того, в каком направлении было начато перемещение.

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


 Независимое перемещение элемента управления или его подписи

Независимое перемещение элемента управления или его подписи

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выберите элемент управления или его подпись.

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

  4. Перетащите элемент управления или его подпись на новое место. Первый пример показывает перетаскивание элемента управления в форме или отчете, а второй пример — перетаскивание элемента управления на странице доступа к данным.

В форме или отчете выделена только подпись элемента управления

На странице доступа к данным выделено только поле

Примечания

  • Компоненты составного элемента управления сохраняют свою взаимосвязь, даже если перемещать их по отдельности.

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

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


 Перемещение в форме или отчете двух или нескольких элементов управления одновременно

Перемещение в форме или отчете двух или нескольких элементов управления одновременно

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выделите элементы управления, удерживая нажатой клавишу SHIFT.

  3. Наведите указатель на границу (не на маркер перемещения) любого выделенного элемента управления. Когда указатель примет форму руки, переместите элементы управления в нужную позицию.

Пример одновременного выделения нескольких элементов управления


 Размещение элемента управления поверх или под другими элементами управления

Размещение элемента управления поверх или под другими элементами управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

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

Примечание. Список или подчиненная форма всегда находятся на переднем плане; их нельзя перевести на задний план.


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

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

Чтобы создать несколько элементов управления, расположенных на одинаковом расстоянии друг от друга, удобнее использовать команду Дублировать, а не Копировать. Для получения дополнительных сведений нажмите кнопку [image] .

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

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

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

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

  5. Выберите в меню Правка команду Вставить.

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

Примечание. Access не копирует процедуры обработки событий, связанные с элементом управления.


 Дублирование текстового поля или другого элемента управления

Дублирование текстового поля или другого элемента управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выделите элемент управления, который нужно дублировать. Если элемент управления имеет присоединенную надпись, выберите сам элемент управления, а не надпись.

  3. Выберите в меню Правка команду Дублировать.

    Копия элемента управления вставляется сразу под выделенным элементом.

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

    Новая копия элемента управления помещается под самым последним вставленным элементом, даже если этот элемент был перемещен.

Примечания

  • При дублировании элемента управления Microsoft Access не копирует связанные с ним процедуры обработки события.

  • Чтобы скопировать только параметры форматирования из одного элемента управления в другой в форме или отчете, нажмите кнопку Формат по образцу [image] на панели инструментов. Для получения дополнительных сведений нажмите кнопку [image] .


 Копирование параметров форматирования одного текстового поля или иного элемента управления в другое в форме или отчете

Копирование параметров форматирования одного текстового поля или иного элемента управления в другое в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите элемент управления, параметры форматирования которого нужно скопировать.

    Примечание. Параметры форматирования можно копировать только из одного элемента управления.

  3. Нажмите кнопку Формат по образцу [image] на панели инструментов. Если параметры форматирования нужно скопировать в несколько элементов управления, зафиксируйте эту кнопку двойным щелчком.

  4. Щелкните элемент управления, в который требуется скопировать параметры форматирования. Можно выбрать элемент управления как такого же, так и другого типа. Например, можно скопировать параметры форматирования из поля в список.

    Microsoft Access скопирует следующие свойства:

Тип границы (BorderStyle) | Наклон линии (LineSlant) | Оформление (SpecialEffect)
Цвет границы (BorderColor) | Вывод на экран (Visible) | Насыщенность (FontWeight)
Ширина границы (BorderWidth) | Режим вывода (DisplayWhen) | Цвет текста (ForeColor)
Цвет фона (BackColor) | Шрифт (FontName) | Курсив (FontItalic)
Тип фона (BackStyle) | Размер шрифта (FontSize) | Подчеркнутый (FontUnderline)
Позиция подписи X (LabelX) | Выравнивание текста (TextAlign) | Выравнивание подписи (LabelAlign)
Позиция подписи Y (LabelY) |  |

Примечание. Нельзя копировать значения свойств в элементы ActiveX или из них.


 Удаление текстового поля или другого элемента управления

Удаление текстового поля или другого элемента управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выделите элемент управления.

  3. Нажмите клавишу DEL.

    Если к элементу управления присоединена подпись, она удаляется вместе с элементом управления. Чтобы удалить только присоединенную подпись, выделите ее и нажмите клавишу DEL.


 Изменение размера текстового поля или другого элемента управления

Изменение размера текстового поля или другого элемента управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выделите один или несколько элементов управления, размеры которых нужно изменить.

  3. Перетаскивайте маркеры размера, пока элемент управления не получит требуемые размеры.

Маркеры перемещения и изменения размера

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

Примечания

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

  • Для небольшой корректировки размеров элемента управления можно воспользоваться сочетанием клавиш SHIFT и стрелки соответствующего направления.


 Подстройка размера текстового поля или другого элемента управления под размер данных в форме или отчете

Подстройка размера текстового поля или другого элемента управления под размер данных в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выделите один или несколько элементов управления, размер которых нужно подстроить под размер данных.

  3. В меню Формат выберите команду Размер и подкоманду по размеру данных.


 Настройка размера текстового поля или другого элемента управления по узлам сетки в форме или отчете

Настройка размера текстового поля или другого элемента управления по узлам сетки в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Если сетка не выведена на экран, выберите в меню Вид команду Сетка.

  3. Выделите элементы управления, размеры которых требуется изменить.

  4. Выберите в меню Формат команду Размер и подкоманду по узлам сетки.

Примечания

  • Microsoft Access может автоматически привязывать элементы управления к сетке при изменении их размеров. Для получения дополнительных сведений нажмите кнопку [image] .

  • Иногда для более точного размещения элементов требуется изменить шаг сетки. Для получения дополнительных сведений нажмите кнопку [image] .


 Единообразная настройка размеров нескольких элементов управления по размеру одного из них в форме или отчете

Единообразная настройка размеров нескольких элементов управления по размеру одного из них в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выделите элементы управления, размеры которых нужно изменить.

  3. Выберите в меню Формат команду Размер и одну из следующих подкоманд:
    • по самому высокому — высота всех выделенных элементов управления становится равной высоте самого высокого элемента.

    • по самому низкому — высота всех выделенных элементов управления становится равной высоте самого низкого элемента.

    • по самому широкому — ширина всех выделенных элементов управления становится равной ширине самого широкого элемента.

    • по самому узкому — ширина всех выделенных элементов управления становится равной ширине самого узкого элемента.


 Выравнивание текстовых полей и других элементов управления в форме или отчете с помощью сетки

Выравнивание текстовых полей и других элементов управления в форме или отчете с помощью сетки

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Если сетка не выведена на экран, выберите в меню Вид команду Сетка.

  3. Выделите один или несколько элементов управления, которые нужно выровнять по сетке.

  4. Выберите в меню Формат команду Выровнять и подкоманду по узлам сетки.

Примечания

Существует режим автоматической привязки элементов к сетке при изменении их размеров или перемещении. Для получения дополнительных сведений нажмите кнопку [image] .

Иногда для более точного размещения элементов требуется изменить шаг сетки. Для получения дополнительных сведений нажмите кнопку [image] .


 Выравнивание текстовых полей и других элементов управления на странице доступа к данным

Выравнивание текстовых полей и других элементов управления на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. В меню Формат выберите команду Выравнивание и изменение размера, чтобы вывести панель инструментов Выравнивание и изменение размера.

Панель инструментов «Выравнивание и изменение размера»

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

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

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


 Включение или отключение привязки к сетке

Включение или отключение привязки к сетке

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выберите в меню Формат команду Привязать к сетке.

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

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

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


 Взаимное выравнивание текстовых полей и других элементов управления в форме или отчете

Взаимное выравнивание текстовых полей и других элементов управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

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

  3. Выберите в меню Формат команду Выровнять и одну из следующих подкоманд:
    • по левому краю — выравнивание левых границ элементов управления по левой границе крайнего левого элемента;

    • по правому краю — выравнивание правых границ элементов управления по правой границе крайнего правого элемента;

    • по верхнему краю — выравнивание верхних границ элементов управления по верхней границе самого верхнего элемента;

    • по нижнему краю — выравнивание нижних границ элементов управления по нижней границе самого нижнего элемента.

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


 Задание равного интервала между несколькими элементами управления в форме или отчете

Задание равного интервала между несколькими элементами управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выделите элементы управления (по крайней мере три), которые требуется разместить на равных интервалах. Если к элементам управления присоединены подписи, выделите сами элементы управления, а не их подписи.

  3. Выберите в меню Формат команду Интервал по горизонтали или Интервал по вертикали и подкоманду сделать равным.

    Элементы будут размещены через равные промежутки. Фактически изменится положение только среднего элемента; верхний и нижний элементы управления останутся на своих местах.


 Увеличение или уменьшение расстояния между текстовыми полями или другими элементами управления в форме или отчете

Увеличение или уменьшение расстояния между текстовыми полями или другими элементами управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выделите элементы управления, расстояние между которыми нужно изменить.

  3. Выберите в меню Формат команду Интервал по горизонтали или Интервал по вертикали и подкоманду Увеличить или Уменьшить.

    При изменении интервала между элементами управления крайний левый элемент (при изменении интервала по горизонтали) или крайний верхний элемент (при изменении интервала по вертикали) остаются на своих местах.


 Задание относительного или абсолютного местоположения текста, текстового поля и других элементов управления на странице доступа к данным

Задание относительного или абсолютного местоположения текста, текстового поля и других элементов управления на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Убедитесь, что поле или другой элемент управления, раздел или текст выделены, и нажмите кнопку Свойства [image] на панели инструментов.

  3. В ячейке свойства Position выберите значения из списка.
    • relative. Координаты вставляемого в HTML-документ элемента определяются относительно предшествующего содержимого. Например, положение элемента управления, встроенного в абзац в основной части страницы, будет по умолчанию определяться относительно предшествующего ему текста. При просмотре страницы в режиме страницы или в обозревателе Microsoft Internet Explorer содержимое будет выводиться в соответствии с размерами окна.

    • absolute. Положение элемента задается либо относительно другого элемента в иерархии (родительского элемента), либо, при отсутствии такового, относительно основной части страницы. Значения свойств Left и Top элемента показывают смещение относительно верхнего левого угла родительского элемента. Например, по умолчанию положение элемента управления в разделе задается относительно свойств Left и Top этого раздела. При просмотре в режиме страницы или в обозревателе Internet Explorer содержимое сохраняет свое положение независимо от размеров окна.


 Замена текстового поля или другого элемента управления на элемент управления другого типа в форме или отчете

Замена текстового поля или другого элемента управления на элемент управления другого типа в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите элемент управления, который нужно изменить.

  3. В меню Формат укажите на пункт Преобразовать элемент в.

    Появится список элементов управления, в которые может быть преобразован выбранный элемент. Если какой-то тип элемента управления отображен в списке серым цветом, то он не может быть использован.

  4. Выберите новый тип элемента управления.

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


 Определение значения по умолчанию для элемента управления

Определение значения по умолчанию для элемента управления

  1. Откройте форму в режиме конструктора формы или страницу доступа к данным в режиме конструктора страницы.

  2. Убедитесь, что нужный элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. В ячейке свойства Значение по умолчанию (DefaultValue) введите значение по умолчанию (например, Москва) или выражение (например, =Date()). Если введенное строковое выражение содержит запятые или другие знаки пунктуации, заключите значение в кавычки. Например, чтобы использовать в качестве значения по умолчанию строку «Москва, Россия» введите "Москва, Россия". Если при создании выражения для формы в базе данных Microsoft Access (.mdb) требуется помощь, нажмите кнопку построителя [image] , чтобы использовать построитель выражений

Примечание. Если свойство Значение по умолчанию (DefaultValue) задано для поля таблицы, а для присоединенного к этому полю элемента управления также задается свойство Значение по умолчанию (DefaultValue), то значение по умолчанию для элемента управления имеет приоритет перед значением, заданным для поля.


Изменение стандартных значений свойств текстовых полей или других элементов управления в форме или отчете

Предполагаемые действия

Изменение стандартных свойств элемента управления только для текущей формы или отчета

Указание свойств существующего элемента управления в качестве стандартных свойств элемента управления для текущей формы или отчета

Изменение стандартных свойств элемента управления для всех форм или отчетов

Не можете сделать выбор?


 Изменение стандартных значений свойств текстовых полей или других элементов управления в форме или отчете

Изменение стандартных значений свойств текстовых полей или других элементов управления в форме или отчете

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

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

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

Возврат в раздел Изменение стандартных значений свойств текстовых полей или других элементов управления в форме или отчете


 Одновременное изменение свойств нескольких текстовых полей или других элементов управления в форме или отчете

Одновременное изменение свойств нескольких текстовых полей или других элементов управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. Чтобы выделить другие элементы управления, нажмите клавишу SHIFT и, удерживая ее, выберите эти элементы.

  4. В окне свойств измените соответствующие значения.

Примечания

  • Можно изменять свойства группы элементов управления одного типа, или группы элементов управления различных типов. Если выбрать элементы управления различных типов, Microsoft Access отобразит в окне свойств только свойства, имеющиеся у всех выбранных элементов. Если у всех выбранных элементов управления конкретное свойство имеет одинаковое значение, это значение будет подставлено в ячейку свойства; в противном случае ячейка будет пуста. Если изменить значение свойства, это изменение будет распространено на все выбранные элементы управления.

  • Свойство Имя (Name) никогда не отображается при выделении нескольких элементов, поскольку все имена должны быть уникальными.


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

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

При создании присоединенных элементов управления в формах и отчетах путем перетаскивания полей из списка полей Microsoft Access копирует некоторые свойства из поля базовой таблицы или запроса в создаваемый элемент управления. Например, если для поля «Цена» в таблице «Товары» свойство Формат поля (Format) имеет значение Денежный, а свойство Число десятичных знаков (DecimalPlaces) имеет значение Авто, то при создании присоединенного поля в форме путем перетаскивания поля «Цена» из списка полей Access автоматически установит для создаваемого элемента управления те же значения свойств Формат поля (Format) и Число десятичных знаков (DecimalPlaces). (При этом подразумевается, что свойство поля Тип элемента управления (DisplayControl) имеет значение Поле или не имеет значения.)

Существует возможность изменения значений любых наследуемых (копируемых) свойств в окне свойств элемента управления. При изменении значения свойства элемента управления изменение не влияет на значение этого свойства для поля в базовой таблице или запросе. Аналогично, если изменить значение свойства для поля в таблице или запросе после создания формы с использованием этого поля, значение свойства элемента управления не обновляется; обновление необходимо выполнить вручную. (Однако, следует отметить, что изменения значений свойств поля Значение по умолчанию (DefaultValue), Условие на значение (ValidationRule) и Сообщение об ошибке (ValidationText) будут отражены во всех элементах управления, основанных на соответствующем поле, включая созданные до изменения этих свойств поля.)

Совет. Свойства Формат поля (Format), Число десятичных знаков (DecimalPlaces), Маска ввода (InputMask), Условие на значение (ValidationRule), Сообщение об ошибке (ValidationText) и Значение по умолчанию (DefaultValue) лучше всего устанавливать не в элементе управления, а в базовом поле. Это позволяет обеспечить согласованность настроек при добавлении полей в форму или отчет.

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

Присоединенный элемент | Наследуемые свойства
Поле | Формат поля (Format), Число десятичных знаков (DecimalPlaces), Маска ввода (InputMask) и Текст строки состояния (StatusBarText) (из свойства Описание (Description))
Список | Все свойства, указанные на вкладке Подстановка в режиме конструктора таблиц, а также свойство Текст строки состояния (StatusBarText) (из свойства Описание (Description))
Поле со списком | Все свойства, указанные на вкладке Подстановка в режиме конструктора таблиц, свойство Маска ввода (InputMask), а также свойство Текст строки состояния (StatusBarText) (из свойства Описание (Description))
Флажок, переключатель, группа параметров, выключатель, присоединенная рамка объекта | Текст строки состояния (StatusBarText) (из свойства Описание (Description))

Примечания

  • Свойства Значение по умолчанию (DefaultValue), Условие на значение (ValidationRule) и Сообщение об ошибке (ValidationText) не наследуются. То есть, Access не устанавливает для этих свойств элемента управления те же значения, что и для свойств базового поля. Однако, значения этих свойств проверяются при создании элемента управления, основанного на поле, для которого эти свойства установлены. Если свойство Условие на значение (ValidationRule) установлено для поля и для элемента управления, основанного на этом поле, Access проверяет оба условия на значение. Если свойство Значение по умолчанию (DefaultValue) установлено для поля и для элемента управления, основанного на этом поле, свойство элемента управления подавляет свойство поля.

  • При создании поля, основанного на поле с типом данных «Поле Memo» Access автоматически устанавливает для свойства Поведение по Enter (EnterKeyBehavior) значение Перевод строки, а для свойства Полосы прокрутки (ScrollBars) значение Только по вертикали. Эти свойства не наследуют значения свойств поля — это свойства элемента управления.


 Изменение шрифта для текста в текстовом поле или другом элементе управления

Изменение шрифта для текста в текстовом поле или другом элементе управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

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

  3. В поле Шрифт Список шрифтов на панели инструментов Формат (форма/отчет) или на панели инструментов Формат (страница) выберите нужный шрифт.

    При изменении шрифта изменения будут распространяться на все содержимое элемента управления. Изменить шрифт отдельного символа в элементе управления невозможно.

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


 Изменение размера шрифта для текста в текстовом поле или другом элементе управления

Изменение размера шрифта для текста в текстовом поле или другом элементе управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

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

  3. В поле Размер [image] на панели инструментов Формат (форма/отчет) или на панели инструментов Формат (страница) укажите размер шрифта.

    В элементах управления Бегущая строка на страницах доступа к данным можно выделять фрагменты текста и применять форматирование только к ним. Во всех остальных элементах управления изменение размера шрифта распространяется на все содержимое элемента управления.

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


 Изменение выравнивания текста в текстовых полях или других элементах управления в форме или отчете

Изменение выравнивания текста в текстовых полях или других элементах управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

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

  3. На панели инструментов Формат (форма/отчет) нажмите кнопку по центру [image] , чтобы выровнять текст по центру, кнопку по правому краю [image] , чтобы выровнять текст по правому краю, или кнопку по левому краю [image] , чтобы выровнять текст по левому краю.

Примечание. Если ни одна из кнопок выравнивания не будет выбрана, то элемент управления будет использовать стандартное выравнивание: текст будет выравниваться по левому краю, а числа — по правому.


 Изменение стандартного режима выравнивания текста в новых текстовых полях или других элементах управления в формах и отчетах

Изменение стандартного режима выравнивания текста в новых текстовых полях или других элементах управления в формах и отчетах

Описанные здесь изменения будут распространяться только на новые элементы управления текущей формы или отчета. Если нужно изменить стандартные свойства элементов управления для всех форм и отчетов, нажмите кнопку [image] .

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

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

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы вывести окно свойств.

    Microsoft Access изменит заголовок окна свойств, показывая, что задаются значения по умолчанию для свойств элементов управления данного типа.

  4. В ячейке свойства Выравнивание текста (TextAlign) выберите одно из значений: Обычное, По левому краю, По центру, По правому краю или Подбор. Если выбрать значение Обычное, Access будет выравнивать текст по левому краю, а числа и даты — по правому.


 Задание полей для текстовых полей или надписей в форме или отчете

Задание полей для текстовых полей или надписей в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выделите элемент управления и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. Выполните одно из следующих действий.
    • Чтобы скорректировать левое поле элемента управления, введите новое значение в ячейку свойства Левое поле (LeftMargin).

    • Чтобы скорректировать верхнее поле элемента управления, введите новое значение в ячейку свойства Верхнее поле (TopMargin).

    • Чтобы скорректировать правое поле элемента управления, введите новое значение в ячейку свойства Правое поле (RightMargin).

    • Чтобы скорректировать нижнее поле элемента управления, введите новое значение в ячейку свойства Нижнее поле (BottomMargin).

Примечание. Ширину полей можно вводить в дюймах (“), сантиметрах (см), пикселах (пк) или пунктах (пт). Например, значение 5пк создает поле шириной в 5 пикселов от края элемента управления.


 Вертикальный вывод текста в текстовом поле или в надписи в форме или отчете

Вертикальный вывод текста в текстовом поле или в надписи в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выделите элемент управления и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. В ячейке свойства По вертикали установите значение Да.


 Выделение текста в текстовом поле или другом элементе управления полужирным шрифтом, курсивом или подчеркиванием

Выделение текста в текстовом поле или другом элементе управления полужирным шрифтом, курсивом или подчеркиванием

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

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

  3. На панели инструментов Формат (форма/отчет) или панели инструментов Формат (страница) нажмите кнопку Полужирный [image] , чтобы отобразить текст полужирным шрифтом, Курсив [image] , чтобы сделать текст наклонным, или Подчеркнутый [image] , чтобы сделать текст подчеркнутым.

    В элементах управления Бегущая строка на страницах доступа к данным можно выделять фрагменты текста и применять полужирное, наклонное и подчеркнутое начертание к отдельным символам. Во всех остальных элементах управления в формах, отчетах и на страницах доступа к данным изменение начертания шрифта распространяется на все содержимое элемента управления. Изменять форматирование отдельных символов в элементах управления невозможно.

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


 Изменение стандартного режима выравнивания текста в новых присоединяемых надписях в формах и отчетах

Изменение стандартного режима выравнивания текста в новых присоединяемых надписях в формах и отчетах

Описанные здесь изменения будут распространяться только на новые элементы управления текущей формы или отчета. Если нужно изменить стандартные свойства элементов управления для всех форм и отчетов, нажмите кнопку [image] .

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

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

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы вывести окно свойств.

    Microsoft Access изменит заголовок окна свойств, показывая, что задаются значения по умолчанию для свойств элементов управления данного типа.

  4. В ячейке свойства Выравнивание подписи (LabelAlign) выберите значения По левому краю, По центру, По правому краю или Подбор.

    Для получения дополнительных сведений о взаимодействии свойства Выравнивание подписи (LabelAlign) со свойствами Позиция подписи X (Label X) и Позиция подписи Y (LabelY) нажмите кнопку [image] .


 Изменение цвета текста в текстовом поле или другом элементе управления

Изменение цвета текста в текстовом поле или другом элементе управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

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

  3. На панели инструментов Формат (форма/отчет) или на панели инструментов «Формат (страница)» щелкните стрелку рядом с кнопкой Цвет текста [image] .

  4. Выберите из палитры нужный цвет.

Совет. Если использовавшийся последним цвет нужно применить и к другому элементу управления, можно просто выбрать этот элемент и нажать кнопку Цвет текста [image] (а не щелкать заново стрелку рядом с кнопкой и не выбирать цвет из палитры). Если нужно быстро задать различные цвета для нескольких элементов управления, щелкните стрелку рядом с кнопкой Цвет текста [image] , щелкните границу палитры и перетащите ее в другое место экрана, тем самым отделив ее от кнопки. Теперь для задания цвета больше не потребуется нажимать кнопку Цвет текста [image] .


 Установка цветовых свойств в формах и отчетах в значения, соответствующие системным цветам Microsoft Windows

Установка цветовых свойств в формах и отчетах в значения, соответствующие системным цветам Microsoft Windows

Свойства Цвет фона (BackColor), Цвет границы (BorderColor) и Цвет текста (ForeColor) позволяют указать использование в Microsoft Access цветовой гаммы, соответствующей используемой в других приложениях Microsoft Windows. Это особенно удобно при разработке приложения, с которым будет работать большое количество пользователей. Указание системных цветов Windows позволяет использовать на разных компьютерах различные цветовые гаммы, выбираемые каждым пользователем на панели управления Windows.

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Откройте окно свойств для раздела или элемента управления.

  3. В окне свойств укажите свойства Цвет фона (BackColor), Цвет границы (BorderColor) или Цвет текста (ForeColor).

  4. Введите в ячейку свойства одно из чисел, приведенных в следующей таблице. Например, чтобы цвет фона формы совпадал с системным цветом фона Windows, задайте для свойства Цвет фона (BackColor) значение -2147483643, соответствующее значению элемента «Окно».
    Элемент экрана | Значение
    Полоса прокрутки | -2147483648
    Рабочий стол | -2147483647
    Заголовок активного окна | -2147483646
    Заголовок неактивного окна | -2147483645
    Строка меню | -2147483644
    Окно | -2147483643
    Рамка окна | -2147483642
    Текст меню | -2147483641
    Текст окна | -2147483640
    Текст заголовка | -2147483639
    Граница активного окна | -2147483638
    Граница неактивного окна | -2147483637
    Фон приложения | -2147483636
    Выделение | -2147483635
    Выделенный текст | -2147483634
    Объемная поверхность | -2147483633
    Объемная тень | -2147483632
    Серый цвет текста (недоступный элемент) | -2147483631
    Текст кнопки | -2147483630
    Текст заголовка неактивного окна | -2147483629
    Объемное выделение | -2147483628
    Объемная темная тень | -2147483627
    Объемная светлая тень | -2147483626
    Текст всплывающей подсказки | -2147483625
    Фон всплывающей подсказки | -2147483624

Примечания

  • Системные цвета Windows могут применяться только к перечисленным свойствам экранных элементов, их нельзя присваивать объектам. Например, свойство поля Цвет фона (BackColor) позволяет задать для поля цвет фона, совпадающий с цветом полосы прокрутки, рабочего стола или любого другого элемента экрана Windows.

  • Значения цветов экранных элементов Windows всегда одни и те же, независимо от конкретных цветов, задаваемых пользователем.

  • Кроме того, значения системных цветов Windows могут быть заданы для свойств Цвет фона (BackColor), Цвет границы (BorderColor) и Цвет текста (ForeColor) в программе Visual Basic для приложений.


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

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

Если элемент управления прозрачен, то цветом, отображаемым в элементе управления, является цвет элемента, раздела или формы, на которую он наложен.

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выберите элемент управления, который требуется изменить.

  3. На панели инструментов Формат (форма/отчет) или на панели инструментов Формат (страница) щелкните стрелку рядом с кнопкой Цвет заливки/фона [image] .

  4. Нажмите на палитре кнопку Прозрачный.

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


 Скрытие раздела или элемента управления

Скрытие раздела или элемента управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выполните одно из следующих действий.
    • Чтобы открыть окно свойств раздела формы или отчета, который нужно скрыть, дважды щелкните область выделения раздела.

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

    • Чтобы открыть окно свойств элемента управления, который нужно скрыть, убедитесь, что нужный элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов.
  3. В формах и отчетах установите свойство Вывод на экран (Visible) в значение Нет. На страницах доступа к данным установите свойство Visibility в значение hidden.

Примечания

  • Для того чтобы в формах и отчетах отображать или скрывать элемент управления в ответ на событие, можно устанавливать свойство Вывод на экран (Visible) с помощью макроса или процедуры обработки события. Назначьте макрос или процедуру обработки события свойству Текущая запись (OnCurrent) формы или свойству Форматирование (OnFormat) отчета. Например, можно отображать или не отображать поздравительное сообщение рядом с суммой месячных продаж данного менеджера в отчете о продажах, в зависимости от значения этой суммы.

  • Значение свойства Вывод на экран (Visible) раздела формы не влияет на отображение столбцов в режиме таблицы. Чтобы указать, следует ли выводить на экран столбец в режиме таблицы, используйте свойство ColumnHidden.

  • Чтобы скрыть объект в форме только на время печати, используйте свойство Режим вывода (DisplayWhen).


 Изменение толщины границы текстового поля или другого элемента управления

Изменение толщины границы текстового поля или другого элемента управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выделите элемент управления, который нужно изменить.

  3. На панели инструментов Формат (форма/отчет) или на панели инструментов Формат (страница) щелкните стрелку рядом с кнопкой Толщина линии/границы [image] .

  4. Выберите желаемую толщину границы.

Примечания

  • Если ту же толщину границы нужно будет применить и для другого элемента управления, просто нажмите кнопку Толщина линии/границы [image] (не нужно нажимать стрелку раскрытия списка рядом с этой кнопкой и заново выбирать эту толщину границы).

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


 Изменение цвета границы текстового поля или другого элемента управления

Изменение цвета границы текстового поля или другого элемента управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выберите элемент управления, который нужно изменить.

  3. На панели инструментов Формат (форма/отчет) или на панели инструментов Формат (страница) щелкните стрелку рядом с кнопкой Цвет линии/границы [image] .

  4. Выберите из палитры нужный цвет.

Примечания

  • Если использовавшийся последним цвет нужно применить и к другому элементу управления, можно просто выбрать этот элемент и нажать кнопку Цвет линии/границы [image] (а не щелкать заново стрелку рядом с кнопкой и не выбирать цвет из палитры). Если нужно быстро задать различные цвета для нескольких элементов управления, щелкните стрелку рядом с кнопкой Цвет линии/границы [image] , щелкните границу палитры и перетащите ее в другое место экрана, тем самым отделив ее от кнопки. Теперь для задания цвета больше не потребуется нажимать кнопку Цвет линии/границы [image] .

  • Если для элемента управления в ячейке свойства Оформление (SpecialEffect) установлены значения приподнятое, утопленное, вдавленное или рельефное, то при изменении цвета границы данному свойству автоматически присваивается значение обычное.


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

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

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выберите элемент управления, который требуется изменить.

  3. На панели инструментов Формат (форма/отчет) или на панели инструментов Формат (страница) щелкните стрелку рядом с кнопкой Цвет линии/границы [image] .

  4. Нажмите на палитре кнопку Прозрачный.

Примечание. Если для элемента управления в ячейке свойства Оформление (SpecialEffect) установлены значения Приподнятое, Утопленное, Вдавленное или Рельефное, то при изменении цвета границы данному свойству автоматически присваивается значение Обычное.


 Изменение типа границ текстового поля или другого элемента управления в формах и отчетах

Изменение типа границ текстового поля или другого элемента управления в формах и отчетах

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. В ячейке свойства Тип границы (BorderStyle) выберите нужный тип границы.

Примечание. Если для элемента управления в ячейке свойства Оформление (SpecialEffect) установлены значения приподнятое, утопленное, вдавленное или Рельефное, то при изменении типа границы данному свойству автоматически присваивается значение обычное.


 Использование трехмерных эффектов для оформления текстовых полей и других элементов управления

Использование трехмерных эффектов для оформления текстовых полей и других элементов управления

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выберите элемент управления, который необходимо изменить.

  3. На панели инструментов Формат (форма/отчет) или на панели инструментов Формат (страница) щелкните стрелку рядом с кнопкой Оформление [image] .

  4. Выберите нужный тип оформления.

Примечания

  • Если использовавшийся последним тип оформления нужно применить еще к одному элементу управления, можно просто выбрать этот элемент и нажать кнопку Оформление [image] (а не нажимать еще стрелку рядом с кнопкой и не выбирать тип оформления из списка).

  • Толщину тени можно изменить, нажав кнопку Толщина линии/границы [image] на панели инструментов Формат.

  • В формах или отчетах при выборе типа Приподнятое оформление, Утопленное оформление, Вдавленное оформление или Рельефное оформление, этот тип превалирует над значениями свойств Цвет границы (BorderColor), Ширина границы (BorderWidth) и Тип границы (BorderStyle). Если был выбран тип Вдавленное оформление, то Access также присвоит свойству Тип фона (BackStyle) текстового поля или поля со списком значение Прозрачный, а свойству Цвет фона (BackColor) списков — значение, равное значению свойства Цвет фона (BackColor) раздела.

  • Если было выбрано приподнятое или утопленное оформление, но элемент управления в форме не стал трехмерным, дважды щелкните компонент Экран (Display) в панели управления Windows, откройте вкладку Оформление (Appearance) и выберите в списке Схема (Scheme) строку Обычная Windows (Windows Standard).


 Создание прямоугольника в форме, отчете или на странице доступа к данным

Создание прямоугольника в форме, отчете или на странице доступа к данным

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Прямоугольник Прямоугольник на панели элементов.

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

Примечание. Чтобы изменить толщину контура прямоугольника, выделите прямоугольник, щелкните стрелку рядом с кнопкой Толщина линии/границы на панели инструментов Формат (форма/отчет) или на панели инструментов Формат (страница) и выберите нужную толщину. Чтобы изменить тип линии контура (точечный, штриховой, и т. п.) прямоугольника в форме или отчете, выделите прямоугольник, нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств, и выберите в ячейке свойства Тип границы (BorderStyle) нужный тип. На страницах доступа к данным линии контура прямоугольника могут быть только сплошными.


 Создание линии в форме, отчете или на странице доступа к данным

Создание линии в форме, отчете или на странице доступа к данным

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Линия Линия на панели элементов.

  3. Щелкните форму, отчет или страницу доступа к данным, чтобы создать линию стандартного размера. Чтобы создать линию определенного размера, протащите указатель при нажатой кнопке мыши.

Примечания

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

  • Чтобы немного изменить длину или угол линии в форме или отчете, выделите линию, нажмите клавишу SHIFT и, удерживая ее, нажмите одну из клавиш управления курсором.

  • Чтобы немного изменить положение линии, нажмите клавишу CTRL и, удерживая ее, нажмите одну из клавиш управления курсором.

  • Чтобы изменить толщину линии, выделите линию, щелкните стрелку рядом с кнопкой Толщина линии/границы [image] на панели инструментов Формат (форма/отчет) или на панели инструментов Формат (страница) и выберите нужную толщину линии.

  • Чтобы изменить тип линии (точечный, штриховой и т. д.) в форме или отчете, выделите линию, нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств линии, и задайте тип линии в ячейке свойства Тип границы (BorderStyle). На страницах доступа к данным линии могут быть только сплошными.


 Использование в форме или отчете пользовательских цветов из других приложений

Использование в форме или отчете пользовательских цветов из других приложений

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

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Дважды щелкните область выделения формы или область выделения отчета, чтобы открыть окно свойств.

  3. В ячейку свойства Источник палитры (PaletteSource) введите путь и имя файла одного из следующих типов:
    • .dib (файл рисунка device-independent bitmap);

    • .pal (файл палитры Microsoft Windows);

    • .ico (файл значка Windows);

    • .bmp (файл точечного рисунка Windows);

    • .wmf (метафайл Windows);

    • .emf (расширенный метафайл);

    • файлы любых других типов, поддерживаемых установленными графическими фильтрами.

Примечание. Для того чтобы отображать исходные цвета рисунков и диаграмм, загруженный драйвер экрана должен поддерживать палитру, заданную в свойстве Источник палитры (PaletteSource). Например, если задан файл C:\Windows\256Color.bmp, текущий загруженный драйвер экрана должен поддерживать 256 цветов.


 Создание подсказки, всплывающей при наведении указателя на текстовое поле или другой элемент управления

Создание подсказки, всплывающей при наведении указателя на текстовое поле или другой элемент управления

  1. Откройте форму в режиме конструктора формы или страницу доступа к данным в режиме конструктора страницы.

  2. Убедитесь, что элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов.

  3. В ячейке свойства Всплывающая подсказка (ControlTipText) (в формах и отчетах) или Title (на страницах доступа к данным) элемента управления введите текст, который должен выводиться в подсказке по элементу управления. Можно ввести до 255 символов.

    Можно также создать файл пользовательской справки или всплывающую подсказку для формы. Для получения дополнительных сведений нажмите кнопку [image] .


 Вывод комментария к текстовому полю или другому элементу управления в строке состояния формы или отчета

Вывод комментария к текстовому полю или другому элементу управления в строке состояния формы или отчета

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. В ячейку свойства Текст строки состояния (StatusBarText) введите текст сообщения, которое должно выводиться в строке состояния для данного элемента управления.

    Хотя максимальная длина сообщения составляет 255 символов, на экран выводится только та его часть, которая умещается в строке состояния. Длина отображаемого текста зависит от используемого шрифта и размеров окна Microsoft Access.

Совет. Можно создать всплывающую подсказку, которая появляется на экране при наведении указателя на элемент управления. Для получения дополнительных сведений нажмите кнопку [image] . Кроме того, можно создать файлы пользовательской справки и контекстной справки, вызываемой командой Что это такое?. Для получения дополнительных сведений нажмите кнопку [image] .


Связанные гиперссылки: общие сведения

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


 Гиперрисунки: общие сведения

Гиперрисунки: общие сведения

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

Гиперрисунки полезны для создания ссылок на сведения, относящиеся к данным, отображаемым на странице доступа к данным.

Дополнительные сведения

Создание ссылки на Web-страницу с использованием рисунка


 Адреса гиперссылок

Адреса гиперссылок

Адрес гиперссылки можно ввести непосредственно в поле гиперссылки в таблице, либо в принимающее гиперссылки поле или элемент управления формы или страницы доступа к данным.

Адрес гиперссылки может содержать до четырех компонентов, разделенных знаком #:

экранныйТекст#адрес#допАдрес#всплывающаяПодсказка

Каждый компонент описан в приведенной ниже таблице.

Компонент | Описание | Обязательный?
экранныйТекст | Текст, отображаемый в поле или в элементе управления. Например, узел Web или объект, определенный в частях адрес и допАдрес, должен иметь описательное имя. | Нет
Адрес | Абсолютный или относительный путь к документу. Абсолютным является полностью определенный путь URL или UNC к документу. Для страниц доступа к данным относительным путем является путь относительно расположения сохраненной страницы. Для других объектов базы данных относительным путем является путь от расположения, указанного в параметре База гиперсылки диалогового окна «Свойства: Имя базы данных» (доступно с помощью команды Свойства базы данных из меню Файл), или от расположения текущей базы данных. | Да, за исключением случаев, когда в части допАдрес указан объект текущего файла с расширением .mdb или .adp
допАдрес | Положение в файле или на странице. Например, можно указать на определенную форму или отчет в базе данных Microsoft Access или на определенную закладку в документе Microsoft Word. Для получения дополнительных сведений о правильном синтаксисе для каждого типа документа нажмите кнопку [image] . | Нет
всплывающаяПодсказка | Текст, появляющийся при удержании указателя мыши на гиперссылке. | Нет

Примечание. В поле или текстовом поле, форматирующем адрес гиперссылки как гиперссылку, Microsoft Access не отображает все четыре компонента адреса гиперссылки. Чтобы просмотреть весь адрес гиперссылки, поместите курсор в нужное поле или элемент с помощью клавиатуры (чтобы не перейти по ссылке) и нажмите клавишу F2.

  • Если введен экранныйТекст, то следующая за ним часть адреса не отображается.

  • Если экранныйТекст не введен, то отображается только адрес.

  • ДопАдрес отображается только если отсутствует экранныйТекст или адрес.

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

См. список примеров адресов гиперссылок.


Создание гиперссылки на странице доступа к данным

Предполагаемые действия

Добавление ссылки на существующий файл или Web-страницу

Создание новой страницы доступа к данным и одновременно получения ссылки на эту страницу

Создание ссылки с одной страницы доступа к данным на другую

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


 Создание гиперссылки в форме или отчете

Создание гиперссылки в форме или отчете

При создании гиперссылки любым из следующих методов Microsoft Access создает элемент управления «Надпись» в форме или отчете. Хотя при просмотре отчета в Microsoft Access гиперссылки недоступны, они будут работать при выводе отчета в формате Microsoft Word, Microsoft Excel или HTML.

Предполагаемые действия

Связывание документа, файла или Web-страницы

Использование кнопки Добавить гиперссылку для создания связи с существующим файлом или Web-страницей

Использование кнопки Добавить гиперссылку для создания новой страницы доступа к данным и одновременно получения ссылки на эту страницу

Копирование и вставка гиперссылки из документа Microsoft Office

Вставка текста из документа Microsoft Office

Перетаскивание ярлыка Интернета

Связывание объекта текущей базы данных

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

Связывание адреса электронной почты

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


 Создание поля для хранения гиперссылок

Создание поля для хранения гиперссылок

  1. Откройте существующую таблицу в режиме конструктора или создайте новую таблицу.

  2. В верхней части окна введите имя поля, которое должно содержать гиперссылки.

  3. В столбце Тип данных этого поля выберите значение Гиперссылка.

  4. Для сохранения таблицы нажмите кнопку Сохранить [image] на панели инструментов.

    Для получения дополнительных сведений о вводе адресов гиперссылок в форму или таблицу нажмите кнопку [image] .

Примечания

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

  • Если таблица была создана путем импорта данных, Microsoft Access автоматически сделает все столбцы, содержащие пути URL и UNC, полями гиперссылки. Преобразование столбца выполняется только в том случае, если все значения начинаются с распознаваемого протокола, например, «http:» или «\\». Если хотя бы одно значение начинается с неизвестного протокола, столбец преобразован не будет.


 Изменение гиперссылки надписи, рисунка или кнопки

Изменение гиперссылки надписи, рисунка или кнопки

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Щелкните правой кнопкой надпись, рисунок или кнопку, чтобы открыть контекстное меню.

  3. В контекстном меню выберите команду Гиперссылка и подкоманду Изменить гиперссылку.

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

  5. В поле Текст введите текст, который должен отображаться в элементе управления.

  6. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя на гиперссылку. Если оставить поле Текст подсказки пустым, Access будет отображать в качестве подсказки адрес гиперссылки, имя объекта базы данных или адрес электронной почты.

Примечание. Изменить гиперссылку можно также путем прямого ввода в окне свойств. Для получения сведений о синтаксисе, используемом для ввода гиперссылки, поместите курсор в ячейку свойства Адрес гиперссылки (HyperlinkAddress) или Дополнительный адрес (HyperlinkSubAddress) и нажмите клавишу F1.


 Создание гиперссылки в одной странице доступа к данным на другую, расположенную в текущей базе данных

Создание гиперссылки в одной странице доступа к данным на другую, расположенную в текущей базе данных

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. В меню Вставка выберите команду Гиперссылка.

  3. В диалоговом окне Добавить гиперссылку щелкните значок Страница в этой базе данных в области Связать с.

  4. В поле Текст введите текст, который должен отображаться в поле или текстовом поле. Если оставить это поле пустым, то Microsoft Access будет в качестве текста выводить адрес гиперссылки.

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

  6. Выберите в списке страницу доступа к данным, ссылку на которую нужно создать.

  7. Чтобы создать фильтр для страницы доступа к данным, введите выражение в виде предложения WHERE в поле Условия отбора для страницы доступа к данным. Например, если есть страница доступа к данным, на которой выводятся сведения о заказе, включая код продавца, и нужно создать ссылку на другую страницу доступа к данным, содержащую сведения о продавце, наберите КодСотрудника=[КодСотрудника].

  8. Нажмите кнопку OK.

    Microsoft Access добавляет гиперссылку на страницу доступа к данным. Чтобы проверить действие этой ссылки, переключитесь в режим страницы и щелкните гиперссылку. Microsoft Access откроет страницу в Web-обозревателе.


 Создание рисунка, служащего гиперссылкой с одной страницы доступа данных на другую

Создание рисунка, служащего гиперссылкой с одной страницы доступа данных на другую

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Гиперрисунок Гиперрисунок на панели элементов, и выберите место, в которое нужно поместить рисунок.

  3. В диалоговом окне Выбор рисунка выберите нужный рисунок и нажмите кнопку OK.

  4. В диалоговом окне Добавить гиперссылку щелкните значок Страница в этой базе данных в области Связать с.

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

  6. Выберите из списка страницу, на которую должна указывать ссылка.

  7. Чтобы создать фильтр для страницы доступа к данным, введите выражение в виде предложения WHERE в поле Условия отбора для страницы доступа к данным. Например, чтобы открыть вторую страницу, содержащую запись, соответствующую коду сотрудника, выведенному на первой странице, введите КодСотрудника=[КодСотрудника].

  8. Нажмите кнопку OK.

    Microsoft Access добавит гиперссылку на страницу доступа к данным. Чтобы проверить действие этой ссылки, переключитесь в режим страницы и щелкните гиперссылку. Microsoft Access откроет страницу в Web-обозревателе.


Изменение установленного по умолчанию режима форматирования гиперссылок

  1. В меню Сервис выберите команду Параметры.

  2. Откройте вкладку Общие.

  3. Нажмите кнопку Параметры Web-документа.

  4. Выберите нужные параметры.


 Создание диаграммы на странице доступа к данным

Создание диаграммы на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Диаграмма Office Диаграмма Office на панели элементов.

  3. Щелкните на странице доступа к данным место, в котором должен находиться верхний левый угол элемента управления «Диаграмма»; Microsoft Access создаст диаграмму стандартного размера. Чтобы создать диаграмму другого размера, щелкните выбранное место и, не отпуская кнопки мыши, протащите указатель, пока диаграмма не примет нужные размеры.

  4. Следуйте инструкциям мастера диаграмм.

Примечание. Мастера недоступны для обособленных страниц доступа к данным или для страниц, указывающих на другую базу данных.


 Создание сводных списков на страницах доступа к данным

Создание сводных списков на страницах доступа к данным

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

  1. В режиме конструктора страницы доступа к данным откройте панель элементов.

  2. Нажмите кнопку Сводная таблица Office Сводная таблица Office на панели элементов.

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

  4. Чтобы выбрать источник данных для сводного списка выполните одно из следующих действий:
    • Чтобы использовать в качестве источника данных текущую базу данных Microsoft Access или Microsoft SQL Server, откройте список полей страницы доступа к данным и перетащите в элемент управления сводного списка таблицу или запрос, которые нужно использовать для сводного списка. Можно также перетаскивать отдельные поля этих источников записей. При создании сводного списка путем перетаскивания полей из списка полей, Microsoft Access автоматически устанавливает параметр Элемент управления источником данных на панели свойств сводной таблицы в значение MSODSC, что означает, что Microsoft Access использует для сводного списка тот же элемент управления источником данных, что и для самой страницы. Кроме того, параметру Компонент данных присваивается имя таблицы или запроса, на которых основан сводный список. Перейдите к шагу 6.

    • Чтобы использовать внешний источник данных, откройте панель свойств сводной таблицы, щелкните строку Источник данных, выберите переключатель Подключение и нажмите кнопку Редактор подключений. Откройте вкладку Provider и выберите тип источника данных OLE DB, который нужно использовать для получения данных. Откройте вкладку Connection и введите сведения о подключении к данным, которые нужно использовать для сводного списка. Для получения дополнительных сведений о диалоговом окне Data Link Properties нажмите кнопку Справка в нижней части диалогового окна.
  5. В разделе Источник данных окна панели свойств сводной таблицы в области Использовать данные из выполните одно из следующих действий:
    • Чтобы использовать данные конкретного источника записей из этой базы данных, щелкните переключатель Компонент данных и выберите из списка нужный элемент.

    • Чтобы использовать для выбора данных запрос или команду — например, инструкцию SQL — выберите переключатель Текст команды и введите в поле команду или запрос. Сведения о синтаксисе запроса см. в документации по внешнему источнику данных.
  6. Завершите создание сводного списка, настраивая его компоновку и добавляя общие значения, устанавливая свойства и т. п. с помощью панели инструментов сводного списка и панели свойств сводной таблицы. См. сведения о том, что такое сводный список и как его использовать.

Примечания

  • Чтобы создать сводный список, который использует данные из таблицы Microsoft Excel, нужно опубликовать данные из Microsoft Excel на Web-странице. Если нужно преобразовать Web-страницу в страницу доступа к данным, откройте ее в Microsoft Access и добавьте элементы управления, присоединенные к данным базы данных Microsoft Access или Microsoft SQL Server.

  • При использовании элемента управления Web-компонентов, присоединенного к внешнему источнику данных, на одной странице доступа к данным с элементами управления, присоединенными к базе данных Microsoft Access или Microsoft SQL Server, компонент использует другой элемент управления источника данных, нежели остальные элементы страницы.

  • Можно создать диаграмму, связанную со сводным списком, которая автоматически обновляется при изменении данных сводного списка.

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

  • Если открыть окно свойств страницы доступа к данным, можно увидеть свойства, соответствующие всем свойствам панели свойств сводной таблицы, а также другие свойства, которых нет в этой панели.


 Изменение подключения сводного списка ко внешнему источнику данных или используемого им запроса

Изменение подключения сводного списка ко внешнему источнику данных или используемого им запроса

  1. В режиме конструктора страницы доступа к данным активизируйте сводный список.

  2. Щелкните область заголовка сводного списка и откройте панель свойств сводной таблицы.

  3. Щелкните заголовок области Источник данных, чтобы отобразить содержащиеся в ней параметры.

  4. Выполните одно из следующих действий.
    • Чтобы изменить информацию о подключении, выберите переключатель Подключение и нажмите кнопку Редактор подключений. В диалоговом окне Data Link Properties откройте вкладку Provider и выберите средство доступа OLE DB для получения данных. Откройте вкладку Connection и введите информацию о подключении к данным, которые будут использоваться в сводном списке. Для получения дополнительных сведений о диалоговом окне Data Link Properties нажмите кнопку Help в нижней части диалогового окна.

    • Чтобы использовать данные из другого источника записей, находящегося во внешней базе данных, выберите переключатель Компонент данных и выберите из списка нужный источник записей.

    • Чтобы изменить текст команды, выберите в области Источник данных панели свойств сводной таблицы переключатель Текст команды (группа Использовать данные из) и введите запрос для отбора данных. Дополнительные сведения о синтаксисе запроса Вы найдете в документации по внешнему источнику данных.


 Добавление электронной таблицы на страницу доступа к данным

Добавление электронной таблицы на страницу доступа к данным

Можно добавить на страницу доступа к данным элемент управления Электронная таблица Office, чтобы дать пользователям некоторые из возможностей, предоставляемых Microsoft Excel. Эта таблица позволяет вводить значения, добавлять формулы, применять фильтры и т. п. Чтобы создать электронную таблицу, в которую можно вводить новые данные или импортировать их из Web-страниц или текстовых файлов, воспользуйтесь описанной ниже процедурой. Если в таблице требуется использовать данные других элементов управления, расположенных на той же странице, то нужно создать ссылки на эти элементы управления в соответствующих ячейках электронной таблицы

  1. В режиме конструктора страницы доступа к данным откройте панель элементов.

  2. Нажмите кнопку Электронная таблица Office Электронная таблица Office на панели элементов.

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

  4. Введите данные и формулы или импортируйте данные в таблицу.

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


 Преобразование внешнего вида элемента управления «Электронная таблица» в вид текстового поля

Преобразование внешнего вида элемента управления «Электронная таблица» в вид текстового поля

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

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Активизируйте элемент управления «Электронная таблица», а затем откройте панель свойств электронной таблицы.

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

  4. Выберите пункт Дополнительные и выполните следующие действия.
    • Установите значение Истина для свойства Автозаполнение листа.

    • В свойстве Отображаемый диапазон укажите ячейки, которые требуется отображать. Например, чтобы отобразить значение ячейки A1, задайте для свойства Отображаемый диапазон значение A1.
  5. Выделите ячейки, границы которых требуется изменить.

  6. На Панели свойств электронной таблицы выберите пункт Формат, если раздел Формат не развернут.

  7. В группе Формат ячейки нажмите кнопку Границы.

  8. Выполните одно из следующих действий.
    • Чтобы указать цвет границы, нажмите кнопку Цвет границы и выберите тот же цвет границы, что и у нужных элементов управления на странице доступа к данным.

    • Чтобы указать ширину границы, выберите размер из списка.
  9. Чтобы включить или отключить ту или иную границу, щелкните ее в поле задания границ. Чтобы включить или отключить все границы, пересекающиеся в одной точке, щелкните точку их пересечения.

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

Примечания

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

  • Для просмотра новых границ элемента управления на странице доступа к данным в режиме страницы или в Internet Explorer необходимо убрать фокус из этого элемента управления.


 Активизация сводных списков, электронных таблиц и диаграмм на страницах доступа к данным

Активизация сводных списков, электронных таблиц и диаграмм на страницах доступа к данным

Активизация одного из этих Web-элементов Microsoft Office отличается от операции выделения этих элементов управления. Последняя выделяет внешний элемент управления. Если внешний элемент выделен и получил фокус, можно передать фокус внутрь элемента для активизации его содержимого. Когда содержимое активизировано, можно устанавливать свойства и пользоваться возможностями элемента управления. Например, в сводном списке можно перемещать столбцы и строки или манипулировать его элементами и данными другими способами.

  • Щелкните элемент управления один раз, чтобы выделить внешний элемент. Щелкните элемент управления снова для активизации его содержимого. Граница элемента, содержимое которого активизировано, помечается диагональной штриховкой.

Выделенные и активизированные сводные списки

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


 Добавление элемента ActiveX (специального элемента управления OLE) в форму, отчет или на страницу доступа к данным

Добавление элемента ActiveX (специального элемента управления OLE) в форму, отчет или на страницу доступа к данным

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Дополнительные элементы Элемент ActiveX на панели инструментов и выберите нужный элемент из списка.

    Примечание. Элементы ActiveX, установленные с другими приложениями, например, Microsoft Excel, будут также присутствовать в списке элементов, выводимом при нажатии кнопки Дополнительные элементы панели элементов или при выборе команды Элемент ActiveX из меню Вставка. Однако некоторые элементы ActiveX могут некорректно работать в Microsoft Access. Сведения о том, был ли элемент успешно протестирован в Microsoft Access, можно найти в файле Readme или получить у поставщика этого элемента.

  3. В форме, отчете или на странице доступа к данным выберите место, в которое следует поместить элемент управления.

  4. Чтобы вывести на экран окно свойств элемента ActiveX, щелкните элемент правой кнопкой мыши и выберите команду Свойства.

  5. Установите нужные свойства.

    Чтобы получить справку по какому-либо свойству, выберите это свойство и нажмите F1.

Примечания

  • Дополнительные сведения об использовании элементов ActiveX см. в главе "Using ActiveX Controls" книги Building Applications with Forms and Reports.

  • Дополнительные элементы ActiveX содержатся в выпуске Microsoft Office 2000 для разработчиков. Для получения сведений о составе пакета «Microsoft Office 2000, выпуск для разработчиков» нажмите кнопку [image] .


 Регистрация элемента ActiveX

Регистрация элемента ActiveX

Данная процедура используется для подключения элемента ActiveX, не включенного в Microsoft Access.

  1. Перепишите файлы элемента управления на свой жесткий диск. Подробнее см. в документации элемента управления.

  2. Выберите в меню Access Сервис команду Элементы ActiveX.

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

  4. Нажмите кнопку Закрыть.


 Надписи: общие сведения

Надписи: общие сведения

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

Надписи либо самостоятельны, либо добавлены к элементам управления

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

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


 Создание надписи

Создание надписи

Следующие действия используются для создания отдельной надписи (не присоединенной к другому элементу управления). Чтобы создать надпись, присоединенную к элементу управления, просто создайте этот элемент управления. Microsoft Access автоматически присоединяет надпись к элементу во время его создания.

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Надпись Надпись на панели элементов.

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

Примечания

  • Чтобы разместить текст надписи на нескольких строках в форме или отчете, измените размер надписи после ввода всего текста или нажмите в конце первой строки текста клавиши CTRL+ENTER для ввода символа возврата каретки. Если введен символ возврата каретки, последующие строки текста будут переноситься автоматически по мере ввода. Чтобы вручную вставить символ окончания строки в любой последующей строке, снова нажмите клавиши CTRL+ENTER. Максимальная ширина надписи определяется длиной первой строки текста.

  • Чтобы включить в текст надписи в форме или отчете символ амперсанда (&), нужно ввести два амперсанда. Это обусловлено тем, что Microsoft Access использует символы амперсанда в надписях и кнопках для определения клавиш доступа.


 Изменение текста надписи или надписи на кнопке

Изменение текста надписи или надписи на кнопке

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Выделите надпись или кнопку, а затем выделите текст надписи или надписи на кнопке.

    Кнопка с выделенным текстом надписи

  3. Введите новый текст.


 Присоединение надписи к текстовому полю или другому элементу управления в форме или отчете

Присоединение надписи к текстовому полю или другому элементу управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите надпись, присоединяемую к элементу управления.

  3. Нажмите кнопку Вырезать [image] на панели инструментов.

  4. Выберите элемент управления, к которому требуется присоединить надпись.

  5. Нажмите на панели инструментов кнопку Вставить [image] .


 Автоматическое присоединение подписей к новым текстовым полям или другим элементам управления в форме или отчете

Автоматическое присоединение подписей к новым текстовым полям или другим элементам управления в форме или отчете

Следующие действия предназначены для изменения стандартных свойств элементов управления в текущей форме или отчете. Для получения сведений об изменении стандартных свойств элементов управления во всех формах и отчетах нажмите кнопку [image] .

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

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

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств элемента управления.

  4. Задайте для свойства Добавление подписи (AutoLabel) значение Да или Нет.


 Изменение местоположения по умолчанию для новых присоединенных подписей в формах и отчетах

Изменение местоположения по умолчанию для новых присоединенных подписей в формах и отчетах

Описанные здесь изменения будут распространяться только на новые элементы управления текущей формы или отчета. Если нужно изменить стандартные свойства элементов управления для всех форм и отчетов, нажмите кнопку [image] .

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Нажмите на панели элементов кнопку, соответствующую типу элемента управления, имеющего присоединенную подпись. Например, если нужно изменить стандартное местоположение подписей, присоединенных к текстовым полям, нажмите кнопку Поле Поле на панели элементов.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы вывести окно свойств.

    Microsoft Access изменит заголовок окна свойств, показывая, что задаются значения по умолчанию для свойств элементов управления данного типа.

  4. В ячейку свойства Позиция подписи X (LabelX) (горизонтальная ось) введите положительное или отрицательное число, задающее положение начала текста подписи относительно левого верхнего угла элемента управления, к которому присоединена подпись. Отрицательное число приводит к размещению подписи слева от элемента управления. Положительное число определяет размещение подписи справа от элемента управления.

  5. Введите число в ячейку свойства Позиция подписи Y (LabelY) (вертикальная ось). Отрицательное число приводит к размещению подписи над элементом управления. Положительное число определяет размещение подписи под элементом управления.

Совет. Чтобы использовать единицу измерения, отличную от указанной в компоненте «Язык и стандарты» панели управления Microsoft Windows, укажите эту единицу после введенного числа (например, 1.5 " или 2 см).

Для получения дополнительных сведений о взаимодействии свойств Позиция подписи X (LabelX) и Позиция подписи Y (LabelY) со свойством Выравнивание подписи (LabelAlign) нажмите кнопку [image] .


 Добавление или удаление двоеточия для присоединяемых надписей в форме или отчете

Добавление или удаление двоеточия для присоединяемых надписей в форме или отчете

Следующие действия предназначены для изменения стандартных свойств элементов управления в текущей форме или отчете. Для получения сведений об изменении стандартных свойств элементов управления во всех формах и отчетах нажмите кнопку [image] .

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

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

  3. Чтобы открыть окно свойств элемента управления, нажмите кнопку Свойства [image] на панели инструментов.

  4. Задайте для свойства Подписи с двоеточием (AddColon) значение Да или Нет.


 Элемент управления «Поле»: общие сведения

Элемент управления «Поле»: общие сведения

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

Примеры присоединенного и свободного полей


 Создание элемента управления-поля

Создание элемента управления-поля

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

Предполагаемые действия

Дополнительные сведения о присоединенных, свободных и вычисляемых элементах управления

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

Создание свободного поля

Создание вычисляемого поля


 Изменение размеров текстового поля по размеру данных при печати формы или отчета

Изменение размеров текстового поля по размеру данных при печати формы или отчета

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Чтобы открыть окно свойств поля, убедитесь, что нужное поле выделено, и нажмите кнопку Свойства [image] на панели инструментов.

  3. Задайте значение Да для свойств Расширение (CanGrow) или Сжатие (CanShrink).
    • Включение свойства Расширение (CanGrow) задает увеличение размера поля по вертикали при печати формы или отчета в соответствии с размерами содержимого поля.

    • Включение свойства Сжатие (CanShrink) задает уменьшение размера поля по вертикали при печати формы или отчета, если текущее содержимое поля не заполняет его полностью.

    Для просмотра примеров расширения или сжатия поля нажмите кнопку [image] .

Примечания

  • При задании значения Да для свойства Расширение (CanGrow) поля автоматически задается значение Да для свойства Расширение (CanGrow) раздела формы или отчета.

  • Примеры полей, допускающих расширение или сжатие, можно найти в отчетах «Каталог» и «Счет» в учебной базе данных «Борей». Для того чтобы просмотреть эти отчеты, откройте базу данных «Борей» из подпапки Samples папки программ Office, а затем откройте отчет, который требуется просмотреть, в режиме конструктора. Для получения сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Флажки: общие сведения

Флажки: общие сведения

В форме, отчете или на странице доступа к данным флажок может быть использован как отдельный элемент управления, в котором отображаются значения логического поля из базовой таблицы, запроса или инструкции SQL. Например, в следующем примере флажок присоединен к полю «ПоставкиПрекращены» таблицы «Товары». Поле «ПоставкиПрекращены» является полем с типом Логический. Если флажок установлен, поле в таблице «Товары» имеет значение «Да»; если флажок снят, поле имеет значение «Нет».

Флажок, присоединенный к полю с типом данных «Логический»

При установке или снятии флажка, присоединенного к полю с типом Логический в базе данных Microsoft Access или к столбцу типа Bit в проекте Microsoft Access, Access отображает значение из базовой таблицы в соответствии со значением свойства Формат поля (Format) этого поля (Да/Нет, Истина/Ложь или Вкл/Выкл). В проекте Access переключатель присоединяется к столбцу с типом данных Bit. Значение 1 в этом столбце эквивалентно условиям Да, Вкл или Истина. Значение 0 в этом столбце означает условие Нет, Выкл или Ложь.

Кроме того, флажки можно включать в группы параметров для отображения набора выбираемых значений. Для получения дополнительных сведений о группах параметров нажмите кнопку [image] .

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


 Переключатели: общие сведения

Переключатели: общие сведения

Переключатель можно использовать в формах, отчетах или на страницах доступа к данным как отдельный элемент управления для отображения логического значения из базового источника записей. Например, переключатель в следующем примере присоединен к полю «Поставки прекращены» из таблицы «Товары». Поле «Поставки прекращены» имеет тип данных «Логический». Если переключатель выбран, он имеет значение «Да»; если не выбран — значение «Нет».

Отдельный переключатель, присоединенный к полю, отображающий значение «Да»

При выборе или очистке переключателя, присоединенного к полю логического типа в базе данных Microsoft Access, значение из базовой таблицы отображается в соответствии со значением свойства Формат поля (Format) этого поля (Да/Нет, Истина/Ложь или Вкл/Выкл). В проекте Access переключатель присоединяется к столбцу с типом данных Bit. Значение 1 в этом столбце эквивалентно условиям Да, Вкл или Истина. Значение 0 в этом столбце означает условие Нет, Выкл или Ложь. Переключатели можно также использовать в группах параметров для отображения набора выбираемых значений. Для получения дополнительных сведений о группах параметров нажмите кнопку [image] .

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


 Группы параметров: общие сведения

Группы параметров: общие сведения

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

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

При присоединении группы к полю к нему присоединяется только рамка группы, а не находящиеся в ней флажки, выключатели или переключатели. Пользователь не должен определять свойство Данные (ControlSource) для каждого элемента управления в группе параметров. Вместо этого в свойстве Значение параметра (OptionValue) для форм и отчетов или в свойстве Значение (Value) каждого флажка, выключателя или переключателя следует задать число, являющееся допустимым для поля, к которому присоединена рамка группы. При выборе параметра в группе Microsoft Access вводит в поле значение, равное значению свойства Значение параметра (OptionValue) или Значение (Value) выбранного элемента.

Выбранный параметр в группе параметров

Примечания

  • В свойстве Значение параметра (OptionValue) или Значение (Value) требуется задавать число, так как значением группы параметров может быть только число, а не текст. Access сохраняет это число в базовой таблице. В данном примере, для того чтобы вместо числа отображать в таблице «Заказы» имя доставщика, следует создать в базе данных Access отдельную таблицу «Доставка», содержащую названия фирм, выполняющих доставку, а затем сделать поле «Доставка» таблицы «Заказы» подстановочным полем, принимающим данные из таблицы «Доставка». Для получения дополнительных сведений о создании подстановочных полей нажмите кнопку [image] .

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


 Создание флажка, выключателя или переключателя

Создание флажка, выключателя или переключателя

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

Предполагаемые действия

Флажки и работа с ними

Выключатели и работа с ними

Переключатели и работа с ними

Группы и работа с ними

Создание флажка, выключателя или переключателя, присоединенных к логическому полю или столбцу типа Bit

Создание группы и добавление в нее флажков, выключателей и переключателей

Создание свободного флажка, переключателя или выключателя


 Создание группы, содержащей флажки, выключатели или переключатели

Создание группы, содержащей флажки, выключатели или переключатели

Имеется возможность создать группу самостоятельно или с помощью мастера. Мастер ускоряет процесс разработки группы, автоматически выполняя все основные действия. Мастер выводит приглашение ввести необходимые сведения и создает группу на основе ответов пользователя.

Примечание. Выключатели на страницах доступа к данным использовать нельзя.

Совет. Для отображения большого количества параметров удобнее использовать не группу, а список, поле со списком или раскрывающийся список.

Предполагаемые действия

Группы и работа с ними

Создание группы с помощью мастера

Создание группы без помощи мастера


 Списки: что это такое и как они работают

Списки: что это такое и как они работают

Во многих случаях удобнее выбрать значение из списка, чем вводить конкретное значение по памяти. Кроме того, выбор из списка позволяет быть уверенным, что введенное значение является допустимым.

Список состоит из строк с данными. В форме список может содержат один или несколько столбцов, которые могут быть снабжены заголовками. Если список из нескольких столбцов является присоединенным, то Microsoft Access сохраняет значения одного из столбцов. На страницах доступа к данным списки состоят из одного столбца без заголовка.

Значение списка, хранящееся в базовом поле

Свободный список позволяет хранить значение, используемое в другом элементе управления. Например, с помощью свободного списка можно ограничить значения, отбираемые в другом списке или в пользовательском диалоговом окне. Свободный список применяется также для поиска записи с помощью значения, выбранного в списке.

В формах вместо списков можно использовать поля со списком; они занимают меньше места и наряду с выбором значений из списка допускают ввод значений, отсутствующих в списке. См. сведения о полях со списком в формах.

На страницах доступа к данным вместо списков можно использовать раскрывающиеся списки; они занимают меньше места, однако вводить новые значения в них нельзя. См. сведения о раскрывающихся списках на страницах доступа к данным.


 Поля со списком: что это такое и как они работают

Поля со списком: что это такое и как они работают

Во многих случаях удобнее выбрать значение из списка, чем вводить конкретное значение с клавиатуры по памяти. Поле со списком позволяет выбрать любой из этих способов ввода значения, не требуя при этом значительного места в форме. Поле со списком является комбинацией двух элементов: поля и раскрывающегося списка.

Поле со списком объединяет возможности поля и списка

Значение, выбранное или введенное в присоединенное поле со списком, вставляется в поле, к которому присоединено поле со списком.

Значение поля со списком, хранящееся в базовом поле

В поле со списком список состоит из строк с данными. Строки содержат один или несколько столбцов, с заголовками или без заголовков. Если поле со списком, состоящим из нескольких столбцов, является присоединенным, то Microsoft Access сохраняет значения одного из столбцов.

Свободное поле со списком позволяет сохранять значение, используемое в другом элементе управления. Например, с помощью свободного поля со списком можно ограничить значения, отбираемые в другом поле со списком или в пользовательском диалоговом окне. Свободное поле применяется также для поиска записи с помощью значения, выбранного или введенного в поле со списком.

Поля со списком имеют свойство Ограничиться списком (LimitToList), которое определяет, допускается ли ввод в поле любых значений или только совпадающих с одним из значений списка.

Если в форме достаточно свободного места и требуется, чтобы список постоянно находился на экране, а также если требуется ограничить вводящиеся данные имеющимся списком, вместо поля со списком можно использовать список. Для получения дополнительных сведений о списках нажмите кнопку [image] .


 Раскрывающиеся списки: что это такое и как они работают

Раскрывающиеся списки: что это такое и как они работают

Во многих случаях быстрее и легче выбрать значение из списка, чем запоминать значение, которое требуется ввести. Раскрывающийся список позволяет выбрать значение из списка, используя не слишком много места на странице доступа к данным. Раскрывающийся список на странице доступа к данным выглядит, как поле со списком в форме. Как и поле со списком, раскрывающийся список показывает только одну запись до тех пор, пока его содержимое не будет развернуто; однако в раскрывающийся список можно вводить новые значения.

Выбор значения из раскрывающегося списка

Если раскрывающийся список, в котором пользователь выбирает значение, является присоединенным, это значение вставляется в поле, к которому присоединен список.

Значение раскрывающегося списка, хранящееся в базовом поле

Раскрывающийся список состоит из строк данных. Строки могут составлять только один столбец, отображаемый без заголовка.

Свободный раскрывающийся список позволяет хранить значение, используемое в другом элементе управления. Например, с помощью свободного раскрывающегося списка можно ограничить значения, отбираемые в другом раскрывающемся списке. Свободный раскрывающийся список применяется также для поиска записи с помощью значения, выбранного в списке.

Если на странице доступа к данным достаточно свободного места и требуется, чтобы список постоянно находился на экране, то вместо раскрывающегося списка можно использовать список. Для получения дополнительных сведений о списках нажмите кнопку [image] .


 Выбор между списком, полем со списком и раскрывающимся списком

Выбор между списком, полем со списком и раскрывающимся списком

Для того чтобы принять решение о создании списка, поля со списком или раскрывающегося списка, следует представить, как элемент управления будет выглядеть в форме или на странице доступа к данным и как он будет использоваться. Каждый элемент управления имеет свои достоинства.

Особенности списка. Списки можно использовать в формах и на страницах доступа к данным. Список отображается постоянно, и возможные значения элемента управления ограничены набором, представленным в списке. Для того чтобы быстро перейти к первому значению, начинающемуся с определенной буквы, достаточно ввести эту букву. При использовании формы или страницы доступа к данным для ввода или изменения данных добавить значение, отсутствующее в списке, невозможно. Для получения дополнительных сведений о списках и их использовании нажмите кнопку [image] .

Особенности поля со списком. Поля со списками можно использовать в формах. Поскольку список не отображается, пока его не откроют, этот элемент управления занимает в форме меньше места. Для того чтобы быстро найти значение, достаточно ввести его первые несколько символов. Кроме того, можно разрешить ввод в поле любого значения или только совпадающего с одним из значений списка. Для получения дополнительных сведений о полях со списком и их использовании нажмите кнопку [image] .

Особенности раскрывающегося списка. Раскрывающиеся списки можно использовать на страницах доступа к данным. Поскольку список не отображается, пока его не откроют, этот элемент управления занимает на странице доступа к данным меньше места. Возможные значения элемента управления ограничены набором, представленным в списке. Для того чтобы быстро перейти к первому значению, начинающемуся с определенной буквы, достаточно ввести эту букву. Для получения дополнительных сведений о раскрывающихся списках и их использовании нажмите кнопку [image] .


 Создание присоединенного или свободного списка, поля со списком или раскрывающегося списка

Создание присоединенного или свободного списка, поля со списком или раскрывающегося списка

Способ создания поля со списком, раскрывающегося списка или списка определяется двумя аспектами:

  • Откуда список должен получать значения: из фиксированного списка или из таблицы или запроса.

  • Должен ли Microsoft Access сохранять выбранные пользователем значения, или он должен использовать эти значения для определения содержимого другого элемента управления.

Предполагаемые действия

Создание присоединенного списка или поля со списком, выводящего данные, в форме в базе данных Access

Создание присоединенного списка, поля со списком или раскрывающегося списка в проекте Microsoft Access или на странице доступа к данным, который получает данные из источника записей

Создание свободного списка, раскрывающегося списка или поля со списком с фиксированными значениями

Создание свободного списка, раскрывающегося списка или поля со списком, отображающих значения из таблицы или запроса в базе данных

Не можете сделать выбор?


 Сортировка записей в списке, раскрывающемся списке или в поле со списком

Сортировка записей в списке, раскрывающемся списке или в поле со списком

Если список, раскрывающийся список или поле со списком создаются с помощью мастера, то строки, образующие список, автоматически сортируются по первому видимому столбцу. Если требуется задать другой порядок сортировки, или если в качестве источника строк для списка, раскрывающегося списка или поля со списком используется сохраненный запрос, можно воспользоваться следующей процедурой.

Примечание. Мастера недоступны для обособленных страниц доступа к данным или для страниц, указывающих на другую базу данных. В обоих случаях список или раскрывающийся список придется создавать без помощи мастера.

  1. Откройте форму в режиме конструктора формы или страницу доступа к данным в режиме конструктора страницы.

  2. Убедитесь, что список, раскрывающийся список или поле со списком выделены, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств элемента управления.

  3. Выполните одно из следующих действий.
    • Чтобы изменить порядок сортировки элемента управления в форме, нажмите кнопку построителя [image] в ячейке свойства Источник строк (RowSource) для открытия построителя запросов или построителя инструкций SQL.

    • Чтобы изменить порядок сортировки элемента управления на странице доступа к данным, создайте запрос с нужным порядком сортировки, а затем выберите этот запрос в списке значений свойства ListRowSource страницы доступа к данным.
  4. Задайте порядок сортировки.

    Инструкции


 Присоединение столбца списка, раскрывающегося списка или поля со списком

Присоединение столбца списка, раскрывающегося списка или поля со списком

  1. Откройте форму в режиме конструктора формы или страницу доступа к данным в режиме конструктора страницы.

  2. Убедитесь, что список, раскрывающийся список или поле со списком выделены, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств элемента управления.

  3. Выполните одно из следующих действий.

    В форме, в ячейке свойства Присоединенный столбец (BoundColumn) списка или поля со списком, укажите число, соответствующее номеру столбца списка или поля со списком. Например, введите 1, чтобы присоединить первый столбец списка или поля со списком к базовому полю, заданному в свойстве Данные (ControlSource). При определении номера столбца необходимо учитывать скрытые столбцы.

    На странице доступа к данным, в ячейке свойства ListBoundField списка или раскрывающегося списка введите имя поля, соответствующее положению столбца списка или раскрывающегося списка.

Примечания

  • В форме значением свойства Присоединенный столбец может быть номер скрытого столбца. Для получения дополнительных сведений о скрытии столбцов в списке или в поле со списком из нескольких столбцов нажмите кнопку [image] .

  • Если в форме для свойства Присоединенный столбец задано значение 0, Microsoft Access сохраняет индекс списка, а не значения одного из столбцов. Это полезно, если нужно вместо значений списка хранить последовательность номеров.

  • Для получения дополнительных сведений о свойстве Присоединенный столбец (BoundColumn) нажмите кнопку [image] .


 Оптимизация списков, раскрывающихся списков и полей со списком

Оптимизация списков, раскрывающихся списков и полей со списком

Существует ряд способов повышения быстродействия списков, раскрывающихся списков и полей со списком.

  • Создавайте списки, поля со списком или раскрывающиеся списки на основе сохраненного запроса, а не инструкции SQL. При создании в формах списка или поля со списком с помощью мастера Microsoft Access автоматически указывает в свойстве Источник строк (RowSource) элемента управления инструкцию SQL. Для того чтобы изменить значение свойства Источник строк (RowSource) на имя сохраненного запроса, нажмите кнопку построителя [image] рядом с ячейкой свойства Источник строк (RowSource). Открыв окно построителя запросов, выберите в меню Файл команду Сохранить и введите имя для запроса. При закрытии окна построителя запросов нажмите кнопку Да в ответ на приглашение подтвердить изменение свойства.

  • Раскрывающиеся списки создавайте на основе сохраненных запросов, а не таблиц. При использовании мастера для создания раскрывающегося списка на странице доступа к данным Access автоматически указывает в качестве значения свойства ListRowSource элемента управления таблицу, указанную пользователем в мастере. Чтобы загружать записи из запроса, а не из таблицы, выберите имя нужного запроса в ячейке свойства ListRowSource.

  • В запрос, указанный в ячейке свойства Источник строк (RowSource) или ListRowSource, включайте только совершенно необходимые поля. Лишние поля могут снизить производительность.

  • Индексируйте первое поле, выводящееся в списке или в поле со списком, и связанное поле (если поля разные).

  • В поле со списком в форме задавайте для свойства Автоподстановка (AutoExpand) значение Нет, если не требуется дополнять вводящиеся в поле символы до значения из списка.

  • Если в форме для свойства Автоподстановка (AutoExpand) поля со списком задано значение Да, то первое отображаемое поле должно иметь текстовый, а не числовой тип данных. При поиске соответствующего значения в списке Microsoft Access преобразует числовые значения в текстовые. Если данные распознаются как текстовые, то выполнять такое преобразование не приходится.

  • Если в форме связанное поле в подстановочном поле со списком не является тем, которое выводится на экран, то:
    • не используйте выражения для связанного или отображаемого поля;

    • не используйте сокращений в источнике строк;

    • используйте в качестве источника строк, по возможности, одну таблицу или запрос, а не несколько.
  • Не создавайте списки, раскрывающиеся списки или поля со списками на основе данных из связанных таблиц, если эти данные не должны изменяться. В этом случае рекомендуется импортировать данные в собственную базу данных.

Примечание. Построители недоступны для страниц доступа к данным. Мастера недоступны для обособленных страниц доступа к данным или для страниц, указывающих на другую базу данных. В обоих случаях список или раскрывающийся список придется создавать без помощи мастера.


 Добавление заголовков столбцов в список или поле со списком формы

Добавление заголовков столбцов в список или поле со списком формы

  1. Откройте форму в режиме конструктора.

  2. Убедитесь, что нужный список или поле со списком выбраны, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств элемента управления.

  3. Для отображения заголовков столбцов задайте для свойства Заглавия столбцов (ColumnHeads) значение Да.

Если поле со списком или список основаны на источнике записей, Microsoft Access будет использовать в качестве заголовков столбцов имена полей этого источника записей. Если поле со списком или список основаны на списке фиксированных значений, то в качестве заголовков столбцов будут использоваться первые x элементов списка значений, заданного в свойстве Источник строк (RowSource), где x равен значению свойства Число столбцов (ColumnCount).

Примечания

  • В поле со списком заголовки списка выводятся только при его раскрытии.

  • Для получения дополнительных сведений о создании списка фиксированных значений с помощью свойства Источник строк (RowSource) нажмите кнопку [image] .


 Скрытие столбца в списке или в поле со списком в форме

Скрытие столбца в списке или в поле со списком в форме

  1. Откройте форму в режиме конструктора.

  2. Убедитесь, что нужный список или поле со списком выделены, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств элемента управления.

  3. В ячейке свойства Ширина столбцов (ColumnWidths) введите значения 0 для тех столбцов, которые нужно скрыть.

Предположим, например, что имеется присоединенное поле со списком из двух столбцов: «КодПоставщика» и «Название». Столбец «КодПоставщика» является первым столбцом списка. Чтобы скрыть столбец «КодПоставщика», нужно установить свойство Ширина столбцов (ColumnWidths) так, как показано на следующем рисунке.

Скрытие столбцов с помощью свойства «Ширина столбцов» (ColumnWidths)

Примечание. Если список не раскрыт, то в поле со списком отображается первый видимый столбец списка. Например, в предыдущем примере будет отображаться столбец «Название», поскольку столбец «КодПоставщика» скрыт. Если бы столбец «КодПоставщика» не был скрытым, то в поле отображались бы только значения из этого столбца.


 Ограничение значений поля со списком до элементов, присутствующих в списке на форме

Ограничение значений поля со списком до элементов, присутствующих в списке на форме

  1. Откройте форму в режиме конструктора.

  2. Убедитесь, что нужное поле со списком выделено, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств для данного поля со списком.

  3. Выберите значение Да для свойства Ограничиться списком (LimitToList).

Примечания

  • Если первый столбец, отображаемый в поле со списком, не является присоединенным, то Microsoft Access будет разрешать вводить в поле только те значения, которые уже присутствуют в списке, даже если свойство Ограничиться списком (LimitToList) установлено в значение Нет.

  • Если свойство Ограничиться списком (LimitToList) установлено в значение Нет, то при вводе в присоединенное поле со списком значения, которого нет в списке, это значение заносится в базовое поле, но не добавляется в список. Чтобы добавить в список новые элементы, следует использовать свойство Отсутствие в списке (OnNotInList) и событие Отсутствие в списке (NotInList). Для получения дополнительных сведений нажмите кнопку [image] .


 Использование инструкции SQL в качестве источника строк для списка или поля со списком в форме

Использование инструкции SQL в качестве источника строк для списка или поля со списком в форме

В качестве источника строк для списка или поля со списком в форме можно вместо сохраненного запроса использовать инструкцию SQL; запрос более не будет присутствовать в окне базы данных. Однако списки и поля со списками, построенные на инструкциях SQL, работают медленнее, чем списки и поля со списками, основанные на сохраненных запросах.

  1. Откройте форму в режиме конструктора.

  2. Убедитесь, что нужный список или поле со списком выделены, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств элемента управления.

  3. Нажмите кнопку построителя [image] рядом с ячейкой свойства Источник строк (RowSource), чтобы открыть построитель запросов.

  4. В построителе запросов выберите команду Режим SQL в меню Вид.

  5. В окне режима SQL выделите всю инструкцию SQL и скопируйте ее нажатием клавиш CTRL+C. Закройте построитель запросов.

  6. Выберите ячейку свойства Источник строк (RowSource) и нажмите клавиши CTRL+V для вставки инструкции SQL в ячейку свойства.

  7. Удалите исходный запрос из окна базы данных.

Примечания

  • Для получения дополнительных сведений о свойствах, определяющих работу списка или поля со списком, нажмите кнопку [image] .

  • При создании в форме списка или поля со списком с помощью мастера Microsoft Access использует инструкцию SQL как источник строк для списка или поля со списком.


 Задание максимального числа строк, отображаемых в поле со списком в форме

Задание максимального числа строк, отображаемых в поле со списком в форме

  1. Откройте форму в режиме конструктора.

  2. Убедитесь, что нужное поле со списком выделено, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств для данного поля со списком.

  3. Введите число в ячейку свойства Число строк списка (ListRows).

    Если реальное количество строк списка превышает значение свойства Число строк списка (ListRows), то при раскрытии списка выводится вертикальная полоса прокрутки.


 Задание ширины списка для поля со списком в форме

Задание ширины списка для поля со списком в форме

  1. Откройте форму в режиме конструктора.

  2. Убедитесь, что нужное поле со списком выделено, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств для данного поля со списком.

  3. Введите в ячейку свойства Ширина списка (ListWidth) значение ширины в текущих единицах измерения (заданных на панели управления Windows). Для того чтобы использовать единицу измерения, отличную от принятой по умолчанию, введите обозначение единицы измерения, например: 2".

Примечания

  • Список поля со списком может быть шире его текстового поля, но не может быть более узким. Стандартное значение (Авто) обеспечивает одинаковую ширину поля и списка.

  • При создании поля со списком следует оставить место для полосы прокрутки.


 Отключение автоподстановки при вводе символов в поле со списком в форме

Отключение автоподстановки при вводе символов в поле со списком в форме

  1. Откройте форму в режиме конструктора.

  2. Убедитесь, что нужное поле со списком выделено, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств для данного поля со списком.

  3. Выберите значение Нет для свойства Автоподстановка (AutoExpand).

    Примечание. Если для свойства Автоподстановка (AutoExpand) задано значение Нет, необходимо выбрать значение из списка или ввести значение целиком.


 Свойства, используемые для создания или изменения списков и полей со списками в формах

Свойства, используемые для создания или изменения списков и полей со списками в формах

При создании списка или поля со списком с помощью мастера значения некоторых свойств элемента управления задаются автоматически. Кроме того, пользователь имеет возможность создать элемент управления без помощи мастера и самостоятельно задать значения этих свойств или сначала создать элемент управления с помощью мастера, а затем внести в свойства требуемые изменения. Для того чтобы получить дополнительные сведения о перечисленных ниже свойствах, выберите свойство в окне свойств и нажмите клавишу F1.

Примечание. Если присоединенный список или присоединенное поле со списком планируется использовать более чем в одной форме в базе данных Access (.mdb), то большинство из перечисленных ниже свойств могут быть заданы в режиме конструктора таблицы, а не в окне свойств элемента управления. Это позволяет определить свойства один раз. При добавлении поля в форму Microsoft Access автоматически создает элемент управления с заданными свойствами.

Свойство | Описание
Тип источника строк (RowSourceType) | Используется совместно со свойством Источник строк (RowSource). Данное свойство определяет тип источника строк (таблица/запрос, список значений, список полей или функция Visual Basic), а свойство Источник строк определяет фактический источник строк.
Источник строк (RowSource) | Содержит имя таблицы, запроса или инструкции SQL, если свойство Тип источника строк (RowSourceType) имеет значение Таблица/запрос. Содержит элементы списка, разделенные точкой с запятой, если свойство Тип источника строк имеет значение Список значений. Содержит имя таблицы или запроса, если свойство Тип источника строк имеет значение Список полей. Остается пустым, если значением свойства Тип источника строк является имя функции.
Присоединенный столбец (BoundColumn) | Для присоединенного списка или поля со списком из нескольких столбцов указывает, какой из столбцов присоединен к базовому полю, указанному в свойстве Данные (ControlSource). Данные из этого столбца сохраняются в поле при выборе строки в списке. Эти данные могут отличаться от данных, отображаемых в списке, если сделать столбец скрытым.
Число столбцов (ColumnCount) | Задает количество столбцов в списке или в поле со списком. Свойство Ширина столбцов (ColumnWidths) позволяет включить столбец в список, но не отображать его на экране. Это удобно для списка подстановочных значений из таблицы или запроса, когда поле, содержащее код, включается в список, но делается скрытым. Для поля со списком в поле отображается первый видимый столбец списка.
Ширина столбцов (ColumnWidths) | Определяет ширину каждого столбца. Разделителем служит символ точки с запятой. Для того чтобы скрыть столбец следует ввести значение 0. Для того чтобы задать стандартную ширину столбца (2,5 см или 1", в зависимости от настроек в панели управления Windows), следует ввести точку с запятой, не вводя значения. Для поля со списком в поле отображается первый видимый столбец списка. Тип данный, вводимых в поле со списком, должен совпадать с типом данных первого видимого столбца или быть аналогичным ему.
Заголовки столбцов (ColumnHeads) | Определяет использование имен полей из базового источника строк для поля со списком или списка в качестве заголовков столбцов в списке. В поле со списком заголовки появляются только при раскрытом списке.
Ширина списка (ListWidth) | Определяет ширину списка в поле со списком.
Число строк списка (ListRows) | Определяет максимальное количество строк, отображаемых в списке поля со списком.
Ограничиться списком (LimitToList) | Определяет возможность ввода в поле со списком любого текста или только текста, соответствующего одному из значений списка. Для добавления введенного в поле нового значения в список следует задать для данного свойства значение Нет и определить процедуру обработки события для свойства Отсутствие в списке (OnNotInList).
Отсутствие в списке (OnNotInList) | Выполняет присоединенную процедуру обработки события «Отсутствие в списке» (NotInList). Данное свойство используется для автоматического добавления в список нового значения. Это свойство недоступно на вкладке Подстановка в режиме конструктора таблицы.
Автоподстановка (AutoExpand) | Определяет автоматическое дополнение символов, введенных в поле поля со списком, до ближайшего значения. Это свойство недоступно на вкладке Подстановка в режиме конструктора таблицы
Тип элемента управления (DisplayControl) | Определяет тип элемента управления (поле со списком или список), который Microsoft Access создает по умолчанию при добавлении в форму подстановочного поля. Данное свойство доступно только на вкладке Подстановка в режиме конструктора таблицы.


 Свойства, используемые для создания в форме списка или поля со списком из нескольких столбцов

Свойства, используемые для создания в форме списка или поля со списком из нескольких столбцов

Мастер позволяет создать список или поле со списком из нескольких столбцов. При этом пользователь имеет возможность придать списку нужный вид, перенося столбцы с помощью мыши. Если требуется изменить список или поле со списком, созданные с помощью мастера, или самостоятельно создать список или поле со списком из нескольких столбцов, следует задать значения перечисленных ниже свойств. Для получения дополнительных сведений о любом из этих свойств выберите его в окне свойств и нажмите клавишу F1.

Примечание. При создании или внесении изменений в присоединенный список или присоединенное поле со списком значения большинства из перечисленных ниже свойств могут быть заданы в режиме конструктора таблицы, а не в окне свойств элемента управления. Это позволяет определить свойства один раз. В дальнейшем, при добавлении в форму поля, к которому присоединен список или поле со списком, автоматически будет создаваться элемент управления, имеющий указанные свойства.

Свойство | Описание
Присоединенный столбец (BoundColumn) | Указывает, какой из столбцов присоединен к базовому полю, указанному в свойстве Данные (ControlSource). Данные из этого столбца сохраняются в поле при выборе строки в списке. Эти данные могут отличаться от отображаемых в списке, если сделать столбец скрытым.
Число столбцов (ColumnCount) | Задает количество столбцов в списке или в поле со списком. Свойство Ширина столбцов (ColumnWidths) позволяет включить столбец в список, но не отображать его на экране. Это удобно для списка подстановочных значений из таблицы или запроса, когда поле, содержащее код, включается в список, но делается скрытым. В поле со списком отображается первый видимый столбец списка.
Ширина столбцов (ColumnWidths) | Определяет ширину каждого столбца. Разделителем служит символ точки с запятой. Для того чтобы скрыть столбец, следует ввести значение 0. Чтобы задать стандартную ширину столбца (2,5 см или 1", в зависимости от настроек в панели управления Windows), следует ввести точку с запятой, не вводя значения.
Заголовки столбцов (ColumnHeads) | Определяет наличие заголовков в списке или поле со списком. Если поле со списком или список используют источник записей, имена полей или названия столбцов из источника записей будут выведены как заголовки столбцов. Если поле со списком или список базируются на списке фиксированных значений, в качестве заголовков столбцов будут использованы первые x элементов из списка значений (заданного в свойстве Источник строк (RowSource), где x равняется значению свойства Число столбцов (ColumnCount). В поле со списком заголовки появляются только при раскрытом списке.

Примечание. Чтобы отобразить все столбцы списка (без их прокрутки в горизонтальном направлении), необходимо задать для элемента управления ширину, соответствующую суммарной ширине столбцов.


 Свойства, используемые для создания или изменения списков и полей со списками на страницах доступа к данным

Свойства, используемые для создания или изменения списков и полей со списками на страницах доступа к данным

Если для создания списка или раскрывающегося списка на странице доступа к данным используется мастер, Microsoft Access устанавливает некоторые свойства для элемента управления автоматически. С этими свойствами можно работать непосредственно, если использование мастера для создания элемента управления нежелательно. Можно также создать элемент управления с помощью мастера и изменить эти свойства нужным образом. Для получения дополнительных сведения о любом из перечисленных ниже свойств щелкните его на странице свойств и нажмите клавишу F1.

Свойство | Описание
ListRowSource | Имя набора записей в источнике данных, поставляющем значения и текст для списка или раскрывающегося списка.
ListBoundField | Для присоединенного списка или раскрывающегося списка указывает поле, присоединенное к базовому источнику данных, указанному в свойстве ListRowSource. Данные из этого столбца будут помещены в поле при выборе соответствующего элемента в списке.
ListDisplayField | Для присоединенного списка или раскрывающегося списка указывает имя поля источника записей, указанного в свойстве ListRowSource, предоставляющего отображаемые значения, соответствующие значениям свойства ListBoundField.


 Кнопки: общие сведения

Кнопки: общие сведения

Кнопки в форме или на странице доступа к данным используются для выполнения действия или набора действий. Например, можно создать кнопку, открывающую другую форму. Чтобы определить действие для кнопки в форме, следует написать макрос или процедуру обработки события и вложить ее в свойство кнопки Нажатие кнопки (OnClick). На странице доступа к данным кнопку можно связать с программой на языке JScript или Microsoft VBScript (Visual Basic Scripting Edition) с помощью редактора сценариев Microsoft Script Editor. Инструкции по созданию процедуры обработки события для кнопки на странице доступа к данным.

Примечание. С помощью мастера кнопок можно создавать более 30 различных типов кнопок. При использовании мастера кнопок Microsoft Access создает кнопку и процедуру обработки события автоматически. Мастера недоступны для обособленных страниц доступа к данным или для страниц, указывающих на другую базу данных. Мастер кнопок также недоступен, если страница не присоединена к таблице или запросу.

Кнопка для выполнения процедуры обработки события

На кнопке в форме можно отобразить текст, задав значение свойства Подпись (Caption), и рисунок, задав значение для свойства Рисунок (Picture). На странице доступа к данным текст на кнопке можно отобразить с помощью свойства Value.


 Создание кнопки

Создание кнопки

Имеется возможность создать кнопку самостоятельно или с помощью мастера. Мастер ускоряет процесс разработки кнопки, автоматически выполняя все основные действия. Мастер выводит приглашение ввести необходимые сведения и создает кнопку на основе ответов пользователя.

Мастер позволяет создавать кнопки более 30 типов. Например, можно создать кнопку для поиска записей, вывода записи на печать или применения фильтра в форме.

Мастер также полезен при изучении процедур обработки события. Когда мастер создает кнопку в форме или отчете, он создает процедуру обработки события и связывает ее с кнопкой. Можно открыть процедуру обработки события, посмотреть как она работает и, при необходимости, изменить ее. При создании мастером кнопки на странице доступа к данным процедура обработки события не создается. См. сведения по созданию процедур обработки события для кнопки на странице доступа к данным.

Примечание Мастер недоступен в отдельной странице доступа к данным или при указании на базу данных, которая в данный момент не открыта. Мастер также недоступен, если страница доступа к данным не связана с таблицей или запросом. Если мастер недоступен, кнопки приходится создавать самостоятельно.

Предполагаемые действия

Создание кнопки с помощью мастера

Создание кнопки без помощи мастера


 Преобразование кнопки в форме в кнопку «Отмена»

Преобразование кнопки в форме в кнопку «Отмена»

  1. Откройте форму в режиме конструктора.

  2. Выберите кнопку и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств кнопки.

  3. Введите в ячейку свойства Отмена (Cancel) значение Да.

Если свойство Отмена (Cancel) кнопки имеет значение Да, и форма является активной, то для выполнения действия этой кнопки можно нажать саму кнопку, нажать клавишу ESC либо нажать клавишу ENTER, когда фокус находится на кнопке. Когда для свойства Отмена (Cancel) одной кнопки задается значение Да, для всех других кнопок формы это свойство автоматически устанавливается в положение Нет. Иметь фокус по умолчанию может только одна кнопка в форме.

Для того чтобы кнопка Отмена отменяла все действия, выполненные в форме или диалоговом окне, необходимо написать макрос или процедуру обработки события и связать их со свойством кнопки Нажатие кнопки (OnClick).

Совет. Если в форме предполагается выполнение необратимых операций, таких как удаление, полезно сделать кнопку Отмена имеющей фокус по умолчанию. Для этого следует задать значение Да для свойств кнопки Отмена (Cancel) и По умолчанию (Default).


 Назначение в форме или в пользовательском диалоговом окне кнопки, имеющей фокус по умолчанию

Назначение в форме или в пользовательском диалоговом окне кнопки, имеющей фокус по умолчанию

  1. Откройте форму в режиме конструктора.

  2. Выберите кнопку и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств кнопки.

  3. Выберите значение Да для свойства По умолчанию (Default).

Если свойство По умолчанию (Default) кнопки имеет значение Да, и форма является активной, то для выполнения действия этой кнопки можно нажать саму кнопку либо нажать клавишу ENTER, когда фокус находится на кнопке. Когда для свойства По умолчанию (Default) одной кнопки задается значение Да, для всех других кнопок формы это свойство автоматически устанавливается в положение Нет. Иметь фокус по умолчанию может только одна кнопка в форме.

Совет. Если в форме предполагается выполнение необратимых операций, таких как удаление, полезно сделать кнопку Отмена имеющей фокус по умолчанию. Для этого следует задать значение Да для свойств кнопки Отмена (Cancel) и По умолчанию (Default).


 Скрытие кнопки в форме

Скрытие кнопки в форме

  1. Откройте форму в режиме конструктора.

  2. Выберите кнопку и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств.

  3. Выберите значение Да для свойства Прозрачный (Transparent).

    Кнопка станет невидимой, но останется активной.

Совет. Для того чтобы одновременно скрыть и отключить кнопку, задайте значение Нет для свойства Вывод на экран (Visible). Для того чтобы отключить кнопку, не делая ее скрытой, задайте значение Нет для свойства Доступ (Enabled). Для скрытия кнопки только во время вывода формы на печать следует задать для свойства Режим вывода (DisplayWhen) значение Только на экран.


 Скрытие кнопки на странице доступа к данным

Скрытие кнопки на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите нужную кнопку и нажмите кнопку «Свойства» [image] на панели инструментов, чтобы открыть окно ее свойств.

  3. Установите свойство Visibility в значение hidden.

Совет. Чтобы отключить кнопку, не скрывая ее, установите свойство Disabled в значение True.


 Добавление рисунка к кнопке или выключателю в форме

Добавление рисунка к кнопке или выключателю в форме

  1. Откройте форму в режиме конструктора.

  2. Выберите кнопку или выключатель и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств.

  3. В ячейке свойства Рисунок (Picture) введите имя и путь файла с расширением .bmp, .ico или .dib. Если путь или имя файла неизвестны, нажмите кнопку построителя [image] , чтобы открыть окно выбора рисунка.

Совет. Если нужно добавить рисунок и подпись к кнопке, их можно создать в редакторе Microsoft Windows Paint. Чтобы размер рисунка соответствовал размеру кнопки, создайте рисунок произвольного размера, а затем выберите ту его часть, которая должна находиться на кнопке. В меню Правка выберите команду Копировать в файл и укажите имя файла в диалоговом окне Копирование в файл. Эта процедура позволяет создать файл рисунка, имеющего выбранный размер.


 Просмотр процедуры обработки события, созданной с помощью мастера создания кнопок

Просмотр процедуры обработки события, созданной с помощью мастера создания кнопок

Следующая процедура описывает порядок вывода на экран процедуры обработки события, созданной с помощью мастера кнопок в форме. На страницах доступа к данным следует создавать процедуры обработки событий вручную.

  1. В режиме конструктора формы установите указатель на кнопку, созданную с помощью мастера, и нажмите правую кнопку мыши.

  2. Выберите в контекстном меню команду Обработка событий.


 Добавление процедуры обработки события для кнопки на странице доступа к данным

Добавление процедуры обработки события для кнопки на странице доступа к данным

  1. Щелкните правой кнопкой мыши кнопку на странице доступа к данным в режиме конструктора.

  2. Выберите в контекстном меню команду Редактор сценариев.

  3. Дважды щелкните кнопку в окне Script Outline.

  4. Дважды щелкните событие OnClick.


 Создание кнопки для поиска записи

Создание кнопки для поиска записи

  1. Откройте форму в режиме конструктора формы или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. В форме или на странице доступа к данным выберите место, в которое следует поместить кнопку.

  5. В первом диалоговом окне мастера выберите строку Переходы по записям в списке Категории, затем выберите тип кнопки, которую нужно создать, в списке Действия.

  6. Следуйте инструкциям, выводимым в диалоговых окнах мастера. В последнем диалоговом окне нажмите кнопку Готово; кнопка появится в режиме конструктора.

Примечания

  • Для просмотра процедуры обработки события, определенной для кнопки в форме, нажмите кнопку построителя [image] в ячейке свойства Нажатие кнопки (OnClick) кнопки. На странице доступа к данным можно присоединить к кнопке программу, написанную на языке JScript или на языке VBScript (Microsoft Visual Basic Scripting Edition) с помощью редактора сценариев Microsoft Script Editor. См. сведения о создании процедуры обработки события для кнопки на странице доступа к данным.

  • Мастера недоступны для обособленных страниц доступа к данным или для страниц, указывающих на другую базу данных. Мастер кнопок будет также недоступен, если страница не присоединена к таблице или запросу.


 Создание в форме кнопки для изменения или применения фильтра

Создание в форме кнопки для изменения или применения фильтра

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в которое помещается верхний левый угол кнопки.

  5. В первом диалоговом окне мастера выберите строку Работа с формой в списке Категории, затем выберите тип кнопки, которую нужно создать, в списке Действия.

  6. Следуйте инструкциям, выводимым в диалоговых окнах мастера. В последнем диалоговом окне нажмите кнопку Готово; кнопка появится в режиме конструктора.

Для просмотра процедуры обработки события, которая определена для кнопки, нажмите кнопку построителя [image] рядом с ячейкой свойства Нажатие кнопки (OnClick) кнопки.


 Создание кнопки для открытия и синхронизации, закрытия или печати формы

Создание кнопки для открытия и синхронизации, закрытия или печати формы

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в которое помещается верхний левый угол кнопки.

  5. В первом диалоговом окне мастера выберите строку Работа с формой в списке Категории, затем выберите тип кнопки, которую нужно создать, в списке Действия.

  6. Следуйте инструкциям, выводимым в диалоговых окнах мастера. В последнем диалоговом окне нажмите кнопку Готово; кнопка появится в режиме конструктора.

Для просмотра процедуры обработки события, которая определена для кнопки, нажмите кнопку построителя [image] рядом с ячейкой свойства Нажатие кнопки (OnClick) кнопки.


 Создание кнопки для обновления данных в форме

Создание кнопки для обновления данных в форме

При работе с базой данных в сети создание кнопки, обновляющей данные формы, позволяет просмотреть последнюю версию существующих записей. Чтобы отобразить все обновленные записи, включая новые, можно выполнить повторный запрос записей. Для получения дополнительных сведений нажмите кнопку [image] .

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в которое помещается верхний левый угол кнопки.

  5. В первом диалоговом окне мастера выберите строку Работа с формой в списке Категории, затем выберите тип кнопки, которую нужно создать, в списке Действия.

  6. Следуйте инструкциям, выводимым в диалоговых окнах мастера. В последнем диалоговом окне нажмите кнопку Готово; кнопка появится в режиме конструктора.

Для просмотра процедуры обработки события, которая определена для кнопки, нажмите кнопку построителя [image] рядом с ячейкой свойства Нажатие кнопки (OnClick) кнопки.


 Создание кнопки для печати отчета или отправке его по почте

Создание кнопки для печати отчета или отправке его по почте

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в которое помещается верхний левый угол кнопки.

  5. В первом диалоговом окне мастера выберите строку Работа с отчетом в списке Категории, затем выберите тип кнопки, которую нужно создать, в списке Действия.

  6. Следуйте инструкциям, выводимым в диалоговых окнах мастера. В последнем диалоговом окне нажмите кнопку Готово; кнопка появится в режиме конструктора.

Для просмотра процедуры обработки события, которая определена для кнопки, нажмите кнопку построителя [image] рядом с ячейкой свойства Нажатие кнопки (OnClick) кнопки.


 Создание в форме кнопки для печати таблицы

Создание в форме кнопки для печати таблицы

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в которое помещается верхний левый угол кнопки.

  5. В первом диалоговом окне мастера выберите строку Разное в списке Категории, затем выберите строку Печать таблицы в списке Действия.

  6. Следуйте инструкциям, выводимым в диалоговых окнах мастера. В последнем диалоговом окне нажмите кнопку Готово; кнопка появится в режиме конструктора.

Для просмотра процедуры обработки события, которая определена для кнопки, нажмите кнопку построителя [image] рядом с ячейкой свойства Нажатие кнопки (OnClick) кнопки.


 Создание в форме кнопки для запуска или завершения приложения

Создание в форме кнопки для запуска или завершения приложения

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в которое помещается верхний левый угол кнопки.

  5. В первом диалоговом окне мастера выберите строку Приложение в списке Категории, затем выберите тип кнопки, которую нужно создать, в списке Действия.

  6. Следуйте инструкциям, выводимым в диалоговых окнах мастера. В последнем диалоговом окне нажмите кнопку Готово; кнопка появится в режиме конструктора.

Для просмотра процедуры обработки события, которая определена для кнопки, нажмите кнопку построителя [image] рядом с ячейкой свойства Нажатие кнопки (OnClick) кнопки.


 Создание в форме кнопки для выполнения запроса или макроса

Создание в форме кнопки для выполнения запроса или макроса

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в которое помещается верхний левый угол кнопки.

  5. В первом диалоговом окне мастера выберите строку Разное в списке Категории, а затем выберите тип кнопки, которую нужно создать, в списке Действия.

  6. Следуйте инструкциям, выводимым в диалоговых окнах мастера. В последнем диалоговом окне нажмите кнопку Готово; кнопка появится в режиме конструктора.

Для просмотра процедуры обработки события, которая определена для кнопки, нажмите кнопку построителя [image] рядом с ячейкой свойства Нажатие кнопки (OnClick) кнопки.


 Создание в форме кнопки для набора телефонного номера

Создание в форме кнопки для набора телефонного номера

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в которое помещается верхний левый угол кнопки.

  5. В первом диалоговом окне мастера выберите строку Разное в списке Категории, а затем выберите строку Автонабор номера в списке Действия.

  6. Следуйте инструкциям, выводимым в диалоговых окнах мастера. В последнем диалоговом окне нажмите кнопку Готово; кнопка появится в режиме конструктора.

Для просмотра процедуры обработки события, которая определена для кнопки, нажмите кнопку построителя [image] рядом с ячейкой свойства Нажатие кнопки (OnClick) кнопки.


Элемент управления «Набор вкладок»: общие сведения

Элемент управления «Набор вкладок» используется для представления нескольких страниц данных в одном наборе. Это особенно удобно при работе со многими элементами управления, которые могут быть распределены на две или более категорий. Например, элемент управления «Набор вкладок» может быть использован в форме «Сотрудники», чтобы отделить общие сведения от личных.

Набор вкладок, состоящий из двух вкладок

Для получения дополнительных сведений о создании элемента управления «Набор вкладок» нажмите кнопку [image] .


Создание формы, состоящей из нескольких страниц или вкладок

Предполагаемые действия

Использование элемента управления «Набор вкладок» для создания формы, состоящей из нескольких страниц

Использование элемента управления «Разрыв страницы» для создания формы, состоящей из нескольких страниц

Не можете сделать выбор?


 Добавление в форму элемента управления «Набор вкладок» для создания многостраничной формы

Добавление в форму элемента управления «Набор вкладок» для создания многостраничной формы

  1. Откройте форму в режиме конструктора.

  2. На панели элементов нажмите кнопку Набор вкладок [image] и выберите в форме место, в которое необходимо поместить элемент управления.

    Microsoft Access добавляет набор из двух вкладок. Первая вкладка открыта по умолчанию.

  3. Чтобы добавить элементы управления в элемент «Набор вкладок», щелкните вкладку, на которую их необходимо добавить. Затем добавьте в нее элемент управления одним из перечисленных ниже способов.
    • Для вывода на экран списка полей нажмите кнопку Список полей [image] на панели инструментов, а затем перетащите одно или несколько полей на вкладку.

    • Выберите элемент управления на панели элементов и укажите место во вкладке, в которое нужно его поместить. Можно добавлять элементы управления любых типов, за исключением другого элемента «Набор вкладок».

    • Скопируйте элементы управления из другой части формы или из другой вкладки. (Перетаскивать элементы управления из другой части формы или из другой вкладки нельзя).
  4. Также можно выполнить следующие действия.
    • Чтобы изменить подпись вкладки, дважды щелкните ярлычок вкладки, чтобы открыть окно ее свойств, и введите новую подпись в ячейку свойства Подпись (Caption). Если оставить ячейку свойства Подпись (Caption) пустой, то Microsoft Access в качестве подписи будет использовать значение свойства Имя (Name).

    • Для добавления, удаления или изменения порядка вкладок щелкните правой кнопкой мыши границу элемента «Набор вкладок» и выберите команду Добавить вкладку, Удалить вкладку или Последовательность вкладок.

    • Чтобы изменить порядок обхода элементов управления вкладки по клавише TAB, щелкните вкладку правой кнопкой мыши и выберите команду Последовательность перехода.

    • Если нужно изменить шрифт подписей вкладок, его размер, стиль и т. д., дважды щелкните границу набора вкладок, чтобы открыть окно его свойств, и установите соответствующие свойства. Настройки свойств распространяются на все вкладки данного набора.
  5. Установите необходимый размер элемента управления «Набор вкладок». Просмотрите все вкладки, чтобы убедиться, что все элементы управления размещены в них нормально.

    Примечание. При изменении размера элемента управления «Набор вкладок» изображение элементов управления обрезано не будет. При уменьшении размера элемента «Набор вкладок» может понадобиться перемещение элементов управления.

  6. Для проверки элемента управления переключитесь в режим формы.

Примечания

  • Для получения дополнительных сведений о других свойствах, которые можно установить для элемента управления «Набор вкладок», нажмите кнопку [image] .

  • Чтобы посмотреть пример использования элемента управления «Набор вкладок», откройте форму «Сотрудники» в учебной базе данных «Борей». Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Свойства, используемые для настройки элемента управления «Набор вкладок»

Свойства, используемые для настройки элемента управления «Набор вкладок»

Для настройки элемента управления «Набор вкладок» используются приведенные ниже свойства.

Свойство | Описание | Место установки
Подпись (Caption) | Указывает текст для отображения на вкладке. Если в ячейке свойства Подпись (Caption) имя не указано, то автоматически используется имя, указанное в ячейке свойства Имя (Name). | Окно свойств для страницы в элементе управления «Набор вкладок»
Несколько строк (MultiRow) | Определяет, может ли элемент управления «Набор вкладок» содержать несколько строк вкладок. Если в свойстве Несколько строк (МultiRow) установлено значение Нет, то, если размер вкладок превышает ширину элемента управления «Набор вкладок», вкладки автоматически обрезаются и к ним добавляется полоса прокрутки. | Окно свойств для элемента управления «Набор вкладок»
Стиль (Style) | Определяет, что должно быть отображено наверху элемента управления «Набор вкладок». Там могут быть отображены вкладки, кнопки команд или не отображено ничего. Ничего не отображается, если кнопку команд необходимо использовать в форме за пределами элемента управления «Набор вкладок», что помогает определить текущую страницу. Для получения дополнительных сведений о свойстве Стиль (Style) нажмите кнопку [image] . | Окно свойств для элемента управления «Набор вкладок»
Высота ярлычка (TabFixedHeight) | Высота вкладок, указанная в определенных на панели управления Windows единицах измерения. Если в данном свойстве установлено значение 0, то высота каждой вкладки будет соответствовать ее содержимому. | Окно свойств для элемента управления «Набор вкладок»
Ширина ярлычка (TabFixedWidth) | Ширина вкладок, указанная в определенных на панели управления Windows единицах измерения. Если в данном свойстве установлено значение 0, то ширина каждой вкладки будет соответствовать ее содержимому. Если существует несколько строк вкладок, то ширина каждой вкладки будет увеличена таким образом, чтобы каждая строка вкладок охватывала ширину элемента управления «Набор вкладок». Если установлено значение, большее нуля, то ширина всех вкладок будет одинакова и равна значению, указанному в данном свойстве. | Окно свойств для элемента управления «Набор вкладок»
Рисунок (Picture) | Используется для добавления рисунка на вкладку. (Элемент управления «Набор вкладок» может содержать рисунок в формате BMP, но не метафайл Windows.) Рисунок отображается слева от имени вкладки, определенном в свойстве Подпись (Caption). Если требуется, чтобы на экране был отображен только рисунок (без имени), то в ячейке свойства Подпись (Caption) нажмите клавишу ПРОБЕЛ. | Окно свойств для страницы в элементе управления «Набор вкладок»

Примечания

  • Для вывода на экран окна свойств для элемента управления «Набор вкладок» дважды щелкните границу этого элемента управления. Для вывода на экран окна свойств страницы в элементе управления «Набор вкладок» дважды щелкните область страницы.

  • Если элемент управления «Набор вкладок» будет использоваться в пользовательском диалоговом окне, то может потребоваться установка дополнительных свойств. Для получения дополнительных сведений о свойствах, которые можно установить для пользовательских диалоговых окон, нажмите кнопку [image] .


 Элемент управления «Выключатель» в формах и отчетах: общие сведения

Элемент управления «Выключатель» в формах и отчетах: общие сведения

В форме или отчете выключатель может быть использован как отдельный элемент управления для отображения логического значения базового источника данных. Например, в следующем примере выключатель присоединен к полю «ПоставкиПрекращены» таблицы «Товары». Поле «ПоставкиПрекращены» имеет тип данных «Логический». Когда кнопка выключателя нажата, поле в таблице «Товары» имеет значение «Да»; если кнопка выключателя не нажата, поле имеет значение «Нет».

Выключатель указывает условия Да/Нет, Истина/Ложь или Вкл/Выкл

При нажатии кнопки выключателя, присоединенного к полю с типом Логический в базе данных Microsoft Access, отображается значение из базовой таблицы в соответствии со значением свойства Формат поля (Format) этого поля (Да/Нет, Истина/Ложь или Вкл/Выкл). В проекте Microsoft Access, переключатель присоединяется к столбцу с типом данных Bit. Значение 1 в этом столбце эквивалентно условиям «Да», «Вкл» или «Истина». Значение 0 в этом столбце означает условие «Нет», «Выкл» или «Ложь».

Выключатели особенно удобны при использовании в группах параметров с другими кнопками. В группе параметров легко заметить, нажата кнопка выключателя или нет. Для получения дополнительных сведений о группах параметров нажмите кнопку [image] .

Вместо подписи на выключатель можно поместить рисунок. Например, в приведенном выше примере вместо подписи «Поставки прекращены» подойдет рисунок корзины для бумаг.

Примеры нажатых и не нажатых кнопок выключателей

Свободные выключатели можно также использовать в пользовательских диалоговых окнах для приема данных, вводимых пользователем.


 Сводные формы: общие сведения

Сводные формы: общие сведения

Сводная форма представляет собой интерактивную таблицу, выполняющую вычисления, выбираемые пользователем, например суммирование (выполняется по умолчанию для числовых полей) и подсчет числа значений (выполняется по умолчанию для текстовых полей), исходя из способа расположения данных в сводной форме. Например, значения поля в сводной форме могут отображаться по вертикали или по горизонтали; итоговые значения при этом могут вычисляться для строки или столбца. Значения поля также могут использоваться в качестве заголовков строк или столбцов; при этом сводная форма вычисляет отдельные значения для каждой ячейки, а затем промежуточные и общие итоги. Например, чтобы проанализировать продажи по типам товаров для каждого сотрудника, можно указать имена сотрудников в качестве заголовков столбцов сводной формы, типы товаров — в качестве заголовков строк сводной формы, а вычисляемые для каждого сотрудника объемы продаж каждого типа товаров будут располагаться на пересечении каждой строки и столбца.

Число записей, используемый сводной формой, можно ограничить, назначив поле, определяющее страницу. Это поле преобразуется в раскрывающийся список, выполняющий роль фильтра для сводной формы. Значение, выбранное из списка, определяет записи, отображаемые в сводной форме. Например, можно использовать для определения страницы поле «Город» из таблицы «Сотрудники», чтобы просмотреть показатели продаж по типам товаров только для торговых представителей в Лондоне. Форма «Анализ продаж» в учебной базе данных «Борей» содержит пример сводной формы. Для просмотра этой сводной формы откройте базу данных «Борей» из подпапки Samples папки программ Office, а затем откройте форму «Анализ продаж» в режиме конструктора.

Сводный формы названы так из-за своей способности динамически изменять структуру для анализа данных различными способами. Существует возможность для достижения желаемой структуры изменять заголовки строк, столбцов, а также полей, определяющих страницу. При каждом изменении макета сводная форма немедленно выполняет вычисления заново в соответствии с новым расположением данных. Кроме того, по мере изменения исходных данных сводную форму можно обновлять.

Сводные формы создаются в Microsoft Access с помощью мастера сводных таблиц. Этот мастер использует Microsoft Excel для создания объекта сводной таблицы, и Microsoft Access для создания формы, в которую внедряется объект сводной таблицы. Для получения сведений об использовании данного мастера нажмите кнопку [image] .

При каждом открытии сводной формы в ней отображаются данные, которые были текущими при последней активизации сводной формы. Для отображения в сводной форме текущих данных необходимо обновить данные. Для получения дополнительных сведений нажмите кнопку [image] .


 Редактирование сводной формы

Редактирование сводной формы

Сводная форма является внедренным объектом Microsoft Excel, поэтому для ее изменения необходимо открыть Microsoft Excel из формы Microsoft Access, в которую внедрен объект сводной таблицы.

  1. Откройте сводную форму в режиме формы.

  2. Нажмите кнопку Изменить сводную таблицу.

    Примечание. Пользователи, предпочитающие редактирование по месту работе в отдельном окне Microsoft Excel, могут выбрать в меню Правка Microsoft Access команду Объект Worksheet и подкоманду Изменить.

  3. В меню Данные Microsoft Excel выберите команду Обновить данные.

  4. Внесите нужные изменения в сводную форму.

    Примечание. Для получения справки о способах работы со сводной таблицей воспользуйтесь справочной системой Microsoft Excel.

  5. Закончив изменение сводной формы, выберите в меню Файл Microsoft Excel команду Выход.

Примечания

  • Если нужный ответ не удалось найти в справке Microsoft Excel, можно воспользоваться справкой Microsoft Access, открыв сводную форму в режиме формы в Microsoft Access. При использовании редактирования по месту для вызова справки Microsoft Access необходимо сначала щелкнуть любое место формы Access вне сводной таблицы.

  • Исходные данные, используемые в сводной форме, не сохраняются автоматически вместе со сводной формой. Пользователь должен обновлять данные в сводной форме при каждом обращении к ней. Это означает, что необходимо иметь доступ к расположению, в котором эти данные сохраняются. Если известно, что в дальнейшем потребуется обновление данных в сводной форме в тот момент, когда доступ к данным будет невозможен, следует сохранить данные вместе со сводной формой. Для получения дополнительных сведений нажмите кнопку [image] .


 Обновление данных в сводной форме

Обновление данных в сводной форме

  1. Откройте сводную форму в режиме формы.

  2. Нажмите кнопку Изменить объект сводной таблицы.

  3. В меню Данные Microsoft Excel выберите команду Обновить данные.


 Отображение или скрытие текстового поля или другого элемента управления на странице доступа к данным

Отображение или скрытие текстового поля или другого элемента управления на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите элемент управления, который требуется отобразить или скрыть, а затем нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. Выполните одно из следующих действий.
    • Для того чтобы задать наследование элементом управления параметров вывода на экран раздела, в который он помещен, выберите в ячейке свойства Visibility значение Inherit.

    • Для того чтобы сделать элемент управления невидимым, выберите в ячейке свойства Visibility значение Hidden.

    • Для того чтобы отобразить элемент управления на странице доступа к данным, выберите в ячейке свойства Visibility значение Visible.

Примечание. Если элемент управления имеет присоединенную подпись, параметры отображения подписи можно задать отдельно от элемента управления.


 Удаление переключателя или другого элемента управления из группы параметров на странице доступа к данным

Удаление переключателя или другого элемента управления из группы параметров на странице доступа к данным

Из группы параметров на странице доступа к данным в режиме конструктора можно удалить один или несколько переключателей.

  • Щелкните элемент управления, который требуется удалить, а затем нажмите клавишу DEL.


 Отключение элемента управления или запрет на изменение данных в текстовом поле или другом элементе управления на страницах доступа к данным

Отключение элемента управления или запрет на изменение данных в текстовом поле или другом элементе управления на страницах доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите элемент управления, который нужно отключить, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. Чтобы запретить пользователям изменять данные элемента управления, установите свойство ReadOnly в значение True.

Примечание. Если нужно исключить элемент управления из последовательности перехода, но требуется по-прежнему сохранить возможность его выбора, установите его свойство TabIndex в значение -1.


 Добавление элемента развертывания на страницу доступа к данным

Добавление элемента развертывания на страницу доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Развернуть [image] на панели элементов.

  3. Щелкните заголовок группы, для которой предназначен элемент развертывания.

  4. Выберите, как должны отображаться по умолчанию записи следующего уровня группировки — раскрытыми или свернутыми.


 Удаление элемента развертывания со страницы доступа к данным

Удаление элемента развертывания со страницы доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Убедитесь, что элемент развертывания, который нужно удалить, выделен.

  3. Нажмите клавишу DELETE.

Примечание. При удалении элемента развертывания из заголовка группы Microsoft Access автоматически установит свойство Развернуто по умолчанию (ExpandedByDefault) этой группы в окне Сортировка и группировка в значение Да. Если свойство уровня группировки Развернуто по умолчанию (ExpandedByDefault) имеет значение Да, а этот уровень является высшим на странице, то все записи следующего уровня группировки будут отображаться при открытии страницы в режиме страницы или в обозревателе Microsoft Internet Explorer. В результате страница может загружаться дольше. Если установить свойство Развернуто по умолчанию (ExpandedByDefault) в значение Нет, то записи следующего уровня группировки отображаться не будут.


 Добавление кнопок перехода по записям на страницу доступа к данным

Добавление кнопок перехода по записям на страницу доступа к данным

При добавлении раздела кнопок перехода к уровню группировки, Microsoft Access автоматически вставляет кнопки перехода по записям. Для уровней группировки, имеющих раздел кнопок перехода по записям, но не имеющих самих кнопок перехода, используйте следующую процедуру.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Кнопки перехода Кнопки перехода на панели элементов.

  3. Выберите в разделе перемещения по записям место, где должны находиться кнопки перехода.

  4. Укажите число записей, которые должны отображаться для этого уровня группировки при открытии страницы в режиме страницы или в Microsoft Internet Explorer

Примечание. Можно настраивать кнопки перехода по записям с помощью свойств. Например, можно скрыть кнопки добавления или удаления записей.


 Настройка кнопок перехода по записям на странице доступа к данным

Настройка кнопок перехода по записям на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Убедитесь в том, что нужный элемент переходов по записям является выделенным, а затем нажмите на панели инструментов кнопку Свойства [image] .

  3. Введите новые значения для следующих свойств:
    • Измените нужным образом строку в ячейке свойства RecordsetLabel. Например, для свойства RecordsetLabel уровня группировки «Товары» можно задать значение Товары |0 из |2;Товары |0-|1 из |2. Первая строка (до точки с запятой (;)) представляет собой подпись, отображаемую при отображении одной записи на странице в режиме страницы или в Microsoft Internet Explorer. Вторая строка (после точки с запятой) представляет собой подпись, отображаемую при отображении на странице двух и более записей. |0 указывает номер текущей записи на странице, используемой для ввода данных, или номер первой видимой записи в группе на странице с группировкой; |1 указывает номер последней видимой записи в группе на странице с группировкой; |2 указывает число записей в наборе записей.

    • В ячейку свойства RecordSource введите имя таблицы или запроса для данного уровня группировки.
  4. Для любого из следующих свойств задайте значение True, чтобы вывести на экран кнопку или подпись, либо False, чтобы убрать кнопку или подпись с экрана. В режиме страницы или в Internet Explorer кнопки имеют следующие функции.
    • ShowDelButton [image] Удаление записи

    • ShowFilterBySelectionButton [image] Отбор записей, совпадающих по выбранному полю

    • ShowFirstButton [image] Переход к первой записи

    • ShowHelpButton [image] Вывод справки

    • ShowLabel Отображение сведений, указанных в свойстве RecordsetLabel

    • ShowLastButton [image] Переход к последней записи

    • ShowNewButton [image] Переход к новой записи

    • ShowNextButton [image] Переход к следующей записи

    • ShowPrevButton [image] Переход к предыдущей записи

    • ShowSaveButton [image] Сохранение текущей записи

    • ShowSortAscendingButton [image] Сортировка записей по возрастанию

    • ShowSortDescendingButton [image] Сортировка записей по убыванию

    • ShowToggleFilterButton объект Filter Применение или удаление фильтра

    • ShowUndoButton [image] Отмена последней записи


 Удаление кнопок перехода по записям со страницы доступа к данным

Удаление кнопок перехода по записям со страницы доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Щелкните удаляемый элемент управления кнопок перехода, чтобы выделить его.

  3. Нажмите клавишу DELETE.

Примечания

  • После удаления элемента управления кнопок перехода, следует также удалить раздел кнопок перехода по записям.

  • При удалении кнопок перехода или раздела кнопок перехода по записям данного уровня группировки, Microsoft Access автоматически установит свойство Размер страницы доступа к данным (DataPageSize) в значение Все. Если удалить кнопки перехода или раздел кнопок перехода для самого первого уровня группировки, то при открытии страницы в режиме страницы или в обозревателе Microsoft Internet Explorer будут отображены все записи этой группы. В результате загрузка страницы может потребовать больше времени.


 Элемент управления «Бегущая строка» на страницах доступа к данным: общие сведения

Элемент управления «Бегущая строка» на страницах доступа к данным: общие сведения

Элемент управления Бегущая строка, иногда называемый движущимся текстом, используется на страницах доступа к данным для отображения движущегося текста, к которому требуется привлечь внимание, например, заголовка или важного объявления. Для отображения текста, содержащегося в поле базы данных, элемент управления «Бегущая строка» следует присоединить к нужному полю. Можно настраивать такие параметры бегущей строки как направление прокрутки, скорость или тип движения.

Для просмотра перемещения текста в бегущей строке перейдите в режим страницы.

Дополнительные сведения

Работа с бегущей стрококй


Работа с бегущей строкой на странице доступа к данным

Предполагаемые действия

Создание присоединенной бегущей строки, отображающей данные

Создание свободного элемента управления «Бегущая строка»

Изменение характера движения текста бегущей строки

Изменение количества циклов повтора текста в бегущей строке

Изменение скорости движения текста бегущей строки

Изменение направления движения текста бегущей строки

Не можете сделать выбор?


 Использование точечных рисунков, метафайлов и других графических файлов для вывода рисунка

Использование точечных рисунков, метафайлов и других графических файлов для вывода рисунка

Для вывода на экран фоновых рисунков и рисунков в связанной рамке объекта, свободной рамке объекта или рамке рисунка используются точечные рисунки (файлы в форматах .bmp и .dib), метафайлы (файлы в форматах .wmf и .emf) или файлы других форматов, например GIF и JPEG.

Использование метафайлов

  • При необходимости изменять размеры рисунков рекомендуется использовать метафайлы. Метафайлы лучше поддаются масштабированию, поскольку рисунки этого формата представляют из себя совокупность линий, а не точек.

  • Кроме того, метафайлы обычно имеют меньшие размеры, поэтому их использование позволяет экономить место на диске.

Большинство графических программ поддерживает сохранение файлов в формате метафайлов. За более подробным описанием следует обращаться к документации используемой графической программы. Необходимо помнить, что при загрузке точечного рисунка в графическую программу и его сохранении как метафайла по-прежнему будет сохранен точечный рисунок (рисунок просто будет внедрен в метафайл). Рисунок должен быть создан в графической программе и сохранен как метафайл.

Использование точечных рисунков

  • Если соображения масштабирования или экономии места на диске не существенны, или если вы не имеете доступа к программам, поддерживающим создание метафайлов, используйте точечные рисунки.

  • Точечные рисунки удобны для мозаичного заполнения раздела или элемента управления, поскольку эти рисунки не масштабируются.

  • Точечные рисунки следует использовать в ситуациях, когда могут потребоваться изменения мелких деталей рисунка. Этот формат позволяет получить доступ к каждой точке рисунка и допускает изменение любых мелких деталей рисунка.

Примечания

  • При необходимости изменить размеры рисунка в форме или отчете следует задать для свойства Масштабы рисунка (PictureSizeMode) (для фоновых рисунков) или свойства Установка размеров (SizeMode) (для присоединенной или свободной рамки объекта или рамки рисунка) значение По размеру рамки. Задание значения По размеру рамки для свойства Масштабы рисунка (PictureSizeMode) или Установка размеров (SizeMode) позволяет сохранить исходные пропорции рисунка при изменении размеров формы или элемента управления.

  • Для корректировки размеров рисунка на странице доступа к данным используются свойства Высота (Height) и Ширина (Width). Значения в поля свойств Высота (Height) и Ширина (Width) вводятся в пикселах (px), пунктах (pt), сантиметрах (cm) или дюймах (in). Например, если в поле свойства Высота (Height) указано «25px», изображение будет иметь высоту 25 пикселов.

  • См. сведения о других форматах графических файлов, которые можно использовать с Microsoft Access.


 Добавление рисунка в форму, отчет или на страницу доступа к данным с помощью элемента управления «Рисунок»

Добавление рисунка в форму, отчет или на страницу доступа к данным с помощью элемента управления «Рисунок»

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Рисунок Рисунок на панели элементов.

  3. В форме, отчете или на странице доступа к данным выберите место, в которое следует поместить рисунок.

  4. В диалоговом окне Выбор рисунка выберите имя файла добавляемого рисунка. Поле со списком Папка позволяет выбрать диск и папку, в которой находится рисунок.

  5. Нажмите кнопку OK.

    Microsoft Access создает рамку рисунка и помещает в нее рисунок.

Примечания

  • Можно изменять размер и пропорции вставленного рисунка.

    Инструкции

  • При добавлении рисунка в рамку рисунка Microsoft Access по умолчанию встраивает рисунок в форму или отчет. Встроенный в форму или отчет рисунок становится частью файла базы данных. Если один и тот же рисунок будет использоваться в нескольких формах или отчетах, желательно связать рисунок, а не встраивать его. Связанный рисунок содержится в отдельном файле. Чтобы связать рисунок с формой или отчетом, установите свойство Тип рисунка (PictureType) элемента управления «Рисунок» в значение Связанный.

  • При добавлении рисунка на страницу доступа к данным он добавляется к файлам, составляющим эту страницу. Если один и тот же рисунок планируется использовать на нескольких различных страницах доступа к данным, желательно связать его, а не встраивать.


 Изменение размеров и пропорций рисунка в форме или отчете

Изменение размеров и пропорций рисунка в форме или отчете

Способ изменения размера и пропорций рисунка зависит от того, будет ли данный рисунок использован как фоновый рисунок (подложка) или будет выведен в рамке рисунка, свободной рамке объекта или в присоединенной рамке объекта.

Предполагаемые действия

Изменение размеров фонового рисунка

Изменение размеров рисунка, выводимого в рамке рисунка, в свободной или присоединенной рамке объекта


 Добавление в форму фонового рисунка

Добавление в форму фонового рисунка

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Рисунок (Picture) введите путь и имя файла с расширением .bmp, .ico, .dib, .wmf или .emf. Если были установлены графические фильтры для других приложений, то можно использовать любые файлы, поддерживаемые этими фильтрами. Если путь к файлу или имя файла неизвестны, нажмите кнопку построителя [image] .

  4. В свойстве Тип рисунка (PictureType) выберите тип рисунка — внедренный или связанный. Внедренный рисунок сохраняется в файле базы данных. Если внедрить этот же рисунок в другую форму, он будет добавлен в файл базы данных еще раз. Связанный рисунок не сохраняется в базе данных — его файл должен присутствовать на жестком диске. Если требуется сэкономить место на диске, используйте для данного свойства значение Связанный.

  5. Поместив рисунок в форму, можно изменить его размер или выбрать фрагмент. Для этого необходимо указать в ячейке свойства Масштабы рисунка (PictureSizeMode) одно из следующих значений.
    Значение | Описание
    Фрагмент | Отображает рисунок в его реальном размере. Если размер рисунка превышает размер окна формы, то изображение рисунка обрезается.
    Вписать в рамку | Масштабирует рисунок так, чтобы он соответствовал окну формы. Использование данного значения может привести к искажению пропорций рисунка.
    По размеру рамки | Масштабирует рисунок так, чтобы он соответствовал окну формы либо по ширине, либо по высоте. Использование данного значения не приведет ни к обрезанию рисунка, ни к искажению его пропорций.
  6. Если рисунок необходимо выровнять, выберите одно из значений в ячейке свойства Выравнивание рисунка (PictureAlignment).

    Примечание. Для того, чтобы фоновый рисунок располагался в центре окна формы и изменял свой размер при изменении размеров окна формы, выберите значение По центру. Если размер рисунка не должен изменяться при изменении размеров окна формы, выберите значение По центру формы.

  7. Если требуется размножить рисунок по всему фону формы, установите в ячейке свойства Мозаичное заполнение (PictureTiling) значение Да. Заполнение начинается с позиции, определяемой значением свойства Выравнивание рисунка (PictureAlignment).

    Примечание. Чтобы заполнить весь фон рисунком, установите для свойства Масштабы рисунка (PictureSizeMode) значение Фрагмент. Рисунок не может быть размножен по всему фону, если свойство Масштабы рисунка (PictureSizeMode) имеет значение Вписать в рамку или По размеру рамки.

Примечания

  • Если цвета на фоновом рисунке отличаются от цветов исходного рисунка, можно указать, чтобы Microsoft Access использовал цвета приложения, в котором был создан этот рисунок.

    Инструкции

  • В качестве фонового рисунка вместо точечного рисунка можно использовать метафайл. Для получения дополнительных сведений нажмите кнопку [image] .


 Восстановление связи рисунка в форме или отчете

Восстановление связи рисунка в форме или отчете

При перемещении или переименовании рисунка связь может быть потеряна. Способ ее восстановления зависит от типа рисунка. Это может быть рисунок в присоединенной рамке объекта, в свободной рамке объекта, в рамке рисунка или фоновый рисунок (подложка).

Примечание. Этот тип связи отличен от гиперссылки, используемой в форме или отчете для перехода в другой документ, объект или страницу. Для получения дополнительных сведений о гиперссылках нажмите кнопку [image] .

Предполагаемые действия

Восстановление связи рисунка в свободной или присоединенной рамке объекта

Восстановление связи рисунка в рамке рисунка

Восстановление связи фонового рисунка


 Восстановление связи объекта в форме или отчете

Восстановление связи объекта в форме или отчете

При перемещении или переименовании рисунка связь может быть потеряна.

Примечание. Этот тип связи отличается от гиперссылок, используемых в формах или отчетах для перехода к другому документу, объекту или странице. Для получения дополнительных сведений о гиперссылках нажмите кнопку [image] .

  1. Выполните одно из следующих действий.
    • Если объект является свободным, выберите объект в режиме конструктора формы или конструктора отчета.

    • Если объект является присоединенным, откройте форму в режиме формы (или в режиме таблицы), найдите запись, которую требуется изменить, и щелкните объект.
  2. Выберите в меню Правка команду Связи OLE/DDE.

  3. В поле Связи выберите связь, которую требуется восстановить или изменить.

  4. Выберите команду Сменить источник.

  5. В диалоговом окне Смена источника выберите новое имя файла. При необходимости, перейдите на другой диск и/или в другую папку.

  6. Нажмите кнопку Открыть для завершения создания связи и закройте диалоговое окно Смена источника, а затем нажмите кнопку Закрыть в диалоговом окне Связи.

Примечание. При изменении связи присоединенной рамки объекта меняется связь только для текущей записи. Чтобы изменить связь для другой записи, следует перейти на нее и повторить всю процедуру.


 Добавление рамки изображения на страницу доступа к данным

Добавление рамки изображения на страницу доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Рисунок на панели элементов Рамка изображения .

  3. Для вывода на экран списка полей нажмите кнопку Список полей [image] на панели инструментов.

  4. Перетащите поле, содержащее путь к рисунку, на страницу доступа к данным. Поместите верхний левый угол значка в то место, где должен находиться левый верхний угол изображения, и отпустите кнопку мыши.

  5. Подберите размер изображения. См. инструкции по изменению размера рисунка, выведенного на экран в рамке.


 Работа с графикой на странице доступа к данным

Работа с графикой на странице доступа к данным

Данный раздел содержит справочные сведения по следующим вопросам.

Вставка графики из файла

Выравнивание рисунков

Дополнительные сведения

Вставка графики из файла

При вставке рисунка из файла можно вставить либо весь рисунок, скопировав и вставив его через буфер обмена, либо вставить ссылку на рисунок, указав его фиксированное расположение, например, на Web-сервере, или относительное расположение. Связывание рисунка со страницей доступа к данным уменьшает размер страницы, облегчает обновление рисунка, а также позволяет сделать рисунок общим для различных страниц доступа к данным. При перемещении или копировании страницы доступа к данным в Windows необходимо также переместить или скопировать все вспомогательные файлы (такие как рисунки, фоновые текстуры и маркеры), чтобы сохранить в рабочем состоянии ссылки на графические объекты страницы доступа к данным.

Возврат в начало

Выравнивание рисунков

Панель инструментов Выравнивание и изменение размера в режиме конструктора страницы доступа к данным содержит команды выравнивания, помогающие упорядочить рисунки.

Возврат в начало

Дополнительные сведения

Добавление рисунка или другого объекта на страницу доступа к данным

Добавление элемента ActiveX (специального элемента управления OLE) на страницу доступа к данным

Возврат в начало


 Вывод замещающего текста для рисунка на странице доступа к данным

Вывод замещающего текста для рисунка на странице доступа к данным

К рисунку можно добавить замещающий текст, который будет выводиться на месте рисунка, если у Web-обозревателя пользователя отключены или отсутствуют графические возможности.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите элемент управления рисунка и нажмите кнопку Свойства [image] на панели управления, чтобы открыть окно его свойств.

  3. В ячейке свойства Alt введите замещающий текст.


 Удаление свободного рисунка со страницы доступа к данным

Удаление свободного рисунка со страницы доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Щелкните элемент управления «Рисунок».

  3. Нажмите клавишу DELETE.


 Выражения

Выражения

Выражения являются основным средством выполнения многих операций Microsoft Access. Выражение представляет собой комбинацию символов — идентификаторов, операторов и значений — дающую определенный результат.

Например, следующее выражение позволяет вывести в элементе управления в форме или отчете сумму значений полей «СуммаЗаказа» и «СтоимостьДоставки» :

= [СуммаЗаказа] + [СтоимостьДоставки]

Ниже приведены примеры операций, в которых используются выражения.

  • Указание значения свойства, которое определяет вычисляемый элемент управления, определяет условие на значение или задает для поля значение по умолчанию.

  • Указание условий отбора, создание вычисляемого поля или обновление записей в запросе или фильтре.

  • Указание условий выполнения макрокоманды или набора макрокоманд в макросе и определение аргументов многих макрокоманд.

  • Определение аргументов для многих функций, инструкций и методов в процедурах Visual Basic для приложений.

  • Редактирование запросов SQL в режиме SQL окна запроса или определение свойств и аргументов с помощью инструкций SQL.

Для получения сведений о создании выражений нажмите кнопку [image] .

Для просмотра примеров выражений нажмите кнопку [image] .


Создание выражения с помощью построителя выражений

  1. Запустите построитель выражений.

    Инструкции

  2. В левом нижнем поле построителя выберите папку, содержащую нужный элемент.

  3. В нижнем среднем поле дважды щелкните элемент, чтобы вставить его в поле выражения, или выберите тип элементов.

  4. Если выбран тип в нижнем среднем поле, то значения будут отображаться в нижнем правом поле. Дважды щелкните значение, чтобы вставить его в поле выражения.

    Совет. Любая часть выражения может быть непосредственно введена в поле выражения.

  5. Вставьте необходимые операторы в выражение. Для этого поместите указатель мыши в определенную позицию поля выражения и выберите одну из кнопок со знаками операций, расположенных в середине окна построителя.

  6. Закончив создание выражения, нажмите кнопку OK.

Microsoft Access скопирует созданное выражение в ту позицию, из которой был вызван построитель выражений. Если в данной позиции уже содержится значение, то исходное значение или выделенный текст будут заменены на новое выражение.

Для получения дополнительных сведений о построителе выражений нажмите кнопку [image] .


Использование построителя выражений

Предполагаемые действия

Общие сведения о построителе выражений

Запуск построителя выражений

Создание выражения с помощью построителя выражений

Просмотр примеров выражений

Дополнительные сведения о выражениях


 Общие сведения о построителе выражений

Общие сведения о построителе выражений

Окно построителя выражений состоит из трех разделов.

Выражение создается путем выбора объектов базы данных, элементов и значений из списков

  • В верхней части окна построителя расположено поле выражения. Ниже находится раздел, предназначенный для создания элементов выражения и их последующей вставки в поле выражения. Допускается непосредственный ввод части выражения в поле выражения.

  • В средней части окна построителя находятся кнопки с часто используемыми операторами. При нажатии на одну из этих кнопок построитель вставит соответствующий оператор в текущую позицию поля выражения. Чтобы вывести полный список операторов, выберите папку Операторы в нижнем левом поле и нужный тип в среднем поле. В правом поле будут выведены все операторы выбранного типа.

  • В нижней части окна построителя находятся три поля.
    • В левом поле выводятся папки, содержащие таблицы, запросы, формы, объекты базы данных, встроенные и определенные пользователем функции, константы, операторы и общие выражения.

    • В среднем поле задаются определенные элементы или типы элементов для папки, заданной в левом поле. Например, если выбрать в левом поле Встроенные функции, то в среднем поле появится список всех типов функций Microsoft Access.

    • В правом поле выводится список значений (если они существуют) для элементов, заданных левым и средним полями. Например, если выбрать в левом поле Встроенные функции и тип функции в среднем, то в правом поле будет выведен список всех встроенных функций выбранного типа.

Примечания

  • Чтобы новые имена полей появились в построителе выражений, следует предварительно сохранить таблицу или запрос, содержащие такие поля.

  • Если функция или объект не выводятся в нижней части построителя выражений, то это значит, что их использование недопустимо в позиции, из которой был вызван построитель. Например, нельзя ссылаться на другое поле или элемент управления в условии на значение для поля в режиме конструктора таблицы, таким образом папки Таблицы, Запросы, Формы и Отчеты не доступны при запуске построителя выражений из ячейки для свойства поля Условие на значение (ValidationRule) в режиме конструктора таблицы.

  • При вставке идентификатора в выражение построитель вставляет только те его части, которые требуются в текущем контексте. Например, при запуске построителя выражений из окна свойств формы «Клиенты» и вставке идентификатора для свойства Вывод на экран (Visible) будет вставлено только имя свойства: Visible. При использовании данного выражения вне контекста формы необходимо включать полный идентификатор: Forms![Клиенты].Visible.


 Запуск построителя выражений

Запуск построителя выражений

Построитель выражений можно вызвать в большинстве ситуаций, когда требуется ввести выражение, например, из окна свойств, из ячейки Условие отбора в бланке запроса или из окна макроса.

Предполагаемые действия

Запуск построителя выражений из окна свойств или из нижней половины окна макроса

Запуск построителя выражений из бланка запроса или из столбца условий в окне макроса


 Ввод выражения в окно свойств, в бланк запроса или в аргумент макрокоманды

Ввод выражения в окно свойств, в бланк запроса или в аргумент макрокоманды

При вводе в окно свойств, в поле бланка запроса или в ячейку аргумента макрокоманды выражения, размер которого превышает размер стандартной области ввода, существует возможность ввести выражение в окно Область ввода. Для того чтобы открыть окно Область ввода, нажмите клавиши SHIFT+F2, когда фокус находится в той позиции, в которую требуется ввести выражение.

При вводе выражения в окно свойств, в поле бланка запроса или в ячейку аргумента макрокоманды, Microsoft Access выполняет следующие действия.

  • Анализ зависящих от региональных настроек имен функций, имен свойств и разделителей списков для национальных версий.

  • Автоматическая вставка определенных символов при изменении положения фокуса. В зависимости от типа поля, в которое вводится выражение, автоматически добавляются:
    • прямые скобки ([ ]) вокруг имен форм, отчетов, полей и элементов управления;

    • символы «#» вокруг дат;

    • прямые кавычки (") вокруг строковых значений.

Примечание. Перед выражениями, определяющими вычисляемые элементы управления, всегда помещается знак равенства (=).

Использование функций и свойств в международных версиях Microsoft Access

Ниже перечислены правила ввода имен функций или свойств в международных версиях Microsoft Access.

  • Локализованные имена свойств (на национальном языке) можно вводить в окне свойств, в бланке запроса или в аргументах макрокоманд.

  • При определении нескольких аргументов функции допускается использование указанного в региональных настройках символа разделителя списка. Символ разделителя списка выбирается на вкладке Числа в окне Язык и стандарты панели управления Windows. Для большинства международных версий по умолчанию в качестве разделителя списка используется точка с запятой (;).

Однако в программах на языке Visual Basic для приложений (VBA) необходимо использовать английские имена функций и свойств, а в качестве разделителя списка использовать запятую (,).

Ввод имен объектов

Имена таблиц, отчетов, запросов, полей и элементов управления заключаются в квадратные скобки ([ ]).

При вводе имен объектов в идентификаторы использование квадратных скобок является обязательным, если имя содержит пробелы или специальные символы, например, символ подчеркивания. Имена, не содержащие пробелы и специальные символы, можно вводить без квадратных скобок. Microsoft Access добавит квадратные скобки автоматически (с двумя исключениями, которые описаны ниже).

Например, для расчета суммы значений полей «СтоимостьДоставки» и «ОбщаяСуммаЗаказа» достаточно определить вычисляемое поле с помощью следующего выражения в ячейке свойства Данные (ControlSource):

= СтоимостьДоставки + ОбщаяСуммаЗаказа

Microsoft Access автоматически отобразит это выражение следующим образом:

= [СтоимостьДоставки] + [ОбщаяСуммаЗаказа]

Примечание. В значениях свойства Условие на значение (ValidationRule) или в ячейке строки Условие отбора на бланке запроса квадратные скобки вокруг имен не всегда добавляются автоматически. При вводе имен объектов квадратные скобки следует ввести вручную. В противном случае Microsoft Access может воспринять введенные имена как текстовые значения и добавить прямые кавычки.

Ввод значений даты/времени

Символы «#» вокруг элемента выражения указывают, что элемент представляет значение даты/времени. Microsoft Access автоматически оценивает значение, заключенное в символы «#», как значение даты/времени и позволяет вводить такие значения в любом поддерживаемом формате даты или времени.

Нет необходимости вводить символы «#» вокруг значений даты/времени в выражениях, определяющих условия на значение или условия отбора для полей, имеющих тип данных «Дата/время». Ввод значений допускается в любом поддерживаемом формате даты или времени. Microsoft Access автоматически добавит символы «#» вокруг введенного значения.

Значения отображаются в соответствии с настройками, заданными в окне Язык и стандарты панели управления Windows. Формат вывода даты можно изменить с помощью свойства Формат поля (Format).

Ввод текста

Заключение элемента выражения в прямые кавычки (") указывает, что данный элемент является строковым значением.

При вводе строкового выражения в качестве условия на значение или условия отбора заключение значения в прямые кавычки не является обязательным; Microsoft Access добавит кавычки автоматически.

Например, если введено выражение Рига, Microsoft Access отобразит его в следующем виде:

"Рига"


 Использование значений в выражениях

Использование значений в выражениях

Для того чтобы указать значение в выражении используют литералы, константы, функции и идентификаторы.

  • Литералом называют значение в явном представлении, например, число, строковое значение или дату. Примерами значений в явном представлении могут служить "Москва", 100 и #1-янв-94#. Даты необходимо заключать в символы (#), а строковые значения в прямые кавычки (").

  • Константа представляет не изменяющееся значение. True, False и Null являются примерами констант, автоматически определяемых в Microsoft Access. Пользователь имеет возможность определить собственные константы языка Visual Basic для приложений, которые могут быть использованы в процедурах Visual Basic.

  • Функция возвращает значение, которое является результатом расчетов или выполнения других операций. В Microsoft Access определен ряд встроенных функций, например:
    • функция Date возвращает текущую дату;

    • функция Sum возвращает сумму набора значений поля;

    • функция DLookup возвращает значение указанного поля.

    В языке Visual Basic пользователь имеет возможность создавать собственные функции.

  • Идентификатор представляет ссылку на значение поля, элемента управления или свойства. Например, следующий идентификатор определяет ссылку на значение свойства Значение по умолчанию (DefaultValue) элемента управления «ДатаРазмещения» в форме «Заказы»:

    Forms![Заказы]![ДатаРазмещения].DefaultValue

Оператор слияния строк & позволяет объединить значение поля, элемента управления или свойства со строкой в явном представлении. Например, в следующем выражении выполняется слияние строки "[КодТипа] = " со значением элемента управления «КодТипа» в форме «Товары»:

"[КодТипа] = " & Forms![Товары]![КодТипа]

В некоторых случаях, например, в статистических функциях по подмножеству, таких как функция DLookup, значение должно заключаться в одинарные (') или в прямые (") кавычки. Простейшим способом добавления кавычек является включение символа одинарных кавычек в строку с последующим слиянием строки с другой строкой, содержащей единственный символ одинарных кавычек, как в следующем примере:

"[КодТипа] = ' " & Forms![Товары]![КодТипа] & " ' "

Существующие приложения Microsoft Access поддерживают использование операторов вертикальной черты (| |) вместо открывающих и закрывающих пар символов прямых кавычек (") и операторов & (слияния строк), например:

"[КодТипа] = '|Forms![Товары]![КодТипа]|' "

Однако использовать символы вертикальной черты не рекомендуется, поскольку в некоторых обстоятельствах они могут давать непредсказуемые результаты.

Для того чтобы получить в выражениях строку, заключенную в кавычки, следует либо использовать вложенные строки в одинарных кавычках, либо использовать тройные пары прямых кавычек. Например, следующие выражения являются эквивалентными:

Forms![Контакты]![Город].DefaultValue = " 'Рига' "

Forms![Контакты]![Город].DefaultValue = " " "Рига" " "

Для получения дополнительных сведений о константах нажмите кнопку [image] .

Для получения дополнительных сведений о создании пользовательских функций нажмите кнопку [image] .

Для получения дополнительных сведений об использовании идентификаторов в выражениях нажмите кнопку [image] .


 Ссылка на столбец списка в выражении

Ссылка на столбец списка в выражении

Ссылки на столбец списка или поля со списком, содержащего несколько столбцов, указываются в свойстве Column элементов управления «Поле со списком» или «Список».

  • Введите идентификатор свойства Column с последующим индексом столбца в круглых скобках. Первому столбцу соответствует индекс 0, второму индекс 1 и т.д. Например, следующий идентификатор определяет ссылку на второй столбец списка «Страна» в форме «Клиенты»:

    [Forms]![Клиенты]![Страна].[Column](1)

Примечание. При запуске макроса или программы Visual Basic для приложений, которая содержит выражение, ссылающееся на форму или отчет, эта форма или отчет должны быть открыты.

Для получения дополнительных сведений о создании списков и полей со списком, содержащих несколько столбцов, нажмите кнопку [image] .

Для получения сведений о ссылках на значение элемента управления или свойства в выражении нажмите кнопку [image] .


 Ссылка на раздел формы или отчета или на уровень группировки отчета в выражении

Ссылка на раздел формы или отчета или на уровень группировки отчета в выражении

  • Введите идентификатор формы или отчета, далее введите оператор . (точка) и имя раздела или группы. Например, следующий идентификатор определяет ссылку на область данных формы «Заказы»:

    [Forms]![Заказы].Detail

Примечания

  • При запуске макроса или программы Visual Basic for Applications, которая содержит выражение со ссылкой на форму или отчет, эта форма или отчет должны быть открытыми.

  • Допускаются также ссылки на разделы формы или отчета или на группы в отчете с помощью свойства Section с соответствующим индексом. Для получения дополнительных сведений о свойстве Section нажмите кнопку [image] .

Для получения дополнительных сведений об использовании идентификаторов в выражениях нажмите кнопку [image] .


 Ссылка на формы, отчеты, подчиненные формы или подчиненные отчеты в выражении

Ссылка на формы, отчеты, подчиненные формы или подчиненные отчеты в выражении

Для ссылки на открытую форму или отчет, либо на подчиненную форму или подчиненный отчет в выражении необходимо указать соответствующий идентификатор.

Ссылка на открытую форму или отчет

  • Введите имя семейства Forms или Reports, за которым следует оператор ! и имя формы или отчета. Например, следующий идентификатор определяет ссылку на форму «Заказы»:

    Forms![Заказы]

Ссылка на подчиненную форму или подчиненный отчет

Укажите ссылку на элемент управления подчиненной формы или отчета в главной форме или отчете, а затем с помощью свойства Form или Report подчиненного элемента управления укажите ссылку на реальную подчиненную форму или подчиненный отчет.

  • Введите идентификатор формы, которая содержит подчиненную форму, далее введите имя элемента управления-подчиненной формы/отчета, оператор . (точка) и имя свойства Form. Например, следующий идентификатор определяет ссылку на подчиненную форму «Заказано» в форме «Заказы»:

    Forms![Заказы]![Заказано].Form

Примечания

  • Для создания идентификатора для формы, отчета, подчиненной формы или подчиненного отчета можно использовать построитель выражений.

  • При запуске макроса или программы Visual Basic для приложений, которая содержит выражение, ссылающееся на форму или отчет, эта форма или отчет должны быть открыты.

Для получения дополнительных сведений о создании выражений с помощью построителя выражений нажмите кнопку [image] .

Для получения дополнительных сведений об использовании идентификаторов в выражениях нажмите кнопку [image] .

Для получения дополнительных сведений о ссылках на значение элемента управления или свойства в выражении нажмите кнопку [image] .


 Ссылки на объекты и их свойства в выражениях

Ссылки на объекты и их свойства в выражениях

Идентификаторы используются в выражениях для ссылок на объекты и их свойства. Например, можно создать ссылку на открытую форму, открытый отчет, элементы управления в открытой форме или отчете, а также на любые свойства форм, отчетов или элементов управления. Следующий идентификатор определяет ссылку на свойство элемента управления Вывод на экран (Visible):

Reports![Счет]![НазваниеПолучателя].Visible

Полный идентификатор объекта или свойства демонстрирует взаимосвязь между компонентами идентификатора. Ниже изложены пояснения к приведенному примеру.

  • Компонент «Reports» определяет ссылку на семейство открытых отчетов базы данных. Microsoft Access автоматически создает семейства Forms и Reports для каждой базы данных. Семейство Forms состоит из всех открытых форм, а семейство Reports — из всех открытых отчетов.

  • Компонент «[Счет]» определяет ссылку на отчет с именем «Счет» в семействе Reports.

  • Компонент «[НазваниеПолучателя]» определяет ссылку на элемент управления «НазваниеПолучателя» в отчете «Счет».

  • Компонент «Visible» определяет ссылку на свойство Вывод на экран (Visible) элемента управления «НазваниеПолучателя».

Рекомендуется всегда ссылаться на объект или свойство с помощью полного идентификатора. В некоторых случаях полный идентификатор является обязательным. Например, полный идентификатор необходимо использовать для ссылки на элемент управления, расположенный не в текущей форме или отчете. Следующее выражение позволяет вывести в элементе управления другой формы сумму значений элементов управления «СуммаЗаказа» и «СтоимостьДоставки» из формы «Заказы»:

= Forms![Заказы]![СуммаЗаказа] + Forms![Заказы]![СтоимостьДоставки]

Однако в некоторых случаях допускаются ссылки на элемент управления или его свойства без использования полного идентификатора.

  • При ссылках на элемент управления в текущей форме или отчете нет необходимости указывать идентификатор формы или отчета. Например, для вывода суммы значений полей «СуммаЗаказа» и «СтоимостьДоставки» в другом элементе управления в той же форме достаточно ввести в ячейку свойства Данные (ControlSource) этого элемента управления выражение:

    = [СуммаЗаказа] + [СтоимостьДоставки]

  • При ссылках на элемент управления в подчиненной форме или в подчиненном отчете нет необходимости указывать полный идентификатор формы или отчета с помощью свойства Form или Report. Например, можно использовать следующую ссылку на элемент управления «Количество» в подчиненной форме «Заказано»:

    Forms![Заказы]![Заказано]![Количество]

    Полный идентификатор элемента управления «Количество» имеет вид:

    Forms![Заказы]![Заказано].Form![Количество]

  • В макросах или в аргументах макрокоманды нет необходимости указывать идентификаторы форм или отчетов, из которых запускается макрос. Например, если имя макроса задается в качестве значения свойства события в форме, то можно ссылаться на элементы управления этой формы в столбце Условие макроса и в аргументах макрокоманды и без указания идентификатора формы.

  • В процедурах Visual Basic для приложений (VBA) для ссылок на элементы управления текущей формы или отчета можно использовать ключевое слово Me вместо полного идентификатора. Например, чтобы присвоить сумму значений элементов управления «СуммаЗаказа» и «СтоимостьДоставки» формы переменной «ЦенаЗаказа» в одной из процедур обработки события формы, добавьте в эту процедуру обработки события следующее выражение:
    ЦенаЗаказа = Me![СуммаЗаказаl] + Me![СтоимостьДоставки]

Примечания

  • При запуске макроса или программы Visual Basic для приложений, которая содержит выражение со ссылкой на форму или отчет, эта форма или отчет должны быть открытыми.

  • В процедурах Visual Basic можно ссылаться на объект, заключая его имя в круглые скобки и двойные кавычки (") вместо использования оператора «!». Скобки требуются, если нужно использовать в идентификаторе переменную. Например, следующие идентификаторы эквивалентны:
    Forms![Заказы]![ДатаРазмещения]
Forms("Заказы")("ДатаРазмещения")

Для получения дополнительных сведений об использовании в выражениях операторов «!» и «.» (точка) нажмите кнопку [image] .

Для получения дополнительных сведений о ссылках в выражениях на формы, отчеты, подчиненные формы или подчиненные отчеты нажмите кнопку [image] .

Для получения дополнительных сведений о ссылках в выражениях на значения элементов управления или свойств нажмите кнопку [image] .


 Ссылка на значение элемента управления или свойства в выражении

Ссылка на значение элемента управления или свойства в выражении

Для ссылки в выражении на значение элемента управления или свойства необходимо ввести соответствующий идентификатор.

Ссылка на значение элемента управления

  • Введите идентификатор для формы или отчета, за которым следует оператор ! и имя элемента управления. Например, следующий идентификатор определяет ссылку на элемент управления «КодЗаказа» в форме «Заказы»:

    Forms![Заказы]![КодЗаказа]

    Совет. При ссылках на элемент управления в подчиненной форме или подчиненном отчете нет необходимости указывать полный идентификатор формы или отчета с помощью свойства Form или Report. Например, следующий идентификатор определяет ссылку на поле «Количество» в подчиненной форме «Заказано»:

    Forms![Заказы]![Заказано]![Количество]

Ссылка на значение свойства

  • Введите идентификатор формы, отчета или элемента управления, к которым применяется свойство, далее введите оператор . (точка) и имя свойства. Например, следующий идентификатор определяет ссылку на свойство Значение по умолчанию (DefaultValue) поля «ДатаРазмещения» в форме «Заказы»:

    Forms![Заказы]![ДатаРазмещения].DefaultValue

Примечания

  • Для создания идентификатора для формы, отчета, подчиненной формы или подчиненного отчета можно использовать построитель выражений.

  • При запуске макроса или программы Visual Basic для приложений, которая содержит выражение, ссылающееся на форму или отчет, эта форма или отчет должны быть открыты.

Для получения дополнительных сведений о создании выражений с помощью построителя выражений нажмите кнопку [image] .

Для получения дополнительных сведений об использовании идентификаторов в выражениях нажмите кнопку [image] .

Для получения дополнительных сведений об использовании значений в выражениях нажмите кнопку [image] .

Для получения дополнительных сведений о ссылках в выражениях на формы, отчеты, подчиненные формы или подчиненные отчеты нажмите кнопку [image] .


 Использование операторов «!» и «.» (точка) в выражениях

Использование операторов «!» и «.» (точка) в выражениях

Операторы «!» и «.» (точка) в идентификаторах указывают тип элемента, стоящего справа от оператора.

Оператор «!» указывает, что следующий за ним элемент является элементом, определяемым пользователем (элементом семейства). Например, с помощью оператора «!» определяют ссылку на открытую форму, на открытый отчет или элемент управления в открытой форме или отчете.

Идентификатор | Объект ссылки
Forms![Заказы] | Открытая форма «Заказы»
Reports![Счет] | Открытый отчет «Счет»
Forms![Заказы]![КодЗаказа] | Элемент управления «КодЗаказа» в открытой форме «Заказы»

Оператор «.» (точка) обычно указывает, что следующий за ним элемент определен в Microsoft Access. Например, оператор «.» (точка) используется для ссылок на свойства форм, отчетов и элементов управления.

Примечание. Допускается также использование оператора «.» (точка) для ссылок на значение поля в инструкции SQL, метод Visual Basic для приложений или семейство. Например, идентификатор Forms![Заказы].Controls представляет ссылку на семейство Controls формы «Заказы». Однако, поскольку семейство Controls является семейством, используемым для форм и отчетов по умолчанию, обычно нет необходимости ссылаться на него в явном виде.


 Соглашения об именах полей, элементов управления и объектов

Соглашения об именах полей, элементов управления и объектов

В Microsoft Access действуют следующие ограничения на имена полей, элементов управления и объектов:

  • имя должно содержать не более 64 символов;

  • имя может включать любую комбинацию букв, цифр, пробелов и специальных символов за исключением точки (.), восклицательного знака (!), надстрочного символа (`) и квадратных скобок ([ ]);

  • не должно начинаться с символа пробела;

  • не должно включать управляющие символы (с кодами ASCII от 0 до 31);

  • не должно включать прямые кавычки (") в именах таблиц, представлений и хранимых процедур в проекте Microsoft Access.

Хотя пробелы внутри имен полей, элементов управления и объектов являются допустимыми, в большинстве примеров в документации Microsoft Access имена полей записываются без пробелов. Пробелы в именах могут, при некоторых обстоятельствах, вызывать конфликты в программах Visual Basic.

Определяя имя для поля, элемента управления или объекта, полезно проверить, не совпадает ли это имя с именем свойства или другого элемента, используемого Microsoft Access (для русских имен такая ситуация может возникнуть при совпадении с именем свойства или функции, определяемых пользователем); в противном случае иногда могут возникать неверные результаты. Например, при ссылке на значение поля «Name» в таблице «NameInfo» с использованием конструкции NameInfo.Name будет возвращаться значение свойства таблицы Имя (Name), а не значение поля «Name».

Простейшим способом обойти неопределенность в именах является использование оператора ! вместо оператора . (точка) в ссылках на значения полей, элементов управления и объектов. Например, следующий идентификатор в явном виде определяет ссылку на значение поля «Name», а не на свойство Имя (Name):

[NameInfo]![Name]

Для получения дополнительных сведений об использовании операторов ! и . (точка) в выражениях нажмите кнопку [image] .


Соглашения об именах процедур, переменных и констант Visual Basic

В языке Visual Basic для приложений действуют следующие ограничения на имена процедур, переменных и констант:

  • имя должно содержать не более 255 символов;

  • должно начинаться с буквы;

  • может включать буквы, цифры и символы подчеркивания (_);

  • не должно включать знаки препинания или пробелы;

  • не должно совпадать с ключевыми словами Visual Basic.

Ключевыми словами называют слова, являющиеся элементами языка Visual Basic. В число ключевых слов входят имена инструкций (например, If и Loop), функций (например, Len и Abs) и операторов (например, Or и Mod).


 Примеры выражений

Примеры выражений

Выражения используются при выполнении многих операций Microsoft Access, в том числе, при создании вычисляемых элементов управления, определении условий в запросах и фильтрах, значений по умолчанию, условий на значение и условий в макросах. Часто простейшим способом создания выражения является поиск похожего выражения и его дальнейшее использование в качестве образца для создания требуемого выражения.

Предлагаемые примеры

Примеры выражений, используемых в формах и отчетах

Примеры выражений, используемых в запросах или фильтрах

Примеры выражений, определяющих значения по умолчанию

Примеры выражений, определяющих условия на значения

Примеры выражений для условий в макросах

Дополнительные сведения о выражениях


Примеры выражений, используемых в формах и отчетах

Предполагаемые действия

Примеры выражений с текстовыми значениями

Просмотр примеров выражений для номеров страниц

Примеры выражений, содержащих арифметические операторы

Примеры выражений, содержащих ссылки на значения элементов управления

Просмотр примеров выражений, обеспечивающих подсчет количества, суммы и средних значений с помощью статистических функций

Просмотр примеров выражений, содержащих статистические функций по подмножеству

Примеры выражений, вычисляющих и обрабатывающих даты

Примеры выражений, возвращающих одно из двух возможных значений

Сведения о создании выражения


 Примеры использования функций даты в формах, отчетах и страницах доступа к данным

Примеры использования функций даты в формах, отчетах и страницах доступа к данным

Следующая таблица содержит примеры выражений, которые используются в вычисляемых элементах управления в формах, отчетах и на страницах доступа к данным.

Выражение | Описание
=Date() | Использует функцию Date для отображения текущей даты в формате дд.мм.гг, где дд означает день (от 1 до 31), мм означает месяц (от 1 до 12), а гг означает последние две цифры года (в диапазоне от 1980 до 2099).
=Format(Now(), "ww") | Использует функцию Format для отображения последовательного номера недели года для текущей даты, где ww представляет номер недели в диапазоне от 1 до 53.
=DatePart("yyyy", [ДатаРазмещения]) | Использует функцию DatePart для отображения года в значении поля «ДатаРазмещения». Год отображается четырьмя цифрами
=DateAdd("y", -10, [Дата]) | Использует функцию DateAdd для отображения даты, наступающей на 10 раньше даты, заданной значением поля «Дата».
=DateDiff("d", [ДатаРазмещения], [ДатаИсполнения]) | Использует функцию DateDiff для отображения числа дней между значениями полей «ДатаРазмещения» и «ДатаИсполнения».

Примечания

  • В свойстве Данные (ControlSource) вычисляемого элемента управления перед выражением следует ставить оператор =. На страницах доступа к данным знак равенства (=) можно опустить, введя вместо него псевдоним; например, НомерНедели: Format(Now(), "ww").

  • При установке свойства Имя (Name) для элемента управления в форме или отчете либо свойства Код (ID) для вычисляемого элемента управления на странице доступа к данным необходимо использовать уникальное имя. Не используйте имя или код одного из элементов управления, применявшихся в выражении.

  • В выражении в форме или отчете можно использовать имя элемента управления или имя поля базового источника данных. В выражении на странице доступа к данным можно использовать только имя поля, присутствующее в определении данных этой страницы.


 Примеры использования текстовых значений в формах, отчетах и страницах доступа к данным

Примеры использования текстовых значений в формах, отчетах и страницах доступа к данным

Следующая таблица содержит примеры выражений, которые используются в вычисляемых элементах управления в формах, отчетах и на страницах доступа к данным.

Выражение | Описание
="Неприменимо" | Отображает слово «Неприменимо».
=[Имя] & " " & [Фамилия] | Отображает значения полей «Имя» и «Фамилия», разделенные пробелом.
=Left([Марка], 1) | Использует функцию Left для отображения первого символа значения поля «Марка».
=Right([КодТовара], 2) | Использует функцию Right для отображения двух последних символов значения поля «КодТовара».
=Trim([Адрес]) | Использует функцию Trim для отображения значения поля «Адрес» с удалением всех пробелов в начале или в конце.
=IIf(IsNull([Область]), [Город] & " " & [Индекс], [Город] & " " & [Область] & " " & [Индекс]) | Использует функцию IIf для отображения значений полей «Город» и «Индекс», если поле «Область» содержит значение Null; в противном случае отображает значения полей «Город», «Область» и «Индекс», разделенные пробелами.

Примечания

  • В свойстве Данные (ControlSource) вычисляемого элемента управления перед выражением следует ставить оператор =. На страницах доступа к данным знак равенства (=) можно опустить, введя вместо него псевдоним; например, ПолноеИмя: [Имя] & " " & [Фамилия].

  • При установке свойства Имя (Name) для элемента управления в форме или отчете либо свойства Код (ID) для вычисляемого элемента управления на странице доступа к данным необходимо использовать уникальное имя. Не используйте имя или код одного из элементов управления, применявшихся в выражении.

  • В выражении в форме или отчете можно использовать имя элемента управления или поля базового источника данных. В выражении на странице доступа к данным можно использовать только имя поля, присутствующее в определении данных этой страницы.


 Примеры выполнения арифметических операций в формах, отчетах и страницах доступа к данным

Примеры выполнения арифметических операций в формах, отчетах и страницах доступа к данным

Следующая таблица содержит примеры выражений, которые используются в вычисляемых элементах управления в формах, отчетах и на страницах доступа к данным.

Используемое выражение | Отображаемый результат
=[СтоимостьЗаказа]+[СтоимостьДоставки] | Сумма значений полей «СтоимостьЗаказа» и «СтоимостьДоставки».
=[ДатаНазначения]-[ДатаИсполнения] | Разность значений полей «ДатаНазначения» и «ДатаИсполнения».
=[Цена]* 1,06 | Результат умножения значения поля «Цена» на 1,06 (добавление 6 процентов к значению поля «Цена»).
=[Количество]*[Цена] | Произведение значений полей «Количество» и «Цена».
=[КоличествоСотрудников]/[КоличествоСтран] | Результат деления значения поля «КоличествоСотрудников» на значение поля «КоличествоСтран».

Примечания

  • В свойстве Данные (ControlSource) вычисляемого элемента управления перед выражением следует ставить оператор =. На страницах доступа к данным знак равенства (=) можно опустить, введя вместо него псевдоним; например, ОбщаяСтоимость: [Количество]*[Цена].

  • При установке свойства Имя (Name) для элемента управления в форме или отчете либо свойства Код (ID) для вычисляемого элемента управления на странице доступа к данным необходимо использовать уникальное имя. Не используйте имя или код одного из элементов управления, применявшихся в выражении.

  • В выражении в форме или отчете можно использовать имя элемента управления или имя поля базового источника данных. В выражении на странице доступа к данным можно использовать только имя поля, присутствующее в определении данных этой страницы.

  • Если в выражении используются арифметические операторы (+, -, *, /), и один из элементов управления выражения имеет значение Null, результатом всего выражения будет значение Null. Если некоторые записи в одном из элементов управления, используемых в выражении, имеют значения Null, следует преобразовать эти значения Null в нули при помощи функции Nz; например:

    =Nz([СтоимостьЗаказа])+Nz([СтоимостьДоставки])

    Для получения дополнительных сведений о функции Nz нажмите кнопку [image] .


Примеры ссылок на значения элементов управления в формах и отчетах

Следующая таблица содержит примеры выражений, которые используются в вычисляемых элементах управления форм.

Используемое выражение | Отображаемый результат
=Forms![Заказы]![КодЗаказа] | Значение элемента управления «КодЗаказа» в форме «Заказы».
=Forms![Заказы]![Заказано]![ОтпускнаяЦена]. | Значение элемента управления «ОтпускнаяЦена» из подчиненной формы «Заказано» в форме «Заказы».
=Forms![Заказы]![Заказано]![КодТовара].Column(2) | Значение третьего столбца поля «КодТовара», список из нескольких столбцов из подчиненной формы «Заказано» в форме «Заказы». (Индекс 0 задает ссылку на первый столбец, 1 - на второй и т.д.).
=Forms![Заказы]![Заказано]![Цена]*1,06 | Результат умножения значения элемента управления «Цена» подчиненной формы «Заказано» в форме «Заказы» на 1,06 (добавление 6 процентов к значению элемента управления «Цена»).
=Parent![КодЗаказа] | Значение элемента управления «КодЗаказа» в форме, которая является главной для текущей подчиненной формы.

Следующая таблица содержит примеры выражений, которые используются в вычисляемых элементах управления в отчетах.

Используемое выражение | Отображаемый результат
=Reports![Счет]![КодЗаказа] | Значение элемента управления «КодЗаказа» в отчете «Счет».
=Reports![Итоги]![Подотчет]![СуммаЗаказов] | Значение элемента управления «Сумма заказов» из подчиненного отчета «Подотчет» в отчете «Итоги».
=Parent![КодЗаказа] | Значение элемента управления «КодЗаказа» в отчете, который является главным для текущего подчиненного отчета.

Примечания

  • В вычисляемых элементах управления перед выражением следует ставить знак равенства (=).

  • Имя вычисляемого элемента управления, заданное в свойстве Имя (Name), должно быть уникальным. Нельзя использовать имя одного из элементов управления, использованных в выражении.


 Примеры выражений, возвращающих одно из двух значений в формах, отчетах и страницах доступа к данным

Примеры выражений, возвращающих одно из двух значений в формах, отчетах и страницах доступа к данным

Следующая таблица содержит примеры выражений, которые используются в вычисляемых элементах управления в формах, отчетах и на страницах доступа к данным.

Выражение | Описание
=IIf([Подтверждено] = "Да", "Заказ подтвержден", "Заказ не подтвержден") | Использует функцию IIf для отображения сообщения «Заказ подтвержден», если поле «Подтверждено» содержит значение «Да»; в противном случае отображает сообщение «Заказ не подтвержден».
=IIf(IsNull([Страна]), " ", [Страна]) | Использует функцию IIf для отображения пустой строки, если поле «Страна» содержит значение Null; в противном случае отображает значение элемента управления «Страна».
=IIf(IsNull([Область]), [Город] & " " & [Индекс], [Город] & " " & [Область] & " " & [Индекс]) | Использует функцию IIf для отображения значений полей «Город» и «Индекс», если поле «Область» содержит значение Null; в противном случае отображает значения полей «Город», «Область» и «Индекс».
=IIf(IsNull([ДатаНазначения] - [ДатаИсполнения]), "Проверьте отсутствующую дату", [ДатаНазначения] - [ДатаИсполнения]) | Использует функцию IIf для отображения сообщения «Проверьте отсутствующую дату», если результатом вычитания значения поля «ДатаИсполнения» из значения поля «ДатаНазначения» оказывается Null; в противном случае отображает разность значений полей «ДатаНазначения» и «ДатаИсполнения».

Примечания

  • В свойстве Данные (ControlSource) вычисляемого элемента управления перед выражением следует ставить оператор =. На страницах доступа к данным знак равенства (=) можно опустить, введя вместо него псевдоним; например, Отобразить страну: IIf(IsNull([Страна]), " ", [Страна]).

  • При установке свойства Имя (Name) для элемента управления в форме или отчете либо свойства Код (ID) для вычисляемого элемента управления на странице доступа к данным необходимо использовать уникальное имя. Не используйте имя или код одного из элементов управления, применявшихся в выражении.

  • В выражении в форме или отчете можно использовать имя элемента управления или имя поля базового источника данных. В выражении на странице доступа к данным можно использовать только имя поля, присутствующее в определении данных этой страницы.


 Примеры использования статистических функций в формах и отчетах

Примеры использования статистических функций в формах и отчетах

Следующая таблица содержит примеры выражений, которые используются в вычисляемых элементах управления в формах и отчетах.

Выражение | Описание
=Avg([СтоимостьДоставки]) | Использует функцию Avg для отображения среднего значения элемента управления «СтоимостьДоставки».
=Count([КодЗаказа]) | Использует функцию Count для отображения количества записей в элементе управления «КодЗаказа».
=Sum([Продажи]) | Использует функцию Sum для отображения суммы значений элемента управления «Продажи».
=Sum([Количество]*[Цена]) | Использует функцию Sum для отображения суммы произведений значений элементов управления «Количество» и «Цена».
=[Продажи]/Sum([Продажи])*100 | Отображает относительные значения продаж, определенные путем деления значения из элемента управления «Продажи» на сумму всех значений этого элемента управления. Примечание. Если свойство Формат поля (Format) данного элемента управления имеет значение Процентный, не следует включать в выражение множитель * 100.

Примечания

  • В вычисляемых элементах управления перед выражением следует ставить знак равенства (=).

  • Имя вычисляемого элемента управления, заданное в свойстве Имя (Name), должно быть уникальным. Нельзя использовать имя одного из элементов управления, использованных в выражении.

  • Нельзя использовать имя элемента управления в выражении, в котором участвует статистическая функция. Следует использовать только имена полей из таблицы, запроса или инструкции SQL. Для получения сведений об использовании статистических функций в вычисляемых элементах управления нажмите кнопку [image] .


 Примеры использования статистических функций по подмножеству в формах и отчетах

Примеры использования статистических функций по подмножеству в формах и отчетах

Следующая таблица содержит примеры выражений, которые используются в вычисляемых элементах управления в формах и отчетах.

Выражение | Описание
=Dlookup("[ОбращатьсяК]", "[Поставщики]", "[КодПоставщика] = Forms![КодПоставщика]") | Использует функцию DLookup для отображения значения поля «ОбращатьсяК» из записи в таблице «Поставщики», в которой значение поля «КодПоставщика» совпадает со значением элемента управления «КодПоставщика» в активной форме.
=Dlookup("[ОбращатьсяК]", "[Поставщики]", "[КодПоставщика] = Forms![НовыеПоставщики]![КодПоставщика]") | Использует функцию Dlookup для отображения значения поля «ОбращатьсяК» из записи в таблице «Поставщики», в которой значение поля «КодПоставщика» совпадает со значением элемента управления «КодПоставщика» в форме «НовыеПоставщики».
=Dsum("[КоличествоЗаказов]", "[Заказы]", "[КодКлиента] = 'РАТТС'") | Использует функцию DSum для отображения суммы значений поля «КоличествоЗаказов» из записей в таблице «Заказы», у которых в поле «КодКлиента» находится значение "РАТТС".

Примечания

  • В вычисляемых элементах управления перед выражением следует ставить знак равенства (=).

  • Имя вычисляемого элемента управления, заданное в свойстве Имя (Name), должно быть уникальным. Нельзя использовать имя одного из элементов управления, использованных в выражении.

  • Нельзя использовать имя элемента управления в выражении, в котором участвует статистическая функция по подмножеству. Следует использовать только имена полей из таблицы, запроса или инструкции SQL. Для получения сведений об использовании статистических функций по подмножеству в вычисляемых элементах управления нажмите кнопку [image] .


 Общие сведения о панелях инструментов, строках меню и контекстных меню

Общие сведения о панелях инструментов, строках меню и контекстных меню

Панели инструментов, строки меню и контекстные меню позволяют организовать команды в Microsoft Access таким образом, чтобы их можно было быстро найти и использовать. Панели инструментов могут содержать только кнопки, только меню или сочетание кнопок и меню. Встроенная строка меню по умолчанию отображается в верхней части экрана и содержит стандартные меню, такие как Файл, Правка и Вид.

Access автоматически настраивает меню и панели инструментов под конкретного пользователя на основе того, как часто используются те или иные команды. При первом запуске Access отображаются команды наиболее общего назначения. Затем, по мере работы пользователя, Access настраивает меню и панели инструментов таким образом, что в них отображаются только команды и кнопки, используемые чаще всего. Чтобы найти команду, которая используется нечасто, или вообще не использовалась ранее, щелкните стрелку Двойная стрелка, указывающая вниз в нижней части меню, чтобы развернуть его и отобразить все команды. Также для развертывания меню можно дважды его щелкнуть. Когда одно меню развернуто, развертываются все меню, до тех пор, пока не будет выбрана команда или выполнено другое действие. При выборе команды в развернутом меню она тут же добавляется в настроенное меню. Команда выбрасывается из настроенного меню, если она не используется в течение нескольких сеансов работы в Access. При желании можно выбрать в Access режим постоянного отображения полного набора команд в каждом меню.

Панели инструментов можно расположить рядом в одной строке. При помещении нескольких панелей инструментов в одну строку может не хватить места для отображения всех кнопок. Если места недостаточно, отображаются кнопки, которые были использованы последними. Можно изменить размер панели инструментов, чтобы отобразить больше кнопок, или отобразить все кнопки панели инструментов. Для просмотра списка кнопок, не помещающихся на встроенной закрепленной панели инструментов, нажмите кнопку Дополнительные кнопки [image] в конце панели инструментов. При использовании кнопки, не отображаемой на панели инструментов, эта кнопка перемещается на панель инструментов, а кнопка, которая в последнее время не использовалась, сбрасывается в список Дополнительные кнопки [image].

При работе в Access меню и панели инструментов отображают команды, наиболее часто используемые конкретным пользователем. При желании можно восстановить исходное состояние панелей инструментов и меню, существовавшее при первом запуске Access.

Существует также возможность самостоятельной настройки панелей инструментов. Можно настраивать встроенную строку меню, добавляя или удаляя кнопки и меню, либо изменяя расположение меню. Помимо настройки встроенной строки меню, контекстных меню и панелей инструментов, пользователь может также создавать свои собственные панели инструментов, строки меню и контекстные меню.

Для создания и настройки панелей инструментов, строк меню и контекстных меню, а также для установки свойств, влияющих на их вид и работу, используется диалоговое окно Настройка. Для его открытия выберите в меню Вид команду Панели инструментов и подкоманду Настройка.

Примечание. Панели инструментов в сводных списках, электронных таблицах и диаграммах на страницах доступа к данным по некоторым параметрам отличаются от остальных элементов Microsoft Access.

Дополнительные сведения

Работа с панелями инструментов

Работа со строками меню и контекстными меню


 Работа с панелями инструментов

Работа с панелями инструментов

Предполагаемые действия

Общие сведения о панелях инструментов, строках меню и контекстных меню

Отображение или скрытие панели инструментов, строки меню или контекстного меню

Создание пользовательской панели инструментов для текущей базы данных

Создание панели инструментов для всех баз данных

Перемещение панели инструментов или строки меню

Добавление кнопки на панель инструментов

Удаление кнопки панели инструментов

Перемещение или копирование кнопки панели инструментов

Изменение значка или текста на кнопке панели инструментов или команде меню

Восстановление панелей инструментов или строк меню, а также отдельных кнопок, команд или меню

Устранение неполадок при работе с панелями инструментов, строками меню или контекстными меню

Примечание. Для получения более конкретных сведений о панелях инструментов нажмите кнопку Помощник [image] на панели инструментов, а затем введите более подробный вопрос.


 Работа со строками меню и контекстными меню

Работа со строками меню и контекстными меню

Предполагаемые действия

Общие сведения о панелях инструментов, строках меню и контекстных меню

Отображение или скрытие панели инструментов, строки меню или контекстного меню

Создание специальной строки меню для текущей базы данных

Создание специального контекстного меню для активной базы данных

Преобразование макроса создания меню из предыдущих версий Microsoft Access в строки меню и контекстные меню

Добавление специального меню в строку меню или на панель инструментов

Перемещение или копирование меню в строку меню или на панель инструментов

Удаление меню из строки меню или из панели инструментов

Перемещение или копирование команды меню

Добавление команды в меню

Удаление команды из меню

Изменение значка или текста на кнопке панели инструментов или команде меню

Восстановление панелей инструментов или строк меню, а также отдельных кнопок, команд или меню

Устранение неполадок при работе с панелями инструментов, строками меню или контекстными меню

Примечание. Для получения более конкретных сведений о строках меню или контекстных меню нажмите кнопку Помощник [image] на панели инструментов, а затем введите более подробный вопрос.


Создание пользовательской строки меню для текущей базы данных Access или проекта Access

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов нажмите кнопку Создать.

  3. В поле Панель инструментов введите нужное имя и нажмите кнопку OK.

  4. На вкладке Панели инструментов нажмите кнопку Свойства.

  5. В списке Тип выберите Строка меню.

  6. Установите другие нужные свойства и нажмите кнопку Закрыть.

    Новая строка меню появится справа от диалогового окна Настройка.

  7. Для завершения создания меню выполните следующие действия.
    • Добавьте пользовательские меню. Для получения дополнительных сведений нажмите кнопку [image] .

    • Добавьте встроенное меню. Для получения дополнительных сведений нажмите кнопку [image] .

Примечания

  • Microsoft Access поддерживает макросы строки меню для приложений, созданных в предыдущих версиях Microsoft Access. Для получения дополнительных сведений нажмите кнопку [image] .

  • Можно присоединить пользовательскую строку меню к форме или отчету. Для получения дополнительных сведений нажмите кнопку [image] . Либо, можно сделать строку меню глобальной строкой меню. Для получения дополнительных сведений нажмите кнопку [image] .


Создание пользовательского контекстного меню для текущей базы данных Access или проекта Access

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов нажмите кнопку Создать.

  3. В поле Панель инструментов введите нужное имя и нажмите кнопку OK.

  4. На вкладке Панели инструментов нажмите кнопку Свойства.

  5. В списке Тип выберите Контекстное меню.

  6. Установите или снимите флажок настройка и нажмите кнопку Закрыть.

    Контекстное меню будет добавлено на панель инструментов Контекстные меню, с помощью которой настраиваются все контекстные меню.

  7. На вкладке Панели инструментов в списке Панели инструментов выберите панель Контекстные меню.

  8. На панели инструментов Контекстные меню выберите категорию Настраиваемая.

  9. Для завершения создания меню выполните следующие действия.
    • Добавьте команды из диалогового окна Настройка. Для получения дополнительных сведений нажмите кнопку [image] .

    • Переместите или скопируйте команды из других меню. Для получения дополнительных сведений нажмите кнопку [image] .

Примечания

  • Microsoft Access поддерживает макросы меню для приложений, созданных в предыдущих версиях Microsoft Access. Для получения дополнительных сведений нажмите кнопку [image] .

  • Можно присоединить пользовательское контекстное меню к форме, отчету или элементу управления. Для получения дополнительных сведений нажмите кнопку [image] . Либо, можно сделать контекстное меню глобальным контекстным меню. Для получения дополнительных сведений нажмите кнопку [image] .


 Импорт пользовательских панелей инструментов и меню из другой базы данных Access или проекта Access

Импорт пользовательских панелей инструментов и меню из другой базы данных Access или проекта Access

Можно импортировать все пользовательские меню и панели инструментов из базы данных Microsoft Access или проекта Microsoft Access. Однако Microsoft Access не будет импортировать панель инструментов, строку меню или контекстное меню если их имена совпадают с именами таких же объектов той базы данных, куда они импортируются.

  1. Откройте базу данных.

  2. Выберите в меню Файл команду Внешние данные и подкоманду Импорт.

  3. Убедитесь, что в поле Тип файла выбрана строка Microsoft Access (*.mdb, *.adp).

  4. В поле Папка выберите диск и папку, где находится база данных Microsoft Access (.mdb или .adp), из которой будет выполняться импорт, и дважды щелкните значок базы данных.

  5. В диалоговом окне Импорт объектов нажмите кнопку Параметры.

  6. В группе параметров Импорт установите флажок меню и панели.


 Преобразование меню, ранее созданного из макроса, в строку меню или контекстное меню

Преобразование меню, ранее созданного из макроса, в строку меню или контекстное меню

Приведенная ниже процедура позволяет создавать строки меню и контекстные меню нового типа на основе макросов, созданных в прошлых версиях Microsoft Access.

  1. В окне базы данных выберите значок Макросы [image] в списке Объекты и выберите имя макроса для создания строки меню или контекстного меню.

    Чтобы создать строку меню или контекстное меню нового типа из макроса, который ранее использовался для пользовательских меню, выберите только макрос создания меню верхнего уровня. Нет необходимости в выборе группы макросов для каждого меню, присутствующего в строке меню.

  2. В меню Сервис выберите команду Макрос и подкоманду Создать меню из макроса или Создать контекстное меню из макроса.

Примечания

  • Настройка строки меню или контекстного меню выполняется с помощью диалогового окна Настройка. Чтобы вызвать это диалоговое окно, выберите в меню Вид команду Панели инструментов и подкоманду Настройка.

  • После создания новой строки меню или контекстного меню исходный макрос (или макросы при работе с макросом строки меню и соответствующими группами макросов меню) удален не будет. Новая строка меню будет по-прежнему зависеть от исходного макроса или макросов, за исключением тех макросов, которые содержат только макрокоманды «ДобавитьМеню» (AddMenu) или «ВыполнитьКоманду» (RunCommand) (ранее «КомандаМеню» (DoMenuItem)).


 Create a toolbar from a macro

Создание панели инструментов с помощью макроса

  1. Щелкните значок Макросы [image] в списке Объекты в окне базы данных и выберите имя макроса, с помощью которого нужно создать панель инструментов.

  2. В меню Сервис выберите команду Макрос и нажмите кнопку Создать панель инструментов из макроса.

Примечание. Microsoft Access не удаляет исходный макрос (или макросы, если действия выполняются с макросом меню и связанными с ним группами макросов) после создания новой панели инструментов. Новая панель инструментов по прежнему зависит от исходного макроса или макросов, за исключением тех макросов, которые содержат только макрокоманды «Добавить меню» (AddMenu) или «Выполнить команду» (RunCommand) (ранее «КомандаМеню» (DoMenuItem)).


Сохранение или обновление меню, созданных с помощью макросов в предыдущих версиях Microsoft Access

Microsoft Access 2000 по-прежнему поддерживает макросы создания меню для приложений, созданных в предыдущих версиях Microsoft Access. В Access 2000 и более поздних версиях строки меню и контекстные меню (также как и панели инструментов) создаются и настраиваются в диалоговом окне Настройка. Для доступа к нему следует выбрать в меню Вид команду Панели инструментов. Данное диалоговое окно используется также для настройки встроенной строки меню и панелей инструментов.

Примечание. С существует также возможность работы со строками меню, контекстными меню и панелями инструментов с использованием Visual Basic для приложений. Для получения дополнительных сведений нажмите кнопку [image] .

Предполагаемые действия

Преобразование макроса создания меню из предыдущих версий Microsoft Access в строки меню и контекстные меню

Обновление существующих макросов создания меню с помощью макрокоманды «Добавить меню» (AddMenu)

Макросы создания меню в преобразованной базе данных Microsoft Access


Переименование пользовательского контекстного меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке «Панели инструментов» нажмите кнопку Свойства.

  3. Выберите в списке Выбранная панель контекстное меню, которое требуется переименовать.

  4. В поле Панель инструментов введите новое имя.


Переименование пользовательской панели инструментов или строки меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов выберите имя панели инструментов или строки меню.

    Примечание. Чтобы открыть или закрыть панель инструментов или строку меню, установите или снимите флажок в диалоговом окне Панели инструментов.

  3. Нажмите кнопку Переименовать.

  4. Введите новое имя в поле Панель инструментов.

Примечание. Встроенную панель инструментов или строку меню переименовать нельзя.


Удаление пользовательского контекстного меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов нажмите кнопку Свойства.

  3. В поле со списком Выбранная панель выберите имя пользовательского контекстного меню, которое нужно удалить.

  4. В поле со списком Тип измените тип меню на тип Панель инструментов и закройте окно свойств.

    Имя контекстного меню появится в поле Панели инструментов на вкладке Панели инструментов.

  5. Выберите в поле Панели инструментов имя удаляемого пользовательского контекстного меню и нажмите кнопку Удалить.


Удаление специальной панели инструментов или строки меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов выберите удаляемую панель инструментов или строку меню.

  3. Нажмите кнопку Удалить.

Примечание. Нельзя удалить встроенную панель инструментов или строку меню. При выборе встроенной панели инструментов или строки меню кнопка Удалить недоступна. Однако доступна кнопка Сброс; при нажатии на нее панели инструментов или строке меню будет возвращен первоначальный вид.


 Добавление кнопки на панель инструментов

Добавление кнопки на панель инструментов

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите панель инструментов, на которую требуется добавить кнопку.

  3. Перейдите на вкладку Команды.

  4. В поле Категории выберите категорию для команды, которая будет выполняться при нажатии этой кнопки.
    Добавляемый элемент | Выберите
    Встроенная кнопка | Соответствующее меню или категория
    Кнопки для управления страницами HTML | Web
    Кнопки для работы с SourceSafe | Работа с исходным текстом
    Кнопки для создания пользовательских элементов управления | Элементы ActiveX
    Кнопки, открывающие формы, отчеты и другие объекты баз данных в стандартном виде Один из следующих: Все таблицы, Все запросы, Все формы, Все Web-страницы

    При работе с проектом Microsoft Access будут отображены варианты Все диаграммы баз данных, Все представления и Все сохраненные процедуры
    Кнопки, запускающие макрос | Все макросы

  5. Перетащите нужную кнопку, объект или элемент ActiveX из поля Команды на открытую панель инструментов.

Примечания

  • Также можно добавлять кнопки, запускающие функции Visual Basic. Для получения дополнительных сведений нажмите кнопку [image] .

  • Чтобы быстро добавить кнопку, открывающую объект базы данных, перетащите объект из окна базы данных на панель инструментов.

  • На кнопке можно отобразить назначенное сочетание клавиш. Для получения дополнительных сведений нажмите кнопку [image] .

  • Панели инструментов, содержащие кнопки, запускающие существующие макросы, создаются автоматически. Для получения дополнительных сведений нажмите кнопку [image] .

Совет. Чтобы быстро добавить встроенную кнопку на встроенную панель инструментов, нажмите кнопку Дополнительные кнопки [image] на закрепленной панели инструментов, либо щелкните стрелку Стрелка, указывающая вниз в левом верхнем углу перемещаемой панели; нажмите кнопку Добавить или удалить кнопки, а затем установите флажок рядом с кнопкой, которую следует добавить.


Добавление на панель инструментов специальной кнопки, запускающей функцию Visual Basic

  1. Создайте функцию, которую должна запускать данная кнопка.

    Инструкции

  2. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  3. Откройте панель инструментов, к которой нужно добавить кнопку.

    Инструкции

  4. В диалоговом окне Настройка выберите вкладку Команды.

  5. В списке Категории выберите Файл.

  6. Перетащите команду Специальная из поля Команды на выведенную на экран панель инструментов.

  7. При открытом диалоговом окне Настройка щелкните правой кнопкой мыши кнопку на панели инструментов и введите новое имя для кнопки в поле Имя появившегося контекстного меню.

  8. В этом же контекстном меню выберите команду Свойства.

  9. В поле действие введите имя нужной функции в формате =имяФункции(). Например, для функции SetCaption() введите =SetCaption(). Для встроенной функции следует ввести имя функции и все обязательные аргументы, например, =MsgBox(IIf(Instr(Time(), "PM"), "Добрый день", "Доброе утро")).

  10. Задайте другие свойства кнопки.


Добавление в меню специальной команды, запускающей функцию Visual Basic

  1. Создайте функцию, которую должна запускать данная команда.

    Инструкции

  2. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  3. Откройте строку меню, контекстное меню или панель инструментов, содержащую меню, к которому добавляется команда.

    Инструкции

  4. В диалоговом окне Настройка выберите вкладку Команды.

  5. В списке Категории выберите Файл.

  6. Перетащите команду Специальная из поля Команды в меню, содержащееся в строке меню или на панели инструментов, или в соответствующую категорию на панели инструментов Контекстные меню. При появлении списка команд меню (или пустого поля, если меню новое) выберите нужное положение команды в меню и отпустите кнопку мыши.

  7. При открытом диалоговом окне Настройка щелкните правой кнопкой команду меню и введите новое имя команды в поле Имя появившегося контекстного меню.

  8. В этом же контекстном меню выберите команду Свойства.

  9. В поле действие введите имя нужной функции в формате =имяФункции(). Например, для функции SetCaption() введите =SetCaption(). Для встроенной функции следует ввести имя функции и все обязательные аргументы, например, =MsgBox(IIf(Instr(Time(), "PM"), "Добрый день", "Доброе утро")).

  10. Задайте другие свойства команды.

Примечание. При добавлении команды ко встроенному меню (например, меню Правка) она будет появляться во всех режимах, в которых это меню выводится на экран.


 Добавление команды в меню

Добавление команды в меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите строку меню, контекстное меню или панель инструментов, на которую требуется добавить команду.

  3. Перейдите на вкладку Команды.

  4. В поле Категории выберите нужный вариант.
    Добавляемый элемент | Вариант
    Встроенная команда | Соответствующее меню или категория
    Кнопки для управления страницами HTML | Web
    Кнопки для работы с SourceSafe | Работа с исходным текстом
    Команды для создания специальных элементов управления | Элементы ActiveX
    Команды, открывающие формы, отчеты и другие объекты баз данных в стандартном виде Один из следующих: Все таблицы, Все запросы, Все формы, Все Web-страницы

    При работе с проектом Microsoft Access будут отображены варианты Все диаграммы баз данных, Все представления и Все сохраненные процедуры
    Команды, запускающие макрос | Все макросы
  5. Перетащите нужную команду из поля Команды в меню в строке меню, на панели инструментов Контекстные меню или на любой другой. После того, как будет выведен список команд (или пустой бланк, если меню новое), выберите нужное расположение для команды в меню и отпустите кнопку мыши.

Примечания

  • Существует возможность добавления команд, запускающих функции Visual Basic. Для получения дополнительных сведений нажмите кнопку [image] .

  • Можно отобразить назначенную для команды клавишу. Для получения дополнительных сведений нажмите кнопку [image] .

  • Команда, добавленная в меню (например, в меню Правка), появляется во всех вариантах вывода на экран этого меню.


Добавление подменю ко встроенному или пользовательскому меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Откройте панель инструментов или строку меню, где находится меню, в которое нужно добавить подменю.

    Инструкции

  3. В диалоговом окне Настройка выберите вкладку Команды.

  4. В поле Категории выберите параметр Новое меню.

  5. Перетащите строку Новое меню из поля Команды в меню, в которое нужно добавить подменю (проследив, чтобы меню верхнего уровня открылось), и поместите Новое меню в нужное место.

  6. Щелкните правой кнопкой мыши новое подменю и введите имя в поле Имя контекстного меню. Нажмите клавишу ENTER.

  7. Завершите создание меню, выполнив следующие действия.
    • Добавьте команды из диалогового окна Настройка. Для получения дополнительных сведений нажмите кнопку [image] .

    • Переместите или скопируйте команды из других меню. Для получения дополнительных сведений нажмите кнопку [image] .


Добавление встроенного меню на панель инструментов или в строку меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите строку меню или панель инструментов, на которую требуется добавить меню.

    Инструкции

  3. Перейдите на вкладку Команды.

  4. В поле Категории выберите параметр Встроенные меню.

  5. Перетащите нужное меню из поля Команды на панель инструментов или строку меню.

Примечание. Если команда меню отсутствует в поле Команды, ее можно сделать доступной, выбрав Встроенные меню в поле Категории, а затем добавив на панель инструментов или в строку меню встроенное меню, содержащее нужную команду. При изменении встроенного меню на панели инструментов или в строке меню внесенные изменения отображаются во всех режимах.


Добавление специального меню в строку меню или на панель инструментов

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите строку меню или панель инструментов, на которую требуется добавить специальное меню.

  3. Перейдите на вкладку Команды.

  4. В поле Категории выберите параметр Новое меню.

  5. Перетащите Новое меню из поля Команды на выведенную на экран строку меню или панель инструментов.

  6. Щелкните правой кнопкой мыши новое меню в строке меню или на панели инструментов и введите имя в поле Имя в контекстном меню. Нажмите клавишу ENTER.

  7. Для завершения создания дополнительного меню выполните следующие действия.
    • Добавьте команды из диалогового окна Настройка. Для получения дополнительных сведений нажмите кнопку [image] .

    • Переместите или скопируйте команды из других меню. Для получения дополнительных сведений нажмите кнопку [image] .


 Переименование команды меню или кнопки панели инструментов

Переименование команды меню или кнопки панели инструментов

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Откройте панель инструментов, строку меню или контекстное меню, содержащее кнопку панели инструментов, которую требуется изменить.

  3. При открытом диалоговом окне Настройка выполните одно из следующих действий.
    • Чтобы переименовать команду меню, выберите меню в строке меню или на панели инструментов или выберите контекстное меню, содержащее команду, которую требуется переименовать. Щелкните эту команду правой кнопкой, введите новое имя в поле Имя в контекстном меню и нажмите клавишу ENTER.

    • Чтобы переименовать кнопку панели инструментов, щелкните ее правой кнопкой, введите новое имя в поле Имя в контекстном меню и нажмите клавишу ENTER.

Примечания

  • Если на текст кнопке панели инструментов не отображается, то изменение имени будет заметно только во всплывающей подсказке. Для получения сведений об отображении на кнопке панели инструментов текста, значка или и текста, и значка нажмите кнопку [image] .

  • После указания нового имени для команды меню или кнопки панели инструментов, пользователь может назначить клавишу доступа. Для получения дополнительных сведений нажмите кнопку [image] .


 Удаление кнопки панели инструментов

Удаление кнопки панели инструментов

  1. Отобразите панель инструментов, которую требуется изменить.

  2. Если диалоговое окно Настройка открыто, перетащите кнопку с панели инструментов за пределы всех прочих панелей инструментов и строк меню; если нет, перетащите кнопку с панели инструментов, удерживая при этом клавишу ALT.

Примечание. Встроенная кнопка после удаления с панели инструментов остается доступной в диалоговом окне Настройка. Однако пользовательская кнопка удаляется навсегда. Чтобы удалить пользовательскую кнопку, сохранив ее доступной для последующего применения, создайте панель инструментов для хранения неиспользуемых в данный момент кнопок, переместите кнопку на эту панель, а затем скройте ее.

Совет. Чтобы быстро удалить встроенную кнопку со встроенной панели инструментов, нажмите кнопку Дополнительные кнопки [image] на закрепленной панели инструментов, либо щелкните стрелку Стрелка, указывающая вниз в левом верхнем углу перемещаемой панели; нажмите кнопку Добавить или удалить кнопки, а затем снимите флажок рядом с кнопкой, которую требуется удалить.


Удаление команды из меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите строку меню, контекстное меню или панель инструментов, содержащую команду, которую требуется удалить.

  3. При открытом диалоговом окне Настройка выберите меню в строке меню или на панели инструментов или выберите контекстное меню, содержащее удаляемую команду.

  4. Уберите удаляемую команду с панели инструментов или из меню.

Примечание. При удалении команды из встроенного меню (например, меню Правка) эта команда удаляется из всех вариантов вывода на экран этого меню.


Удаление меню из строки меню или из панели инструментов

  1. Отобразите панель инструментов или строку меню, из которой требуется удалить меню.

  2. Если диалоговое окно Настройка открыто, просто перетащите меню из строки меню или панели инструментов за пределы всех прочих панелй инструментов или строк меню. Если нет, сделайте это, удерживая клавишу ALT.

Примечание. Встроенное меню после удаления остается доступным в диалоговом окне Настройка. Однако пользовательское меню удаляется навсегда. Чтобы удалить пользовательское меню, сохранив его доступным для последующего применения, создайте панель инструментов для хранения неиспользуемых в данный момент меню, переместите меню на эту панель, а затем скройте ее.


 Автоматический набор телефонного номера в Microsoft Access

Автоматический набор телефонного номера в Microsoft Access

Чтобы использовать следующую процедуру, необходимо иметь модем Hayes или Hayes-совместимый.

  1. Откройте таблицу или форму в режиме таблицы или форму в режиме формы.

  2. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  3. Откройте вкладку Команды в диалоговом окне Настройка.

  4. Выберите категорию Записи в списке Категории.

  5. Перетащите команду Автонабор [image] на панель инструментов окна режима формы или режима таблицы, либо на пользовательскую панель инструментов.

  6. Нажмите кнопку Закрыть.

  7. В форме или в объекте в режиме таблицы выделите номер телефона, который требуется набрать.

  8. Нажмите кнопку Автонабор [image] на панели инструментов.

  9. Проверьте правильность введенного телефонного номера и нажмите кнопку OK.

Примечание. Настройки модема можно изменить с помощью кнопки Настройка диалогового окна Автонабор.


Изменение значка или текста на кнопке панели инструментов или команде меню

На кнопке панели инструментов можно вывести текст, значок или и то и другое. На команде меню можно вывести либо текст и значок, либо только текст. Текст для кнопки панели инструментов или команды меню можно изменить. Также можно изменить и значок на любой панели инструментов или команде меню, кроме тех, которые выводят на экран список или меню. Рисунок изменяется путем копирования и вставки значка с кнопки другой панели инструментов или команды меню, выбора из списка значков или создания значка в графической программе и последующей вставки его на кнопку панели инструментов или команду меню. Можно редактировать существующие значки кнопок или команд меню.

Предполагаемые действия

Вывод на экран только текста или текста и значка в команде меню

Вывод на экран текста, значка или текста и значка на кнопке панели инструментов

Переименование команды меню или кнопки панели инструментов

Копирование значка с одной кнопки панели инструментов или команды меню на другую

Копирование значка из графической программы на кнопку панели инструментов или команду меню

Выбор значка для кнопки панели инструментов или команды меню из списка значков

Редактирование значка для кнопки панели инструментов или команды меню


Выбор существующего значка для кнопки панели инструментов или команды меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Откройте панель инструментов, строку меню или контекстное меню, содержащие кнопку или команду, значок которых нужно изменить.

    Инструкции

  3. При открытом диалоговом окне Настройка выполните одно из следующих действий.
    • Чтобы изменить значок на кнопке панели инструментов, щелкните правой кнопкой мыши кнопку с данным значком, выберите в контекстном меню команду Выбрать значок для кнопки и выберите нужный значок.

    • Чтобы изменить значок команды меню, выберите меню в строке меню или на панели инструментов, или выберите контекстное меню, содержащее команду с этим значком. Щелкните правой кнопкой мыши команду меню, выберите в контекстном меню команду Выбрать значок для кнопки и выберите нужный значок.

Примечание. При изменении значка команды встроенного меню (например, меню Правка), новый значок будет использоваться во всех режимах, где доступны это меню и эта команда.


Перемещение или копирование кнопки панели инструментов

  1. Откройте панель инструментов, содержащую кнопку, которую нужно переместить или скопировать, а также панель инструментов, на которую нужно переместить или скопировать кнопку.

  2. Выполните одно из следующий действий.
    • Чтобы переместить кнопку панели инструментов при открытом диалоговом окне Настройка, просто перетащите кнопку в другое место на той же панели инструментов или на другую панель. Если диалоговое окно закрыто, выполните это, удерживая клавишу ALT.

    • Чтобы скопировать кнопку панели инструментов при открытом диалоговом окне Настройка, перетащите кнопку, удерживая клавишу CTRL. Если диалоговое окно закрыто, выполните это, удерживая клавиши CTRL+ALT.

Примечание. Также можно переместить или скопировать кнопку с панели инструментов в меню.


Перемещение меню или команд меню

Предполагаемые действия

Перемещение или копирование меню в строку меню или панель инструментов

Перемещение или копирование команды меню


Перемещение или копирование команды меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите строку меню, контекстное меню или панель инструментов, содержащую меню с командой, которую требуется переместить или скопировать. При копировании или перемещении команды на другую панель инструментов или в строку меню откройте и конечную панель или строку.

  3. При открытом диалоговом окне Настройка выберите меню в строке меню или на панели инструментов или выберите контекстное меню, содержащее команду, которую нужно переместить или скопировать.

  4. Выполните одно из следующий действий.
    • Чтобы переместить команду, перетащите ее в нужное меню. После того, как будет выведен список команд (или пустой бланк, если меню новое), выберите нужное расположение для команды в меню и отпустите кнопку мыши.

    • Чтобы скопировать команду, проделайте все то же самое, удерживая клавишу CTRL.

Примечание. При перемещении или копировании команды во встроенное меню (например, меню Правка) команда появляется во всех вариантах вывода этого меню на экран.


Переименование меню в строке меню или на панели инструментов

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите строку меню или панель инструментов, содержащую меню, которое нужно переименовать.

  3. Оставьте диалоговое окно Настройка открытым. На панели инструментов щелкните правой кнопкой изменяемое меню и введите имя команды в поле Имя в контекстном меню.


Восстановление панелей инструментов или строк меню, а также отдельных кнопок, команд или меню

Можно восстановить все встроенные панели инструментов и строки меню, все исходные кнопки, меню и команды, а также отдельные кнопки, команды и меню.

Предполагаемые действия

Восстановление всех исходных установок для панели инструментов или строки меню, в том числе свойств и установок для отдельных кнопок, меню и команд

Восстановление исходных кнопок, меню и команд во встроенной панели инструментов, строке меню или контекстном меню

Восстановление вида отдельной кнопки панели инструментов или команды меню

Восстановление меню

Не можете сделать выбор?


Изменение ширины поля со списком на панели инструментов

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите панель инструментов, которую требуется изменить.

  3. При открытом диалоговом окне Настройка выберите на панели инструментов поле со списком, например, Шрифт или Размер шрифта.

  4. Поместите указатель мыши на левую или правую границу поля так, чтобы он представлял собой двустороннюю стрелку, а затем перетащите границу поля, изменяя его ширину.


Присваивание гиперссылки кнопке панели инструментов или команде меню

При присваивании гиперссылки кнопке панели инструментов или команде меню эта гиперссылка замещает команду, присвоенную в настоящий момент кнопке панели или команде меню. Нельзя присвоить гиперссылку кнопке, которая при нажатии отображает меню или список.

  1. Откройте панель инструментов, которую нужно изменить.

  2. Если кнопка, которой присваивается гиперссылка, находится не на панели инструментов, добавьте ее на панель инструментов.

    Если команда меню, которой присваивается гиперссылка, находится не в меню, добавьте ее в меню.

  3. В меню Сервис выберите команду Настройка.

  4. Щелкните правой кнопкой мыши кнопку панели инструментов и выберите из контекстного меню команду Назначить гиперссылку и подкоманду Открыть.

  5. В области Связать с выберите источник, на который нужно создать ссылку.

  6. Выберите нужные параметры.

    Для получения дополнительных сведений по каждому параметру нажмите кнопку с вопросительным знаком [image] и выберите нужный параметр.


 Отображение всех кнопок панели инструментов

Отображение всех кнопок панели инструментов

  • Используя маркер перемещения Левый край закрепленной панели инструментов на панели инструментов, перетащите ее в отдельную строку или подальше от края окна программы, чтобы сделать панель перемещаемой панелью инструментов.


Отображение всех команд меню

  1. В меню Сервис выберите команду Настройка, затем перейдите на вкладку Параметры.

  2. Снимите флажок В меню сначала отображаются последние использованные команды.

Примечание. Состояние флажка В меню сначала отображаются последние использованные команды влияет на все приложения Microsoft Office.


Отображение стандартных кнопок панели инструментов и команд меню

  1. В меню Сервис выберите команду Настройка, затем перейдите на вкладку Параметры.

  2. Нажмите кнопку Сброс.

Примечания

  • Кнопка Сброс влияет на отображение кнопок на встроенной панели инструментов только в том случае, если панель инструментов недостаточно широка для отображения всех кнопок, а на отображение команд в настроенных встроенных меню влияет только в том случае, если на вкладке Параметры диалогового окна Настройка (меню Сервис) установлен флажок В меню сначала отображаются последние использованные команды.

  • Кнопка Сброс влияет только на кнопки панелей инструментов и команды меню в Microsoft Access.

  • Кнопка Сброс не изменяет расположение панелей инструментов, не удаляет кнопки или команды, добавленные с помощью диалогового окна Настройка, и не добавляет кнопки или команды, которые были удалены.


 Создание текста ярлыка для кнопки панели инструментов или команды меню

Создание текста ярлыка для кнопки панели инструментов или команды меню

Описанная здесь процедура создает лишь подсказку по клавише быстрого вызова. Она не назначает действия клавишам.

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Откройте нужную панель инструментов или строку меню.

    Инструкции

  3. При открытом диалоговом окне Настройка щелкните правой кнопкой мыши кнопку встроенной панели инструментов или команду меню, для которой нужно задать текст описания клавиши быстрого вызова.

  4. Выберите в контекстном меню команду Свойства.

  5. В поле текст ярлыка введите описание клавиши или сочетания клавиш. (Свойство текст ярлыка недоступно для пользовательских кнопок и команд.)

Примечания

  • Для присваивания клавишам действий необходимо создать макрос AutoKeys. Для получения дополнительных сведений нажмите кнопку [image] .

  • Для команды меню текст описания клавиши появляется справа от команды. Для кнопки панели инструментов текст описания клавиши появляется во всплывающей подсказке, причем только если установлен флажок Включить в подсказки сочетания клавиш на вкладке Параметры (диалоговое окно Настройка). Для получения дополнительных сведений нажмите кнопку [image] .


Создание контекстной справки для кнопок панели инструментов или команд меню

Контекстная справка выводится на экран, когда пользователь выбирает команду Что это такое? в меню Справка или нажимает клавиши SHIFT+F1, а затем щелкает мышью кнопку панели инструментов или команду меню.

Создание подсказки

  1. Создайте исходный файл в любом текстовом редакторе или текстовом процессоре. Сохраните этот файл в формате RTF (Rich Text Format). Дополнительные сведения о создании исходного файла см. в справке, поставляемой с компилятором справки (Windows Help Compiler).

  2. Скомпилируйте файл справки с помощью компилятора Windows Help Compiler.

    Примечание. Лучше всего поместить файл справки в один каталог с приложением. Это позволит использовать одно и то же значение свойства Файл справка (HelpFile) во всех экземплярах приложения, и не помешает пользователям устанавливать приложение в любую папку. Если в значении этого свойства не указан путь, Microsoft Access будет искать файл справочной системы в каталоге приложения.

Присвоение подсказки кнопке панели инструментов или команде меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Откройте нужную панель инструментов или строку меню.

    Инструкции

  3. При открытом диалоговом окне Настройка щелкните правой кнопкой мыши команду меню или кнопку панели инструментов, которой нужно присвоить подсказку, и выберите команду Свойства в контекстном меню.

  4. В ячейке свойства файл справки укажите путь и имя скомпилированного файла справки.

  5. В поле идентификатор справки введите номер темы (отличный от 0).

Примечания

  • Значения, установленные для свойства идентификатор справки, должны соответствовать контекстным строкам справочной системы. Для получения дополнительных сведений смотрите файл справки, поставляемый вместе с компилятором справки (Windows Help Compiler).

  • Разделы контекстной справки не могут быть выведены на экран помощником по Office.

  • Компилятор справки Windows Help Compiler входит в состав Microsoft Office 2000 для разработчиков; Microsoft Visual Basic для приложений; Microsoft Visual C++ и в Microsoft Windows Software Development Kit (SDK). Также можно заказать комплект инструментов для создания справки — Help Authoring Kit. Для получения дополнительных сведений о компонентах, входящих в состав Microsoft Office 2000 для разработчиков, нажмите кнопку [image] .


Создание пользовательской всплывающей подсказки для кнопки панели инструментов

Всплывающая подсказка появляется при наведении указателя на кнопку или поле со списком на панели инструментов.

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Откройте нужную панель инструментов.

    Инструкции

  3. Открыв диалоговое окно Настройка, щелкните правой кнопкой мыши кнопку панели инструментов, для которой нужно создать подсказку, а затем выберите команду Свойства в контекстном меню.

  4. В поле всплывающее сообщение введите подсказку, которую нужно отобразить.

Примечания

  • Если всплывающая подсказка не задана, по умолчанию будет выводиться текст, указанный в свойстве подпись.

  • Если всплывающая подсказка не появляется при наведении указателя на поле со списком или кнопку, необходимо убедиться в том, что на вкладке Параметры (диалоговое окно Настройка) установлен флажок Отображать подсказки для кнопок.


 Назначение клавиши доступа для меню или команды

Назначение клавиши доступа для меню или команды

Для перевода фокуса на меню или команду можно вместо мыши использовать клавишу доступа. Например, можно нажать клавиши ALT+Е, чтобы перевести фокус на меню Сервис, а затем нажать клавишу Е для выбора команды Автозамена.

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Откройте нужную панель инструментов или строку меню.

    Инструкции

  3. Открыв диалоговое окно Настройка, щелкните правой кнопкой мыши меню или команду, для которой нужно назначить клавишу доступа.

  4. В поле Имя введите символ амперсанда (&) перед символом, который нужно использовать в качестве клавиши доступа.

    В меню или команде к символу, определенному как клавиша доступа, автоматически добавляется знак подчеркивания.

Примечание. Для разных команд в одном меню нельзя задавать одинаковые клавиши доступа.


 Присоединение пользовательской строки меню к форме или отчету

Присоединение пользовательской строки меню к форме или отчету

Присоединенная пользовательская строка меню заменяет встроенную строку меню для формы или отчета.

  1. Создайте строку меню.

    Инструкции

  2. Откройте форму или отчет в режиме конструктора.

  3. Выберите область выделения формы или область выделения отчета в режиме конструктора.

  4. На панели инструментов нажмите кнопку Свойства [image] .

  5. В ячейке свойства Строка меню укажите имя строки меню.

    Повторите эту процедуру для каждого отчета или формы, к которым нужно присоединить строку меню.


 Присоединение пользовательской панели инструментов к форме или отчету

Присоединение пользовательской панели инструментов к форме или отчету

Присоединенная панель инструментов заменяет встроенную панель инструментов для формы или отчета.

  1. Создайте панель инструментов.

    Инструкции

  2. Откройте форму или отчет в режиме конструктора.

  3. Выберите область выделения формы или область выделения отчета в режиме конструктора.

  4. На панели инструментов нажмите кнопку Свойства [image] .

  5. В ячейке свойства Панель инструментов укажите имя панели инструментов.

    Повторите эту процедуру для каждого отчета или формы, к которым нужно присоединить панель инструментов.


 Присоединение контекстного меню к форме, элементу управления формы или отчету

Присоединение контекстного меню к форме, элементу управления формы или отчету

Присоединенное контекстное меню заменяет встроенное контекстное меню для формы, элемента управления или отчета.

  1. Создайте контекстное меню.

    Инструкции

  2. Откройте форму или отчет в режиме конструктора.

  3. Выберите область выделения формы, область выделения отчета или элемент управления.

  4. На панели инструментов нажмите кнопку Свойства [image] .

  5. В ячейке свойства Контекстное меню укажите имя контекстного меню.

    Если контекстное меню присоединяется к форме, убедитесь, что свойство Контекстные меню (ShortcutMenu) имеет значение Да.

    Повторите эту процедуру для каждой формы, отчета или элемента управления, к которым нужно присоединить контекстное меню.


Настройка закрепления панели инструментов или строки меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов нажмите кнопку Свойства.

  3. В списке Выбранная панель выберите имя панели инструментов или строки меню, свойства которой нужно настроить.

  4. В поле закрепление выберите нужный элемент.

Примечания

  • Для любого элемента, кроме Изменения невозможны, также должен быть установлен флажок перемещение.

  • Флажок Изменение панелей инструментов/меню в диалоговом окне Параметры запуска (меню Сервис) не оказывает влияния на действие этого параметра.


Настройка присутствия в меню «Панели инструментов» пользовательских панелей инструментов и строк меню

По умолчанию разрешается открывать и скрывать пользовательские панели инструментов и строки меню, выбирая их в подменю, выводимом при выборе команды Панели инструментов меню Вид, или в контекстном меню, которое появляется при щелчке правой кнопкой мыши кнопки панели инструментов или меню. Можно запретить пользователям эти действия, удалив имена панелей инструментов или строк меню из этих меню.

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов нажмите кнопку Свойства.

  3. Выберите в списке Выбранная панель название панели инструментов, для которой нужно установить свойства.

  4. Установите или снимите флажок отображение в меню.

Примечания

  • Когда этот флажок сброшен, возможность открывать или скрывать панели инструментов или строки меню из диалогового окна Настройка сохраняется. Для получения дополнительных сведений о запрещении пользователям доступа к диалоговому окну Настройка нажмите кнопку [image] .

  • При выборе этого флажка следует установить также флажок отображение и скрытие.


Запрет или разрешение на изменение определенных панелей инструментов, строк меню или контекстных меню

Изменение в данном случае означает добавление, перемещение, удаление или установку свойств для кнопок, команд или меню.

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов нажмите кнопку Свойства.

  3. Выберите в списке Выбранная панель название панели инструментов, строки меню или специального контекстного меню, для которых нужно установить свойства.

  4. Установите или снимите флажок Настройка.

Примечание. После установки свойств для всех панелей инструментов, строк меню и контекстных меню можно установить запрет на доступ пользователей к диалоговому окну Настройка и изменение установок. Для получения дополнительных сведений нажмите кнопку [image] .


Запрет или разрешение на перемещение панелей инструментов или строк меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов нажмите кнопку Свойства.

  3. В списке Выбранная панель выберите имя панели инструментов или строки меню, свойства которой нужно настроить.

  4. Установите или снимите флажок перемещение.

Примечание. Эта установка не зависит от параметра Изменение панелей инструментов/меню, установленного в диалоговом окне Параметры запуска (меню Сервис).


 Запрет или разрешение на изменение размеров панелей инструментов или строк меню

Запрет или разрешение на изменение размеров панелей инструментов или строк меню

Размеры перемещаемых панелей инструментов могут быть изменены.

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов нажмите кнопку Свойства.

  3. В списке Выбранная панель выберите имя панели инструментов или строки меню, свойства которой нужно настроить.

  4. Установите или снимите флажок изменение размера.

Примечание. Эта установка не зависит от параметра Изменение панелей инструментов/меню, установленного в диалоговом окне Параметры запуска (меню Сервис).


Запрет или разрешение отображения и скрытия определенных панелей инструментов и строк меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов нажмите кнопку Свойства.

  3. В списке Выбранная панель выберите имя панели инструментов или строки меню, свойства которой нужно настроить.

  4. Установите или снимите флажок отображение и скрытие.

Примечания

  • Все встроенные панели инструментов могут быть скрыты автоматически, чтобы запретить работу пользователей с ними. Для получения дополнительных сведений нажмите кнопку [image] .

  • При снятии этого флажка необходимо убедиться, что флажок отображение в меню также снят, поскольку в противном случае строка меню или панель инструментов будет отображаться в меню, но выбрать ее будет невозможно.


Выбор эффектов, используемых при выводе меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Параметры выберите желаемый эффект.


 Отображение или скрытие панели инструментов, строки меню или контекстного меню

Отображение или скрытие панели инструментов, строки меню или контекстного меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов установите или снимите флажок для элемента, который должен быть отображен или скрыт. Чтобы отобразить определенное контекстное меню, установите флажок Контекстные меню и выберите категорию и имя открываемого контекстного меню. Чтобы отобразить специальные контекстные меню, выберите категорию Настраиваемый.

Советы

  • Чтобы быстро спрятать перемещаемую панель инструментов, нажмите на ней кнопку Закрыть.

  • Чтобы быстро отобразить или скрыть специальную панель инструментов или строку меню, щелкните правой кнопкой мыши любую панель инструментов или строку меню, а затем выберите имя строки в контекстном меню.


Отображение или скрытие сочетаний клавиш в подсказках

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Выберите вкладку Параметры.

  3. Установите или снимите флажок Включить в подсказки сочетания клавиш.

Примечание. Эта настройка повлияет на все программы Microsoft Office, кроме Microsoft Excel.


Вывод и скрытие всплывающих подсказок для панелей инструментов

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Выберите вкладку Параметры.

  3. Установите или снимите флажок Отображать подсказки для кнопок.

Примечание. Эта настройка повлияет на все программы Microsoft Office.


 Перемещение панели инструментов или строки меню

Перемещение панели инструментов или строки меню

  1. Выполните одно из следующий действий.
    • На закрепленной панели инструментов или строке меню щелкните маркер перемещения Левый край закрепленной панели инструментов.

    • На перемещаемой панели инструментов или строке меню щелкните строку заголовка.
  2. Перетащите панель инструментов или строку меню в новое положение. Панель инструментов или строка меню, перетащенная на границу окна программы, становится закрепленной.

Примечание. Перемещение одной закрепленной панели инструментов может повлиять на расположение и размер других панелей инструментов, находящихся в той же строке.


 Изменение размера панели инструментов или строки меню

Изменение размера панели инструментов или строки меню

  • Чтобы изменить размер перемещаемой панели инструментов или строки меню, установите указатель на любую границу панели инструментов или строки меню. Когда указатель примет вид двухсторонней стрелки, перетащите границу.

  • Чтобы изменить размер закрепленной панели инструментов, находящейся в одной строке с другой панелью инструментов, щелкните маркер перемещения Левый край закрепленной панели инструментов и перетащите его.

Примечания

  • Допускается изменение размеров закрепленной панели инструментов, которая занимает целую строку, является крайней слева в горизонтальной строке или верхней в вертикальной строке панелей инструментов.

  • Изменение размера панели инструментов может повлиять на расположение и размер других панелей инструментов, находящихся в той же строке.


 Вывод на экран палитр цветов и образцов в режиме конструктора формы или отчета

Вывод на экран палитр цветов и образцов в режиме конструктора формы или отчета

Чтобы палитра оставалась на экране в течение всего времени создания формы, отчета или страницы доступа к данным, отделите палитру от ее кнопки на панели инструментов путем перетаскивания.

  1. В режиме конструктора формы, режиме конструктора отчета или режиме конструктора страницы доступа к данным щелкните стрелку рядом с одной из следующих кнопок на панели инструментов Формат (..), в зависимости от необходимой палитры.
    Кнопка | Палитра | Определяет
    Цвет заливки/фона | Цвет фона элемента управления или раздела.
    Цвет текста | Цвет текста, выводящегося в элементе управления.
    Цвет линии/границы | Цвет границы элемента управления.
    Толщина линии/границы | Ширина границы элемента управления.
    Оформление | Плоское, приподнятое или утопленное оформление элементов управления.
  2. Щелкните полоску в верхней части окна палитры и перетащите палитру от кнопки панели инструментов.


Отображение названий шрифтов интерфейсным шрифтом Office

  1. В меню Сервис выберите команду Настройка, затем перейдите на вкладку Параметры.

  2. Снимите флажок Отображать названия шрифтов тем же шрифтом.

Примечание. Состояние флажка Отображать названия шрифтов тем же шрифтом влияет на все приложения Microsoft Office.


 Отслеживание хода работ и поиск файлов с помощью Microsoft Outlook

Отслеживание хода работ и поиск файлов с помощью Microsoft Outlook

Microsoft Outlook — это клиентское приложение для работы с сообщениями и сотрудничества с другими пользователями, которое используется для отправки почты, планирования собраний, встреч, событий, работы со списком контактных лиц, ведения списка собственных заданий, распределения заданий между сотрудниками, а также для отслеживания выполняемых действий. Некоторые возможности Outlook могут быть использованы при работе в других приложениях Microsoft Office.

Если Outlook недоступен, выберите в меню Пуск подменю Программы, а затем выберите команду Microsoft Outlook, чтобы установить это приложение.

  • Дневник Outlook позволяет автоматически отслеживать все файлы, создаваемые в любой программе Office. Например, для отслеживания баз данных по времени создания и изменения, а не по месту расположения, можно настроить Outlook на создание записи в дневнике при каждом сеансе работы базы данных. Каждая запись соответствует одному действию. Инструкции по автоматическому отслеживанию баз данных в дневнике Outlook.

  • Если требуется отслеживать только один файл приложения Office или другой программы, необходимо вручную записывать каждое действие с этим файлом в дневник Outlook. Инструкции по записи работы над любым файлом в дневник Outlook вручную.

  • Можно связывать задачи, записи в дневнике, электронные таблицы, документы, базы данных и презентации с контактом, что позволяет отслеживать все относящееся к этому контакту. Например, если требуется отслеживать базы данных по одному или нескольким именам контактов, ответственных за выполнение работ над конкретной базой данных, можно связать сведения о контакте с нужной базой данных и другими элементами, такими как электронные таблицы, сообщения электронной почты и встречи. Связывание задач, записей дневника и документов с контактом.

  • При наличии установленной системы управления файлами, интегрированной с Microsoft Outlook (Microsoft Outlook Integrated File Management system) можно использовать Outlook для поиска файлов любого из приложений Office, поиска файлов в сети, а также элементов Outlook. Результаты поиска можно сортировать, группировать и изменять способ их представления. Кроме того, в результатах поиска можно открыть элемент или файл двойным щелчком. Результаты поиска можно сохранить в виде файла, который можно использовать совместно с другими пользователями, а затем открывать поиск, дважды щелкая сохраненный файл поиска. Инструкции по использованию Microsoft Outlook для поиска файлов и элементов Outlook.


Контроль за работой с базой данных и поиск файлов при помощи Microsoft Outlook

Предполагаемые действия

Автоматическое отслеживание баз данных в дневнике Outlook

Запись работы любого файла в дневнике Outlook вручную

Использование Microsoft Outlook для поиска файлов и элементов Outlook

Связывание задач, записей дневника и документов с контактом

Не можете сделать выбор?


Автоматическое отслеживание баз данных в дневнике Outlook

  1. Запустите Outlook.

  2. Выберите команду Параметры в меню Сервис.

  3. Перейдите на вкладку Настройки, а затем нажмите кнопку Параметры дневника.

  4. В списке Записывать также файлы из установите флажок Microsoft Access.

Примечание. Базы данных, записываемые автоматически, могут появиться в дневнике Outlook через несколько минут.


 Запись работы любого файла в дневнике Outlook вручную

Запись работы любого файла в дневнике Outlook вручную

  1. Убедитесь, что файл, работу которого необходимо записать, закрыт.

  2. Запустите Outlook.

  3. На панели Outlook нажмите кнопку Другие папки или Другие ярлыки.

  4. Дважды щелкните значок Мой компьютер [image] а затем найдите файл, который необходимо записать.

    Если окно Мой компьютер недоступно, необходимо установить систему управления файлами, интегрированную с Microsoft Outlook (Microsoft Outlook Integrated File Management system). См. сведения по установке программ или компонентов.

  5. На панели Outlook нажмите кнопку Мои ярлыки и убедитесь, что значок Дневник [image] является видимым.

  6. Перетащите записываемый файл в Дневник [image].

  7. Выберите нужные параметры и нажмите кнопку Сохранить и закрыть [image] .


Использование Microsoft Outlook для поиска файлов и элементов Outlook

  • Нажмите кнопку Пуск, выберите команду Найти и подкоманду С помощью Microsoft Outlook.

Примечание. Для того чтобы на компьютере можно было найти все файлы, необходимо установить на нем систему управления файлами, интегрированную с Microsoft Outlook (Microsoft Outlook Integrated File Management system). Инструкции по установке программ или компонентов.


 Работа со временем, контактными лицами, заданиями и сообщениями при помощи панели Office

Работа со временем, контактными лицами, заданиями и сообщениями при помощи панели Office

Если при установке Microsoft Office на компьютер был установлен и Microsoft Outlook, на панели инструментов Office на панели Office есть шесть ярлыков, представляющих наиболее часто используемые возможности Microsoft Outlook.

Ярлык | Назначение
Создать сообщение | Отправка почты из Outlook
Создать встречу | Добавление новой встречи в Календарь Outlook
Создать задачу | Добавление новой задачи в список задач Outlook
Создать контакт | Создание контакта в Outlook
Создать запись в дневнике | Запись вручную действия в дневник Outlook
Создать заметку | Создание заметки в Outlook


 Пересылка страницы доступа к данным в теле сообщения электронной почты

Пересылка страницы доступа к данным в теле сообщения электронной почты

Важно! Страница доступа к данным подключена к источнику данных OLE DB — базе данных Microsoft Access или базе данных Microsoft SQL Server. Для того чтобы страница работала правильно, база данных должна быть доступна пользователям этой страницы. См. сведения о совместном использовании источника данных OLE DB страницы.

  1. В окне базы данных щелкните ярлык Страницы в списке Объекты, а затем выберите имя страницы, которую требуется отправить как сообщение электронной почты.

  2. В меню Файл выберите команду Отправить и подкоманду Сообщение.

    Access откроет страницу доступа к данным в режиме конструктора страниц, позволяя внести изменения перед отправкой, например, добавить текст или примечания для получателя.

  3. Введите имена получателей в поля Кому и Копия. Разделите имена точкой с запятой (;).

    Чтобы выбрать получателей из списка, нажмите кнопку Кому или Копия. По умолчанию в поле Тема отображается имя объекта, но имеется возможность указать другую тему. Можно вручную проверить имена перед отправкой сообщения. Также можно задать дополнительные параметры для сообщения электронной почты.

  4. Нажмите кнопку Отправить в заголовке сообщения.


 Пересылка содержимого объекта базы данных по электронной почте вложением

Пересылка содержимого объекта базы данных по электронной почте вложением

  1. В окне базы данных щелкните ярлык нужного типа объектов базы данных в списке Объекты, а затем выберите имя объекта базы данных, который требуется отправить как вложение.

    Если требуется отправить фрагмент таблицы, то, прежде чем продолжить, откройте таблицу и выделите нужный фрагмент.

  2. В меню Файл выберите команду Отправить и подкоманду Сообщение (как вложение).

  3. Выберите формат файла, который требуется вложить в сообщение, и нажмите кнопку OK.

    Microsoft Access открывает новое сообщение электронной почты и присоединяет к нему объект в указанном формате.

  4. Введите имена получателей в поля Кому и Копия. Разделите имена точкой с запятой (;).

    Чтобы выбрать получателей из списка, нажмите кнопку Кому или Копия. По умолчанию в поле Тема отображается имя объекта, но имеется возможность указать другую тему. Можно вручную проверить имена перед отправкой сообщения. Также можно задать дополнительные параметры для сообщения электронной почты.

  5. Нажмите кнопку Отправить в заголовке сообщения.

Примечания

  • Объект базы данных можно вложить в сообщение электронной почты в одном из следующих выходных форматов: HTML (.htm, .html), Microsoft Excel (.xls), текст Microsoft MS-DOS (.txt), Rich Text Format (.rtf), в случае страниц доступа к данным — формат страниц доступа к данным (.htm, .html), а в случае отчетов — формат снимков отчетов (.snp).

  • Несмотря на то, что в сообщение нельзя вложить объект базы данных в формате Microsoft Internet Information Services (.htx, .idc) или Microsoft Active Server Pages (.asp), существует возможность экспортировать объект в нужный выходной формат, а затем вложить полученные файлы в почтовую программу, например, Microsoft Outlook. См. сведения об экспорте данных.

  • Страницы можно отправлять только в формате страниц доступа к данным (.htm, .html). Модули можно отправлять только в формате текста MS-DOS (.txt). Пересылка макросов или схем базы данных (только в проектах Microsoft Access) невозможна.


Настройка параметров отправки сообщения электронной почты

Предполагаемые действия

Установка уровня важности и пометки

Установка уровня важности сообщения

Отметка сообщения

Пометка сообщения как частного, личного или ДСП

Установка уровня безопасности

Защита сообщений

Отслеживание сообщений и ответов

Получение уведомлений о доставке сообщений

Получение уведомлений о прочтении сообщений

Добавление кнопок голосования в электронное сообщение

Настройка параметров доставки

Сохранение копии отправленного сообщения

Удаление отправленного сообщения через определенное время

Отложенная доставка сообщения

Отправка ответов на сообщения пользователя другому пользователю

Категории сообщений

Отнесение сообщения к категории

Настройка учетной записи электронной почты

Указание учетной записи электронной почты, с помощью которой нужно отправить сообщение

Получение сведений об установленном приложении Microsoft Outlook

Не можете сделать выбор?


 Проверка имен вручную перед отправкой сообщения

Проверка имен вручную перед отправкой сообщения

Перед отправкой выходных данных объекта базы данных или страницы доступа к данным в виде сообщения электронной почты имена получателей, введенные в поля Кому, Копия и СК, автоматически сверяются с именами в адресной книге. Если найдено точное совпадение, имя подчеркивается. Если найдено несколько имен, совпадающих с введенным, на экран выводится диалоговое окно Проверка имен , позволяющее выбрать нужное имя.

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Введите имена получателей в поля Кому и Копия. Разделите имена точкой с запятой (;).

    Чтобы выбрать имена получателей из списка, нажмите кнопку Кому или Копия.

  3. Нажмите кнопку Проверить имена [image].

    Совет. Также можно воспользоваться клавишами CTRL+K.


 Требования к конфигурации системы для отправки и просмотра страниц доступа к данным

Требования к конфигурации системы для отправки и просмотра страниц доступа к данным

Ниже перечислены требования к конфигурации системы для отправки и просмотра страниц доступа к данным.

Требования к конфигурации системы для отправки страниц доступа к данным

Для отправки страниц доступа к данным по электронной почте необходимо одно из следующих приложений:

  • Microsoft Outlook 2000;

  • Outlook Express версии 5.0;

  • Microsoft Exchange.

Требования к конфигурации системы для просмотра страницы доступа к данным, присланной по электронной почте

Для просмотра страницы доступа к данным, присланной в виде сообщения электронной почты, получателю необходимо одно из следующих приложений:

  • Microsoft Outlook 2000;

  • Outlook Express версии 5.0;

  • сочетание Microsoft Outlook 98 и Microsoft Internet Explorer версии 5 или более поздней;

  • сочетание Microsoft Outlook Express и Microsoft Internet Explorer версии 5 или более поздней.

Примечания

  • Отправка страниц доступа к данным по электронной почте может не работать при использовании шлюзов электронной почты.

  • Пользователям, работающим с Microsoft Office 97 или более ранних версий, рекомендуется отправлять страницы доступа к данным в виде вложений в сообщения электронной почты.


 Открытие последних просмотренных файлов

Открытие последних просмотренных файлов

  1. Если панель инструментов Web не отображается, выберите в меню Вид команду Панель инструментов, а затем подкоманду Web.

  2. Для открытия предыдущего документа в журнале, нажмите на панели инструментов Web кнопку Назад [image] . Для открытия следующего документа нажмите кнопку Далее [image] .


 Открытие страницы поиска в Web

Открытие страницы поиска в Web

  1. Если панель инструментов Web не отображается, выберите в меню Вид команду Панель инструментов, а затем подкоманду Web.

  2. На панели инструментов Web выберите команду Найти в Web [image] .

Примечание. Страница поиска обеспечивает удобство поиска и перехода к другим узлам Интернета или к файлам в интрасети.


 Открытие начальной Web-страницы

Открытие начальной Web-страницы

  1. Если панель инструментов Web не отображается, выберите в меню Вид команду Панель инструментов, а затем подкоманду Web.

  2. На панели инструментов Web нажмите кнопку Начальная страница [image] .

Примечание. При запуске Web-обозревателя первой отображается начальная страница. В качестве начальной страницы можно указать адрес любого Web-узла или файла на жестком диске.


 Обновление данных, выводимых на экран из активного файла или Web-страницы

Обновление данных, выводимых на экран из активного файла или Web-страницы

Открытая Web-страница за время просмотра может быть изменена автором. При обновлении документа запрашивается последняя версия исходного файла, расположенного на сетевом сервере, в Интернете или на жестком диске локального компьютера.

  1. Если панель инструментов Web не отображается, выберите в меню Вид команду Панель инструментов, а затем подкоманду Web.

  2. На панели инструментов Web выберите команду Обновить текущую страницу [image] .


 Закрытие всех панелей инструментов кроме Web

Закрытие всех панелей инструментов кроме Web

  1. Если панель инструментов Web не отображается, выберите в меню Вид команду Панель инструментов, а затем подкоманду Web.

  2. На панели инструментов Web нажмите кнопку Отображать только панель Web [image] .


 Установка базовой гиперссылки для базы данных Access или проекта Access

Установка базовой гиперссылки для базы данных Access или проекта Access

В базе данных Microsoft Access или проекте Microsoft Access можно задавать относительные ссылки путем настройки свойства База гиперссылки (HyperlinkBase). См. сведения по относительным ссылкам и базе гиперссылки.

  1. Откройте базу данных, для которой необходимо установить базу гиперссылки.

  2. В меню Файл выберите команду Свойства базы данных, а затем перейдите на вкладку Документ.

    В поле База гиперссылки введите нужный путь или относительную ссылку для всех гиперссылок создаваемых в базе данных. Путь может указывать на расположение на жестком диске, сетевом диске, в интрасети или Интернете.


 Отключение автоматического завершения имен файлов и адресов URL

Отключение автоматического завершения имен файлов и адресов URL

При наличии Microsoft Internet Explorer версии 4.0 или более поздней можно отключить средство, автоматически предлагающее совпадения для имен файлов и адресов URL, вводимых в диалоговом окне Добавить гиперссылку в приложениях Office, в также в поле Адрес в Internet Explorer.

  1. Запустите приложение Internet Explorer или переключитесь в него.

  2. Выполните одно из следующий действий.

    В Microsoft Internet Explorer 4.0 выберите команду Свойства обозревателя в меню Вид, перейдите на вкладку Дополнительно и снимите флажок Использовать авто-завершение.

    В Microsoft Internet Explorer 5 выберите команду Свойства обозревателя в меню Сервис, перейдите на вкладку Дополнительно и снимите флажок Использовать встроенное автозаполнение в проводнике.


Работа с FTP

Предполагаемые действия

Добавление узла протокола FTP в список узлов Интернета

Удаление FTP-узла из списка узлов Интернета

Изменение входного имени и пароля для FTP-узла

Сохранение страницы доступа к данным на FTP-узле


 Панель инструментов «Web»

Панель инструментов «Web»

В Access имеется панель инструментов Web, облегчающая просмотр документов Office, которые содержат гиперссылки. С помощью панели инструментов Web можно открыть начальную страницу или страницу поиска в Web-обозревателе. Выполняя поиск интересующих ресурсов Web, можно использовать панель управления Web для добавления их адресов в папку «Избранное», чтобы в следующий раз можно было быстро их найти. Панель инструментов Web хранит список последних посещенных 25 адресов, переход к которым был выполнен с помощью этой панели инструментов или гиперссылки, что облегчает возврат к любому элементу из списка.


 Три типа Web-страниц, которые можно создавать в Microsoft Access

Три типа Web-страниц, которые можно создавать в Microsoft Access

Данный раздел содержит справочные сведения по следующим вопросам.

Страницы доступа к данным

Генерируемые сервером файлы HTML

Статические файлы HTML

Страницы доступа к данным

Страницы доступа к данным создаются как объекты базы данных, используемые для перехода к расположению соответствующего файла HTML. См. сведения о создании страниц доступа к данным.

Страницы используются для просмотра, редактирования, обновления, удаления, отбора, группировки и сортировки изменяющихся данных базы данных Microsoft Access или базы данных Microsoft SQL Server в Microsoft Internet Explorer версии 5 или более поздней. Страница также может содержать дополнительные элементы управления, включая электронные таблицы, сводные списки и диаграммы.

Чтобы сделать страницы доступа к данным доступными в Интернете, следует опубликовать их в папках Web или на Web-сервере, а также сделать базу данных Access или базу данных SQL Server доступной пользователям страницы.

Для просмотра данных страницы и взаимодействия с ними достаточно один раз загрузить страницу с Web-сервера в Internet Explorer. Поскольку на страницах используется динамический HTML, доступ к базе данных в среде клиент-сервер как правило весьма эффективен.

Возврат в начало

Генерируемые сервером файлы HTML

Генерируемые сервером файлы HTML (ASP или IDC/HTX) можно создавать из таблиц, запросов и форм. Генерируемые сервером файлы HTML отображаются в Web-обозревателе в табличном формате. Генерируемые сервером файлы HTML используются в любых Web-обозревателях, когда данные часто изменяются, требуется просматривать изменяющиеся данные в таблице, связанной с источником данных ODBC, но данные нужны только для чтения.

Полученные выходные файлы формата ASP или IDC/HTX необходимо опубликовать для обработки в поддерживаемом приложении Web-сервера и операционной системе.

При каждом открытии или обновлении файла ASP или HTX пользователем Web-обозревателя Web-сервер динамически создает файл HTML, а затем отправляет его в Web-обозреватель.

Возврат в начало

Статические файлы HTML

Статические файлы HTML можно создавать из таблиц, запросов, форм и отчетов. В Web-обозревателе отчеты отображаются в формате отчета, а таблицы, запросы и формы отображаются в формате таблиц. Статические файлы HTML используются для Web-обозревателей, поддерживающих язык HTML версии 3.2 или более поздней, при нечастом изменении данных.

Чтобы сделать статические файлы HTML доступными в Интернете, следует опубликовать их в папках Web или на Web-сервере.

При доступе к данным через Web-обозреватель для просмотра данных достаточно один раз загрузить статический файл HTML с Web-сервера. Однако, конечные файлы HTML представляют собой снимок данных во время публикации файлов. Со статическим файлом HTML не связан ни один источник данных ODBC, поэтому при изменении данных необходимо вновь экспортировать файлы, чтобы иметь возможность просматривать новые данные в Web-обозревателе.

Возврат в начало


 Описание продуктов клиент/сервер для работы с Web-страницами и поддерживаемых систем

Описание продуктов клиент/сервер для работы с Web-страницами и поддерживаемых систем

В следующей таблице перечислены поддерживаемые продукты, операционные системы и выходные форматы файлов Web-страниц.

Выходной формат файла
Web-страницы

Версия
HTML

 Поддерживаемый клиентский обозреватель

Поддерживаемый серверный
продукт и операционная система
Страницы доступа к данным (*.htm, *.html) Динамический HTML версии 4.0 или более поздней Microsoft Internet Explorer версии 5 или более поздней Все продукты для Web-серверов и все системы

Примечание. Для предотвращения междоменного доступа требуется наличие IIS 4.0 в Microsoft Windows NT Server версии 4.0. См. сведения по защите страницы доступа к данным.
Генерируемые сервером файлы HTML, ASP (*.asp) Все Web-обозреватели
  • IIS 3.0 с Active Server Pages в Windows NT Server 4.0

  • IIS 4.0 в Windows NT Server 4.0

  • Personal Web Server с Active Server Pages в Windows NT Workstation 4.0

  • Personal Web Server с Active Server Pages в Microsoft Windows 95
Генерируемые сервером файлы HTML, IDC/HTX (*.idc, *.htx) Все Web-обозреватели
  • Microsoft Internet Information Server (IIS) версии 1.x с использованием средства Internet Database Connector в Windows NT Server 3.51

  • IIS 2.0 в Windows NT Server 3.51

  • IIS 3.0 с Active Server Pages в Windows NT Server 4.0

  • IIS 4.0 в Windows NT Server 4.0

  • Personal Web Server в Windows NT Workstation 4.0

  • Personal Web Server в Windows 95
Статический HTML (*.htm, *.html) HTML версии 3.2 или более поздней Все Web-обозреватели Все продукты для Web-серверов и все системы

Примечание. Для использования Web-страниц с компьютера клиента необходимо иметь Web-обозреватель, например, Microsoft Internet Explorer, а также модем или сетевую связь с сервером Интернета или интрасети, на котором расположены Web-страницы. Сведения о получении доступа к Интернету приведены в книге Microsoft Office 2000 Resource Kit. Для получения сведений о приобретении книги «Resource Kit» нажмите кнопку [image] .


 Обработка создаваемого сервером HTML-текста Web серверами

Обработка создаваемого сервером HTML-текста Web серверами

Данный раздел содержит справочные сведения по следующим вопросам.

Обработка файлов IDC/HTX Web-сервером

Обработка файлов ASP Web-сервером

Обработка файлов IDC/HTX Web-сервером

При преобразовании таблиц, запросов или форм в формат файлов IDC/HTX Microsoft Access создает вместо файлов .html файлы расширения HTML (.htx) и файлы Internet Database Connector (.idc). Библиотека Internet Database Connector (httpodbc.dll) является частью продукта Microsoft Internet Information Server.

Файл с расширением .idc содержит запрос в форме инструкции SQL и сведения, используемые Microsoft Internet Information Server для подключения к источнику данных ODBC, в данном случае, к базе данных Microsoft Access или к базе данных Microsoft SQL Server. Сведения о подключении включают имя источника данных, а часто также имя пользователя и пароль, которые являются необязательными.

Файл с расширением .htx является файлом HTML и содержит команды и инструкции по форматированию, а вместо данных содержит шаблоны, указывающие место вставки значений из запроса в файле с расширением .idc.

Получая запрос из Web-обозревателя после публикации файлов IDC/HTX на Web-сервере, Microsoft Internet Information Server открывает базу данных (с использованием соответствующего драйвера ODBC и сведений о подключении из файла .idc), выполняет запрос из файла .idc для доступа к данным, объединяет результаты и файл .htx в один файл .html, а затем отправляет этот динамически созданный файл .html в Web-обозреватель для отображения в виде Web-страницы.

Возврат в начало

Обработка файлов ASP Web-сервером

При преобразовании таблиц, запросов или форм в формат файлов ASP Microsoft Access создает вместо файла .html файл Microsoft Active Server Page (.asp). Active Server входит в состав Microsoft Internet Information Server версии 3.0 или более поздней.

Файл .asp содержит теги HTML, а также один или несколько запросов в форме инструкций SQL, инструкции форматирования шаблонов и программы VBScript, содержащие ссылки на элементы управления сервера ActiveX. Кроме того, файл .asp содержит сведения о подключении ODBC, используемые для подключения к источнику данных ODBC, в данном случае к базе данных Access или Microsoft SQL Server. Сведения о подключении включают имя источника данных, а часто также имя пользователя и пароль, которые являются необязательными.

Получая запрос из Web-обозревателя после публикации файлов ASP на Web-сервере, Microsoft Internet Information Server запускает программу VB Script, вызывает элементы сервера ActiveX, открывает базу данных (с использованием соответствующего драйвера ODBC и сведений о подключении из файла .asp), выполняет запросы из файла .asp для доступа к данным, объединяет результаты и теги HTML из файла .asp в один файл .html, а затем отправляет этот динамически созданный файл .html в Web-обозреватель для отображения в виде Web-страницы.

Возврат в начало


 Папки Web

Папки Web

Для создания, копирования, сохранения или управления папками и файлами на Web-сервере необходимо иметь доступ к этому серверу. Чтобы найти Web-сервер, к которому можно подключиться, обратитесь к системному администратору.

Данный раздел содержит справочные сведения по следующим вопросам.

Сохранение файлов на Web-серверах

Просмотр файлов и папок и управление ими

Дополнительные сведения

Сохранение файлов на Web-серверах

Папки Web можно использовать для сохранения страниц доступа к данным на Web-серверах. Папки Web доступны из проводника Windows или из диалоговых окон Microsoft Access Открытие файла базы данных (меню Файл), Сохранение в виде страницы доступа к данным (меню Файл страницы) и Поиск Web-страницы (ярлык Изменение существующей Web-страницы).

В корневом каталоге папок Web (в проводнике Windows) расположен мастер добавления папки Web. С помощью этого мастера можно создать папку, представляющую собой ярлык Web-сервера. Каждый из таких ярлыков называется папкой Web. Папки Web также можно создавать в диалоговых окнах Microsoft Access Открытие файла базы данных, Сохранение в виде страницы доступа к данным и Поиск Web-страницы. Для этого следует щелкнуть ярлык Web-папки [image] на панели адресов, а затем нажать кнопку Создать папку [image]. В созданной папке Web можно сохранять файлы и папки страниц доступа к данным.

Возврат в начало

Просмотр и управление содержимым папок Web

Существует три способа просмотра и управления папками и файлами страниц доступа к данным в папках Web.

В проводнике Windows. При просмотре содержимого папки Web отображается список папок и файлов, а также связанные с ними адреса URL. Отображаемые файлы и папки можно перемещать, копировать, переименовывать и удалять, как если бы они находились на обычном файловом сервере, а также просматривать их свойства. Кроме того, допускается перетаскивание файлов между Web-серверами, между Web-сервером и файловым сервером, а также между Web-сервером и локальным жестким диском.

В Access. В диалоговых окнах Открытие файла базы данных (меню Файл) и Поиск Web-страницы (ярлык Изменение существующей Web-страницы) можно просматривать и открывать содержимое папок Web. В диалоговом окне Сохранение в виде страницы доступа к данным (меню Файл страницы), можно сохранить страницу доступа к данным в папке Web. Также можно создать папку Web: щелкните ярлык Web-папки [image] на панели адресов, а затем нажмите кнопку Создать папку [image].

В обозревателе. При наличии подключения к Web-серверу, на котором выполняются серверные расширения Microsoft Office, в обозревателе можно просматривать содержимое папок Web и соответствующие свойства файловой системы.

Возврат в начало

Дополнительные сведения

Создание папки Web

Открытие страницы доступа к данным, находящейся на Web-сервере

Сохранение в Access копии страницы доступа к данным на Web-сервере

Сохранение копии страницы доступа к данным на Web-сервере с помощью проводника Windows

Где сохранять страницы доступа к данным в Web

Рекомендации по управлению файлами и связями в Интернете

Возврат в начало


 Создание папки Web

Создание папки Web

Для создания папки Web следует обратиться к системному администратору для получения адреса URL Web-сервера, на котором можно сохранять файлы.

  1. В окне «Мой компьютер» или проводнике Windows дважды щелкните значок Web-папки.

  2. Дважды щелкните значок Добавление папки Web.

  3. Следуйте инструкциям мастера добавления папки Web.

  4. Чтобы сохранить файлы на Web-сервере, перетащите их и все вспомогательные папки во вновь созданную папку Web.

Примечания

  • Чтобы создать новую папку Web из Microsoft Access: в диалоговом окне Открытие файла базы данных (меню Файл), Сохранение в виде страницы доступа к данным (меню Файл страницы доступа к данным) или Поиск Web-страницы (ярлык Изменение существующей Web-страницы) щелкните ярлык Web-папки [image] на панели адресов, нажмите кнопку Создать папку [image], а затем следуйте инструкциям мастера добавления папки Web.

  • Чтобы быстро создать в Microsoft Access папку Web для существующего расположения на Web-сервере, введите адрес Интернета в поле Имя файла диалогового окна Сохранение в виде страницы доступа к данным (меню Файл страницы). Например, введите http://myserver, чтобы создать папку Web для этого адреса.


 Выбор расположения страниц доступа к данным в Интернете

Выбор расположения страниц доступа к данным в Интернете

Порядок действий по сохранению страниц доступа к данным в Интернете зависит от предполагаемой области их совместного использования. Данный раздел содержит справочные сведения по следующим вопросам.

Размещение страниц доступа к данным в интрасети

Размещение страниц доступа к данным в Интернете

Управление Web-страницами в интрасети или Интернете

Дополнительные сведения

Размещение страниц доступа к данным в интрасети

Если интрасеть основана на протоколах Интернета, можно использовать папки Web для сохранения копий страниц доступа к данным на Web-сервере. Для копирования папок и файлов на Web-сервер и управления ими необходимо иметь доступ к этому Web-серверу. Для получения адреса URL Web-сервера, на котором можно сохранять файлы, обратитесь к системному администратору.

  • Если Web-сервер поддерживает папки Web, можно использовать папки Web для сохранения копий Web-страниц на этом Web-сервере. Чтобы иметь возможность копировать папки и файлы на Web-сервер и управлять ими, обратитесь к системному администратору или поставщику услуг Интернета для получения доступа к Web-серверу, на котором можно сохранять файлы, и его адреса URL. См. сведения о папках Web.

  • Если Web-сервер поддерживает протокол FTP (File Transfer Protocol), можно сохранять страницы доступа к данным на узле FTP. Обратитесь к системному администратору или поставщику услуг Интернета для получения доступа к узлу FTP, на котором можно сохранять файлы.

  • С вопросами о сохранении страниц доступа к данным в интрасети обращайтесь к системному администратору.

Возврат в начало

Размещение страниц доступа к данным в Интернете

Чтобы сделать страницу доступа к данным доступной через Интернет, необходимо либо найти поставщика услуг Интернета, выделяющего дисковое пространство под страницы доступа к данным, либо установить на компьютер программное обеспечение Web-сервера. При настройке компьютера в качестве Web-сервера следует учесть такие факторы как быстродействие и доступность компьютера. Если оставлять компьютер на весь день или на большую часть дня нежелательно, лучше не использовать его в качестве Web-сервера.

Существует несколько вариантов сохранения Web-страниц в Интернете.

  • Если Web-сервер поддерживает папки Web, можно использовать папки Web для сохранения копий Web-страниц на этом Web-сервере. Чтобы иметь возможность копировать папки и файлы на Web-сервер и управлять ими, обратитесь к системному администратору или поставщику услуг Интернета для получения доступа к Web-серверу, на котором можно сохранять файлы, и его адреса URL. См. сведения о папках Web.

  • Если Web-сервер поддерживает протокол FTP, можно сохранять страницы доступа к данным на узле FTP. Обратитесь к системному администратору или поставщику услуг Интернета для получения доступа к узлу FTP, на котором можно сохранять файлы.

  • С вопросами о сохранении страниц доступа к данным в Интернете обращайтесь к системному администратору или поставщику услуг Интернета.

Возврат в начало

Управление страницами доступа к данным в интрасети или Интернете

При работе с поставщиком услуг Интернета или Web-администратором организации согласуйте с ним структуру размещения на сервере страниц доступа к данным, графических и других файлов. Например, выясните, следует ли создавать отдельные папки для маркеров и рисунков, или можно хранить все файлы в одном расположении. Если планируется использовать формы или гиперкарты, спросите об ограничениях на использование этих элементов, поскольку для них требуется дополнительная серверная поддержка. См. рекомендации по управлению файлами и связями в Интернете.

Возврат в начало

Дополнительные сведения

Публикация страниц доступа к данным и других Web-страниц

Устранение неполадок со страницами доступа к данным

Возврат в начало


 Рекомендации по управлению файлами и связями в Интернете

Рекомендации по управлению файлами и связями в Интернете

Данный раздел содержит справочные сведения по следующим вопросам.

Управление вспомогательными файлами и задание их имен

Проверка ссылок

Дополнительные сведения

При создании страницы доступа к данным Microsoft Access управляет связанными файлами и планирует ссылки и гиперссылки таким образом, чтобы обеспечить отображение рисунков и работу ссылок после размещения страниц на конечном Web-сервере.

Управление вспомогательными файлами и задание их имен

При сохранении файла в виде страницы доступа к данным в режиме конструктора все вспомогательные файлы — такие как маркеры, фоновые текстуры и рисунки — по умолчанию помещаются во вспомогательную папку. При перемещении или копировании страницы в другое местоположение необходимо переместить туда же вспомогательную папку, чтобы сохранить все ссылки на странице в рабочем состоянии.

Допустим, например, имеется страница с именем Страница1.htm. Она содержит маркеры, хранящиеся во вспомогательной папке с именем Страница1.files. Относительные пути к файлам изображений указаны как \Страница1.files\image001.gif и \Страница1.files\image002.gif. При перемещении файла Страница1.htm вспомогательную папку (Страница1.files) необходимо переместить в то же расположение.

По умолчанию вспомогательной папке присваивается имя страницы доступа к данным с добавлением знака подчеркивания (_), точки (.) или дефиса (-) и слова «files». Слово «files» будет отображаться на языке той версии Microsoft Office 2000, которая использовалась для сохранения файла в виде страницы доступа к данным. Допустим, например, что для сохранения в виде страницы доступа к данным файла с именем Page1 используется нидерландская версия Office 2000. По умолчанию вспомогательной папке будет присвоено имя Page1_bestanden. См. дополнительные сведения о задании имен по умолчанию для вспомогательных папок.

Возврат в начало

Проверка ссылок

После публикации страницы доступа к данным в Интернете или интрасети необходимо проверить ее в Web-обозревателе. Убедитесь в том, что все рисунки отображаются, а переходы по всем гиперссылкам выполняются правильно.

Возврат в начало

Дополнительные сведения

Создание гиперссылки на странице доступа к данным

Связанные гиперссылки на страницах доступа к данным

Возврат в начало


 Публикация страницы доступа к данным в папках Web или на Web-сервере

Публикация страницы доступа к данным в папках Web или на Web-сервере

Важно! Страница доступа к данным подключена к источнику данных OLE DB — базе данных Microsoft Access или базе данных Microsoft SQL Server. Для того чтобы страница работала правильно, база данных должна быть доступна пользователям этой страницы. См. сведения о совместном использовании источника данных OLE DB страницы.

Публикация страницы доступа к данным посредством ее сохранения в папках Web

  • Создав страницу, сохраните ее в одной из папок Web (ярлык Web-папки). Если страница создана в другом расположении, можно переместить соответствующий файл HTML и связанные файлы с помощью команды Сохранить как из меню Файл Access. При использовании команды Сохранить как можно создать новую страницу доступа к данным и указать для нее папку Web.

См. сведения о создании страниц.

См. сведения о сохранении страниц в папках Web.

Примечания

  • При сохранении любой Web-страницы в папках Web Microsoft Access автоматически сохраняет сопутствующие файлы, такие как рисунки, таблицы стилей, связанные файлы, а также папки, в которых содержатся эти файлы. См. сведения об управлении файлами и связями в Интернете.

  • При редактировании уже существующих Web-страниц или создании страниц доступа к данным в режиме конструктора страниц можно использовать только ярлык «Web-папки» или указывать адрес URL (Uniform Resource Locator) в поле Имя файла диалогового окна Открытие файла базы данных. См. сведения о папках Web.

Публикация страницы доступа к данным на любом Web-сервере

  1. С помощью проводника Windows скопируйте файл HTML, соответствующий странице, а также все сопутствующие файлы и папки в папку корневого каталога Web-сервера. Стандартными корневыми каталогами являются \Webshare\Wwwroot для Personal Web Server и \Inetpub\Wwwroot для Microsoft Internet Information Server.

  2. Скопируйте все сопутствующие файлы, такие как рисунки, таблицы стилей, а также все папки, в которых содержатся эти файлы, в указанную папку на сервере, или убедитесь, что Web-сервер сможет обнаружить сопутствующие файлы. См. сведения об управлении файлами и связями в Интернете.


 Совместное использование базы данных, подключенной к странице доступа к данным

Совместное использование базы данных, подключенной к странице доступа к данным

База данных Microsoft Access или база данных Microsoft SQL Server, являющаяся источником данных OLE DB для страницы доступа к данным, должна находиться на сервере или компьютере с общим доступом, чтобы другие пользователи могли просматривать страницу и взаимодействовать с ней в Web-обозревателе или в сообщении электронной почты.

Рекомендует поместить базу данных на сервер или компьютер с общим доступом до создания страницы. При перемещении базы данных, к которой подключена страница, после создания страницы необходимо изменить ее подключение к источнику данных OLE DB. Для этого откройте страницу в режиме конструктора щелкните правой кнопкой мыши значок базы данных в списке полей, а затем выполните команду Подключение.

Важно! Используйте стандартный формат записи пути (UNC), не полагаясь на букву диска или подключенного сетевого диска в проводнике Windows. Буква диска может быть изменена или не всегда определена, в то время как путь UNC является надежным и согласованным способом для поиска источника данных страницы.

Хотя источником данных для страницы может быть только база данных Access или база данных SQL Server, с помощью таблиц базы данных Access можно сделать доступными со страницы другие форматы данных.

Чтобы сделать страницу доступа к данным как можно более безопасной, необходимо поместить базу данных Access или базу данных SQL Server на тот же Web-сервер, где находится страница доступа к данным.

Дополнительные сведения

Совместное использование базы данных Access

Совместное использование базы данных SQL Server

Импорт и связь с другими форматами данных

Защита страниц доступа к данным


 Публикация генерируемых сервером файлов HTML на Web-сервере

Публикация генерируемых сервером файлов HTML на Web-сервере

Чтобы использовать на Web-сервере генерируемые сервером файлы HTML (ASP или IDC/HTX), необходимо выполнить следующие действия.

  1. Установите соответствующее программное обеспечение на компьютер, который будет использоваться как Web-сервер и выполнять обработку генерируемых сервером файлов HTML.

  2. Создайте в корневом каталоге папку для хранения файлов ASP или IDC/HTX. Стандартными корневыми каталогами являются \Webshare\Wwwroot для Personal Web Server и \Inetpub\Wwwroot для Microsoft Internet Information Server.

  3. Определите соответствующие привилегии доступа к этой папке: Выполнение для Windows NT версии 4.0 или более поздней и Выполнение сценариев для Windows 95 или более поздней версии. Дополнительные сведения о совместном доступе к папкам см. в справочной системе Windows.

  4. Скопируйте в созданную папку файлы ASP или IDC/HTX. Скопируйте в нее же все сопутствующие файлы, такие как рисунки, связанные файлы, а также все папки, в которых содержатся эти файлы или убедитесь, что сопутствующие файлы могут быть обнаружены программным обеспечением Web-сервера. См. сведения об управлении файлами и связями в Интернете.

  5. Скопируйте базу данных Microsoft Access или базу данных Microsoft SQL Server в созданную папку или определите ее расположение в сети в определении источника данных ODBC на шаге 6.

  6. Определите используемый источник данных ODBC в качестве системного источника данных на Web-сервере. Убедитесь, что имя этого источника данных совпадает с введенным в соответствующее диалоговое окно Параметры вывода при выводе файлов ASP или IDC/HTX. См. сведения об определении источников данных ODBC.

  7. Если нужно, определите защиту базы данных для источника данных ODBC, обязательно сохранив при этом возможность доступа пользователей к этому источнику данных ODBC.

    Для базы данных Microsoft Access создайте имя пользователя и пароль системы защиты на уровне пользователя, чтобы разрешить пользователям доступ к базе данных с Web-страницы. Если имя пользователя или пароль указаны не будут, по умолчанию будут использоваться имя пользователя Admin и пустой пароль. См. сведения о защите на уровне пользователей в базах данных Access.

    Для проекта Microsoft Access создайте имя пользователя и пароль для базы данных в полях Пользователь и Пароль, чтобы разрешить пользователям доступ к базе данных Microsoft SQL Server с Web-страницы. Если имя пользователя или пароль указаны не будут, по умолчанию будут использоваться имя пользователя Sa и пустой пароль. См. сведения о защите баз данных SQL Server.

    Имя пользователя и пароль должны совпадать со значениями, вводимыми в поля Вход под именем и Пароль диалоговых окон Параметры вывода файлов ASP или Параметры вывода файлов HTX/IDC, которые отображаются при выводе файлов ASP или IDC/HTX.

Примечание. Если требуется экспортировать несколько таблиц, можно автоматизировать эту операцию путем создания макроса или создания программы Visual Basic for Applications. Это особенно полезно при частом выполнении экспорта баз данных для проверки и построения Web-узла.


 Публикация файлов статического HTML в папках Web или на Web-сервере

Публикация файлов статического HTML в папках Web или на Web-сервере

  1. Для публикации статических файлов HTML в папках Web скопируйте статические файлы HTML в папки Web (ярлык «Web-папки» с помощью проводника Windows. Дополнительные сведения о папках Web.

    Для публикации статических файлов HTML на любом Web-сервере скопируйте статический файл HTML в папку корневого каталога Web-сервера с помощью проводника Windows. Стандартными корневыми каталогами являются \Webshare\Wwwroot для Personal Web Server и \Inetpub\Wwwroot для Microsoft Internet Information Server.

  2. Скопируйте все сопутствующие файлы, такие как рисунки, таблицы стилей, а также все папки, в которых содержатся эти файлы, в указанную папку на сервере, или убедитесь, что Web-сервер сможет обнаружить сопутствующие файлы. См. сведения об управлении файлами и связями в Интернете.

Примечание. Если требуется экспортировать несколько таблиц, запросов, форм и отчетов, можно автоматизировать эту операцию путем создания макроса или создания программы Visual Basic для приложений. Это особенно полезно при частом выполнении экспорта баз данных для проверки и построения Web-узла.


 Имена вспомогательных папок страницы доступа к данным, используемые по умолчанию

Имена вспомогательных папок страницы доступа к данным, используемые по умолчанию

При сохранении страницы доступа к данным в режиме конструктора все вспомогательные файлы — такие как маркеры, фоновые текстуры и рисунки — помещаются во вспомогательную папку. По умолчанию этой вспомогательной папке присваивается имя страницы доступа к данным с добавлением символа подчеркивания (_), точки (.) или дефиса (-) и слова «files». Слово «files» будет отображаться на языке той версии Microsoft Office 2000, которая использовалась для сохранения файла в виде страницы доступа к данным. Допустим, например, что для сохранения в виде страницы доступа к данным файла с именем Page1 используется нидерландская версия Office 2000. По умолчанию вспомогательной папке будет присвоено имя Page1_bestanden.

Примечание. Если страница доступа к данным сохраняется с коротким именем файла (не более восьми символов плюс трехсимвольное расширение) после снятия флажка По возможности использовать длинные имена файлов в диалоговом окне Параметры Web-документа, то вспомогательной папке присваивается имя страницы доступа к данным без добавления слова «files».

В следующей таблице показаны переводы слова «files» во всех национальных версиях Office 2000.

Язык версии Office 2000 | Имя вспомогательной папки Web-страниц, используемое по умолчанию
Английский | "_files"
Арабский | ".files"
Баскский | "_fitxategiak"
Болгарский | ".files"
Венгерский | "_elemei"
Вьетнамский | ".files"
Греческий | ".files"
Датский | "-filer"
Иврит | ".files"
Испанский | "_archivos"
Итальянский | "-file"
Каталанский | "_fitxers"
Китайский (традиционное письмо) | ".files"
Китайский (упрощенное письмо) | ".files"
Корейский | ".files"
Латвийский | "_fails"
Литовский | "_bylos"
Немецкий | "-Dateien"
Нидерландский | "_bestanden"
Норвежский | "-filer"
Польский | "_pliki"
Португальский (Бразилия) | "_arquivos"
Португальский (Португалия) | "_ficheiros"
Румынский | ".files"
Русский | ".files"
Сербский (кириллическое письмо) | ".files"
Сербский (латинское письмо) | "_fajlovi"
Словацкий | ".files"
Словенский | "_datoteke"
Тайский | ".files"
Турецкий | "_dosyalar"
Украинский | ".files"
Финский | "_tiedostot"
Французский | "_fichiers"
Хорватский | "_datoteke"
Чешский | "_soubory"
Шведский | "-filer"
Эстонский | "_failid"
Японский | ".files"


 Сохранение копии страницы доступа к данным на Web-сервере с помощью проводника Windows

Сохранение копии страницы доступа к данным на Web-сервере с помощью проводника Windows

  1. В проводнике Windows щелкните правой кнопкой файл, который требуется скопировать или переместить на Web-сервер.

  2. Выберите в контекстном меню команду Копировать.

  3. Дважды щелкните ярлык Web-папки.

  4. В списке папок Web дважды щелкните нужную папку, а затем щелкните правой кнопкой конечную папку, в которой требуется сохранить страницу доступа к данным.

  5. Выберите в контекстном меню команду Вставить.

  6. Если Web-сервер, на котором требуется сохранить страницу доступа к данным, отсутствует в списке, дважды щелкните значок Добавление папки Web в корневом каталоге папок Web, чтобы добавить новую папку Web. Инструкции по созданию папки Web.

Совет. При сохранении страницы доступа к данным все вспомогательные файлы — такие как маркеры, фоновые текстуры и рисунки — по умолчанию помещаются во вспомогательную папку. При перемещении или копировании страницы в другое местоположение необходимо переместить туда же вспомогательную папку, чтобы сохранить все ссылки на странице в рабочем состоянии. См. сведения об управлении файлами и связями в Интернете.


 Сохранение в Access копии страницы доступа к данным на Web-сервере

Сохранение в Access копии страницы доступа к данным на Web-сервере

Существует возможность сохранения копии страницы доступа к данным Microsoft Access на Web-сервере.

  1. В окне базы данных щелкните значок Страницы [image] в списке Объекты.

  2. Дважды щелкните страницу доступа к данным, которую требуется открыть.

  3. Выберите в меню Файл команду Сохранить как.

  4. В поле Сохранение объекта Страница доступа к данным <имя объекта> в введите имя новой страницы доступа к данным.

  5. На панели адресов в диалоговом окне Сохранение в виде страницы доступа к данным щелкните ярлык Web-папки.

  6. В списке папок Web дважды щелкните нужную папку, а затем дважды щелкните подпапку, в которой требуется сохранить страницу доступа к данным.

  7. Нажмите кнопку Сохранить.

Совет. Чтобы быстро создать в Microsoft Access папку Web для существующего расположения на Web-сервере, введите адрес Интернета в поле Имя файла диалогового окна Сохранение в виде страницы доступа к данным (меню Файл страницы). Например, введите http://myserver, чтобы создать папку Web для этого адреса.


 Открытие в Access страницы доступа к данным, находящейся на Web-сервере

Открытие в Access страницы доступа к данным, находящейся на Web-сервере

  1. В окне базы данных щелкните значок Страницы [image] в списке Объекты.

  2. Дважды щелкните ярлык объекта Изменение существующей Web-страницы.

  3. На панели адресов щелкните ярлык Web-папки [image], а затем дважды щелкните папку Web, содержащую страницу доступа к данным, которую требуется открыть.

  4. В списке папок найдите и откройте папку, в которой содержится нужная страница доступа к данным.

  5. Дважды щелкните страницу, которую требуется открыть.

Примечание. Убедитесь, что папка вспомогательных файлов находится в той же самой папке, чтобы сохранить все ссылки в рабочем состоянии. См. рекомендации по управлению файлами и связями в Интернете.

Советы

  • Чтобы быстро открыть страницу доступа к данным на Web-сервере, введите в поле Имя файла адрес страницы, которую требуется открыть, и нажмите клавишу ENTER. Например, введите http://sales/february/Page1.htm, чтобы открыть страницу, созданную в отделе продаж. Если папка Web для адреса http://sales/february еще не существует, она будет автоматически создана при вводе адреса в поле Имя файла.

  • Если отображается панель инструментов Web, можно ввести адрес в поле Адрес, а затем нажать клавишу ENTER для быстрого открытия страницы в обозревателе.


 Собрания по сети

Собрания по сети

Данный раздел содержит справочные сведения по следующим вопросам.

Созыв собрания по сети

Участие в собрании по сети

Совместная работа в ходе собрания по сети

Дополнительные сведения

Интеграция программы Microsoft NetMeeting с Microsoft Office позволяет пользователям, находящимся в разных местах, совместно использовать и обмениваться сведениями в режиме реального времени, как если бы они находились в одной комнате. Инициировать собрание по сети можно из любого приложения Office. (Можно также работать непосредственно в программе NetMeeting. Для этого щелкните NetMeeting в меню Windows Пуск.) При открытии собрания по сети из другого приложения Office программа NetMeeting автоматически запускается в фоновом режиме, что позволяет начать совместное использование содержимого файла. Можно созвать собрание или быть приглашенным на него.

Созыв собрания по сети

Начало собрания. Собрание можно запланировать заранее с помощью Microsoft Outlook (см. справку по Microsoft Outlook) или начать его без подготовки из базы данных Microsoft Access, проекта Microsoft Access или со страницы доступа к данным, с которой требуется работать совместно. Если участники доступны и решают принять приглашение, собрание по сети начинается.

Управление базой данных Access, проектом Access или страницей доступа к данным. В начале собрания по сети управлять базой данных Access, проектом Access или страницей доступа к данным может только организатор собрания, хотя видеть их на своих экранах могут все участники. Пользователь, проводящий собрание, может как разрешить участникам вносить изменения, включив режим совместной работы, так и отключить совместную работу в любое время. Когда совместная работа отключена, другие участники не могут вносить изменения, но могут наблюдать за действиями проводящего собрание. Когда совместная работа включена, все участники собрания по сети могут по очереди выполнять действия по редактированию файла данных Access и управлению им. Когда очередь переходит к одному из пользователей, остальные не могут управлять курсором не только в файле данных Access, но и для других целей. Инициалы активного пользователя отображаются рядом с указателем.

Добавление участников в ходе собрания. Приглашение участников допускается в любое время по ходу уже начатого собрания. Для получения приглашения на незапланированное собрание по сети, на компьютере приглашаемого должна выполняться программа NetMeeting. Инструкции по запуску Microsoft NetMeeting.

Возврат в начало

Участие в собрании по сети

Пользователь, приглашаемый принять участие в собрании по сети, получает сообщение с просьбой присоединиться к предстоящему или уже идущему собранию по сети в указанное время указанной даты. В случае принятия приглашения на экране появляется панель инструментов Собрание по сети, а также база данных Microsoft Access, проект Microsoft Access или страница доступа к данным, с которыми ведется совместная работа.

Возврат в начало

Совместная работа в ходе собрания по сети

В ходе собрания по сети можно совместно работать с приложениями и документами, отправлять текстовые сообщения в приложении Разговор, передавать файлы, а также работать с доской. В режиме совместной работы участники могут управлять базой данных Access, проектом Access или страницей доступа к данным, просматривая и редактируя их содержимое. В каждый момент собрания по сети управлять файлом данных Access может только один пользователь, но если режим совместной работы отключен, то в приложениях «Разговор» и «Доска» могут работать несколько пользователей одновременно. Пользователь, проводящий собрание, является единственным, кому необходимо иметь документ для совместной работы и соответствующее установленное приложение.

Возврат в начало

Дополнительные сведения

Собрания по сети с использованием NetMeeting

Возврат в начало


 Собрания по сети с использованием NetMeeting

Собрания по сети с использованием NetMeeting

Приложение Microsoft NetMeeting предоставляет возможности работы с данными на рабочем столе, позволяющие общаться и совместно работать с другими пользователями в реальном времени через Интернет или интрасети организаций.

Примечание. При первом запуске собрания по сети выводится приглашение выбрать сервер каталогов для подключения. Можно выбрать любой сервер каталогов из списка в поле Имя сервера в группе Каталог. Корпоративные пользователи должны узнать имя сервера каталогов, к которому можно подключиться, у системного администратора.

См. сведения о собраниях по сети.

  1. Начало собрания по сети

    Начало собрания по сети без подготовки

  2. Участие в собрании по сети

    Присоединение к собранию по сети

    Удаление участников с собрания по сети

    Добавление участников в ходе собрания по сети

  3. Способы общения во время собрания по сети

    Управление базой данных Microsoft Access, проектом Microsoft Access или страницей доступа к данным на собрании по сети

    Работа с доской на собрании по сети

    Отправка вводимых сообщений на собрание по сети

  4. Завершение собрания по сети

    Завершение собрания по сети


Запуск NetMeeting

  • В меню Windows Пуск выберите Программы, а затем NetMeeting.


Присоединение к собранию по сети

Выполните одно из следующий действий.

  • При получении оповещения Microsoft Outlook о собрании по сети, которое созвано вами, нажмите кнопку Запустить NetMeeting. Чтобы отклонить запрос на собрание по сети, нажмите кнопку Игнорировать оповещение.

  • При получении оповещения Microsoft Outlook о собрании по сети, на которое вы приглашены в качестве участника, нажмите кнопку Присоединиться к NetMeeting. Чтобы отклонить запрос на собрание по сети, нажмите кнопку Игнорировать оповещение.

  • При получении вызова на собрание по сети нажмите кнопку Принять в диалоговом окне Вызов. Чтобы отклонить собрание по сети, нажмите кнопку Отказать. (Для получения вызова на собрание по сети программа Microsoft NetMeeting должны быть запущена на компьютере.)


 Управление базой данных Access, проектом Access или страницей доступа к данным на собрании по сети

Управление базой данных Access, проектом Access или страницей доступа к данным на собрании по сети

В начале собрания базой данных Microsoft Access, проектом Microsoft Access или страницей доступа к данным управляет пользователь, проводящий собрание. Он может разрешить совместную работу участников собрания или отключить ее в любое время. Когда совместная работа включена, управлять базой данных Access, проектом Access или страницей доступа к данным может любой из участников собрания, но в каждый момент времени управление находится только у одного пользователя. Когда совместная работа отключена, возможна одновременная работа нескольких пользователей в приложениях Разговор или Доска.

Управление базой данных Access, проектом Access или страницей доступа к данным в качестве проводящего собрание

  • Чтобы отключить совместную работу, нажмите кнопку Разрешить совместное редактирование [image] на панели инструментов Собрание по сети.

  • Чтобы вернуть себе управление базой данных Access, проектом Access или страницей доступа к данным при включенной совместной работе, щелкните любое место в файле данных Access.

  • Для отключения совместной работы пользователь, у которого находится управление, должен повторно нажать кнопку Разрешить совместное редактирование, остальные пользуются для этого клавишей ESC.

Управление базой данных Access, проектом Access или страницей доступа к данным в качестве участника собрания

Чтобы получить управление базой данных Access, проектом Access или страницей доступа к данным в первый раз, дважды щелкните любое место в файле данных Access. Впоследствии для получения управления достаточно одного щелчка в любом месте файла данных Access.

Панелью инструментов Собрание по сети может пользоваться только пользователь, проводящий собрание. Пользователь, которому в ходе собрания по сети требуются дополнительные средства Microsoft NetMeeting, должен перейти непосредственно в программу NetMeeting, нажав кнопку Microsoft NetMeeting на панели задач.

Примечание. Инициалы пользователя, к которому перешло управление, отображаются рядом с указателем.


Просмотр списка участников собрания по сети

  • Щелкните список участников на панели инструментов Собрание по сети. Этот список обновляется по мере присоединения или выбывания участников собрания по сети.


 Отправка вводимых сообщений на собрание по сети

Отправка вводимых сообщений на собрание по сети

Окно разговора из Office может открыть только пользователь, проводящий собрание по сети. Участникам собрания для открытия окна разговора необходимо перейти непосредственно в программу Microsoft NetMeeting, нажав кнопку Microsoft NetMeeting на панели задач.

  1. На панели инструментов Собрание по сети нажмите кнопку Отобразить окно разговора [image] .

  2. Введите текст в поле Сообщение и нажмите клавишу Enter.

Совет. Общение в окне разговора происходит быстрее, если совместная работа отключена организатором собрания. Чтобы отключить совместную работу, нажмите кнопку Разрешить совместное редактирование [image] на панели инструментов Собрание по сети (если управление перешло к вам), или нажмите клавишу ESC (если управление находится у другого пользователя).


 Работа с доской на собрании по сети

Работа с доской на собрании по сети

Окно доски из Microsoft Office может открыть только пользователь, проводящий собрание по сети. Участникам собрания, для того чтобы открыть окно доски, необходимо перейти непосредственно в программу Microsoft NetMeeting, нажав кнопку Microsoft NetMeeting на панели задач.

  • На панели инструментов Собрание по сети нажмите кнопку Отобразить доску [image] .

    На экране появится окно доски.

Примечание. Для того, чтобы участники собрания могли одновременно рисовать или писать на доске, проводящий собрание должен отключить совместное использование; то есть пользователь, управляющий базой данных Microsoft Access, проектом Microsoft Access или страницей доступа к данным, должен нажать кнопку Разрешить совместное редактирование [image] на панели инструментов Собрание по сети. Остальные участники используют для этого клавишу ESC.


 Удаление участников с собрания по сети

Удаление участников с собрания по сети

Примечание. Удалять участников собрания по сети может только организатор этого собрания.

  1. На панели инструментов Собрание по сети выделите имя пользователя, которого требуется удалить из списка участников.

  2. Нажмите кнопку Удалить участников [image] .


 Завершение собрания по сети

Завершение собрания по сети

  • Нажмите кнопку Завершить собрание [image] на панели инструментов Собрание по сети.

Примечание. Единственным пользователем, способным завершить собрание по сети для всей группы, является организатор собрания. Участники собрания по сети могут отключиться в любое время, нажав кнопку Microsoft NetMeeting на панели задач, а затем кнопку Завершить сеанс связи на панели инструментов NetMeeting. При закрытии собрания по сети его организатором другие участники автоматически отключаются друг от друга.


 Подключение к серверам каталогов NetMeeting

Подключение к серверам каталогов NetMeeting

При первом запуске собрания по сети выводится приглашение выбрать сервер каталогов для подключения. Можно выбрать любой сервер каталогов из списка в поле Имя сервера в группе Каталог. Корпоративные пользователи должны узнать имя сервера каталогов, к которому можно подключиться, у системного администратора.


 Снимки отчетов и программа «Просмотр снимков»

Снимки отчетов и программа «Просмотр снимков»

Отчеты, создаваемые в Microsoft Access, можно просматривать, печатать, пересылать по почте и распространять в электронном виде без необходимости в наличии полной или временной лицензии Microsoft Access. Данный раздел содержит справочные сведения по следующим вопросам.

Что такое снимок отчета?

Что такое программа «Просмотр отчета»?

Преимущества снимков отчетов и программы «Просмотр снимков»

Использование снимков отчетов

Использование снимков отчетов в Web

Пересылка снимков отчетов по электронной почте

Создание и распространение снимков отчетов

Дополнительные сведения

Возврат в начало

Что такое снимок отчета?

Снимок отчета представляет собой файл (с расширением имени .snp), содержащий копию каждой страницы отчета Microsoft Access с высокой точностью воспроизведения, в том числе с воспроизведением двумерного макета, графики и других внедренных объектов.

Возврат в начало

Что такое программа «Просмотр отчета»?

«Просмотр снимков» — это программа, которой можно пользоваться для просмотра, печати и пересылки по почте снимков, например, снимков отчетов. Приложение Snapshot Viewer 9.0 состоит из отдельной исполняемой программы, элемента управления для просмотра снимков (Snapview.ocx), файла справки и других вспомогательных файлов. По умолчанию программа «Просмотр снимков» автоматически устанавливается средствами Microsoft Access 2000 при первом создании снимка отчета. Также возможна установка программы «Просмотр снимков» с помощью программы установки или с Web-страницы загрузки программного обеспечения, находящейся на Web-узле разработчика Microsoft Access.

Элемент управления просмотром снимков можно использовать для просмотра снимков из Microsoft Internet Explorer 3.0 или более поздней версии, а также из любых приложений, поддерживающих элементы ActiveX, таких как Microsoft Access или Microsoft Visual Basic для приложений.

Возврат в начало

Преимущества снимков отчетов и программы «Просмотр снимков»

При печати и распространении отчетов среди пользователей в составе и за пределами организации использование снимков отчетов может дать существенную экономию времени и денег. Вместо фотографирования и отправки по почте отпечатанных отчетов Microsoft Access их можно распространять и публиковать в электронном виде с помощью электронной почты или Web-обозревателя, такого как Microsoft Internet Explorer. Пользователи могут легко и быстро просматривать отчеты на экране и печатать только нужные им страницы. Это особенно полезно, если отчеты содержат цвет и изображения, такие как диаграммы и рисунки.

Возврат в начало

Использование снимков отчетов

Для создания снимка отчета используется Microsoft Access 2000. Однако для просмотра, печати, хранения, публикации, распространения и архивирования снимков отчетов не требуется лицензия Access. Достаточно иметь программу «Просмотр снимков» в сочетании с такими программами как проводник Windows, программа электронной почты или Web-обозреватель, например, Internet Explorer.

Возврат в начало

Использование снимков отчетов в Web

Существует два способа публикации снимка отчета в Web.

  • Создайте ссылку на снимок отчета, используя тег HTML. Пример:
    <A HREF="http://Website/WebReports/catalog.snp">Отчет Каталог</A>

    Если в качестве Web-обозревателя используется Internet Explorer версии 3.0 или более поздней, то по щелчку ссылки активизация снимка отчета и программы «Просмотр снимков» выполняется на месте, в окне Internet Explorer. Другие обозреватели открывают снимок отчета в отдельном окне программы «Просмотр снимков». В любом случае программа «Просмотр снимков» должна быть установлена на том же компьютере, что и обозреватель. Поэтому неплохо предоставить на Web-странице дополнительную ссылку для загрузки программы «Просмотр снимков» с Web-страницы загрузки программного обеспечения. Это позволит пользователям, на компьютерах которых не установлена программа «Просмотр снимков», загрузить и установить эту программу для просмотра отчета.

  • Поместите элемент управления для просмотра снимков на Web-страницу с помощью тега HTML Object. Пример:
    <OBJECT ID="SnapshotViewer" WIDTH=640 HEIGHT=480
 CLASSID="CLSID:F0E42D60-368C-11D0-AD81-00A0C90DC8D9">
    <PARAM NAME="_ExtentX" VALUE="16722">
    <PARAM NAME="_ExtentY" VALUE="11774">
    <PARAM NAME="_Version" VALUE="65536">
    <PARAM NAME="SnapshotPath"
 VALUE="http://Website/NWTraders/catalog.snp">
    <PARAM NAME="Zoom" VALUE="0">
    <PARAM NAME="AllowContextMenu" VALUE="-1">
    <PARAM NAME="ShowNavigationButtons" VALUE="-1">
</OBJECT>

    Можно внедрить элемент управления для просмотра снимков с помощью приложения Microsoft ActiveX Control Pad и задать его параметры с помощью редактора Control Pad Object Editor.

    Этот способ можно использовать только при наличии Internet Explorer версии 3.0 или более поздней. В этом случае, если программа «Просмотр снимков» установлена на тома же компьютере, что и обозреватель, Internet Explorer автоматически загружает элемент ActiveX программы «Просмотр снимков» (но не всю программу целиком).

Возврат в начало

Пересылка снимков отчетов по электронной почте

Снимок отчета можно переслать по электронной почте с помощью программы «Просмотр снимков» или Microsoft Access. Кроме того, можно внедрить снимок в сообщение электронной почты в виде ярлыка или файла. Для этого используется программа электронной почты, поддерживающая элементы управления ActiveX, например, Microsoft Outlook или Microsoft Exchange. При отправке снимка отчета по электронной почте рекомендуется всегда включать ссылку для загрузки программы «просмотр снимков» со страницы загрузки программного обеспечения.

Дополнительные сведения по пересылке снимков отчетов в сообщениях электронной почты

Возврат в начало

Создание и распространение снимков отчетов

Как правило, деловые приложения создают и распространяют отчеты не только по запросу, но и по расписанию в соответствии с регулярными деловыми циклами, например, еженедельные биржевые сводки, ежемесячные отчеты по продажам или ежеквартальные финансовые документы.

В Microsoft Access 2000 создание и распространение снимков отчетов можно запрограммировать несколькими способами. Например:

  • Создайте макрос, использующий макрокоманду «ВывестиВФормате» для экспорта одного или более отчетов в формате снимка на Web-сервер, используемый для публикации отчетов .

  • Создайте макрос, использующий макрокоманду «ОтправитьОбъект» для отправки отчета адресату или по списку рассылки.

  • Создайте программу на Visual Basic для приложений.

Возврат в начало

Дополнительные сведения

Создание снимка отчета

Возврат в начало


Создание снимка отчета

  1. В окне базы данных щелкните экспортируемый отчет и выберите в меню Файл команду Экспорт.

  2. В поле со списком Тип файла выберите значение Снимок (*.snp).

  3. В поле со списком Папка выберите диск и папку для экспорта.

  4. В поле Имя файла введите имя файла.

  5. Нажмите кнопку Сохранить.

    По умолчанию снимок отчета открывается в программе «Просмотр снимков». Если снимок отчета создается в первый раз, а компонент «Просмотр снимков» не был изначально установлен, Microsoft Access автоматически установит его.

Примечания

  • Снимок отчета основан на наборе записей, по которым строится отчет, с учетом текущих значений свойств Порядок сортировки (OrderBy) и Фильтр (Filter).

  • Если отчет содержит запрос с параметрами, Access сначала запросит значения параметров и только затем выведет результаты.

  • Для экспорта отчета в формат снимка можно также использовать макрокоманду ВывестиВФормате (OutputTo).


 Создание снимка отчета с помощью макрокоманды «ВывестиВФормате» (OutputTo) и опубликование его в Web

Создание снимка отчета с помощью макрокоманды «ВывестиВФормате» (OutputTo) и опубликование его в Web

  1. Создайте макрос, содержащий одну или несколько макрокоманд «ВывестиВФормате» (OutputTo) — по одной макрокоманде на каждый отчет, экспортируемый в формат снимка отчета. Пример:

    Макрос Snapshot

    Макрокоманда | Аргумент | Значение
    ВывестиВФормате (OutputTo) | Тип объекта | Отчет
    Имя объекта | Каталог
    Формат вывода | Снимок
    Имя файла | \\Website\Inetpub\wwwroot\Webreports\Catalog.snp *
    Автозагрузка | Нет

    * Экспорт прямо в папку Web-сервера.

  2. На основной странице Web-узла выполните одно из следующих действий:
    • Создайте ссылку на каждый снимок отчета с помощью тега HTML. Пример:
      <A HREF="http://Website/WebReports/catalog.snp">Отчет Каталог</A>
    • Поместите элемент управления Snapshot Viewer в тег HTML Object с помощью приложения Microsoft ActiveX Control Pad и задайте свойства этого элемента управления в Control Pad Object Editor (этот способ работает только при использовании обозревателя Microsoft Internet Explorer версии 3.0 или более поздней). Пример:
      <OBJECT ID="SnapshotViewer" WIDTH=640 HEIGHT=480
 CLASSID="CLSID:F0E42D60-368C-11D0-AD81-00A0C90DC8D9">
    <PARAM NAME="_ExtentX" VALUE="16722">
    <PARAM NAME="_ExtentY" VALUE="11774">
    <PARAM NAME="_Version" VALUE="65536">
    <PARAM NAME="SnapshotPath"
 VALUE="http://Website/WebReports/catalog.snp">
    <PARAM NAME="Zoom" VALUE="0">
    <PARAM NAME="AllowContextMenu" VALUE="-1">
    <PARAM NAME="ShowNavigationButtons" VALUE="-1">
</OBJECT>

Примечания

  • Если отчет основан на запросе с параметрами, нужно модифицировать макрос для работы в пакетном файле. Для передачи параметров можно использовать макрокоманду «КомандыКлавиатуры» (SendKeys); либо можно изменить отчет, убрав из него запрос с параметрами и явно определив условия отбора.

  • Для выполнения этой задачи можно также создать программу на Visual Basic для приложений (VBA).


 Отправка снимка отчета по электронной почте с помощью макрокоманды «ОтправитьОбъект» (SendObject)

Отправка снимка отчета по электронной почте с помощью макрокоманды «ОтправитьОбъект» (SendObject)

  • Создайте макрос, содержащий макрокоманду «ОтправитьОбъект» (SendObject). Пример:

Макрос «Отправка снимка»

Макрокоманда | Аргумент | Значение
ОтправитьОбъект (SendObject) | Тип объекта | Отчет
 | Имя объекта | Квартальный отчет о продажах
 | Формат вывода | Снимок
 | Кому | Менеджеры; Акционеры
 | Копии |
 | Скрытые копии |
 | Тема | Квартальный отчет о продажах
 | Сообщение | Это наш лучший квартал за несколько лет!
 | Изменение сообщения | Нет

Примечания

  • В зависимости от настроек программа электронной почты может требовать ручного входа и ввода информации, что не позволит отправить снимок отчета программным путем. Например, Microsoft Outlook может при входе в него запрашивать профиль пользователя. В таком случае нужно изменить настройку программы электронной почты.

  • Для выполнения этой задачи можно также создать программу на Visual Basic для приложений (VBA).


 Защита базы данных Microsoft Access

Защита базы данных Microsoft Access

Данный раздел содержит справочные сведения по следующим вопросам.

Защита файла базы данных Microsoft Access

Защита объектов базы данных на уровне пользователей

Защита программы на языке Visual Basic для приложений (VBA)

Защита страниц доступа к данным

Защита приложения

Защита в многопользовательской среде

Возврат в начало

Защита файла базы данных Microsoft Access

Простейшим способом защиты является установка пароля для открытия базы данных (.mdb). После установки пароля при каждом открытии базы данных будет появляться диалоговое окно, в которое требуется ввести пароль. Только те пользователи, которые введут правильный пароль, смогут открыть базу данных. Этот способ достаточно надежен (Microsoft Access шифрует пароль, поэтому к нему нет доступа при непосредственном чтении файла базы данных), но он действует только при открытии базы данных. После открытия базы данных все объекты становятся доступными для пользователя (пока не определены другие типы защиты, описанные ниже в этом разделе). Для базы данных, которая совместно используется небольшой группой пользователей или на автономном компьютере, обычно оказывается достаточно установки пароля.

Внимание! Не используйте пароль базы данных, если предполагается выполнять репликацию базы данных. Реплицированные базы данных не могут быть синхронизированы, если установлен пароль базы данных.

База данных может быть зашифрована. При шифровании базы данных ее файл сжимается и становится недоступным для чтения с помощью служебных программ или текстовых редакторов. Дешифрование базы данных отменяет результаты операции шифрования.

Возврат в начало

Защита объектов базы данных на уровне пользователей

Наиболее гибкий и распространенный способ защиты базы данных называется защитой на уровне пользователей. Этот способ защиты подобен способам, используемым в большинстве сетевых систем. Двумя основными причинами использования защиты на уровне пользователей являются:

  • защита приложения от повреждения из-за неумышленного изменения пользователями таблиц, запросов, форм, отчетов и макросов, от которых зависит работа приложения;

  • защита конфиденциальных сведений в базе данных.

При запуске Microsoft Access от пользователя требуется идентифицировать себя и ввести пароль. Внутри файла рабочей группы пользователи идентифицируются как члены группы. Microsoft Access по умолчанию создает две группы: администраторы (группа «Admins») и пользователи (группа «Users»). Допускается также определение других групп.

Хотя установка защиты на уровне пользователей для большинства баз данных является сложной задачей, мастер защиты позволит быстро и легко защитить базу данных Access. Более того, благодаря использованию общих схем защиты, мастер позволяет уменьшить или даже вообще исключить необходимость использования команды Защита в меню Сервис.

После запуска мастера защиты могут быть назначены и удалены разрешения на доступ для пользователя и учетные записи групп в рабочей группе для базы данных и ее существующих таблиц, запросов, форм, отчетов и макросов. Также могут быть установлены разрешения на доступ, присваиваемые вновь создаваемым объектам базы данных по умолчанию.

Группам и пользователям предоставляются разрешения на доступ, определяющие возможность их доступа к каждому объекту базы данных. Например, члены группы «Users» могут иметь разрешения на просмотр, ввод или изменение данных в таблице «Клиенты», но им не будет разрешено изменять структуру этой таблицы. Группа «Users» может быть допущена только к просмотру данных в таблице, содержащей сведения о заказах, и не иметь доступа к таблице «Платежная ведомость». Члены группы «Admins» имеют разрешения на доступ ко всем объектам базы данных. Имеется возможность установить более разветвленную структуру управления, создавая собственные учетные записи групп, предоставляя этим группам соответствующие разрешения и добавляя пользователей в группы.

Если для системы защиты достаточно группы администраторов и группы пользователей, то нет необходимости создавать группы. Можно воспользоваться стандартными группами «Admins» и «Users». В этом случае необходимо присвоить соответствующие разрешения на доступ стандартной группе «Users» и добавить дополнительных администраторов в стандартную группу «Admins». Каждый новый пользователь автоматически добавляется в группу «Users». Типовые разрешения на доступ для группы «Users» могут включать «Чтение данных» и «Обновление данных» для таблиц и запросов и «Открытие/запуск» для форм и отчетов

В случае необходимости более разветвленной структуры управления для различных групп пользователей, имеется возможность создания новых групп, присвоения группам различных наборов разрешений на доступ и добавления новых пользователей в соответствующие группы. Для упрощения управления разрешениями на доступ рекомендуется присваивать разрешения на доступ только группам (а не отдельным пользователям), а затем добавлять пользователей в соответствующие группы

Примечание. Для получения дополнительных сведений о системе защиты Microsoft Access см. Microsoft Office 2000/Visual Basic Programmer's Guide.

Возврат в начало

Защита программы на языке Visual Basic для приложений (VBA)

Модуль с программой на языке Microsoft Visual Basic для приложений (VBA) может быть защищен паролем, который вводится один раз за сеанс. Пароль не позволяет несанкционированным пользователям редактировать, копировать, экспортировать, удалять программу VBA, а также вырезать из нее и вставлять в нее фрагменты текста.

Из базы данных может быть удален редактируемый текст программы VBA, что позволит защитить вашу интеллектуальную собственность. Для предотвращения изменения макетов форм, отчетов, а также модулей, их следует сохранить в виде файла MDE.

См. сведения о защите программ VBA.

Возврат в начало

Защита страниц доступа к данным

Для защиты страницы доступа к данным и данных, к которым она обращается, выполните следующие действия:

  • Защитите базу данных Access, содержащую ярлык на страницу доступа к данным, и соответствующий файл HTML с помощью файловой системы компьютера, на котором эти файлы хранятся.

  • Защитите базу данных, соединенную со страницей доступа к данным, от несанкционированных пользователей, управляя уровнем доступа при подключении пользователя, и не храните пароль базы данных вместе со страницей доступа к данным.

  • Запретите несанкционированный доступ со стороны злоумышленных программ Visual Basic с помощью параметров защиты Microsoft Internet Explorer и трехуровневого доступа к данным.

См. информацию о защите страниц доступа к данным.

Возврат в начало

Защита приложения

Можно защитить приложение от случайного или умышленного повреждения конечными пользователями, скрыв объекты базы данных в окне базы данных. Для управления внешним видом и поведением приложения, а также защиты меню и панелей команд используйте параметры запуска приложения.

Возврат в начало

Защита в многопользовательской среде

Защита базы данных в многопользовательской среде содержит три аспекта. Во-первых, запрещение репликации базы данных пользователями. Репликация базы данных позволяет пользователю делать копию общей базы данных, а также добавлять поля и вносить другие изменения в текущую базу данных. Во-вторых, запрет на установку и изменение пароля базы данных. Если на общую базу поставлен пароль, то никто другой, не зная пароля, не сможет открыть базу данных. В-третьих, защита от изменений параметров запуска, которые определяют такие свойства, как настраиваемые меню, настраиваемые панели инструментов и стартовую форму.

Если общая база данных не имеет защиты на уровне пользователей, невозможно запретить пользователям вносить подобные изменения. Мастер защиты устанавливает для базы данных защиту на уровне пользователей, что позволяет управлять доступом к определенным средствам и определять, каким образом объекты базы данных могут быть использованы. При установке защиты на уровне пользователей пользователь или группа для репликации базы данных, установления пароля базы данных и изменения параметров запуска должны иметь такое же разрешение на доступ, как и администратор. После запуска мастера защиты только члены группы «Admins» текущей рабочей группы имеют полномочия администратора.

Если защита на уровне пользователей уже установлена и пользователь или группа имеют в настоящий момент разрешение на доступ к базе данных, соответствующее полномочиям администратора, удаление разрешения запретит пользователю или группе внесение изменений. Можно присвоить соответствующее разрешение на доступ пользователю или группе, что позволит им выполнять эти задачи. Невозможно независимо управлять доступностью каждой из задач.

Возврат в начало


 Защита страниц доступа к данным

Защита страниц доступа к данным

Данный раздел содержит справочные сведения по следующим вопросам.

Защита ярлыка страницы доступа к данным и соответствующего файла HTML

Защита и управление доступом к базе данных со страницы доступа к данным

Предотвращение несанкционированного доступа из недобросовестных сценариев

Защита ярлыка страницы доступа к данным и соответствующего файла HTML

Страница доступа к данным представляет собой сочетание ярлыка, хранящегося в файле базы данных Microsoft Access (.mdb) или проекта Microsoft Access (.adp), и соответствующего файла на языке HTML (Hypertext Markup Language), расположенного в файловой системе компьютера. Для защиты ярлыка страницы и соответствующего файла HTML от переименования, удаления или изменения используется защита файловой системы компьтера, на котором хранятся эти файлы. Например, на локальном компьютере можно сделать файл базы данных Access или проекта Access, в котором содержится ярлык страницы, доступным только для чтения, а на Web-сервере, где расположен соответствующий файл HTML (после опубликования страницы), можно сделать доступными только для чтения этот файл и папку, в которой он расположен. Дополнительные сведения о защите файлов и папок см. в справке Microsoft Windows.

Возврат в начало

Защита и управление доступом к базе данных со страницы доступа к данным

При необходимости обеспечить безопасный доступ к базе данных Access или Microsoft SQL Server, к которой подключена страница, учтите следующее.

Защитите базу данных. Страницу можно подключить к базе данных Access или к базе данных SQL Server. В качестве основы для защиты доступа через страницу к любой из этих баз данных следует установить адекватную защиту самой базы данных. Как и для любого приложения, необходимо предотвращать несанкционированный доступ к базе данных, а также управлять уровнем доступа зарегистрированных пользователей.

  • Для базы данных Access, если она защищена на уровне пользователей и требуется применить защиту на уровне пользователей при доступе через страницу, необходимо убедиться, что в сведениях о подключении страницы указан правильный файл рабочей группы, расположенный на общем сетевом диске и доступный для всех пользователей. Измените подключение к странице в диалоговом окне Data Link Properties на вкладке All, дважды щелкнув Jet OLEDB:System database, а затем указав путь UNC к нужному файлу рабочей группы в поле Property Value. См. сведения о защите баз данных Access.

    Если для подключенной к странице базы данных Access установлен пароль базы данных, он запрашивается при первом просмотре страницы.

  • Для базы данных SQL Server, если для подключения со страницы требуется использовать интегрированную защиту Windows NT, измените подключение к странице в диалоговом окне Data Link Properties на вкладке Connection, а затем установив переключатель в положение Use Windows NT Integrated security. См. сведения о защите баз данных SQL Server.

Не сохраняйте имя пользователя и пароль вместе со страницей. Если имя пользователя и пароль для доступа к базе данных сохранены вместе со страницей, к базе данных сможет подключиться любой пользователь. Если требуется, чтобы на странице пользователю предлагалось войти в базу данных, измените подключение к странице в диалоговом окне Data Link Properties на вкладке Connection, сняв флажок Allow saving of password.

Задайте возврат записей на основе имени пользователя. Может потребоваться создание страницы, которая не требует ввода имени пользователя и пароля, а автоматически определяет пользователя и отображает записи в зависимости от его имени. Например, можно создать страницу, разрешающую пользователям изменять собственные личные дела. Для этого следует выполнить следующие основные шаги.

  • Создайте страницу в проекте Access, подключенном к базе данных SQL Server, защищенной интегрированными средствами Microsoft Windows NT.

  • Добавьте в таблицу сотрудников столбец, содержащий для каждого сотрудника имя пользователя для входа в Windows NT.

  • Создайте представление, использующее функцию suser_sname() для определения текущего регистрирующегося пользователя и сделайте это представление источником записей для страницы.

Подробный пример выполнения этой процедуры см. в книге Руководство программиста по Visual Basic для Microsoft Office 2000.

Возврат в начало

Предотвращение несанкционированного доступа из недобросовестных сценариев

Для подключения к своему источнику данных страница использует MSODSC (Microsoft Office Data Source Control). Когда пользователь открывает страницу, элемент MSODSC на этой странице может использовать указанное пользователем имя пользователя для входа в базу данных. Недобросовестный автор страниц может использовать это в своих интересах, запустив против MSODSC сценарий на языке Microsoft Visual Basic, Scripting Edition или JScript с целью получения доступа к базам данных на серверах, доступных для пользователя, но не для автора страницы. Режим доступа к данным, используемый MSODSC, определяет, считается ли страница безопасной по своей природе, или с нее возможен междоменный доступ к данным. Существует возможность настройки MSODSC на использование двух режимов доступа к данным: двух- или трехъярусного доступа к данным.

Двухъярусный доступ к данным представляет собой прямое подключение к источнику данных традиционным для архитектуры клиент/сервер образом — клиент (первый ярус) устанавливает прямое подключение к серверу баз данных (второй ярус). Для осуществления двухъярусного доступа к данным MSODSC выполняет прямое подключение к своему источнику данных через средство доступа OLE DB, который зарегистрирован на компьютере пользователя. Для баз данных Access двухъярусный доступ к данным использует средство доступа Microsoft Jet 4.0 OLE DB локального компьютера для подключения к файлу .mdb, расположенному на сетевом диске. Для баз данных SQL Server двухъярусный доступ к данным использует средство доступа Microsoft OLE DB для SQL Server локального компьютера для подключения к серверу баз данных, доступному в локальной сети.

Трехъярусный доступ к данным подразумевает использование третьего, удаленного компонента между клиентом и базой данных. Трехъярусный доступ к данным обычно используется для доступа к данным через Интернет. Для трехъярусного доступа с использованием MSODSC третьим компонентом являются объекты данных ActiveX (ADO) удаленной службы данных Remote Data Service (RDS), также называемый Data Factory, выполняемый на сервере IIS (Microsoft Internet Information Server).

Все страницы, использующие двухъярусный доступ к данным, рассматриваются Microsoft Internet Explorer как выполняющие попытки междоменного доступа. В зависимости от настроек безопасности в Internet Explorer, при открытии пользователем страницы с применением двухъярусного доступа к данным происходит одно из трех: страница автоматически отключается, пользователю выдается вопрос о необходимости разрешения доступа к данным, либо страница автоматически подключается.

Настройки безопасности Internet Explorer также определяют зоны безопасности. Если страница расположена на Web-сервере, находящемся в доверенной зоне, междоменный доступ может быть задействован автоматически. В управляемой среде, такой как интрасеть организации, страницы работают лучше при использовании двухъярусного доступа к данным и публикации страниц с сервера, находящегося в доверенной зоне безопасности. Это простейший способ обеспечения защиты от несанкционированного доступа из недобросовестных сценариев. Дополнительные сведения о настройках безопасности см. в справочной системе Internet Explorer.

Страница, использующая для подключения к базе данных трехъярусный доступ, считается безопасной, независимо от того, из какой зоны безопасности Internet Explorer она опубликована. При открытии такой страницы пользователь не получает предупреждений о попытках междоменного доступа к данным, если для параметров проверки подлинности оставлены значения по умолчанию.

Сведения о применении двух- и трехъярусного доступа см. в книге Руководство программиста по Visual Basic для Microsoft Office 2000.

Возврат в начало


Обеспечение защиты на уровне пользователей для отдельной базы данных Microsoft Access

Когда пользователи присоединяются к рабочей группе Microsoft Access с помощью администратора рабочих групп, расположение файла рабочей группы сохраняется в реестре Windows, благодаря чему во многих случаях все базы данных Access на компьютерах пользователей используют защиту на уровне пользователей, основанную на этом файле рабочей группы.

Однако может потребоваться использование защиты на уровне пользователей для конкретной базы данных без защиты других баз данных. Для этого пользователям следует не присоединяться к рабочей группе Microsoft Access с помощью администратора рабочих групп, а выполнить следующие шаги.

  1. Создать файл рабочей группы и сохранить его в расположении, доступном для всех пользователей данной конкретной базы данных.

  2. Создать ярлык, запускающий эту базу данных с использованием параметра командной строки /wrkgrp для указания расположения файла рабочей группы. Например:

    "C:\Program Files\Microsoft Office\Office\MSACCESS.EXE \\SalesSystem\DBFiles\SalesS.mdb /wrkgrp \\SalesSystem\DBFiles\SalesS.mdw"

    Дополнительные сведения о создании ярлыков см. в справочной системе Windows.


 Защита программ Visual Basic для приложений (VBA)

Защита программ Visual Basic для приложений (VBA)

Данный раздел содержит справочные сведения по следующим вопросам.

Защита программы на языке Visual Basic для приложений (VBA)

Модули, формы, отчеты и защита на уровне пользователя

Защита программы на языке Visual Basic для приложений (VBA)

В проекте Microsoft Access и базе данных Microsoft Access существует возможность защиты всех модулей, а также модулей форм и отчетов путем защиты программ VBA паролем, который необходимо ввести для просмотра и редактирования программы VBA в редакторе Visual Basic. Когда пароль установлен, его достаточно ввести один раз за сеанс. Пароль требуется не только для просмотра и редактирования, но также и для вырезания, копирования, вставки, экспорта и удаления любого модуля. Тем не менее, такая защита программы VBA не препятствует запуску существующих программ VBA.

Возврат в начало

Модули, формы, отчеты и защита на уровне пользователя

В базах данных Microsoft Access 2000 для модулей в формах и отчетах больше не применяется защита на уровне пользователя, как было в предыдущих версиях. Однако формы и отчеты по-прежнему могут быть защищены на уровне пользователя. Это означает, что механизм защиты модулей отличается от механизма защиты форм и отчетов.

Например, при наличии соответствующих разрешений пользователь может добавлять элементы управления в форму, но если проект VBA заблокирован для просмотра и защищен паролем, который пользователю не известен, то пользователь не сможет просмотреть или изменить модуль, используемый для формы. И наоборот, доступ к структуре формы или отчета может быть закрыт на уровне пользователя по причине отсутствия разрешения «Изменение макета», но, зная пароль для проекта VBA, можно получить доступ к модулю, используемому в форме или отчете.

Существует одно исключение. Даже имея разрешение «Изменение макета» для формы или отчета, пользователь не может удалить форму или отчет или установить для свойства Наличие модуля (HasModule) значение «Нет», поскольку это приведет к удалению модуля, применяемого в данной форме или отчете.

Возврат в начало


 Общие сведения о MDE-файлах

Общие сведения о MDE-файлах

Если база данных содержит программы Microsoft Visual Basic, то при сохранении этой базы данных Microsoft Access в виде MDE-файла будут скомпилированы все модули, удалены все изменяемые исходные программы, а конечная база данных будет сжата. Программы Visual Basic будут по-прежнему выполняться, но их нельзя будет просматривать или изменять, благодаря чему уменьшится размер базы данных. Кроме того, будет оптимизировано использование памяти, что повысит быстродействие.

Сохранение базы данных как MDE-файла делает невозможным выполнение следующих действий.

  • Просмотр, изменение или создание форм, отчетов или модулей в режиме конструктора.

  • Добавление, удаление или изменение ссылок на библиотеки объектов или базы данных.

  • Изменение программы с помощью свойств или методов Microsoft Access или модели объектов VBA (MDE-файл не содержит текстов исходных программ).

  • Импорт и экспорт форм, отчетов или модулей. Однако таблицы, запросы, страницы доступа к данным и макросы можно импортировать и экспортировать в базы данных, не являющиеся MDE-файлами. Любые таблицы, запросы, страницы доступа к данным или макросы в базах данных, являющихся MDE-файлами, могут быть импортированы в другую базу данных Access, но формы, отчеты или модули не импортируются.

Внимание! Обязательно сохраните копию исходной базы данных Access. В базе данных Access, сохраненной как MDE-файл, нельзя изменять структуру форм, отчетов или модулей. Чтобы изменить структуру этих объектов, следует сделать это в исходной базе данных, а затем снова сохранить ее как MDE-файл. При сохранении в виде MDE-файла базы данных, содержащей таблицы, возникают сложности согласования различных версий данных в случае последующего изменения структуры форм, отчетов или модулей. Поэтому сохранение базы данных как MDE-файла более всего подходит для клиентских частей приложений, состоящих из клиентской и серверной частей.

Внимание! В будущих версиях Microsoft Access открывать, преобразовывать или выполнять программы в MDE-файлах Microsoft Access 2000 будет невозможно. Единственным способом преобразования MDE-файла Microsoft Access 2000 в формат будущих версий будет открытие исходной базы данных Access, в которой был создан MDE-файл, ее преобразование и последующее сохранение преобразованной базы данных Access в виде MDE-файла.

Важно! Существует ряд ограничений, которые могут сделать сохранение базы данных в виде MDE-файла невозможным.

  • Если база данных Access защищена на уровне пользователя, необходимо соблюдение некоторых условий. См. сведения об использовании других форм защиты для баз данных Access, сохраняемых в виде MDE-файла.

  • Программа на языке Visual Basic должна быть защищена паролем. См. сведения о защите программ Visual Basic.

  • Если база данных реплицирована, необходимо сначала удалить таблицы и свойства системы репликации.

  • Если база данных Access ссылается на другую базу данных или надстройку, необходимо сохранить все базы данных или надстройки, входящие в цепочку ссылок, как MDE-файлы.


 Ссылки и MDE-файлы

Ссылки и MDE-файлы

При попытке сохранения в качестве MDE-файла базы данных Microsoft Access (.mdb) или надстройки (.mda), содержащей ссылки на другую базу данных Access или надстройку, появляется сообщение об ошибке, и операцию завершить не представляется возможным. Чтобы сохранить в качестве MDE-файла базу данных, содержащую ссылки на другую базу данных, необходимо сохранить как MDE-файлы все базы данных, входящие в цепочку ссылок, начиная с базы данных, на которую происходит первая ссылка. После сохранения первой базы данных как MDE-файла необходимо обновить ссылку в следующей базе данных перед ее сохранением ее как MDE-файла, указав имя нового MDE-файла, и т.д.

Например, если база данных Database1.mdb содержит ссылку на базу данных Database2.mdb, которая в свою очередь ссылается на базу данных Database3.mda, необходимо выполнить следующие действия.

  1. Сохраните файл Database3.mda как Database3.mde.

  2. Откройте файл Database2.mdb и измените ссылку, указав в ней файл Database3.mde.

  3. Сохраните файл Database2.mdb как Database2.mde.

  4. Откройте файл Database1.mdb и измените ссылку, указав в ней файл Database2.mde.

  5. Сохраните файл Database1.mdb как Database1.mde.


 Сохранение реплицированной базы данных Microsoft Access в виде MDE-файла

Сохранение реплицированной базы данных Microsoft Access в виде MDE-файла

Реплицированная база данных (как реплика, так и основная реплика) не могут быть сохранены как MDE-файл. Для сохранения реплицированной базы данных как MDE-файла необходимо сначала удалить таблицы и свойства системы репликации. См. сведения об удалении компонентов системы репликации.

После сохранения базы данных как MDE-файла она может быть реплицирована; однако это рекомендуется только в ситуациях, когда не планируется дальнейшее изменение исходной базы данных. В основной реплике MDE-файла нельзя изменить структуру форм, отчетов или программ, и изменения структуры, сделанные в исходной базе данных, не могут быть синхронизированы с ранее существовавшими репликами MDE. Поэтому для внесения структурных изменений в реплику MDE-файла необходимо выполнить их в исходной базе данных, затем заново сохранить ее как MDE-файл и создать новую реплику из нового MDE-файла.


 Рабочая группа Microsoft Access: общие сведения

Рабочая группа Microsoft Access: общие сведения

Рабочая группа Microsoft Access — это группа пользователей, которые совместно используют данные в многопользовательской среде. Если определена защита на уровне пользователя, члены рабочей группы регистрируются с помощью учетных записей пользователей и групп, которые сохраняются в файле рабочей группы Microsoft Access. Пароли пользователей также запоминаются в файле рабочей группы. Этим учетным записям системы защиты могут быть предоставлены разрешения на доступ к базе данных и ее таблицам, запросам, формам, отчетам и макросам. Сами разрешения сохраняются в защищенной базе данных.

В Microsoft Access 2000 пользовательские настройки сохраняются в реестре Windows в разделе \Hkey_Current_User\Software\Microsoft\Office\9.0\Access\Settings. В предыдущих версиях Microsoft Access общие параметры, определенные пользователем в диалоговом окне Параметры, записывались в файл рабочей группы.

Стандартная рабочая группа определяется файлом рабочей группы, который автоматически создается программой установки в папке языка. Если не указать другой файл рабочей группы с помощью программы администратора рабочих групп, Microsoft Access будет использовать стандартный файл рабочей группы при каждом запуске Microsoft Access. Администратор рабочих групп можно также использовать для создания новых файлов рабочих групп Microsoft Access.

Прежде чем создавать учетные записи системы защиты, следует выбрать файл рабочей группы Microsoft Access, в котором эти учетные записи будут сохраняться. Можно использовать стандартный файл рабочей группы, определить другой файл или создать новый. Для большей уверенности в том, что рабочая группа и ее разрешения на доступ не могут быть скопированы, не следует использовать стандартный файл рабочей группы; необходимо убедиться, что выбранный файл рабочей группы создан с уникальным кодом рабочей группы. Если такого файла рабочей группы не существует, следует создать его с помощью администратора рабочих групп.


 Способы доступа пользователей к защищенному приложению и рабочей группе

Способы доступа пользователей к защищенному приложению и рабочей группе

Работа защищенного приложения определяется доступом пользователей как к базе данных приложения, в которой регистрируются разрешения пользователей, так и к рабочей группе, в которой сохраняются учетные записи пользователей и групп, а также пароли. В зависимости от того, как планируется использовать приложение, можно по-разному определить доступ пользователей к приложению и рабочей группе.

Копирование файлов приложения и файла рабочей группы, определяющего рабочую группу, на сетевой сервер

С помощью программы администратора рабочих групп пользователи смогут присоединяться к рабочей группе, указывая сетевой путь к файлу рабочей группы и выполняя приложение с сетевого сервера. Имеется возможность запретить пользователям открывать приложение для монопольного доступа. Для этого следует снять флажок «Монопольный доступ» для группы «Users».

Предоставление каждому пользователю копии файлов приложения и файла рабочей группы, определяющего рабочую группу

С помощью программы администратора рабочих групп пользователи могут присоединиться к рабочей группе, указав путь к файлу рабочей группы на своем компьютере, и затем выполняя копии приложения на своих компьютерах. Однако, если возникает необходимость обновить приложение, содержащиеся в нем данные или файл рабочей группы, следует предоставить каждому пользователю копии всех обновляемых файлов.

В качестве альтернативы удобно разбить приложение на содержащую данные серверную часть базы данных, размещенную на сетевом сервере, и клиентскую часть, содержащую все остальные объекты базы данных, которая помещается на каждый пользовательский компьютер. Обычно в такой конфигурации следует держать файл рабочей группы на сервере. Тогда при необходимости обновить приложение достаточно дать пользователям обновленные версии только файла клиентской базы данных. Для получения дополнительных сведений о разделении базы данных на архив и интерфейс нажмите кнопку [image] .

Предоставление пользователям в различных рабочих группах Microsoft Access доступа к приложению путем создания одинаковых групп в каждой рабочей группе

Существует возможность создать в каждой рабочей группе учетную запись группы с одним и тем же именем и личным кодом, а затем добавлять в эту группу пользователей в каждой рабочей группе. Например, пользователь, работающий в сети в рабочей группе Microsoft Access в Гонолулу, может использовать приложение, созданное для рабочей группы Microsoft Access в Урюпинске, если он является членом групп с идентичным именем и личным кодом в обеих рабочих группах.

Для выполнения приложения каждый пользователь должен иметь копию Microsoft Access. Для создания автономного приложения, не требующего для своей работы установки Microsoft Access, следует использовать Microsoft Office 2000 для разработчиков.


 Организация учетных записей

Организация учетных записей

Файл рабочей группы Microsoft Access содержит следующие встроенные учетные записи.

Учетная запись | Функция
Admin | Стандартная учетная запись пользователя. Данные записи являются одинаковыми для всех экземпляров Microsoft Access и других приложений, использующих ядро базы данных Microsoft Jet, таких как Microsoft Visual Basic для приложений и Microsoft Excel.
Admins | Учетная запись группы администраторов. Данная запись является уникальной в каждом файле рабочей группы. По умолчанию пользователь «Admin» является членом группы «Admins». В каждый момент в группу «Admins» должен входить по крайней мере один пользователь.
Users | Учетная запись группы, содержащая все учетные записи пользователей. Microsoft Access автоматически добавляет учетные записи пользователей в группу «Users» при их создании членом группы «Admins». Данные записи являются одинаковыми в каждом файле рабочей группы, однако этот файл содержит только учетные записи пользователей, созданные членами группы «Admins», входящими в данную рабочую группу. По умолчанию данная учетная запись имеет все разрешения на все новые объекты. Единственным способом удаления учетной записи из группы «Users» является удаление пользователя членом группы «Admins».

В действительности, система защиты Microsoft Access всегда включена. До активизации пользователем процедуры подключения для рабочей группы, Microsoft Access при запуске автоматически подключает всех пользователей с помощью встроенной учетной записи пользователя «Admin» с пустым паролем. Неявно Microsoft Access использует учетную запись «Admin» как учетную запись администратора рабочей группы, а также как владельца всех создаваемых баз данных и таблиц, форм, отчетов и макросов.

Наличие администраторов и владельцев является необходимым, поскольку им предоставляются разрешения, которые невозможно отобрать.

  • Администраторы (члены группы «Admins») всегда могут получить все разрешения на объекты, созданные в рабочей группе.

  • Учетные записи, являющиеся владельцами таблиц, запросов, форм, отчетов или макросов всегда могут получить все разрешения на доступ к этим объектам.

  • Учетная запись, являющаяся владельцем базы данных, всегда может открыть базу данных.

Поскольку учетные записи пользователя «Admin» совершенно одинаковы для всех экземпляров Microsoft Access, то первым шагом при организации системы защиты является определение учетных записей администратора и владельца (или единой учетной записи, являющейся записью и администратора, и владельца). После этого следует удалить учетную запись пользователя «Admin» из группы «Admins». Если этого не сделать, любой пользователь Microsoft Access сможет подключиться к рабочей группе с помощью учетной записи «Admin» и получить все разрешения на доступ к таблицам, запросам, формам, отчетам и макросам рабочей группы.

Например, для защиты базы данных «Заказы» можно создать собственные учетные записи с именами «АдминистраторЗаказов» и «ВладелецЗаказов», а затем определить пароли для этих учетных записей.

В группу «Admins» разрешается добавлять произвольное число учетных записей, однако владельцем базы данных может быть только одна учетная запись — та, что была активной при создании базы данных, либо та, что была активной при передаче права владельца путем создания новой базы данных и импорта в нее всех объектов из исходной базы данных. Однако учетные записи групп могут являться владельцами таблиц, запросов, форм, отчетов и макросов базы данных.

Важно!

  • Учетные записи, создаваемые для пользователей базы данных, должны сохраняться в файле той рабочей группы, к которой пользователи будут присоединяться для работы с базой данных. Если для создания базы данных используется другой файл рабочей группы, перед созданием учетных записей его необходимо сменить.

  • Необходимо создать уникальные пароли для учетных записей администратора и пользователей. Пользователь, подключившийся с помощью учетной записи администратора, всегда сможет получить все разрешения на доступ ко всем таблицам, запросам, формам, отчетам и макросам, созданным в рабочей группе. Пользователь, подключившийся с помощью учетной записи владельца, всегда сможет получить все разрешения на доступ к объектам, принадлежащим данному владельцу.

Объединение пользователей в группы облегчает управление системой защиты. Такая стратегия позволяет не определять разрешения каждого пользователя на доступ к каждой таблице, запросу, форме, отчету и макросу, а создать несколько групп, определить для них разрешения на доступ и затем распределить пользователей по этим группам. При входе в Microsoft Access пользователи получат разрешения, определенные для групп, к которым они принадлежат. Для входа в Microsoft Access могут быть использованы только учетные записи пользователя; вход с помощью учетной записи группы невозможен.

Например, можно организовать защиту базы данных «Заказы» с помощью создания учетных записей «Управляющие» для руководства фирмы, «Представители» для торговых представителей и «Персонал» для административного персонала. После этого следует присвоить наибольшее количество разрешений группе «Управляющие», промежуточное количество группе «Представители» и минимальное группе «Персонал». При создании учетной записи для нового сотрудника эта запись будет добавляться в одну из групп и сотрудник автоматически получит разрешения, принадлежащие этой группе.

После создания учетных записей пользователей и групп можно просмотреть взаимосвязи между ними. Для этого следует выбрать в подменю Защита (меню Сервис) команду Пользователи и группы и нажать кнопку Отчет о защите. Microsoft Access напечатает отчет по учетным записям в рабочей группе, демонстрирующий группы, к которым принадлежит каждый пользователь, и всех пользователей, входящих в каждую группу.


 Разрешения на доступ: как они работают и кто может их присваивать

Разрешения на доступ: как они работают и кто может их присваивать

Существуют два типа разрешений на доступ: явные и неявные. Разрешения называются явными, если они непосредственно присвоены учетной записи пользователя; такие разрешения не влияют на разрешения других пользователей. Неявными называются разрешения на доступ, присвоенные учетной записи группы. Пользователь, включенный в такую группу, получает все разрешения, предоставленные группе; удаление пользователя из этой группы лишает его всех разрешений, присвоенных данной группе.

При попытке пользователя выполнить какую-либо операцию с защищенным объектом базы данных его текущие разрешения определяются комбинацией явных и неявных разрешений на доступ. На уровне пользователей всегда действуют минимальные ограничения из налагаемых явными разрешениями для пользователя и для всех групп, к которым принадлежит данный пользователь. Поэтому простейшим способом управления рабочей группой является создание новых групп и определение разрешений на доступ для этих групп, а не для индивидуальных пользователей. После этого изменение разрешений для отдельных пользователей осуществляется путем добавления пользователей в группы или удаления их из групп. Кроме того, при необходимости предоставить новые разрешения, они предоставляются сразу всем членам группы в одной операции.

Изменять разрешения других пользователей на отдельные объекты базы данных могут следующие пользователи:

  • члены группы «Admins», определенной в файле рабочей группы, который использовался при создании конкретной базы данных;

  • владелец объекта;

  • любой пользователь, получивший на этот объект разрешения администратора.

В ряде случаев пользователи, не имеющие разрешения на выполнение какого-либо действия, имеют возможность присвоить их себе. Такая ситуация имеет место для пользователя, являющегося членом группы «Admins» или владельцем объекта.

Пользователь, создавший таблицу, запрос, форму, отчет или макрос, является владельцем этого объекта. Изменить владельца объекта имеет возможность та же группа пользователей, которая может создать этот объект заново или изменить разрешения на доступ к этому объекту с помощью команды Пользователи и группы из подменю Защита (меню Сервис). Для создания объекта заново нет необходимости начинать работу с нуля. Достаточно импортировать или экспортировать этот объект в другую базу данных или сделать копию объекта. Если требуется защитить всю базу данных, такой прием является простейшим способом передачи прав владельца на все объекты, в том числе и на саму базу данных. Наилучшую возможность защиты всей базы данных предоставляет мастер защиты, создающий новую базу данных и импортирующий в нее все объекты.

Примечание. Копирование, импорт или экспорт не приводит к изменению прав владельца для запросов, у которых свойство При запуске предоставляются права (RunPermissions) имеет значение Владельца. Изменение владельца допускается только для запросов, у которых свойство При запуске предоставляются права (RunPermissions) имеет значение Пользователя.

Для получения сведений о типах разрешений на доступ нажмите кнопку [image] .


 Типы разрешений на доступ

Типы разрешений на доступ

В следующей таблице перечислены все разрешения, которые могут быть присвоены пользователям.

Разрешения | Разрешенные действия | Объекты
Открытие/запуск | Открытие базы данных, формы или отчета, запуск макроса. | Базы данных, формы, отчеты и макросы
Монопольный доступ | Открытие базы данных для монопольного доступа. | Базы данных
Чтение макета | Просмотр объектов в режиме конструктора. | Таблицы, запросы, формы, отчеты и макросы.
Изменение макета | Просмотр и изменение макета объектов или удаление объектов. | Таблицы, запросы, формы, отчеты и макросы.
Администратора | Для баз данных: установка пароля базы данных, репликация базы данных и изменение параметров запуска. Для таблиц, запросов, форм, отчетов и макросов: все разрешения на объекты и данные, в том числе предоставление разрешений на доступ. | Базы данных, таблицы, запросы, формы, отчеты и макросы
Чтение данных | Просмотр данных. | Таблицы и запросы
Обновление данных | Просмотр и изменение данных, но без их вставки или удаления. | Таблицы и запросы
Вставка данных | Просмотр и вставка данных, но без их изменения и удаления. | Таблицы и запросы
Удаление данных | Просмотр и удаление данных, но без их изменения и вставки. | Таблицы и запросы

Примечания

  • Некоторые разрешения на доступ автоматически предоставляют другие разрешения. Например, разрешение «Обновление данных» на таблицу автоматически предоставляет разрешения «Чтение данных» и «Чтение макета», необходимые для изменения данных в таблице. Разрешения «Изменение макета» и «Чтение данных» автоматически предоставляют разрешение «Чтение макета». Для макросов разрешение «Чтение макета» означает предоставление разрешения «Открытие/запуск».

  • Для разработки форм, отчетов, макросов и модулей в многопользовательской среде необходимо открыть базу данных Microsoft Access в монопольном режиме, для чего необходимо иметь разрешение «Монопольный доступ» на доступ к базе данных Access. См. сведения о сохранении изменений макета совместно используемой базы данных Access.

  • Обычно для доступа к связанной таблице пользователям предоставляются разрешения «Чтения данных» и «Чтение макета» на доступ к таблице в серверной части базы данных и разрешение «Изменение макета» для доступа к ссылке на таблицу, определенной в клиентской части базы данных, что дает пользователям удобный способ изменения связи с таблицей. Если требуется ограничить весь доступ к серверной таблице, но оставить пользователям возможность просмотра данных и связывания таблиц, уберите все разрешения на доступ к серверной таблице и пользуйтесь в клиентской базе данных запросами с заданным для свойства При запуске предоставляются права (RunPermissions) значением Владельца.


 Создание и изменение паролей

Создание и изменение паролей

Данный раздел содержит справочные сведения по следующим вопросам.

Пароли баз данных

Пароли учетных записей пользователей

Пароли Visual Basic для приложений (VBA)

Пароли баз данных

Пароль первого типа называют «паролем базы данных». Если установлен пароль базы данных, ввод этого пароля требуется от каждого пользователя, открывающего базу данных. Определение пароля базы данных является простейшим средством защиты от открытия базы данных несанкционированным пользователем; однако, после открытия базы данных других средств защиты при этом не имеется. При включенной системе защиты базы данных существует возможность запретить пользователям установку пароля базы данных.

Возврат в начало

Пароли учетных записей пользователей

Пароль второго типа называют «паролем учетной записи»; такие пароли используются только после определения защиты на уровне пользователя для рабочей группы. Пароль учетной записи создается для того, чтобы запретить другим пользователям подключение с использованием имени данного пользователя.

Microsoft Access по умолчанию присваивает пустой пароль встроенной учетной записи пользователя «Admin» и всем учетным записям пользователей, создаваемым в рабочей группе. При организации защиты базы данных разработчик должен определить пароль для следующих учетных записей:

  • учетная запись пользователя «Admin» (для активизации диалогового окна Вход);

  • учетная запись пользователя, являющегося владельцем базы данных и содержащихся в ней таблиц, запросов, форм, отчетов и макросов;

  • любая учетная запись пользователя, добавленная в группу «Admins».

Кроме того, можно добавить пароли для создаваемых учетных записей пользователей или предписать пользователям добавить собственные пароли.

Пользователи могут создавать или изменять собственные пароли учетных записей; однако, если пользователь забыл свой пароль, то снять этот пароль может только администратор.

Возврат в начало

Пароли Visual Basic для приложений (VBA)

Пароль третьего типа называют паролем Visual Basic для приложений (VBA). Эти пароли используются только один раз за сеанс для защиты модулей с программами на языке VBA в формах и отчетах. Этот пароль предотвращает редактирование, вырезание, вставку, копирование, экспорт и удаление программы VBA несанкционированными пользователями.

Возврат в начало


 Использование пароля базы данных и защиты на уровне пользователей в базе данных Microsoft Access, сохраненной в виде MDE-файла

Использование пароля базы данных и защиты на уровне пользователей в базе данных Microsoft Access, сохраненной в виде MDE-файла

Создание MDE-файла защищает формы, отчеты и программы Microsoft Visual Basic в базе данных Microsoft Access, не требуя регистрации пользователей, создания пользовательских учетных записей и предоставления им разрешений, необходимых для защиты на уровне пользователей. Однако если перед сохранением базы данных Access в виде MDE-файла был задан пароль базы данных или была задействована защита на уровне пользователей, то эти функции будут применяться и к MDE-файлу, созданному из этой базы данных. Если пароль базы данных или защита на уровне пользователей не нужны, следует удалить их перед сохранением базы данных в виде MDE-файла. Для получения сведений об удалении пароля базы данных нажмите кнопку [image] . Для получения сведений об удалении защиты на уровне пользователей нажмите кнопку [image] .

Для сохранения в виде MDE-файла базы данных Access, защищенной на уровне пользователей, необходимо выполнение следующих требований.

  • Пользователь, выполняющий эту операцию, должен быть занесен в файл рабочей группы, который определяет учетные записи пользователей, используемые для доступа к базе данных или использовавшиеся при создании базы данных.

  • Учетная запись пользователя должна иметь разрешения «открытие/запуск» и «монопольный доступ» для базы данных.

  • Учетная запись пользователя должна иметь разрешение «изменение макета» или разрешение «администратора» для всех таблиц базы данных, или же пользователь должен быть владельцем всех таблиц базы данных.

  • Учетная запись пользователя должна иметь разрешение «чтение макета» для всех объектов базы данных.


 Преобразование или подключение защищенных баз данных, созданных в предыдущих версиях Microsoft Access

Преобразование или подключение защищенных баз данных, созданных в предыдущих версиях Microsoft Access

Использование защищенной базы данных, созданной в предыдущей версии Microsoft Access, требует некоторых дополнительных действий.

Важно! Для преобразования или установления доступа к защищенной базе данных необходимо соблюдать следующие требования.

  • При установке Microsoft Access 2000 создается новый файл рабочей группы, который становится текущим. Таким образом, перед преобразованием защищенной базы данных необходимо присоединиться к файлу рабочей группы, определяющему учетные записи пользователей, используемые для доступа к базе данных или при ее защите. Для получения сведений о присоединении к файлу рабочей группы нажмите кнопку [image] .

  • Учетная запись пользователя, используемая для подключения в ходе электронного разговора, должна иметь следующие разрешения:

    «Открытие/запуск» и «Монопольный доступ» для базы данных;

    «Изменение макета» или разрешение «Администратора» для всех таблиц базы данных, или необходимо быть владельцем всех таблиц базы данных;

    «Чтение макета» для всех объектов базы данных.

Если все пользователи защищенной базы данных, созданной в предыдущей версии, намерены использовать Microsoft Access 2000, следует преобразовать базу данных и ее файл рабочей группы. Порядок действий зависит от того, какая текущая версия Microsoft Access установлена на компьютере.

Если Microsoft Access 2000 будут использовать не все пользователи защищенной базы данных, можно сделать базу данных и ее файл рабочей группы доступными во всех используемых версиях Microsoft Access. Для этого существует несколько возможностей.

Важно! Преобразовывать защищенную базу данных, созданную в предыдущей версии Microsoft Access, следует только в том случае, если обновление до Microsoft Access 2000 выполняют все ее пользователи. Если обновление выполняет только часть пользователей, можно сделать базу данных доступной во всех используемых версиях Microsoft Access.

Важно! Поскольку в Microsoft Access 2000 программы на языке Microsoft Visual Basic в модулях, формах и отчетах нельзя защитить на уровне пользователя, программы в базе данных, преобразованной из предыдущей версии, оказываются незащищенными. См. сведения о защите программ на языке Visual Basic.


 Защита базы данных с помощью пароля

Защита базы данных с помощью пароля

  1. Закройте базу данных. Если база данных открыта для общего доступа в сети, убедитесь, что все остальные пользователи закрыли ее.

  2. Сделайте резервную копию базы данных и сохраните ее в надежном месте.

  3. В меню Файл выберите команду Открыть.

  4. Щелкните стрелку справа от кнопки Открыть, выберите вариант Монопольно и откройте базу данных.

  5. В меню Сервис выберите команду Защита и подкоманду Задать пароль базы данных.

  6. Введите пароль в поле Пароль. Пароль вводится с учетом регистра.

  7. Подтвердите пароль, введя его еще раз в поле Подтверждение, а затем нажмите кнопку OK.

    Пароль будет установлен. При следующем открытии базы данных вами или любым другим пользователем будет выводиться диалоговое окно, в которое следует ввести пароль.

Внимание!

  • Если вы потеряли или забыли пароль, восстановить его будет невозможно, и вы не сможете открыть базу данных.

  • Не используйте пароль базы данных, если предполагается выполнять репликацию базы данных. Реплицированные базы данных не могут быть синхронизованы, если определен пароль базы данных.

Примечания

  • Пароль базы данных сохраняется в базе данных, а не в файле рабочей группы.

  • Нельзя установить пароль базы данных, если для базы данных была определена защита на уровне пользователей, а пользователь не имеете права администратора для базы данных. Кроме того, пароль базы данных определяется дополнительно к защите на уровне пользователей. Если была определена защита на уровне пользователей, то любые ограничения, основанные на разрешениях на доступ на уровне пользователей, остаются в силе.

  • Если таблица из защищенной паролем базы данных является связанной, то при установлении связи пароль сохраняется (помещается во временный буфер) в базе данных, с которой связывается таблица. Это может иметь нежелательные последствия. Для получения дополнительных сведений нажмите кнопку [image] .


 Удаление пароля базы данных

Удаление пароля базы данных

  1. В меню Файл выберите команду Открыть.

  2. Щелкните стрелку справа от кнопки Открыть, выберите команду Монопольно и откройте базу данных.

  3. В диалоговом окне Необходимо ввести пароль введите пароль базы данных и нажмите кнопку OK. Пароли учитывают регистр символов.

  4. В меню Сервис выберите команду Защита и команду Удалить пароль базы данных. Эта команда доступна, только если пароль базы данных уже установлен.

  5. В диалоговом окне Удаление пароля базы данных введите текущий пароль.

  6. Нажмите кнопку OK.


 Связывание таблицы из базы данных, защищенной паролем

Связывание таблицы из базы данных, защищенной паролем

Для создания связи с таблицей из защищенной паролем базы данных Microsoft Access, необходимо ввести правильный пароль. Если пароль указан верно, Microsoft Access сохраняет его вместе с информацией, описывающей связь с таблицей. После того, как связь будет создана, любой пользователь, который может открывать базу данных, с которой связана таблица, сможет открыть связанную таблицу. Когда пользователь попытается открыть связанную таблицу, Microsoft Access откроет базу данных, в которой хранится эта таблица, используя сохраненный пароль. Если пароль базы данных, в которой хранится таблица, изменится, то при следующей попытке открыть связанную таблицу необходимо будет указать новый пароль.

Microsoft Access хранит пароль базы данных в незашифрованном виде. Если это нарушает безопасность защищаемой паролем базы данных, то для защиты базы данных не следует использовать пароль. Вместо этого, определите защиту на уровне пользователей, которая позволяет управлять доступом к важной информации в базе данных. Для получения дополнительных сведений о защите на уровне пользователей нажмите кнопку [image] .


 Шифрование и дешифрование базы данных

Шифрование и дешифрование базы данных

При шифровании базы данных ее файл сжимается и делается недоступным для чтения с помощью служебных программ или текстовых редакторов. Дешифрование базы данных является операцией, обратной шифрованию.

  1. Запустите Microsoft Access без открытия базы данных.

    Важно! Нельзя зашифровать или дешифровать открытую базу данных. При работе с сетевой (общей) базой данных операции шифрования и дешифрования не срабатывают, если база данных открыта каким-либо пользователем.

  2. В меню Сервис выберите команду Защита и подкоманду Шифровать/дешифровать.

  3. Укажите имя базы данных, которую требуется зашифровать или дешифровать, и нажмите кнопку OK.

  4. Укажите имя, диск и папку для конечной базы данных и нажмите кнопку OK.

    Если указаны те же имя, диск и папка, что и у исходной базы данных, а шифрование или дешифрование базы данных выполнено успешно, то исходный файл будет заменен на зашифрованный или дешифрованный. Если же операция приводит к ошибке, то исходный файл удален не будет.

Примечания

  • Если была задействована защита на уровне пользователей, то чтобы зашифровать или расшифровать базу данных, нужно быть либо владельцем базы данных, либо членом группы «Admins» и иметь разрешение «монопольный доступ» на доступ к базе данных. В иных случаях операции шифрования и дешифрования выполняться не будут.

  • Если имя объекта базы данных версии 1.x содержит символ апострофа (`), шифрование базы данных будет невозможно. Откройте эту базу данных в Microsoft Access версии 1.x и переименуйте объект, а затем измените ссылки на этот объект в запросах, формах, отчетах, макросах и программах Access Basic.

  • Шифрование базы данных не ограничивает доступ к объектам. Для получения дополнительных сведений о других способах защиты нажмите кнопку [image] .

  • Для успешного выполнения шифрования и дешифрования базы данных необходимо иметь на диске достаточно места для двух версий базы данных — зашифрованной и дешифрованной.


 Скрытие объектов в окне базы данных

Скрытие объектов в окне базы данных

  1. В окне базы данных выберите объект, который нужно скрыть.

  2. Нажмите кнопку Свойства [image] на панели инструментов.

  3. Установите флажок скрытый и нажмите кнопку OK.

Примечания

  • Чтобы отобразить все скрытые объекты, выберите команду Параметры в меню Сервис, откройте вкладку Вид и установите флажок скрытые объекты. Значки скрытых объектов будут неконтрастными. Чтобы вновь отобразить скрытые объекты, повторите описанную выше процедуру, но на шаге 3 сбросьте флажок скрытый.

  • В проекте Microsoft Access нельзя скрывать таблицы, представления, схемы базы данных и сохраненные процедуры.


 Создание MDE-файла

Создание MDE-файла

  1. Закройте базу данных Microsoft Access. При работе в многопользовательской среде убедитесь, что база данных закрыта всеми остальными пользователями.

  2. Выберите в меню Сервис команду Служебные программы и подкоманду Создать MDE-файл.

  3. В диалоговом окне База данных для сохранения как MDE укажите базу данных Access, которую требуется сохранить как MDE-файл, и нажмите кнопку Создать MDE.

  4. В диалоговом окне Сохранение файла MDE под именем укажите имя, диск и папку для базы данных Access.

Внимание! Обязательно сохраните копию исходной базы данных Access. В базе данных, сохраненной как MDE-файл, нельзя изменять структуру форм, отчетов или модулей. Чтобы изменить структуру этих объектов, следует сделать это в исходной базе данных, а затем снова преобразовать ее в MDE-файл. Также нельзя запускать или преобразовывать базу данных, сохраненную как MDE-файл, в более поздних версиях Microsoft Access. В них можно открыть или преобразовать только исходную базу данных.


 Защита паролем программы на языке Visual Basic для приложений

Защита паролем программы на языке Visual Basic для приложений

Для предотвращения просмотра и внесения нежелательных изменений в программу Visual Basic для приложений (VBA) можно защитить программу VBA при помощи пароля.

  1. Откройте проект Microsoft Access или базу данных Microsoft Access, содержащую программу VBA, которую требуется защитить.

  2. В меню Сервис окна базы данных выберите команду Макрос и подкоманду Редактор Visual Basic.

    Совет. Также можно воспользоваться клавишами ALT+F11.

  3. В меню Tools редактора Microsoft Visual Basic выберите команду <имя базы данных Access или проекта Access> Project Properties.

  4. Перейдите на вкладку Protection.

  5. Установите флажок Lock project for viewing.

  6. Введите пароль в поле Password, а затем подтвердите пароль, введя его еще раз в поле Confirm password.

При следующем открытии базы данных Access или проекта Access для просмотра и редактирования программы VBA будет необходимо ввести пароль, определенный на шаге 6.

Примечания

  • Чтобы удалить пароль, очистите сведения на вкладке Protection диалогового окна <имя базы данных Access или проекта Access> Project Properties.

  • Если пароль задан, но флажок Lock project for viewing не установлен, программу сможет просматривать и редактировать любой пользователь, но диалоговое окно Project Properties будет защищено.

  • Старайтесь не забыть пароль. В противном случае возможность просмотра и редактирования программы VBA будет утрачена.


 Защита базы данных с помощью мастера защиты

Защита базы данных с помощью мастера защиты

С помощью мастера защиты можно установить защиту на уровне пользователей с общей схемой защиты и зашифровать базу данных Microsoft Access.

  1. Откройте базу данных, которую требуется защитить.

  2. В меню Сервис выберите команду Защита и затем вызовите мастер защиты.

  3. Выполняйте инструкции, появляющиеся в диалоговых окнах мастера.

Примечания

  • Мастер защиты создает резервную копию текущей базы данных Access с тем же самым именем и расширением имени файла .bak, а затем защищает выделенные объекты текущей базы данных.

  • Если в текущей базе данных Access программы Visual Basic для приложений (VBA) защищены паролем, мастер не запускается. Необходимо сначала снять пароль, а затем запустить мастера.

  • Все пароли, созданные при работе мастера, распечатываются в отчете, формируемом мастером защиты по окончании его работы. Следует хранить этот отчет в безопасном месте. Можно также использовать этот отчет для повторного создания файла рабочей группы.


 Защита базы данных без использования специальной процедуры входа

Защита базы данных без использования специальной процедуры входа

  1. Защитите вашу базу данных с помощью мастера защиты.

    Инструкции

  2. Предоставьте учетной записи пользователя «Admin» разрешения на доступ ко всем таблицам, запросам, формам, отчетам и макросам, которые следует сделать доступными для всех пользователей.

    Инструкции

  3. Отключите диалоговое окно Вход.

    Инструкции

Если пользователи запускают Microsoft Access и открывают базу данных без подключения, то Microsoft Access автоматически подключает их с учетной записью пользователя «Admin». В результате пользователи будут иметь только разрешения, предоставленные на шаге 2. Это верно для любой рабочей группы, так как учетные записи «Admin» в каждом файле рабочей группы одинаковы. Все разрешения на доступ к объектам базы данных имеют только учетная запись администратора и все остальные члены группы «Admins» из файла рабочей группы, которая была текущей при запуске мастера на шаге 1.

Для выполнения административных функций можно или снова активизировать процедуру подключения и войти в систему как член группы «Admins», или использовать параметры командной строки /pwd и /user для указания пароля и имени пользователя при запуске Microsoft Access.


 Снятие защиты на уровне пользователей

Снятие защиты на уровне пользователей

Данная процедура выполняется в два этапа. Сначала следует подключиться к системе как администратор рабочей группы и предоставить группе «Users» разрешения на доступ ко всем таблицам, запросам, формам и макросам. Затем следует вернуть права владельца базы данных и этих объектов стандартной учетной записи пользователя Admin. Для этого следует выйти и снова подключиться к системе под именем «Admin», создать пустую базу данных, а затем импортировать все объекты из исходной базы данных в новую.

  1. Запустите Microsoft Access.

  2. Откройте базу данных.

  3. Подключитесь к системе как администратор (член группы «Admins»).

  4. Предоставьте группе «Users» полные разрешения на доступ ко всем таблицам, формам, отчетам и макросам в базе данных.

    Инструкции

  5. Выйдите и снова запустите Microsoft Access, откройте базу данных, а затем подключитесь к системе с именем «Admin».

  6. Создайте новую пустую базу данных и оставьте ее открытой.

  7. Импортируйте все объекты из исходной базы данных в новую.

    Инструкции

  8. Если пользователи при открытии базы данных будут использовать текущий файл рабочей группы, следует снять пароль записи «Admin», чтобы отключить вывод диалогового окна подключения Вход для текущей рабочей группы. Это необязательно, если пользователи будут использовать стандартный файл рабочей группы, созданный при установке Microsoft Access.

Новая база данных теперь полностью не защищена. Любой пользователь, открывший новую базу данных, будет иметь все разрешения на доступ ко всем ее таблицам, запросам, формам, отчетам и макросам. Это верно для любой рабочей группы, так как учетная запись «Admin» является одной и той же в каждом файле рабочей группы. Файл рабочей группы, который был текущим при создании новой базы данных в шаге 6, определяет группу «Admins» для новой базы данных.


 Создание нового файла рабочей группы Microsoft Access

Создание нового файла рабочей группы Microsoft Access

При установке Microsoft Access программа установки автоматически создает файл рабочей группы Microsoft Access, который идентифицируется указанными пользователем именем и названием организации. Так как получение этой информации часто не представляет особого труда, существует вероятность того, что кто-нибудь сможет создать другую версию этого файла и приобрести неотъемлемые разрешения на доступ учетной записи администратора (члена группы Admins) в рабочей группе, определяемой этим файлом рабочей группы. Чтобы избежать этого, создайте новый файл рабочей группы и укажите код рабочей группы (WID). Только тот, кто знает этот код, сможет создать копию файла рабочей группы.

  1. Закройте Microsoft Access.

  2. Чтобы запустить Администратор рабочих групп, откройте папку языка и дважды щелкните файл Wrkgadm.exe. Можно также воспользоваться значком Администратор рабочих групп MS Access в папке Program Files\Microsoft Office\Office.

  3. В диалоговом окне Администратор рабочих групп нажмите кнопку Создать.

  4. В диалоговом окне Сведения о владельце рабочей группы введите свое имя, название организации и любое сочетание букв и цифр длиной до 20 символов в качестве кода рабочей группы.

    Осторожно! Обязательно запишите введенное имя, название организации и код рабочей группы с учетом регистра (для всех трех элементов) и храните их в надежном месте. Если потребуется заново создать файл рабочей группы, необходимо будет ввести точно эти же сведения. Если они забыты или потеряны, восстановить их и получить доступ к базам данных будет невозможно.

  5. Введите имя нового файла рабочей группы и нажмите кнопку OK. (По умолчанию файл рабочей группы сохраняется в папке языка. Чтобы сохранить его в другой папке, введите новый путь или нажмите кнопку Обзор, чтобы выбрать новый путь.)

Новый файл рабочей группы будет использоваться при следующем запуске Microsoft Access. Любые создаваемые учетные записи пользователей и групп, а также их пароли, сохраняются в новом файле рабочей группы. Чтобы присоединить к рабочей группе, определенной новым файлом рабочей группы, других пользователей, скопируйте этот файл в общую папку (если он не был сохранен на шаге 4 в общей папке); после этого каждый пользователь должен будет запустить Администратор рабочих групп и присоединиться к новому файлу рабочей группы.


 Присоединение к рабочей группе Microsoft Access с помощью Администратора рабочих групп

Присоединение к рабочей группе Microsoft Access с помощью Администратора рабочих групп

  1. Закройте Microsoft Access.

  2. Чтобы запустить Администратор рабочих групп, откройте папку языка и дважды щелкните файл Wrkgadm.exe. Можно также воспользоваться значком Администратор рабочих групп MS Access в папке Program Files\Microsoft Office\Office.

  3. В диалоговом окне Администратор рабочих групп нажмите кнопку Связь.

  4. Введите путь и имя файла рабочей группы, определяющего рабочую группу Microsoft Access, к которой требуется присоединиться, а затем нажмите кнопку OK, либо нажмите кнопку Обзор и затем выберите файл в диалоговом окне Выбор файла рабочей группы.

    При следующем запуске Microsoft Access будут использованы учетные записи и пароли пользователей и групп из файла той рабочей группы, к которой вы присоединились.

Важно! Если определяется защита на уровне пользователей и требуется обеспечить невозможность копирования рабочей группы и ее разрешений, то следует убедиться, что файл рабочей группы, определяющий рабочую группу, к которой вы присоединяетесь, был создан с уникальным кодом рабочей группы (WID). Если такого файла рабочей группы не существует, следует создать его. Для получения дополнительных сведений о создании нового файла рабочей группы нажмите кнопку [image] .


 Создание нескольких рабочих групп для одной защищенной базы данных

Создание нескольких рабочих групп для одной защищенной базы данных

Пользователям из различных рабочих групп Microsoft Access можно предоставить доступ к защищенной базе данных и ее объектам, создав учетные записи групп с идентичным именами и личным кодом в каждой рабочей группе, членам которой требуется совместно использовать защищенную базу данных. Затем следует добавить пользователей каждой рабочей группы в эту учетную запись группы. Это дает возможность пользователям на удаленных рабочих станциях поддерживать собственную систему членства в рабочей группе.

  1. Закройте Microsoft Access.

  2. Используйте программу администратора рабочих групп для присоединения к одной из рабочих групп.

    Инструкции

  3. Запустите Microsoft Access, откройте базу данных, а затем подключитесь к системе как администратор рабочей группы (член группы «Admins»).

  4. Создайте учетную запись группы и запишите имя группы и личный код с учетом регистра.

    Инструкции

  5. Добавьте пользователей в новую группу.

    Инструкции

    Примечание. Добавлять пользователей в эту группу или удалять их можно в любое время.

  6. Повторите шаги с 1 по 5 для каждой рабочей группы, в которой будет совместно использоваться одна и та же защищенная база данных. При выполнении шага 3 проверьте, верно ли введены (с учетом регистра) те же имя группы и личный код, что и для учетной записи первой рабочей группы.

  7. Откройте защищенную базу данных, которая будет совместно использоваться несколькими рабочими группами, и определите разрешения на доступ для новых групп.

    Инструкции

Примечание. Можно также с помощью администратора рабочей группы на удаленной станции добавить ту же группу в местный файл рабочей группы, снабдив для этой цели администратора точным (с учетом регистра) именем группы и личным кодом, которые вы использовали для создания этой группы в своем файле рабочей группы.


 Подключение к рабочей группе Microsoft Access

Подключение к рабочей группе Microsoft Access

Диалоговое окно Вход выводится на экран только в том случае, если для рабочей группы Microsoft Access была задействована процедура входа. В этом окне необходимо ввести имя существующей учетной записи пользователя. Если для учетной записи был задан пароль, необходимо ввести и его. Следует помнить, что в паролях учитывается регистр символов.

  1. При необходимости перейдите с помощью администратора рабочих групп Microsoft Access в рабочую группу, которая содержит нужную учетную запись пользователя.

    Инструкции

  2. Запустите Microsoft Access и откройте базу данных. Если процедура входа была задействована, на экране появится диалоговое окно Вход.

  3. Введите в поле Имя имя учетной записи пользователя. Это имя не учитывает регистра символов.

  4. Если был задан пароль, введите его в поле Пароль; в противном случае оставьте это поле пустым.

Для получения дополнительных сведений о задействовании процедуры входа нажмите кнопку [image] .

Для получения дополнительных сведений о задании пароля для учетной записи нажмите кнопку [image] .


 Требование использования процедуры входа при входе пользователей в Microsoft Access

Требование использования процедуры входа при входе пользователей в Microsoft Access

Пока процедура подключения для рабочей группы не активизирована, Microsoft Access при загрузке автоматически подключает всех пользователей с использованием встроенной учетной записи пользователя «Admin». Для того чтобы потребовать от пользователей, входящих в рабочую группу, выполнения процедуры подключения, следует определить пароль для учетной записи пользователя «Admin».

  1. Присоединитесь к рабочей группе, для которой требуется активизировать процедуру подключения.

    Инструкции

  2. Запустите Microsoft Access и откройте базу данных.

  3. В меню Сервис выберите команду Защита и подкоманду Пользователи и группы.

  4. Перейдите на вкладку Пользователи и убедитесь, что в поле Имя выбрана стандартная учетная запись пользователя «Admin».

  5. Перейдите на вкладку Изменение пароля, выберите поле Новый пароль и введите новый пароль. Ничего не вводите в поле Текущий пароль

    Чтобы защитить вводящийся пароль, Microsoft Access отображает вводящиеся символы звездочками (*). Пароли могут содержать от 1 до 20 любых символов, кроме символа с кодом ASCII 0 (пустой). Пароли вводятся с учетом регистра.

  6. Подтвердите пароль, повторно введя его в поле Подтверждение, и нажмите кнопку OK.

    Диалоговое окно Вход будет выводится на экран при запуске Microsoft Access любым членом рабочей группы, к которой вы присоединились на шаге 1. Если в этой рабочей группе не создавались учетные записи пользователя, то единственной записью пользователя в этой группе является запись с именем «Admin». Для получения сведений об определении учетных записей пользователя нажмите кнопку [image] .

Примечание. При организации системы защиты базы данных создаются учетные записи пользователей в рабочей группе Microsoft Access, а затем разрешения на доступ к базам данных, таблицам, запросам, формам, отчетам и макросам передаются этим учетным записям пользователей и учетным записям групп, к которым они принадлежат. Пользователи, подключающиеся к Microsoft Access с помощью учетных записей, получают только те разрешения, которые определены для этих учетных записей. Для подключения к Microsoft Access необходимо ввести имя пользователя и пароль в диалоговом окне Вход.


 Отключение вывода диалогового окна «Вход»

Отключение вывода диалогового окна «Вход»

  1. Присоединитесь к рабочей группе, для которой следует отменить процедуру подключения.

    Инструкции

  2. Запустите Microsoft Access и откройте базу данных.

  3. В меню Сервис выберите команду Защита и подкоманду Пользователи и группы.

  4. Выберите вкладку Пользователи. В поле со списком Имя, выберите Admin и нажмите кнопку Снять пароль.

    При следующем запуске Microsoft Access и открытии базы данных любым членом рабочей группы, к которой вы присоединились на шаге 1, диалоговое окно Вход открываться не будет.

Примечание. Эти действия не снимают любую защиту на уровне пользователей, определенную в базе данных. Для получения дополнительных сведений о полном удалении защиты на уровне пользователей нажмите кнопку [image] .


 Повторное создание файла рабочей группы на основе имен и кодов пользователей и групп

Повторное создание файла рабочей группы на основе имен и кодов пользователей и групп

Если файл рабочей группы был испорчен или удален, и резервная копия не доступна, можно заново создать файл при наличии точных, с учетом регистра, данных, использованных для создания исходного файла и определения в нем учетных записей и групп.

  1. Создайте новый файл рабочей группы, вводя точно, с учетом регистра, имя, название организации и код рабочей группы, которые использовались для создания исходного файла. Ошибка при вводе этой информации приведет к созданию некорректной группы Admins.

    Инструкции

  2. Создайте заново все учетные записи групп, вводя точно, с учетом регистра, названия групп и личные коды (PID) для каждой группы.

    Инструкции

  3. Создайте заново каждую учетную запись пользователя, вводя точно, с учетом регистра, имена пользователей и личные коды для каждого пользователя.

    Инструкции

  4. Если новый файл рабочей группы был сохранен под новым именем или в другой папке, сообщите другим пользователям в файле рабочей группы о необходимости присоединения к новому файлу с помощью администратора рабочих групп.


 Восстановление поврежденного или удаленного файла рабочей группы Microsoft Access

Восстановление поврежденного или удаленного файла рабочей группы Microsoft Access

В некоторых обстоятельствах файл рабочей группы Microsoft Access может оказаться поврежденным. Если при запуске Microsoft Access этот файл не удается открыть, на экран выводится сообщение. Способ решения этой проблемы зависит от того, имеется ли в распоряжении пользователя резервная копия и каким способом был первоначально создан или определен файл рабочей группы. В следующей таблице разобраны наиболее типичные ситуации.

Использование администратора рабочих групп | Наличие резервной копии | Выход из ситуации
Нет. Использовался стандартный файл, созданный при установке Microsoft Access. | Нет | Перезапустите Microsoft Access, и программа установки Windows создаст стандартный файл рабочей группы повторно.
Нет. Использовался стандартный файл, созданный при установке Microsoft Access. | Да | С помощью проводника Windows, папки «Мой компьютер», команды MS-DOS copy или программы резервирования скопируйте последнюю версию файла в ту папку, где установлен Microsoft Access.
Да. Создан новый файл рабочей группы. | Нет | Снова запустите администратор рабочих групп, введя (с учетом регистра) то же имя, название организации и код рабочей группы, которые использовались первоначально. Для получения дополнительных сведений о создании файла рабочей группы нажмите кнопку [image] .
Да. Создан новый файл рабочей группы. | Да | Скопируйте или восстановите резервную копию файла в путь, где первоначально сохранялся файл рабочей группы.
Да. Файл присоединен на пути, отличном от папки, в которой установлен Microsoft Access. | Да | Скопируйте или восстановите резервную копию файла в исходный путь.
Да. Файл присоединен на пути, отличном от папки, в которой установлен Microsoft Access. | Нет | Создайте новую копию тем же способом, который был использован для создания исходного файла: либо перезапустите Microsoft Access, чтобы программа установки вновь создала стандартный файл рабочей группы, либо воспользуйтесь программой администратора рабочих групп, введя с учетом регистра то же имя, название организации и код рабочей группы, которые использовались при его создании.

Важно! Microsoft Access сохраняет учетные записи системы защиты в файле рабочей группы. Поэтому во всех случаях, когда резервной копии нет, и требуется снова создать файл рабочей группы для пользователя, имеющего ограниченные разрешения на доступ к базе данных, необходимо снова создать учетные записи системы защиты с теми же (с учетом регистра) именем и личным кодом, что были введены до этого. Для получения дополнительных сведений о перестройке файла рабочей группы с использованием имен и кодов отдельных пользователей и групп нажмите кнопку [image] .

Повторно определять разрешения на доступ или владельца объектов не требуется, так как эти сведения хранятся в самих защищенных базах данных.


 Создание учетной записи администратора

Создание учетной записи администратора

Для выполнения данной процедуры необходимо войти в базу по учетной записи члена группы «Admins».

  1. Запустите Microsoft Access в защищенной рабочей группе.

    Внимание! Для надежной защиты базы данных не следует использовать стандартный файл рабочей группы, который создается при установке Microsoft Access. Рекомендуется использовать файл рабочей группы, созданный с помощью уникального кода рабочей группы (WID), а если такого файла еще нет, следует его создать.

    Для получения дополнительных сведений о присоединении к существующей рабочей группе нажмите кнопку [image] . Для получения дополнительных сведений о создании нового файла рабочей группы нажмите кнопку [image] .

  2. Откройте базу данных.

  3. Выберите в меню Сервис команду Защита и подкоманду Пользователи и группы.

  4. На вкладке Пользователи нажмите кнопку Создать.

  5. В диалоговом окне Новый пользователь или группа введите имя учетной записи администратора и личный код (PID), а затем нажмите кнопку OK, чтобы создать новую учетную запись.

    Имена учетных записей могут иметь длину от 1 до 20 символов и могут состоять из букв алфавита, цифр, пробелов и символов из расширенных наборов, за исключением следующих:

    • символы " \ [ ] : | < > + = ; , . ? *

    • пробелы в начале имени;

    • управляющие символы (с кодами ASCII от 10 до 31).

    Осторожно! Запишите имя и код учетной записи, с учетом регистра символов, и храните их в надежном месте. Для воссоздания учетной записи необходимо будет ввести точно эти же сведения. Если имя или код учетной записи потеряны или забыты, восстановить их будет невозможно.

  6. В списке Имеющиеся группы выберите Admins и нажмите кнопку Добавить.

    Новая учетная запись администратора будет добавлена в группу «Admins», а в списке Участие в группе появится имя группы Admins.

Примечание. Созданный на шаге 5 личный код не является паролем. Microsoft Access использует код и имя пользователя как исходные значения для алгоритма шифрования, создающего защищенный идентификатор учетной записи пользователя. Для получения дополнительных сведений о создании паролей нажмите кнопку [image] .


 Создание учетной записи пользователя

Создание учетной записи пользователя

Для выполнения данной процедуры необходимо войти в базу по учетной записи члена группы «Admins».

  1. Запустите Microsoft Access с использованием той рабочей группы, которой будет принадлежать учетная запись.

    Внимание! Учетные записи, созданные для пользователей базы данных, должны сохраняться в том файле рабочей группы, который эти пользователи будут использовать для работы с базой данных. Если для создания базы данных используется другая рабочая группа, измените рабочую группу перед созданием учетных записей.

    Для получения дополнительных сведений о присоединении к существующей рабочей группе нажмите кнопку [image] . Для получения дополнительных сведений о создании нового файла рабочей группы нажмите кнопку [image] .

  2. Откройте базу данных.

  3. Выберите в меню Сервис команду Защита и подкоманду Пользователи и группы.

  4. На вкладке Пользователи нажмите кнопку Создать.

  5. В диалоговом окне Новый пользователь или группа введите имя новой учетной записи и личный код (PID), и нажмите OK для создания новой учетной записи, которая автоматически будет добавлена в группу «Users»

    Имена учетных записей могут иметь длину от 1 до 20 символов и могут состоять из букв алфавита, цифр, пробелов и символов из расширенных наборов, за исключением следующих:

    • символы " \ [ ] : | < > + = ; , . ? *

    • пробелы в начале имени;

    • управляющие символы (с кодами ASCII от 10 до 31).

    Осторожно! Запишите имя и код учетной записи, с учетом регистра символов, и храните их в надежном месте. Для воссоздания учетной записи, которая была удалена или создана в другой рабочей группе, необходимо будет ввести точно эти же сведения. Если имя или код учетной записи потеряны или забыты, восстановить их будет невозможно.

Примечания

  • Созданный на шаге 5 код не является паролем. Microsoft Access использует код и имя пользователя как исходные значения для алгоритма шифрования, создающего защищенный идентификатор учетной записи пользователя. Для получения дополнительных сведений о создании паролей нажмите кнопку [image] .

  • Проще всего организовать систему защиты, распределяя пользователей по группам и определяя разрешения на доступ для групп, а не для отдельных пользователей.


 Создание учетной записи группы

Создание учетной записи группы

Частью системы защиты базы данных являются учетные записи групп, входящих в рабочую группу Microsoft Access. Создание группы позволяет присваивать одинаковый набор разрешений на доступ сразу нескольким пользователям.

Для выполнения данной процедуры необходимо войти в базу по учетной записи члена группы «Admins».

  1. Запустите Microsoft Access с использованием той рабочей группы, которой будет принадлежать учетная запись.

    Внимание! Учетные записи, созданные для пользователей базы данных, должны сохраняться в том файле рабочей группы, который эти пользователи будут использовать для работы с базой данных. Если для создания базы данных используется другая рабочая группа, измените рабочую группу перед созданием учетных записей. Сделать это можно в администраторе рабочих групп.

  2. Откройте базу данных.

  3. Выберите в меню Сервис команду Защита и подкоманду Пользователи и группы.

  4. На вкладке Группы нажмите кнопку Создать.

  5. В диалоговом окне Новый пользователь или группа введите имя новой учетной записи и личный код (PID).

    Имена групп могут иметь длину от 1 до 20 символов и могут состоять из букв алфавита, цифр, пробелов и символов из расширенных наборов, за исключением следующих:

    • символы " \ [ ] : | < > + = ; , . ? *

    • пробелы в начале имени;

    • управляющие символы (с кодами ASCII от 10 до 31).

    Осторожно! Запишите имя и код учетной записи, с учетом регистра символов, и храните их в надежном месте. Для воссоздания учетной записи, которая была удалена или создана в другой рабочей группе, необходимо будет ввести точно эти же сведения. Если имя или код учетной записи потеряны или забыты, восстановить их будет невозможно.

  6. Для создания новой учетной записи группы нажмите кнопку OK.


 Добавление пользователей в группы

Добавление пользователей в группы

Для выполнения данной процедуры необходимо быть членом группы «Admins».

  1. Запустите Microsoft Access с использованием рабочей группы, содержащей учетные записи пользователя и группы.

    Для проверки имени текущей рабочей группы или для изменения рабочей группы следует использовать служебную программу «Администратор рабочих групп».

  2. Откройте базу данных.

  3. Выберите в меню Сервис команду Защита и подкоманду Пользователи и группы.

  4. На вкладке Пользователи введите в поле Имя имя пользователя, добавляемого в группу.

  5. В списке Имеющиеся группы выберите группу, в которую добавляется пользователь, и нажмите кнопку Добавить.

    Имя выбранной группы появится в списке Участие в группе.

  6. Повторите шаг 5, если требуется добавить текущего пользователя в другие группы. Повторите шаги 4 и 5 для добавления в группы других пользователей. Закончив, нажмите кнопку OK.


 Печать сведений о пользователях и группах

Печать сведений о пользователях и группах

  1. Запустите Microsoft Access с использованием файла рабочей группы, сведения из которого требуется напечатать.

    Узнать имя текущего файла рабочей группы или изменить рабочую группу можно с помощью администратора рабочих групп.

  2. Откройте базу данных.

  3. Выберите в меню Сервис команду Защита и подкоманду Пользователи и группы.

  4. На вкладке Пользователи нажмите кнопку Отчет о защите.

  5. Выберите один из параметров в окне диалога Печать сведений о защите. При выборе параметра Только пользователей выводится список имен учетных записей пользователей с именами учетных записей групп, в которые входит данный пользователь. При выборе параметра Только групп выводится список имен групп с именами пользователей, входящих в данную группу. При выборе параметра Пользователей и групп выводятся оба списка.

  6. Нажмите кнопку OK.

Примечание. Для печати сведений об учетных записях пользователей и групп при использовании файла рабочей группы, созданного в Microsoft Access версии 2.0, необходимо подключиться как член группы «Admins». Если файл рабочей группы был создан в Microsoft Access версии 7.0 или более поздней, то печатать сведений о защите могут выполнять все пользователи, входящие в рабочую группу.


 Удаление пользователей из групп

Удаление пользователей из групп

Для выполнения данной процедуры необходимо войти в базу по учетной записи члена группы «Admins».

  1. Запустите Microsoft Access в рабочей группе, которой принадлежат учетные записи пользователя и группы.

    Для проверки имени текущей рабочей группы или для изменения рабочей группы используйте служебную программу «Администратор рабочих групп».

  2. Откройте базу данных.

  3. Выберите в меню Сервис команду Защита и подкоманду Пользователи и группы.

  4. В поле Имя на вкладке Пользователи введите имя учетной записи пользователя, которую требуется удалить.

  5. В списке Участие в группе выберите имя группы, из которой удаляется пользователь, и нажмите кнопку Удалить.

  6. Если требуется удалить текущего пользователя из других групп, повторите шаг 5. Повторите шаги 4 и 5 для удаления из групп других пользователей. Закончив, нажмите кнопку OK.

Примечания

  • Не допускается удаление пользователей из стандартной группы «Users». Microsoft Access автоматически добавляет в группу «Users» всех пользователей. Для удаления любой учетной записи пользователя из группы «Users» необходимо удалить саму учетную запись. Для получения сведений об удалении учетной записи пользователя нажмите кнопку [image] .

  • В каждый момент времени по крайней мере один пользователь должен входить в стандартную группу "Admins".


 Удаление учетной записи пользователя

Удаление учетной записи пользователя

Для выполнения данной процедуры необходимо войти в базу по учетной записи члена группы «Admins».

  1. Откройте базу данных.

  2. Выберите в меню Сервис команду Защита и подкоманду Пользователи и группы.

  3. На вкладке Пользователи выберите имя пользователя в списке Имя и нажмите кнопку Удалить.

  4. Нажмите кнопку Да, чтобы удалить учетную запись пользователя.

  5. Повторите шаги 3 и 4 для удаления других учетных записей; затем нажмите кнопку OK.

Примечание. Учетную запись пользователя «Admin» удалить нельзя.


 Удаление учетной записи группы

Удаление учетной записи группы

Для выполнения данной процедуры необходимо войти в базу по учетной записи члена группы «Admins».

  1. Запустите Microsoft Access с использованием той рабочей группы, которой принадлежит удаляемая учетная запись.

    Для проверки имени текущей рабочей группы или для изменения рабочей группы используйте служебную программу «Администратор рабочих групп».

  2. Откройте базу данных.

  3. Выберите в меню Сервис команду Защита и подкоманду Пользователи и группы.

  4. На вкладке Группы выберите имя группы в раскрывающемся списке Имя и нажмите кнопку Удалить.

  5. Нажмите кнопку Да, чтобы удалить учетную запись группы.

  6. Повторите шаги 4 и 5 для удаления других учетных записей групп, затем нажмите кнопку OK.

Примечание. Учетные записи групп «Admins» и Users удалить нельзя.


 Создание или изменение пароля учетной записи пользователя

Создание или изменение пароля учетной записи пользователя

Пароль учетной записи пользователя определяется для того, чтобы запретить другим пользователям подключение с использованием данной учетной записи. Microsoft Access по умолчанию присваивает учетной записи пользователя «Admin» и любым новым учетным записям пользователя, создаваемым в рабочей группе, пустые пароли.

  1. Запустите Microsoft Access с использованием той рабочей группы, в которой хранится учетная запись пользователя, и войдите в него по той учетной записи, для которой нужно создать или изменить пароль.

    Для проверки имени текущей рабочей группы или для изменения рабочей группы используйте служебную программу «Администратор рабочих групп».

  2. Откройте базу данных.

  3. Выберите в меню Сервис команду Защита и подкоманду Пользователи и группы.

  4. На вкладке Изменение пароля оставьте поле Текущий пароль пустым, если учетная запись ранее не имела пароля. В противном случае введите в поле Текущий пароль старый пароль.

  5. Введите новый пароль в поле Новый пароль.

    Пароль может содержать от 1 до 20 символов и может состоять из любых символов, за исключением ASCII-символа 0 (null). В паролях учитывается регистр символов.

  6. Повторно введите новый пароль в поле Подтверждение и нажмите кнопку OK.

Внимание! Если пароль потерян или забыт, то восстановить его будет невозможно. Поэтому следует хранить его в надежном месте. Чтобы получить доступ к базе данных пользователь, потерявший пароль, должен обратиться к администратору (члену группы «Admins» той рабочей группы, в которой были созданы учетная запись и пароль), чтобы тот снял пароль.


 Снятие пароля учетной записи пользователя

Снятие пароля учетной записи пользователя

Для выполнения данной процедуры необходимо войти в базу по учетной записи члена группы «Admins».

  1. Запустите Microsoft Access с использованием файла рабочей группы, в котором хранится учетная запись пользователя (и ее пароль).

    Для проверки имени текущего файла рабочей группы или для изменения рабочей группы следует использовать администратор рабочих групп.

  2. Откройте базу данных.

  3. Выберите в меню Сервис команду Защита и подкоманду Пользователи и группы.

  4. На вкладке Пользователи введите имя учетной записи пользователя в поле Имя.

  5. Нажмите кнопку Снять пароль.

  6. Повторите шаги 4 и 5 для снятия других паролей, затем нажмите кнопку OK.


 Просмотр или изменение владельца отдельных таблиц, форм, отчетов и макросов в защищенной базе данных

Просмотр или изменение владельца отдельных таблиц, форм, отчетов и макросов в защищенной базе данных

При наличии разрешения администратора на доступ к таблице, запросу, форме, отчету или макросу допускается смена текущего владельца объекта на выбранного пользователя или группу.

  1. Откройте базу данных.

  2. В меню Сервис выберите команду Защита и подкоманду Разрешения.

    На вкладке Смена владельца отображается список таблиц, запросов, форм, отчетов и макросов, выведенных в данный момент в окне базы данных, и имена текущих владельцев этих объектов.

  3. Выберите тип объектов в поле Тип объекта.

  4. В списке Объект выберите один или несколько объектов, для которых требуется произвести смену владельца. Для одновременного выделения нескольких имен объектов проведите указатель по именам объектов при нажатой кнопке мыши или выбирайте имена объектов при нажатой клавише CTRL.

  5. В раскрывающемся списке Новый владелец выберите имя учетной записи пользователя или группы, которой требуется передать права владельца объекта или объектов.

  6. Нажмите кнопку Сменить владельца.

Примечание. Если права владельца таблицы, запроса, формы, отчета или макроса передаются учетной записи группы, то эти права автоматически получат все пользователи, принадлежащие к группе.


 Передача прав владельца всей базы данных другому администратору

Передача прав владельца всей базы данных другому администратору

  1. Запустите Microsoft Access с помощью защищенной рабочей группы, в которую входит учетная запись пользователя, которой требуется передать права владельца базы данных и ее объектов.

  2. Подключитесь с помощью этой учетной записи.

  3. Создайте новую базу данных.

  4. Импортируйте в новую базу данных все объекты из исходной базы данных.

    Инструкции

Примечание. Для импорта базы данных необходимо иметь разрешение «Открытие/запуск» для базы данных и «Чтение макета» на ее объекты. Для импорта таблиц необходимо кроме этого иметь разрешение «Чтение данных». Если разрешения имеются не на все таблицы, запросы, формы, отчеты и макросы, Microsoft Access импортирует только те объекты, на которые имеются достаточные разрешения.


 Присваивание стандартных разрешений новым таблицам, запросам, формам, отчетам и макросам

Присваивание стандартных разрешений новым таблицам, запросам, формам, отчетам и макросам

  1. Откройте базу данных, содержащую таблицы, запросы, формы, отчеты или макросы.

  2. В меню Сервис выберите команду Защита и подкоманду Разрешения.

  3. На вкладке Разрешения выберите переключатель пользователи или группы, и выберите в списке Пользователи и группы пользователя или группу, которым нужно присвоить разрешения.

  4. Выберите тип объекта в списке Тип объекта, а затем выберите элемент <Новые объекты> в списке Имя объекта.

    Вид строки <Новые объекты> определяется типом выбранного объекта — <Новые таблицы/запросы>, <Новые формы>, <Новые отчеты> или <Новые макросы>.

  5. Установите или сбросьте флажки, определяющие стандартные разрешения на доступ для объектов выбранного типа, и нажмите кнопку Применить. Повторите шаги 4 и 5 для определения стандартных разрешений на доступ к объектам других типов для выбранного пользователя или группы.

    Для получения дополнительных сведений о всех разрешениях на доступ, которые можно присвоить, нажмите кнопку [image] .

  6. Повторите шаги с 3 по 5 для других пользователей или групп и нажмите кнопку OK.

Примечания

  • Стандартные разрешения может присваивать только пользователь, имеющий учетную запись администратора (являющийся членом группы «Admins» той рабочей группы, в которой была создана база данных, содержащая этот объект), или владелец базы данных.

  • Некоторые разрешения на доступ автоматически предоставляют другие разрешения. Например, разрешение «обновление данных» на таблицу автоматически предоставляет разрешения «чтение данных» и «чтение макета», необходимые для изменения данных в таблице. Разрешения «изменение макета» и «чтение данных» автоматически предоставляют разрешение «чтение макета». Для макросов разрешение «чтение макета» влечет предоставление разрешения «открытие/запуск».

  • Объединение учетных записей пользователей в группы упрощает управление системой защиты. Например, вместо того, чтобы определять для каждого пользователя разрешения на доступ к каждому объекту базы данных, можно определить их для нескольких групп, а затем распределить пользователей по соответствующим группам. При подключении пользователя к Microsoft Access он получает все разрешения, предоставленные группе, к которой этот пользователь принадлежит.


 Присваивание и удаление разрешений на доступ к базе данных и существующим таблицам, запросам, формам, отчетам и макросам

Присваивание и удаление разрешений на доступ к базе данных и существующим таблицам, запросам, формам, отчетам и макросам

  1. Откройте базу данных, содержащую таблицы, запросы, формы, отчеты и макросы, которые нужно защитить.

    Учетные записи пользователей и групп, которым нужно присвоить разрешения, должны содержаться в файле рабочей группы, используемом при входе в базу данных; однако, можно присваивать разрешения группам, а затем добавлять в них пользователей.

  2. В меню Сервис выберите команду Защита и подкоманду Разрешения.

  3. На вкладке Разрешения выберите переключатель пользователи или группы, и выберите в списке Пользователи и группы пользователя или группу, которым нужно присвоить разрешения.

  4. Выберите нужный тип объекта в раскрывающемся списке Тип объекта, а затем выберите нужный объект в списке Имя объекта.

    Совет. Допускается одновременное выделение нескольких объектов в списке Имя объекта. Для этого проведите указатель по именам объектов при нажатой кнопке мыши или выбирайте имена объектов при нажатой клавише CTRL.

  5. В группе Разрешения установите или сбросьте флажки, определяющие соответствующие разрешения, и нажмите кнопку Применить. Чтобы определить разрешения на доступ к другим объектам для выбранного пользователя или группы, повторите шаги 4 и 5.

    Для получения дополнительных сведений о всех разрешениях на доступ, которые можно присвоить, нажмите кнопку [image] .

  6. Повторите шаги с 3 по 5 для других пользователей или групп и нажмите кнопку OK.

Примечания

  • Для получения сведений о том, кто может присвоить или удалить разрешения на доступ, нажмите кнопку [image] .

  • Некоторые разрешения на доступ автоматически предоставляют другие разрешения. Например, разрешение «обновление данных» на таблицу автоматически предоставляет разрешения «чтение данных» и «чтение макета», необходимые для изменения данных в таблице. Разрешения «изменение макета» и «чтение данных» автоматически предоставляют разрешение «чтение макета». Для макросов разрешение «чтение макета» влечет предоставление разрешения «открытие/запуск».

  • При изменении объекта и его последующем сохранении разрешения на доступ к нему сохраняются. Однако для объекта, сохраненного под новым именем с помощью команды Сохранить как меню Файл, или для объекта, созданного путем копирования и вставки из буфера, импорта или экспорта, заданные разрешения на доступ теряются и их необходимо присваивать заново. Созданный этими операциями объект рассматривается как новый объект, и ему присваиваются стандартные разрешения, определенные для объектов этого типа.

  • Скрытые объекты не отображаются в списке Имя объекта, если не был установлен флажок скрытые объекты во вкладке Вид диалогового окна Параметры (меню Сервис).


 RunPermissions Property

RunPermissions Property

You can use the RunPermissions property in a multiuser environment with a secure workgroup to override the existing user permissions. This allows you to view a query or run an append, delete, make-table, or update query that you otherwise wouldn't have permission to run. For example, as a user, you may have read-only permission for queries, while the owner of the queries has read/write permission. If the owner sets the RunPermissions property to specify the owner's permissions, you can run an append query to add records to a table.

Setting

The RunPermissions property uses the following settings.

Setting | Description
Owner's | All users are allowed the owner's permissions to view or run the query.
User's | (Default) Users have only their own permissions to view or run the query.

You can set this property by using the query's property sheet.

You can also set the RunPermissions property in SQL view of the Query window by using the WITH OWNERACCESS OPTION declaration in the SQL statement.


Преобразование защищенной базы данных, созданной в Microsoft Access версии 2.0

  1. Преобразуйте защищенную базу данных.

    Инструкции

  2. Преобразуйте файл рабочей группы (как правило, файл system.mda), используемый для защищенной базы данных.

    Инструкции

  3. Сообщите остальным пользователям о необходимости присоединения к преобразованному файлу рабочей группы перед открытием защищенной базы данных.

    Инструкции


 Преобразование защищенной базы данных, созданной в Microsoft Access 95 или 97

Преобразование защищенной базы данных, созданной в Microsoft Access 95 или 97

При преобразовании базы данных формата Microsoft Access 95 или 97 необходимо преобразовать саму защищенную базу данных; файл рабочей группы можно использовать в Microsoft Access 2000 без преобразования. Однако следует сжать файл рабочей группы перед его использованием.

  1. Преобразуйте защищенную базу данных.

    Инструкции

  2. Выполните сжатие защищенной базы данных.

    Инструкции

  3. Закройте Microsoft Access.

  4. Перед сжатием файла рабочей группы (обычно, system.mdw), использовавшегося для защищенной базы данных, временно присоединитесь к другому файлу рабочей группы.

    Инструкции

  5. Запустите Microsoft Access, не открывая базу данных.

  6. Выполните сжатие файла рабочей группы, использовавшегося для защищенной базы данных.

  7. Сообщите остальным пользователям о необходимости присоединения к сжатому файлу рабочей группы перед открытием защищенной базы данных.


 Преобразование файла рабочей группы из предыдущих версий Microsoft Access

Преобразование файла рабочей группы из предыдущих версий Microsoft Access

Чтобы улучшить защиту и быстродействие, следует повторно создать файл рабочей группы с помощью описанной ниже процедуры.

  1. Создайте новый файл рабочей группы, вводя точно, с учетом регистра, имя, название организации и код рабочей группы (WID), которые использовались для создания исходного файла. Ошибка при вводе этой информации приведет к созданию некорректной группы «Admins».

    Инструкции

  2. Создайте заново все учетные записи групп, вводя точно, с учетом регистра, названия групп и личные коды (PID) для каждой группы.

    Инструкции

  3. Создайте заново каждую учетную запись пользователя, вводя точно, с учетом регистра, имена пользователей и личные коды для каждого пользователя.

    Инструкции

  4. Сообщите другим пользователям Microsoft Access 2000, входящим в рабочую группу, о необходимости присоединения к новому файлу с помощью администратора рабочих групп.


 Совместное использование в нескольких версиях Microsoft Access защищенной базы данных, созданной в предыдущей версии

Совместное использование в нескольких версиях Microsoft Access защищенной базы данных, созданной в предыдущей версии

С одним исключением, установление совместного доступа к защищенной базе данных в нескольких версиях Microsoft Access аналогично установлению совместного доступа к незащищенной базе данных в нескольких версиях. Для получения дополнительных сведений об установлении совместного доступа к базе данных в нескольких версиях Microsoft Access нажмите кнопку [image] .

Единственное исключение касается использования файлов рабочей группы для защищенной базы данных. Существует две возможности.

  • Сообщить пользователям, которые имеют возможность запуска Microsoft Access 2000 о необходимости присоединения к соответствующему файлу рабочей группы, созданному в самой старой версии Microsoft Access из тех, которые используются для совместной работы с защищенной базой данных. В Microsoft Access 2000 могут использоваться файлы рабочих групп, созданные в предыдущих версиях, но в более ранних версиях не могут использоваться файлы рабочих групп, созданные в более поздних версиях. Для получения дополнительных сведений о присоединении к файлу рабочей группы нажмите кнопку [image] .

    Важно! Если пользователи будут совместно работать с защищенной базой данных Microsoft Access 95 или 97, то текущий файл рабочей группы необходимо сжать в Microsoft Access 2000 перед его использованием. Сжатие файла в Microsoft Access 2000 не изменяет формат файла, поэтому он может и дальше использоваться пользователями, работающими с базой данных в Microsoft Access 95 или 97. Для получения дополнительных сведений о сжатии базы данных нажмите кнопку [image] .

  • Если общая база данных используется в Microsoft Access версии 2.0, следует преобразовать файл рабочей группы, который будет использоваться для защищенной базы данных, а затем сообщить пользователям, имеющим возможность запуска Microsoft Access 2000, о необходимости присоединения к преобразованному файлу рабочей группы. Все пользователи, по прежнему работающие с версией 2.0, должны продолжать использовать файл рабочей группы, созданный в этой версии. Для получения дополнительных сведений о преобразовании файла рабочей группы нажмите кнопку [image] .


 Репликация в проекте Microsoft Access

Репликация в проекте Microsoft Access

Проект Microsoft Access содержит несколько мастеров, помогающих в создании публикации и подписки. Проекты Access поддерживают синхронизацию с передачей, по запросу и двухстороннюю.

В проекте реплицируются данные, а не формы, отчеты и другие содержащиеся в проекте объекты. К тому же проект не может содержать реплику базы данных Access.

Дополнительные сведения о репликации проектов Access см. в разделе Документация по Microsoft SQL Server.

Дополнительные сведения

Синхронизация данных в наборе реплик


 Create Partial Replicas

Create Partial Replicas

What Are Partial Replicas?

Partial replicas are replicas that contain only a subset of records in a full replica. To create a partial replica, you specify a filter that restricts the data that's synchronized to a subset of the full database. By using partial replicas, you can synchronize a replica with only the data that you need, rather than with an entire database.

For example, a business might store its entire sales database at the headquarters office but replicate only regional data to its regional offices across the country. You can create a separate replica for each regional office that contains only the data relating to that region. The database at the headquarters office would be a full replica, with which each partial replica would be synchronized.

Advantages of Using Partial Replicas

Partial replicas can make your database effectively smaller, since you need only replicate the portions that you work with frequently. Synchronizing a partial replica takes less time, and the replica itself requires less disk space.

Partial replicas can help restrict access to data. In the case of a sales database, partial replicas can help ensure that people in a regional sales office won't view sales data for other regional offices. Although you can use partial replicas to restrict access to records, they aren't a substitute for a security system.

Partial replicas also have benefits for replicating data over local area networks (LANs) and wide area networks (WANs). By restricting which data is replicated, partial replicas can reduce the amount of data transferred over a LAN or a long-distance carrier. This can reduce network traffic and lower telecommunications costs.

Creating a Partial Replica with ActiveX Data Objects (ADO)

To create a partial replica, follow these steps:

  1. Use the CreateReplica method on a Replica object, specifying the jrRepTypePartial constant in the replicatype argument. This creates the partial replica.

  2. Use the Filters property to set the desired filters and relationships that determine which data to replicate from the full replica.

  3. Use the PopulatePartial method to transfer all records from the full replica that meet the new replica filter criteria.

When you change data or the filter criteria in the partial replica, you should use the Synchronize and PopulatePartial methods together to ensure that all data is propagated to the full replica and that the partial replica is repopulated based on the current filter criteria.

Note Once you create a partial replica, you can't convert it to a full replica. If you remove all of the replica filters and replica relations within the partial replica, it will contain all the records of a full replica, but it will still have the same limitations and restrictions of a partial replica.

Creating a Partial Replica with Data Access Objects (DAO)

To create a partial replica, follow these steps:

  1. Use the MakeReplica method on a Database object, specifying the dbRepMakePartial constant in the options argument. This creates the partial replica.

  2. Use the ReplicaFilter and PartialReplica properties to set the desired filters and relationships that determine which data to replicate from the full replica.

  3. Use the PopulatePartial method to transfer all records from the full replica that meet the new replica filter criteria.

When you change data or the filter criteria in the partial replica, you should use the Synchronize and PopulatePartial methods together to ensure that all data is propagated to the full replica and that the partial replica is repopulated based on the current filter criteria.

Note Once you create a partial replica, you can't convert it to a full replica. If you remove all of the replica filters and replica relations within the partial replica, it will contain all the records of a full replica, but it will still have the same limitations and restrictions of a partial replica.

Partial Replicas and Referential Integrity

In a replica that has relationships that enforce referential integrity, many of the tables in the database may be related to the table on which your filter is based. When you create a partial replica, you need to make certain that you include any tables that are related to the table containing the data you want.

For example, if you're using the Northwind sample database, you might place a filter on an Employees table, such as [EmployeeID]=1, that synchronizes only one employee's records. Because the Employees table is in a relationship with the Orders and Order Details tables, you must also include those tables so that your partial replica includes the corresponding records for that employee in the Orders and Order Details tables.

You may need to include other tables that are only indirectly related to your filter. For example, you may want your partial replica to include a list of all products so that new orders can include any products that are available. In this case, you must include the Products table in your partial replica.

You should also be aware of tables in your database that have no enforced relationships, such as lookup tables, or tables with relationships where referential integrity isn't enforced. For example, a table that populates a combo box might not take part in any relationships. If you choose to include such a table, all records will be retrieved; otherwise no records will be retrieved.

For more information about partial replicas and tools to create them, see Chapter 16, "Multiuser Database Applications" in the Microsoft Office 2000/Visual Basic Programmer's Guide. For information about how to obtain the Microsoft Office 2000/Visual Basic Programmer's Guide, click [image] .


 Определение языка, используемого по умолчанию для текстового поля или другого элемента управления

Specify the initial keyboard language in a text box or combo box

Сведения, относящиеся к конкретным языкам

You can select the type of keyboard language you want in a text box or combo box.

  1. Open a form or report in Design view.

  2. Make sure the control is selected, and then click Properties [image] on the toolbar.

  3. On the All tab, in the KeyboardLanguage box, do one of the following:

    To make the keyboard language follow the most recent keyboard language you used, click System.

    To make the keyboard language a particular language, click one of the languages shown in the list.

Notes

  • The languages that appear in the KeyboardLanguage property box are determined by the keyboard languages you have installed by double-clicking Keyboard in Windows Control Panel.

  • Learn about right-to-left properties.


Work with the euro

Работа с евро

Предполагаемые действия

Поддержка денежной единицы евро в Microsoft Windows 95 и Windows NT 4.0

Работа с символом евро ( [image])

Отображение символа евро в поле на странице доступа к данным

Использование свойства Формат поля (Format)

Использование функции EuroConvert


 Средство исправления настройки клавиатуры

Средство исправления настройки клавиатуры

Сведения, относящиеся к конкретным языкам

В режиме автозамены имеется средство исправления настройки клавиатуры, автоматически исправляющее введенные в режиме английского языка слова, которые следовало ввести в режиме корейского письма (хангыль), и наоборот. Например, если в режиме английского языка ввести eogksalsrnr, будет выполнена автозамена на tae han min kuk; если же ввести yo u ya p d gya nya syo в режиме хангыль, будет выполнена автозамена на university. Также автоматически изменяется режим IME.

Средство исправления настройки клавиатуры также автоматически исправляет английские слова, имеющие корейские окончания, введенные в режиме английского языка, и наоборот. Например, если ввести optiondmf в режиме английского языка, будет выполнена автозамена на option ul.

Средство исправления настройки клавиатуры работает даже при смешении хангыль и английского письма. Например, если ввести rntjddnjs ppyo mi ya syo, будет выполнена автозамена на ku song won quality.


 Установка кодировки для Web-страницы

Установка кодировки для Web-страницы

При создании страницы доступа к данным в режиме страницы можно указать кодировку, которая будет использоваться Web-обозревателем при отображении этой страницы.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выберите команду Параметры в меню Сервис.

  3. Перейдите на вкладку Общие и нажмите кнопку Параметры Web-документа.

  4. В диалоговом окне Параметры Web-документа перейдите на вкладку Кодировка.

  5. Выберите нужный язык в списке Сохранить документ как.

Примечание. Для того чтобы Access всегда сохранял страницы с использованием кодировки по умолчанию, установите флажок Всегда сохранять Web-страницы в кодировке по умолчанию. Эта настройка влияет на текущую страницу и на страницы, которые будут сохраняться в будущем. Она полезна при использовании страниц из других источников, каждую из которых требуется сохранять в одной кодировке.


Включение режима преобразования транскрипций

Сведения, относящиеся к конкретным языкам

  1. Выберите в меню Сервис команду Автозамена.

  2. На вкладке Автозамена установите флажок Режим преобразования транскрипций.


 Двунаправленные шрифты

About bidirectional fonts

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

Any version of Access 2000 with left-to-right support is designed to display and print both right-to-left and left-to-right text. To do this, the program should use a font that contains both right-to-left and left-to-right language characters. Most fonts available with bidirectional Windows operating systems contain both right-to-left and left-to-right characters. If you choose a font that does not contain both right-to-left and left-to-right characters, existing text in one or both languages might be displayed incorrectly by using the default secondary font, Tahoma. To correct this problem, choose a different font.

Дополнительные сведения

Задание стандартных характеристик внешнего вида режима таблицы

Изменение шрифта, его стиля, размера и цвета в режиме таблицы

Изменение шрифта для текста в текстовом поле или другом элементе управления


 Двунаправленные свойства пользовательского интерфейса

About bidirectional properties of the user interface

Сведения, относящиеся к конкретным языкам

The options that appear in dialog boxes and other elements of the Microsoft Access 2000 user interface do not have properties that can be set. Although you cannot change their property settings, they do have bidirectional characteristics. Access 2000 assigns the following values:

Property | Value
KeyboardLanguage | System
TextAlign | General
ReadingOrder | Context
ScrollBarAlign | System
NumeralShapes | System

If the option contains no text, reading order is determined by the keyboard language when the control is entered: Right-to-left if the keyboard language is a right-to-left language, and left-to-right if otherwise. Initial alignment and insertion point position are determined by the General alignment setting.

Note CTRL+LEFT SHIFT and CTRL+RIGHT SHIFT keyboard sequences used to change keyboard language, reading order, and alignment in other bidirectional applications will temporarily change reading order and alignment.


 Проверка орфографии в двунаправленных текстах

About checking the spelling of bidirectional text

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

You can check the spelling of both your English and right-to-left text in the Memo, Text, and Hyperlink fields. Just choose a dictionary that corresponds to the text that will be used.

Note You must be using a right-to-left version of Microsoft Office 2000 to be able to check spelling in right-to-left text.

When right-to-left text is checked, English words are ignored and not flagged as misspelled. However, when English text is checked, right-to-left words aren't ignored.

What do you want to do?

Check the spelling of data

Choose a custom dictionary for checking spelling


 Поддержка письма справа налево и совместимость

About right-to-left feature compatibility

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

Access 2000 provides full forward compatibility for database files saved in all previous versions of Microsoft Access and Microsoft Access with right-to-left support; however, databases saved in Access 2000 file format are not compatible with any previous versions of Microsoft Access.


 Свойства для поддержки письма справа налево

About right-to-left properties

Сведения, относящиеся к конкретным языкам

Microsoft Access 2000 has specific right-to-left properties to support bidirectional data entry and display.

This topic provides reference information about the following properties:

  • ReadingOrder

  • KeyboardLanguage

  • TextAlign

  • ScrollBarAlign

  • NumeralShapes (Arabic only)

The settings for these properties are initially determined when the control is placed on the grid in form Design view or report Design view.

Note The settings associated with these properties are available for forms and reports. Control behavior for tables and queries is a fixed, bidirectional-capable configuration: ScrollBarAlign = System, NumeralShapes = System, KeyboardLanguage = System, TextAlign = General, ReadingOrder = Context, and initial insertion point position = data dependent. If the control contains no text, then alignment, reading order, and initial insertion point position are determined by the keyboard language when the control is entered: Right-to-Left if the keyboard language is a right-to-left language, and Left-to-Right if otherwise.

ReadingOrder property

Determines the reading order of the control. You can specify right-to-left or left-to-right reading order or choose to have the reading order determined by the keyboard language of text first entered. See how to set the ReadingOrder property for a control.

Return to top

KeyboardLanguage property

The KeyboardLanguage property overrides the keyboard language that is currently in use (including changing the active keyboard language icon on the taskbar). This property specifies the initial keyboard language when the control receives focus. This feature is useful for volume data entry programs because it reduces the need to make keyboard language changes when moving from one field to the next. You can subsequently choose a new keyboard language.

In Form view or Datasheet view, Microsoft Access 2000 will activate the designated keyboard language. If the operation fails (most likely because the requested keyboard language is not available on the developer/user system), the active keyboard language is not changed. For more sophisticated error handling, refer to the discussion of the Visual Basic for Applications KeyboardLanguage property. See how to set the KeyboardLanguage property for a control.

Return to top

TextAlign property

This property determines the placement of text within a control. In addition to the standard left, right, and center character alignments, right-to-left features in Access 2000 use the General alignment setting to specify how text is aligned. See how to set the TextAlign property for a control.

Return to top

ScrollBarAlign property

This property allows you to place the control's vertical scroll bars and buttons in the applicable right-to-left or left-to-right direction. The System setting orients the vertical scroll bar according to the user-interface language in effect. If the user-interface language is a right-to-left language, the vertical scroll bar will be on the left; if the user interface language is a left-to-right language, the vertical scroll bar will be on the right. See how to set the ScrollBarAlign property for a control.

Return to top

NumeralShapes property (Arabic only)

Two different representations of digit shapes are used in Middle Eastern countries: Arabic and Hindi. You can choose to have text in controls be specifically Arabic or Hindi, you can let the Microsoft Windows operating system determine the numerals, or you choose the numeral shape depending on the context of adjacent text. See how to set the NumeralShapes property for a control.

Возврат в начало


 Иерархия свойств и параметров поддержки письма справа налево

About the hierarchy of setting right-to-left features

Сведения, относящиеся к конкретным языкам

The appearance of an object and the behavior of its right-to-left features are determined by a hierarchy of settings. The following progression illustrates this point:

  • The Default Direction setting on the Right-to-Left tab in the Options dialog box sets the direction for new forms or reports to right-to-left (unless the default was manually changed to left-to-right).

  • In the property sheet for a form or report, you can change the direction for a specific form or report by setting the Orientation property. This change will determine the default value of related left-to-right and right-to-left direction properties for each new control on that form or report.

  • Each control has a default set of right-to-left properties that can be changed for that individual control.

  • After controls are placed on the design grid, you can move them and change their right-to-left properties to change their appearance and behavior.


 Настройка значений по умолчанию для поддержки письма справа налево

Change the default for a right-to-left feature

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

You can set the default behavior for several right-to-left features.

What do you want to do?

Определение направления текста для новых таблиц, запросов, форм, отчетов и макросов

Настройка поведения курсора

Определение общего режима выравнивания

Переключение между григорианским календарем и летоисчислением по хиджре для текущей базы данных


 Определение общего режима выравнивания

Specify alignment behavior for General alignment

Сведения, относящиеся к конкретным языкам

  1. Click Options on the Tools menu, and then click the Right-to-Left tab.

  2. Do one of the following in the General Alignment option group:

    Click Interface Mode to align text and numbers in text fields according to the user interface language in effect.

    Click Text Mode to align text and numbers in text fields according to the keyboard language of the text first entered.


 Создание макросов в приложениях, поддерживающих письмо справа налево

About creating macros in right-to-left applications

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

You can create custom menus bars in a right-to-left or left-to-right direction. The following are some considerations to keep in mind:

  • The TransferText action allows you to choose code page format when importing, exporting, and linking files.

  • Menu bars you create can be displayed with a left-to-right or right-to-left direction. For example, if oriented right-to-left, the menu bar will display with menu items starting on the right side of the menu bar and continuing to the left in a right-to-left reading order.

  • The display direction of global and form menu bars is determined by the user-interface language.

  • You can name menu items in right-to-left, left-to-right, or bidirectional text. An ampersand (&) can be added to a menu item name to designate a menu item access key. The ampersand applies to the next character in the name and causes the character to be underlined when the menu item is displayed. In right-to-left text, this is the character to the left of the ampersand; in left-to-right text, it's the character to the right of the ampersand.

  • Macro names can be in right-to-left, left-to-right, or bidirectional text.

  • The Macro window has a left-to-right layout regardless of the user-interface language.


 Создание модулей в приложениях, поддерживающих письмо справа налево

About creating modules in right-to-left applications

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

Access 2000 supports these right-to-left characteristics in modules:

  • Statements are displayed left-aligned and in left-to-right reading order. However, you can view and edit Visual Basic for Applications statements containing right-to-left or bidirectional text.

  • You can use right-to-left, left-to-right, or bidirectional text in module names.

Visual Basic for Applications

All Visual Basic for Applications procedures and properties that provide right-to-left functionality to Microsoft Access 2000 are listed alphabetically in the following table.

Procedures and properties | Type
Calendar | Property
DataType | Property
Date, Date$ | Function
DateAdd | Function
DateDiff | Function
DatePart | Function
DateSerial | Function
DateValue | Function
Day | Function
Format, Format$ | Function
Format | Property
GetOption, SetOption | Methods
KeyboardLanguage | Property
LabelAlign, TextAlign | Properties
LabelX, LabelY | Properties
Month | Function
NumeralShapes | Property
Orientation | Property
ReadingOrder | Property
ScrollBarAlign | Property
TransferText | Action/Method
Weekday | Function
Year | Function

For development of sophisticated right-to-left applications, you might want to take advantage of the numerous Microsoft Windows operating system application programming interfaces (APIs) that have right-to-left settings. For more information, see your local Microsoft dealer.


 Определение направления текста для новых таблиц, запросов, форм, отчетов и макросов

Set the direction for new tables, queries, forms, reports, and pages

Сведения, относящиеся к конкретным языкам

  1. Click Options on the Tools menu, and then click the Right-to-Left tab.

  2. Do one of the following in the Default Direction option group:

    Click Left-To-Right to have new objects displayed in a direction familiar to left-to-right users.

    Click Right-To-Left to have new objects displayed in a direction familiar to right-to-left users.


 Изменение направления текста для таблиц

Change table direction

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

What do you want to do?

Особенности таблиц, использующих текст с направлением справа налево

Изменение направления текста для отдельной таблицы

Определение направления текста по умолчанию для новых таблиц


 Изменение направления текста для отдельной таблицы

Change individual table direction

Сведения, относящиеся к конкретным языкам

  1. Open a table in Design view.

  2. Click the Properties button [image] on the toolbar.

  3. Click the Orientation property.

  4. Do one of the following:

    For a right-to-left direction, click Right-to-Left.

    For a left-to-right direction, click Left-to-Right.

Note Table direction is configurable only for tables in a Microsoft Access database (.mdb). Table direction in a Microsoft Access project (.adp) is always left to right.


 Особенности таблиц, использующих текст с направлением справа налево

About right-to-left behavior in tables

Сведения, относящиеся к конкретным языкам

Right-to-left characteristics for tables are summarized as follows:

New table direction The direction for new tables is determined by the Default direction setting on the Right-to-Left tab in the Options dialog box (Tools menu).

Note Table direction is configurable only for tables in a Microsoft Access database (.mdb). Table direction in a Microsoft Access project (.adp) is always left-to-right.

Existing table direction The direction of an existing tables can be "flipped" from right to left, or the reverse, by changing the table's Orientation property.

User interface direction The direction and layout of several features that support tables, such as the Design view window, the Index window, frozen columns, and key visual characteristics such as Field Properties descriptions and tabs, the current record indicator, and grid column order are determined by the user interface you are currently using.

Field properties Text and Memo fields are assigned General alignment and Context reading order. Visual layout is automatically adjusted based on the language of the first character entered in a field when General alignment is set to Text mode in the Right-to-Left tab in the Options dialog box (Tools menu). Alignment can be then overridden by creating a custom format by using the format control character, the exclamation point (!), in the Format property. Reading order, however, cannot be changed.

Note You can create tables with more sophisticated right-to-left field properties and data entry features if you create a form that uses your table as a record source, and then view the form in Datasheet view.


 Связывание, импорт и экспорт таблиц, содержащих текст справа налево, в текстовые файлы

Import, export, and link right-to-left tables in text formats

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

Microsoft Access 2000 provides code page conversion of tables and worksheets with right-to-left characteristics for text files stored in logical text layout, with one of the following right-to-left code pages:

Language | Code page
Arabic | UTF-8 (default)
 | ISO 8859-6
 | DOS-720
 | ASMO-708
Hebrew | UTF-8 (default)
 | ISO 8859-8
 | DOS-862

To import, export, or link text files that are not recognized by Microsoft Access 2000, use ConvText, a stand-alone text-file conversion utility that provides both logical and visual text layout options and an expanded list of supported bidirectional code pages.

Note A table/worksheet in Lotus, dBASE, Microsoft FoxPro, Paradox, or ODBC database format that requires code page and/or text layout conversion can still be imported into Access 2000 by saving the table/worksheet in text file format prior to importing it. The ability to save a table/worksheet in text file format is a standard feature of most database/spreadsheet products. When Access 2000 imports the text file, all field names and records from the original table/worksheet will be fully recreated in a new Access table.

What do you want to do?

Convert bidirectional text files to ANSI

Convert bidirectional text files from ANSI


 Изменение направления текста для запросов

Change query direction

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

What do you want to do?

Особенности запросов, использующих текст с направлением справа налево

Изменение направления текста для отдельного запроса

Определение направления текста по умолчанию для новых запросов


 Особенности запросов, использующих текст с направлением справа налево

About right-to-left behavior in queries

Сведения, относящиеся к конкретным языкам

Right-to-left characteristics for queries are summarized as follows:

  • Query Design view displays the query in a layout consistent with the current user interface language.

  • The Orientation property allows you to change the overall right-to-left or left-to-right direction of the query in Datasheet view, regardless of the Default direction setting on the Right-to-Left tab in the Options dialog box (Tools menu).

Note Direction in queries is configurable only for queries in a Microsoft Access database (.mdb). Direction in queries in a Microsoft Access project (.adp) is always left-to-right.

Query Design view

All Text and Memo fields are assigned General alignment and Context reading order. Visual layout adjusts automatically based on the language of the first character entered in a field. Alignment can be overridden by creating a custom format by using the format control character, the exclamation point (!) in the Format property in the query's property sheet. Reading order, however, is fixed.

Microsoft Access 2000 provides right-to-left support to many of the other query features available in Design view. For example, if you choose to design a crosstab query, you have the same ability to use the query's property sheet to change the view direction of the crosstab query you're creating.

Query Datasheet view

The direction of the data, description fields, and other window components will be right-to-left or left-to-right depending on the query orientation you chose in Design view.

Other query design considerations

You can use right-to-left or mixed right-to-left and left-to-right text to name many of the objects you create. You can:

  • Provide bidirectional text in names given to tables you create with a make-table query.

  • Select tables with right-to-left or bidirectional text names when you add data to a table by using an append query.

  • Name query parameters with right-to-left or bidirectional text in a parameter query.

SQL

The editor displays SQL statements in an overall left-to-right direction regardless of the user interface language or chosen query view direction.

Important Dates in SQL statements are always displayed as Gregorian calendar values, regardless of database calendar chosen. If you change a date in a SQL statement, the new value MUST be a Gregorian date.


 Использование двунаправленного текста в выражениях

About using bidirectional text in expressions

Сведения, относящиеся к конкретным языкам

Microsoft Access 2000 preserves expressions with left alignment and left-to-right reading order. Expression terms are preserved in left-to-right order to ensure the visual readability of expression statements that contain mixed text. As each statement character is entered, the expression display is dynamically updated.

The following table provides examples of bidirectional text that is used in expressions:

Bidirectional text used in expressions

There are a few other considerations when using expressions with right-to-left languages:

  • Access 2000 displays Structured Query Language (SQL) statements by using the same rules it uses for displaying expressions.

  • Bidirectional control characters entered in expressions are removed prior to evaluating the expression to avoid possible conflicts.

Note Bidirectional text used in the Expression Builder will "swap" certain neutral character pairs such as "( )" and "{ }" when the keyboard language is a right-to-left language. To resolve this, change the keyboard language to a left-to-right language or type the correct character.


 Изменение направления текста для отдельного запроса

Change individual query direction

Сведения, относящиеся к конкретным языкам

  1. Open a query in Design view.

  2. Select a field, field list, or query.

    To select a field, click the cell in the Field row.

    To select a field list, click anywhere in the list.

    To select the whole query, click anywhere in query Design view outside the design grid and the field lists.

  3. Click the Properties button [image] on the toolbar.

  4. In the Orientation property box, do one of the following:

    For a right-to-left direction, click Right-to-Left.

    For a left-to-right direction, click English.

Note Direction in queries is configurable only for queries in a Microsoft Access database (.mdb). Direction in queries in a Microsoft Access project (.adp) is always left-to-right.


 Использование средств, поддерживающих письмо справа налево, в формах и отчетах

Use right-to-left features in forms and reports

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

What do you want to do?

Особенности форм и отчетов, использующих текст с направлением справа налево

Иерархия свойств и параметров для поддержки письма справа налево

Добавление подписей к элементам управления

Порядок печати

Настройка свойств поддержки письма справа налево для элементов управления


 Особенности форм и отчетов, использующих текст с направлением справа налево

About right-to-left behavior in forms and reports

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

Right-to-left characteristics for forms and reports are summarized as follows:

Default direction

The default direction that was set on the Right-To-Left tab in the Options dialog box (Tools menu) determines whether your form has a left-to-right or right-to-left layout. If you have not changed the default, new controls added to the form are displayed with a right-to-left direction.

Ruler and grid

Whether a form or report is in a right-to-left or left-to-right direction, the ruler retains its origin in the upper-left corner of the design window. The same concept applies to the grid. This provision does not cause any problems when creating a right-to-left-oriented form. By dragging the right grid boundary to the right, controls on the grid move to the right in proportion to the distance the boundary is moved and the grid is extended from the left boundary.

Set control defaults

The Set Control Defaults command on the Format menu recognizes all right-to-left properties in Microsoft Access 2000. When you select this command, Access applies all right-to-left properties.

Change To

When you change a control's type (for example, from a text box to a list box) by using the Change To command, Access transfers any relevant right-to-left properties from the original control to the new one.

Snap To Grid and Align To Grid

These Format menu commands behave according to the direction of the current form or report.

Snap To Grid When you place a new control on a left-to-right form or report, the upper-left corner of the control is aligned to the nearest point on the grid. When you place a new control on a right-to-left form or report, the upper-right corner aligns to the nearest point.

Align To Grid In a left-to-right form or report, the upper-left corners of selected controls align to the nearest point in the grid. In a right-to-left form or report, upper-right corners of selected controls align to the nearest grid point.

Form Datasheet view

Datasheet view in forms is the way to present tables with the most sophisticated right-to-left behavior. In addition to displaying the underlying data in the column and row layout generally associated with tables, each field in Datasheet view has the right-to-left properties of the associated Form view control.

For example, if you set the KeyboardLanguage property to Arabic for a text box control bound to a Text field named Company, then the keyboard language will automatically switch to Arabic whenever you click in the Company field in Datasheet view. This feature is useful for volume data-entry applications because it reduces the need to make keyboard language changes when moving from one field to the next.

Form and report Design view

A hierarchy of control governs the orientation, overall appearance, and basic parameters of forms and reports.

Print Preview and Layout Preview in reports

Microsoft Access 2000 displays the report in the direction in which it was designed, left-to-right or right-to-left.


 Порядок печати

Examples of printing orders

Сведения, относящиеся к конкретным языкам

You can view and print your data in the direction, right-to-left or left-to-right, that you assigned to the object.

Objects that are longer or wider than can be printed on a single sheet of paper are printed on multiple sheets in an order that is determined by the view direction of the object. The following example shows the page numbering and printing order for a report that is three pages wide and requires six pages to print.

Object direction | Multiple page printing order
Left-to-Right | Left to right printing order
Right-to-Left | Right to left printing order

Note Reports and labels can be printed on a page in a multiple-column format. The layout of the columns will be determined by the direction of the report.

Дополнительные сведения

Выбор параметров печати


 Работа со страницами доступа к данным, использующими текст с направлением справа налево

Use right-to-left features in data access pages

Сведения, относящиеся к конкретным языкам

Чтобы задействовать возможности письма справа налево в Microsoft Access 2000, необходимо работать в 32-разрядной операционной системе Microsoft Windows с поддержкой письма справа налево — например, в версии Microsoft Windows 95 на арабском языке. См. сведения о требованиях к конфигурации системы или специальных требованиях для языков с письмом справа налево.

Предполагаемые действия

Сведения о возможностях письма справа налево на страницах доступа к данным

Определение направления текста для новых таблиц, запросов, форм, отчетов и страниц доступа к данным

Определение направления текста на страницах доступа к данным

Определение направления текста для элементов управления на страницах доступа к данным


 Особенности страниц доступа к данным, использующих текст с направлением справа налево

About right-to-left features in data access pages

Сведения, относящиеся к конкретным языкам

Right-to-left features in data access pages are set according to a two-level hierarchy: page level and control level.

Page level

Initially, a new data access page will be displayed in the direction, either left-to-right or right-to-left, that is selected under Default direction on the Right-to-Left tab in the Options dialog box (Tools menu). That direction appears as a setting of the Dir property of the data access page.

Note Data access page direction is included in the underlying HTML code of the data access page through use of the standard HTML Direction (DIR) attribute. For example, the code <HTML DIR=RTL> placed at the beginning of the <HTML> element identifies a right-to-left data access page.

Controls placed on a data access page inherit the directionality of the data access page itself, depending on whether the control has right-to-left features. Controls without right-to-left features are displayed in a left-to-right direction.

Control level

Controls with right-to-left features initially appear on a data access page according to the direction of the data access page. After you place a control on a data access page, you might be able to change the control display direction to give it right-to-left appearance and functionality. The property name that controls display direction varies with control type. The properties in the following table control directionality for data access page controls:

Control type | Description
Office Web Component controls | The Office Web Component controls are the spreadsheet, the chart, and the PivotTable list. The direction setting property is RightToLeft. Note Office Web Component controls each have a property toolbox that can be used both while designing the control and in the browser; however the right-to-left setting can't be changed in the browser.
Intrinsic browser controls | Examples of intrinsic browser controls include Table, Label, TextBox, ComboBox, ListBox, OptionGroup, and ScrollingText. The direction setting property is typically Dir.
ActiveX controls | These are other controls that are available with Microsoft Office 2000 programs or Microsoft Visual Basic. The direction setting property is typically RightToLeft.


 Определение направления текста на страницах доступа к данным

Specify the direction of a data access page

Сведения, относящиеся к конкретным языкам

  • Do one of the following:

    Before creating a new data access page, set the direction, either left-to-right or right-to-left, under Default direction on the Right-to-Left tab in the Options dialog box (Tools menu). That direction will appear as the setting of the Dir property of the new data access page.

    For an existing data access page:

    1. From the Database window, open the data access page in Design view.

    2. Select the page by clicking the page title bar.

    3. Click Properties [image] on the toolbar, click the All tab, and change the Dir property setting to the page direction you want: Right-to-left or Left-to-right.

    Tip To edit directly in HTML, click HTML Source from the View menu and modify the <HTML> element to <HTML DIR=RTL> for a right-to-left page direction or <HTML DIR=LTR> for a left-to-right page direction.


 Поддержка кодовых страниц и разметки текста для HTML-файлов, использующих письмо справа налево

About code page and text layout support for right-to-left HTML files

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

Right-to-left enabled Access 2000 supports several code pages used in importing, saving, and exporting HTML Web pages.

Code page conversion of tables/worksheets with right-to-left characteristics is provided for HTML files stored in logical text layout and one of the following right-to-left code pages:

Language | Code page
Arabic | UTF-8 (default)
 | ISO 8859-6
 | DOS-720
 | ASMO-708
Hebrew | UTF-8 (default)
 | ISO 8859-8
 | DOS-862

Note Microsoft Access 2000 supports editing and saving of HTML files in logical text layout. HTML files stored in visual text layout can be viewed but not edited or saved in logical text layout.

Дополнительные сведения

Импорт таблиц и списков HTML

Экспорт таблицы, запроса, формы или отчета в формат HTML


 Арабская кодовая страница

About the Arabic code page

Сведения, относящиеся к конкретным языкам

Each code page is identified by a unique code page number. The code page (CP) for Arabic is CP 1256.

Note Microsoft Access 2000 sorts right-to-left databases by using values from Unicode, not those from the right-to-left code page as in earlier versions. Opened or imported databases that use the Arabic code page and Arabic sort order will be converted to Unicode and General sort order.

Arabic code page


 Кодовая страница иврита

About the Hebrew code page

Сведения, относящиеся к конкретным языкам

Each code page is identified by a unique code page number. The code page (CP) for Hebrew is CP 1255.

Note Microsoft Access 2000 sorts right-to-left databases using values from Unicode, not those from the right-to-left code page as in earlier versions. Opened or imported databases that use the Hebrew code page and Hebrew sort order will be converted to Unicode and General sort order.

Hebrew code page


 Определение режима выравнивания текста в текстовом поле или другом элементе управления

Specify text alignment in a text box or other control

Сведения, относящиеся к конкретным языкам

You can select the type of text alignment you want in a label, text box, combo box, or list box.

  1. Open a form or report in Design view.

  2. Make sure the control is selected, and then click Properties [image] on the toolbar.

  3. On the All tab, in the TextAlign box, click one of the following:

    To have text alignment follow the language of the text first entered or the user interface language, click General.

    To have alignment fixed, click one of the other choices.

Notes

  • CTRL+LEFT SHIFT and CTRL+RIGHT SHIFT shortcut keys used to dynamically change reading order and alignment in other bidirectional programs will temporarily change reading order only (alignment is excluded because changing alignment might negatively affect appearance). When the focus leaves the control, the display format reverts to the chosen control reading order.

  • Learn about right-to-left properties.


 Обзор свойств элементов управления для поддержки письма справа налево

Summary of right-to-left properties for controls

Сведения, относящиеся к конкретным языкам

Most intrinsic Microsoft Access 2000 controls can be configured to present right-to-left appearance and behavior. In some cases, this can be done by using standard Microsoft Access control properties (for example, the TextAlign property) and repositioning of controls to achieve a right-to-left appearance.

However, in some cases right-to-left properties are needed to achieve proper right-to-left appearance and behavior. The following tables lists those controls for which new right-to-left properties are added:

 | Label | Text box | Toggle button | Combo box | List box | Command button
TextAlign | X | X |  | X | X |
ReadingOrder | X | X | X | X | X | X
KeyboardLanguage |  | X |  | X |  |
ScrollBarAlign |  | X |  | X | X |
NumeralShapes | X | X |  | X | X |


 Настройка свойств поддержки письма справа налево для элементов управления

Set right-to-left properties in controls

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

What do you want to do?

Свойства для поддержки письма справа налево

Определение направления чтения текста в текстовом поле или другом элементе управления

Определение языка, используемого по умолчанию для текстового поля или другого элемента управления

Определение режима выравнивания текста в текстовом поле или другом элементе управления

Выбор места расположения полос прокрутки в текстовом поле или другом элементе управления

Настройка представления чисел (только для арабской версии) в текстовых полях и других элементах управления

Обзор свойств элементов управления для поддержки письма справа налево

Двунаправленные свойства пользовательского интерфейса


 Добавление подписей к элементам управления

How labels are attached to controls

Сведения, относящиеся к конкретным языкам

Labels are automatically created and attached to most controls. Label placement is determined by the Orientation property setting for the parent form at the time you create the label. If the Orientation property is set to right-to-left, the label is placed to the right of the control. If the Orientation property is set to left-to-right, the label is placed to the left of the control.

Properties for a label attached to a control, except TextAlign, are inherited from default label control properties. TextAlign for an attached label is inherited from the LabelAlign property in the parent control (for example, text box, option group, toggle button, option button, check box, combo box, list box, subform/subreport, bound object frame, or command button). LabelAlign, which specifies the alignment of text within a label, exists only as a parent property until the control is created. Thereafter, it is available as TextAlign in the label control attached to the parent control.


 Настройка поведения курсора

Set insertion point behavior

Сведения, относящиеся к конкретным языкам

  1. Click Options on the Tools menu, and then click the Right-to-Left tab.

  2. Do one of the following in the Cursor option group:

    Click Logical to have insertion point movement according to the logical order of mixed text.

    Click Visual to have insertion point movement that ignores text language and moves contiguously to the right or left.


 Определение направления чтения текста в текстовом поле или другом элементе управления

Specify text reading order for a text box or other control

Сведения, относящиеся к конкретным языкам

You can select the type of reading order you want in a label, text box, toggle button, combo box, list box, or command button. Learn about the ReadingOrder property.

  1. Open a form or report in Design view.

  2. Make sure the control is selected, and then click Properties [image] on the toolbar.

  3. On the All tab, in the ReadingOrder box, do one of the following:

    To have the reading order follow the language of the text first entered, click Context.

    To force the reading order in one direction, click Right-To-Left or Left-To-Right.

Note CTRL+LEFT SHIFT and CTRL+RIGHT SHIFT shortcut keys used to dynamically change reading order and alignment in other bidirectional programs will temporarily change reading order only (alignment is excluded because changing alignment might negatively affect appearance). When the focus is moved outside the control, the display format reverts to the chosen control reading order.


 Настройка представления чисел (только для арабской версии) в текстовых полях и других элементах управления

Specify the appearance of numbers (Arabic only) in a text box or other control

Сведения, относящиеся к конкретным языкам

You can select the appearance of numbers in a label, text box, combo box, or list box.

  1. Open a form or report in Design view.

  2. Make sure the control is selected, and then click Properties [image] on the toolbar.

  3. On the All tab, in the NumeralShapes box, do one of the following:

    For numerals formatted according to Unicode rules for adjacent text, click Context. In general, this means numeral shapes are Hindi if surrounding text is Arabic.

    For numerals formatted according to the Numeral Shapes option (set by double-clicking Regional Settings in Windows Control Panel), click System.

    For numerals in Arabic, click Arabic.

    For numerals in Hindi, click Hindi.

Note Learn about right-to-left properties.


 Определение направления текста для элементов управления на страницах доступа к данным

Specify the direction of a control on a data access page

Сведения, относящиеся к конкретным языкам

  1. From the Database window, open the data access page in Design view.

  2. Make sure the control is selected, and then click Properties [image] on the toolbar.

  3. On the All tab, find the right-to-left property associated with the control (such as Dir).

  4. Do one of the following:

    Click Right-to-left (or the equivalent setting) to display the control with a right-to-left direction.

    Click Left-to-right (or the equivalent setting) to display the control with a left-to-right direction.


Выбор места расположения полос прокрутки в текстовом поле или другом элементе управления

Specify where you want scroll bars in a text box or other control

Сведения, относящиеся к конкретным языкам

You can select the position of scroll bars you want in a text box, combo box, or list box.

  1. Open a form or report in Design view.

  2. Make sure the control is selected, and then click Properties [image] on the toolbar.

  3. On the All tab, in the ScrollBarAlign box, do one of the following:

    To have the scroll bar follow the setting of the Orientation property for the form or report that contains the control, click System. (A vertical scroll bar is placed on the left if the form or report Orientation property setting is Right-to-left; and on the right if the form or report Orientation property setting is Left-to-right.)

    To have a scroll bar on the right side of the control, click Right.

    To have a scroll bar on the left side of the control, click Left.

Note Learn about right-to-left properties.


 Календари

Use database calendars

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

Any version of Access 2000 that supports right-to-left text (except Hebrew) also supports the use of the Gregorian (default) and Hijri calendar for date entry and display.

What do you want to do?

Использование различных календарей

Переключение между григорианским календарем и летоисчислением по хиджре


 Использование различных календарей

About using different calendars

Сведения, относящиеся к конкретным языкам

If you open an existing database with date references and you have selected the wrong calendar setting, the program might report a variety of errors or other unexpected behaviors. For example, if you have checked the Hijri Calendar setting, Microsoft Access 2000 will display a syntax error message if a report makes reference to Gregorian dates that are invalid as Hijri dates (for example, the date 12/31/99 will produce a syntax error because no Hijri month has 31 days).

To avoid problems of this sort, all date references in a database must be based on the same calendar.

Important It is recommended that you choose the database calendar when you first create your database, and then never change it.

Other considerations when the database calendar is set to Hijri

  • To ensure Hijri dates strings are evaluated correctly in expressions and Visual Basic for Applications statements, use the CDate function to evaluate the strings instead of declaring the strings as constants.

    For example, type CDate("1/25/20") instead of #1/25/20#.

    The CDate function will always return a value based on the active database calendar, whereas date constants are always evaluated by using the Gregorian calendar.

  • For reliable behavior, enter and display dates in an unambiguous format. For example, dates in short date format might be misinterpreted in queries if the year or the day of the month are 12 or less (for example, 3/11/10). Dates in medium date format display only the first few characters of the month name, which can create ambiguity or an undesirable appearance. Use long date format whenever possible. You can alter the way a date is displayed in long format (for example, excluding the day of the month) by using Regional Settings in Windows Control Panel.

  • Dates entered in the ValidationRule property of a Date/Time field in a table (in table Design view) must be Hijri. However, to have the ValidationRule date appear as a Hijri date in validation messages, the validation rule must use the CDate function (for example, 'CDate ("1/25/1420")'.

  • Sample Access 2000 applications, such as the Northwind database, are not localized and expect the database calendar to be Gregorian. Because the sample applications contain hard-coded date constants that are not valid Hijri dates, running the sample applications with the database calendar set to Hijri is not recommended.

  • All Hijri years will be displayed as four-digit year values (for example, 1420) unless the Format() function is explicitly used.

  • The Visual Basic Date function, used to set the system date for your computer, will not accept Hijri dates. If the database calendar is set to Hijri, set the calendar to Gregorian before setting system date with the Date function.

  • Dates in tables exported as text files are always stored as Gregorian values. If the database calendar is set to Hijri, automatic Hijri to Gregorian conversion is performed during the export process. Similarly, dates in tables imported from text files are assumed to be Gregorian dates and will be converted to Hijri values during the import process if the database calendar setting is Hijri.

  • You can't set the database calendar programmatically by using Visual Basic for Applications.

Дополнительные сведения

Связывание, импорт и экспорт таблиц, содержащих текст справа налево, в текстовые файлы


Переключение между григорианским календарем и летоисчислением по хиджре

Switch between Gregorian and Hijri calendars

Сведения, относящиеся к конкретным языкам

  1. On the Tools menu, click Startup.

  2. Click Advanced.

  3. Select the Hijri Calendar check box.

The setting is saved with the database and used for all date references in the database.


 Порядок сортировки при использовании текста с направлением справа налево

Use right-to-left sort orders

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

The default Microsoft Access 2000 sort order, General, handles sorting of right-to-left characters; that is, there are no separate sort orders for right-to-left languages. General sort order now includes right-to-left characters because characters are stored as Unicode values. The behavior of General sort order for right-to-left characters stored as Unicode values is identical to the behavior of right-to-left characters previously stored as Arabic or Hebrew code page values and sorted by using Arabic sort order and Hebrew sort order, respectively.

Right-to-left text is sorted along the following guidelines:

  • Left-to-right text is always sorted ahead of right-to-left text.

  • Sort ignores kashidas and bidirectional control characters.

  • Characters with diacritics are clustered after other occurrences of the base character.

Note When opened or imported, previous-version databases that use a right-to-left sort order are saved with the Access 2000 General sort order.

What do you want to do?

Learn about Arabic sort order

Learn about Arabic code page

Learn about Hebrew sort order

Learn about Hebrew code page


 Порядок сортировки символов арабского алфавита

About Arabic sort order

Сведения, относящиеся к конкретным языкам

Arabic sort order is described here by using the Arabic code page, not Unicode, because the former is more familiar to most users. The Arabic sort order table arranges the characters of the Arabic code page into a sort order. The sort order controls how data is sequentially ordered in Microsoft Access databases that use the Arabic code page.

Note Microsoft Access 2000 sorts right-to-left databases by using values from Unicode, not those from the right-to-left code page as in earlier versions. Opened or imported databases that use the Arabic code page and Arabic sort order will be converted to Unicode and General sort order.

The 256 characters of the Arabic code page can be organized into several categories that determine how characters are sorted.

  • Kashida and bidirectional control characters (hexadecimal code points 9D, 9E, DC, FD, and FE):

    Sort ignores these characters.

  • Arabic diacritics (hexadecimal code points F0 through F3, F5, F6, F8, and FA):

    Sort ignores Arabic diacritics except when the strings being compared are otherwise identical. In this case, unmarked characters (without diacritics) sort ahead of marked characters (with diacritics); diacritics with lower code point values sort ahead of others.

  • General control characters (hexadecimal code points 00 through 1F and 7F), reserved characters (hexadecimal code points 80, 81, 8D, 8E, 8F, and 90), and punctuation:

    These three categories sort ahead of alphanumeric characters in category order (that is, General control characters first) and in ascending code point order within each category (for example, 00 sorts ahead of 01).

  • Arabic and left-to-right alphanumeric characters (shown in the Arabic sort order table that follows):

    Left-to-right text is always sorted ahead of Arabic text.

    Left-to-right text sorting is not case sensitive. For example, although uppercase "A" is listed before lowercase "a" in the sort table, Access 2000 treats these characters equally and does not provide any sorting preference to either character.

    Unmarked left-to-right text (without diacritics) is sorted before marked left-to-right text.

The following table lists the alphanumeric characters of the Arabic code page along with their respective hexadecimal code points. Characters (Char) are arranged in columns according to their sort order, starting in the upper-left corner.

Arabic sort order


 Порядок сортировки символов иврита

About Hebrew sort order

Сведения, относящиеся к конкретным языкам

Hebrew sort order is described here by using the Hebrew code page, not Unicode, because the former is more familiar to most users. The Hebrew sort order table arranges the characters of the Hebrew code page into a sort order. The sort order controls how data is sequentially ordered in Microsoft Access databases that use the Hebrew code page.

Note Microsoft Access 2000 sorts right-to-left databases by using values from Unicode, not those from the right-to-left code page as in earlier versions. Opened or imported databases that use the Hebrew code page and Hebrew sort order will be converted to Unicode and General sort order.

The 256 characters of the Hebrew code page can be organized into several categories that determine how characters are sorted.

  • Bidirectional control characters (hexadecimal code points FD and FE):

    Sort ignores these characters.

  • Hebrew diacritics (hexadecimal code points C0 through CD, D1, and D2):

    Sort ignores Hebrew diacritics except when the strings being compared are otherwise identical. In this case, unmarked characters (without diacritics) sort ahead of marked characters (with diacritics); diacritics with lower code point values sort ahead of others.

  • General control characters (hexadecimal code points 00 through 1F and 7F), reserved characters (hexadecimal code points 80, 81, 8A, 8C through 90, 9A, 9C through 9F, CE through D0, D3 through DF, FB, FC, and FF), and punctuation:

    These three categories sort ahead of alphanumeric characters in category order (that is, General control characters first) and in ascending code point order within each category (for example, 00 sorts ahead of 01).

  • Hebrew and left-to-right alphanumeric characters (shown in the Hebrew sort order table that follows):

    Left-to-right text is always sorted ahead of Hebrew text.

    Left-to-right text sorting is not case sensitive. For example, although uppercase "A" is listed before lowercase "a" in the table on the following page, Hebrew Access treats these characters equally and does not provide any sorting preference to either character.

    Unmarked left-to-right text (without diacritics) is sorted before marked left-to-right text.

The following table lists the alphanumeric characters of the Hebrew code page along with their respective hexadecimal code points. Characters (Char) are arranged in columns according to their sort order, starting in the upper-left corner.

Hebrew sort order


 Преобразование текстовых файлов формата ANSI в двунаправленный формат

Convert bidirectional text files from ANSI

Сведения, относящиеся к конкретным языкам

The ConvText utility provides more support (additional code pages and visual text layout options) than is found in the Microsoft Access 2000 Import Text Wizard to convert bidirectional files from ANSI characters. ConvText is installed as part of Microsoft Access 2000.

  1. Export the Access object you want to convert to a non-ANSI code page.

  2. In the Program Files\Microsoft Office\Office folder, double-click the ConvText.exe icon.

  3. Click Convert From Windows ANSI Code Page.

  4. Type file names in the Source and Target boxes, or click Browse.

  5. Select the code page, text layout, file type, and file type parameters that match the target text file you are converting to.

  6. Click Load. You can also click Save to retain the conversion specifications.

  7. Click Convert.


 Преобразование текстовых файлов двунаправленного формата в формат ANSI

Convert bidirectional text files to ANSI

Сведения, относящиеся к конкретным языкам

The ConvText utility provides more support (additional code pages and visual text layout options) than is found in the Microsoft Access 2000 Import Text Wizard to convert bidirectional files to ANSI characters. ConvText is installed as part of Access 2000.

  1. In the Program Files\Microsoft Office\Office folder, double-click the ConvText.exe icon.

  2. Click Convert To Windows ANSI Code Page.

  3. Type file names in the Source and Target boxes, or click Browse.

  4. Select the code page, text layout, file type, and file type parameters that match the source text file you are converting.

  5. Click Load. You can also click Save to retain the conversion specifications.

  6. Click Convert.

  7. Import the converted text file into Access.

All field names and records from the original table/worksheet will be fully recreated in a new table.


 Преобразование отчетов, сохраненных в виде текстовых файлов, в формат ANSI

Convert reports saved as text files to ANSI characters

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

Reports exported as text files using the Save as/Export command (File menu) are saved as simple text files with fields in logical, not visual, order. You can use the resulting file with a number of different programs, but the file can be hard to read when it contains bidirectional text. Depending on the report complexity, a viewable version of the report can frequently be obtained by opening the file in Notepad and switching document reading order by using CTRL+LEFT SHIFT and CTRL+RIGHT SHIFT.

What do you want to do?

Преобразование текстовых файлов двунаправленного формата в формат ANSI

Преобразование текстовых файлов формата ANSI в двунаправленный формат


Порядок сортировки символов японского алфавита

Сведения, относящиеся к конкретным языкам

Символы японского алфавита сортируются в следующем порядке.

  • Хирагана и катакана сортируются в порядке слоговой азбуки кана.

  • Английские буквы сортируются по алфавиту. Различий между прописными и строчными буквами не делается.

  • Числа сортируются по убыванию.

  • Различий между английскими символами и знаками шириной в полшага и в полный шаг не делается.

  • Другие символы канджи, иероглифы и пр. сортируются по порядку кодов Shift-JIS.

В слоговой азбуке кана используется следующий порядок:

  • Длинные гласные ( [image]) рассматриваются как гласные предыдущего слога. Например, « [image] [image] [image] [image] [image] [image] » рассматривается как « [image] [image] [image] [image] [image] [image] ».

  • Знаки повторения (« [image] ») рассматриваются в качестве такого же символа, что и символ, предшествующий знаку повторения. Например, « [image] [image] [image] » рассматривается как « [image] [image] [image] ».

  • Звонкие и глухие звуки сортируются в следующем порядке: глухой звук, звонкий звук, полузвонкий звук.

  • Различий между знаками хирагана, катакана шириной в полный шаг и катакана шириной в полшага не делается.


 Общие сведения о проекте Microsoft Access

Общие сведения о проекте Microsoft Access

Данный раздел содержит справочные сведения по следующим вопросам.

Что такое проект Microsoft Access?

Поддерживаемые базы данных Microsoft SQL Server

Работа с проектом Access

Прочее

Что такое проект Microsoft Access?

Проект Microsoft Access (.adp) является новым типом файлов Access, обеспечивающим эффективный, естественный доступ к базам данных Microsoft SQL Server с помощью архитектуры компонентов OLE DB. Используя проекты Access, можно создавать приложения в архитектуре клиент/сервер так же легко, как приложения файлового сервера. Такое приложение в архитектуре клиент/сервер может быть традиционным решением, основанным на формах и отчетах, или решением на базе Интернета, использующим страницы доступа к данным, либо сочетать в себе весь спектр возможностей.

Проект Microsoft Access взаимодействует с базой данных Microsoft SQL Server

Проект Access назван проектом потому, что содержит только программные или HTML-объекты базы данных: формы, отчеты, страницы доступа к данным, макросы и модули. Эти объекты базы данных используются для создания приложений. В отличие от базы данных Microsoft Access, проект Access не содержит объектов, основанных на данных или на определениях данных: таблиц, представлений, схем баз данных или сохраненных процедур (которые также могут содержать программу приложения). Вместо этого перечисленные объекты базы данных хранятся в базе данных SQL Server.

Для создания приложения и доступа к данным проект Access следует подключить к базе данных SQL Server с помощью команды Создать из меню Файл или мастера баз данных. См. сведения о создании проекта Access.

Возврат в начало

Поддерживаемые базы данных Microsoft SQL Server

Допускается подключение к одной из следующих баз данных SQL Server.

  • Microsoft SQL Server 7.0 в операционных системах Microsoft Windows NT версии 4.0 или более поздней (с пакетом Microsoft Windows NT Service Pack версии 4 или более поздней) и Microsoft Windows 95 или более поздней версии.

  • Microsoft Data Engine (MSDE) в Windows NT версии 4.0 или более поздней и Windows 95 или более поздней версии.

  • SQL Server 6.5 в Windows NT версии 4.0 или более поздней (с пакетом SQL Server Service Pack версии 5 или более поздней).

Возврат в начало

Работа с проектом Access

Работа с проектом Access очень похожа на работу с базой данных Access. Процесс создания форм, отчетов, страниц доступа к данным, макросов и модулей практически не отличается от используемого при создании базы данных Access.

После подключения к базе данных SQL Server можно просматривать, создавать, изменять и удалять таблицы, представления, сохраненные процедуры и схемы баз данных с помощью средств разработки Microsoft SQL Server Design Tools, включающих те же инструменты, что используются в Microsoft Visual Interdev и Microsoft Visual Basic. Хотя пользовательский интерфейс для работы с этими объектами базы данных отличается от эквивалентных объектов баз данных в базе данных Access, он настолько же дружественен. Проект Access также содержит многие мастера, используемые в базах данных Access, например, мастер форм, мастер отчетов и мастер страниц, с помощью которых можно быстро создать прототип простого приложения.

Возврат в начало

Прочее

Архитектура OLE DB и Data Link

Ядро MSDE (Microsoft Data Engine)

Использование мастера преобразования в формат SQL Server

Оптимизация проекта Microsoft Access

Документация по Microsoft SQL Server

Возврат в начало


 Архитектура OLE DB и Data Link

Архитектура OLE DB и Data Link

Microsoft Access 2000 предоставляет внутренний интерфейс пользователя и интерфейс программирования OLE DB, которые можно использовать для доступа к базам данных Microsoft Access, базам данных Microsoft SQL Server и другим источникам данных. Данный раздел содержит справочные сведения по следующим вопросам.

Microsoft Access и архитектура OLE DB

Определение сведений о подключении

Создание файлов Microsoft Data Link и доступ к ним

Установка средства доступа OLE DB

Программирование OLE DB

Возврат в начало

Microsoft Access и архитектура OLE DB

OLE DB — это архитектура компонентов базы данных, реализующая эффективный доступ по сети и через Интернет к источникам данных многих типов, в том числе реляционным источникам данных, почтовым файлам, неформатированным текстовым файлам и электронным таблицам. В архитектуре OLE DB приложения, получающие доступ к данным, называют потребителями данных (например, Microsoft Access 2000 или Microsoft Visual Basic 6.0), а программы, обеспечивающие внутренний доступ к данным, называют средствами доступа к базам данных (например, Microsoft OLE DB Provider для SQL Server или Microsoft Jet 4.0 OLE DB Provider).

Возврат в начало

Определение сведений о подключении

Связь с данными представляет собой сведения о подключении, используемые потребителем данных для доступа к источнику данных через средство доступа OLE DB или этот источник данных. В интерфейсе пользователя Microsoft Access связь с данными для средства доступа OLE DB определяется в диалоговом окне Data Link Properties следующими способами.

  • Для подключения к базе данных Microsoft SQL Server при создании проекта Microsoft Access с помощью команды Создать из меню Файл или мастера баз данных. См. сведения о создании проекта Access.

  • Для переопределения сведений о подключении для проекта Access с помощью команды Подключение из меню Файл. Таким образом можно легко переключиться из тестовой базы данных в конечную или с первичного сервера на вторичный. См. сведения об изменении подключения к проекту Access.

  • Для переопределения сведений о подключении существующей страницы доступа к данным в режиме страницы щелчкните правой кнопкой список полей и выберите команду Подключение. При создании страницы доступа к данным Microsoft Access автоматически определяет сведения о подключении, выполняя подключение к базе данных или проекту Access, открытому в тот момент. См. сведения об изменении подключения к странице.

  • Для подключения к Web-странице, открытой с помощью диалогового окна Открытие файла базы данных (меню Файл, команда Открыть) из окна пустой базы данных.

  • Для создания сводного списка или изменения подключения к сводному списку.

Каждое средство доступа OLE DB определяет свои сведения о подключении. Например, Microsoft OLE DB Provider для SQL Server требует имени сервера, папки на сервере и имени пользователя; можно определить и дополнительные сведения, например, пароль и режим использования интегрированной защиты Microsoft Windows NT.

Как правило, используется следующий порядок определения сведений о подключении в диалоговом окне Data Link Properties.

  • Перейдите на вкладку Provider, выберите средство доступа OLE DB, а затем нажмите кнопку Next, чтобы отобразить вкладку Connection для ввода конкретных сведений о подключении для выбранного средства доступа OLE DB. Обратите внимание, что, в зависимости о способа перехода к диалоговому окну Data Link Properties, вкладка Provider может быть недоступна. Access автоматически определяет в качестве средства доступа текущую открытую базу данных Access или базу данных SQL Server, подключенную к открытому проекту Access.

  • Перейдите на вкладку Advanced для предоставления дополнительных сведений, например, о настройках сети и разрешениях на доступ.

  • Перейдите на вкладку All, чтобы определить свойства инициализации для выбранного средства доступа OLE DB.

Дополнительные сведения об использовании диалогового окна Data Link Properties и об определении сведений о подключении к каждому средству доступа OLE DB содержатся в файла справки по этому диалоговому окну (msdasc.hlp).

Возврат в начало

Создание файлов Microsoft Data Link и доступ к ним

Хотя подключение к средству доступа OLE DB как правило выполняется в Microsoft Access с помощью диалогового окна Data Link Properties, может потребоваться определение сведений о подключении для средства доступа OLE DB в файле Microsoft Data Link (.udl), чтобы использовать их в программе Visual Basic, а также для организации и управления сведениями о подключении на компьютере.

Чтобы создать сведения о подключении таким образом, откройте проводник Microsoft Windows, выберите в меню Создать команду Microsoft Data Link, создайте файл Microsoft Data Link, выделите его, щелкните правой кнопкой, а затем выберите команду Свойства.

Возврат в начало

Установка средства доступа OLE DB

Microsoft Jet 4.0 OLE DB Provider и Microsoft OLE DB Provider для SQL Server устанавливаются автоматически при установке Microsoft Office 2000 или Microsoft Access 2000 отдельно. Также устанавливаются дополнительные средства доступа OLE DB, включая OLE DB Provider для ODBC Drivers и OLE DB Provider для Oracle. Чтобы просмотреть полный список средств доступа OLE DB, установленных на компьютере, откройте диалоговое окно Data Link Properties из файла Data Link, а затем перейдите на вкладку Provider.

При отображении страницы из Microsoft Internet Explorer версии 5 или более поздней пользователем, имеющим на компьютере лицензию Microsoft Office 2000 (если это необходимо), страница автоматически загружает необходимые средства доступа OLE DB и другие связанные файлы путем установки Web-компонентов Microsoft Office.

Возврат в начало

Программирование OLE DB

Кроме того, существует возможность программного доступа к данным через средство доступа OLE DB в Visual Basic для приложений в объектах данных ActiveX (ADO) путем определения строки подключения в свойстве ConnectionString метода Open объекта Connection для передачи сведений о подключении средству доступа OLE DB. Дополнительные сведения см. в книге Руководство программиста по Visual Basic для Microsoft Office 2000.

Возврат в начало


 Ядро MSDE (Microsoft Data Engine)

Ядро MSDE (Microsoft Data Engine)

Данный раздел содержит сведения о ядре MSDE (Microsoft Data Engine).

Что такое MSDE?

Использование MSDE

Установка MSDE

Дополнительные сведения

Что такое MSDE?

MSDE — это новая технология, обеспечивающая локальное хранение данных, совместимое с Microsoft SQL Server 7.0. MSDE также можно использовать для удаленного хранения данных. MSDE можно рассматривать как ядро обработки данных в архитектуре клиент/сервер, альтернативное ядру базы данных Microsoft Jet для файлового сервера. MSDE работает в Microsoft Windows версии NT 4.0 или более поздней либо в Windows 95 или более поздней версии. Технология MSDE разработана и оптимизирована для использования на малых компьютерах, таких как рабочие станции пользователей или малые серверы рабочих групп.

Поскольку MSDE основывается на том же ядре обработки данных, то и SQL Server, большинство проектов Microsoft Access или приложений в архитектуре клиент/сервер выполняются в любой версии без изменений. Однако в отличие от SQL Server 7.0, ядро MSDE имеет предел 2 Гбайт на размер базы данных, не поддерживает симметричную многопроцессорную обработку (SMP) в Windows 95 или более поздней версии и не может быть издателем репликации (хотя может быть подписчиком репликации) при использовании транзакционной репликации.

Возврат в начало

Использование MSDE

MSDE может использоваться в качестве альтернативы базам данных Microsoft Access в следующих случаях.

  • В качестве базы данных малого сервера рабочей группы. Приложения разрабатываются с помощью проекта Access, подключенного к MSDE. Предполагается, что рабочая группа и ее деловые потребности могут со временем расти, пока однажды не возникнет необходимость в использовании всех возможностей приложения SQL Server 7.0, выполняемого на более крупном сервере сети.

  • В качестве подписчика репликации в среде реплицированной базы данных SQL Server. Например, при наличии перемещающихся пользователей, работающих вдали от основного рабочего места, обновляющих MSDE на переносных или не подключенных к сети компьютерах, но затем периодически подключающихся к главной базы данных SQL Server для согласования изменений.

  • Для простоты разработки и тестирования проекта Access или приложения в архитектуре клиент/сервер на персональном компьютере или рабочей станции и последующего изменения сведений о подключении проекта Access для его подключения к базе данных SQL Server на удаленном сервере для окончательного тестирования и ввода в эксплуатацию.

Возврат в начало

Установка MSDE

Хотя MSDE не устанавливается вместе с Microsoft Office 2000 или Microsoft Access 2000, можно установить MSDE с того же компакт-диска, выполнив программу Setupsql.exe, расположенную в папке \Sql\x86\Setup.

Версия MSDE для Microsoft Office 2000 также содержит дополнительные файлы справки, расположенные в папке \Windows\Help, справку по SQL Server Enterprise Manager (entmgr.chm) и справку мастера репликации (replwiz.chm), которые можно использовать с соответствующими служебными программами базы данных SQL Server, доступными из меню Access Сервис.

После установки MSDE на компьютер с операционной системой Microsoft Windows 95 или более поздней версией может потребоваться запуск SQL Server Service Manager (дважды щелкните значок MSSQLServer на панели задач, а затем нажмите кнопку Start/Continue). В Windows NT версии 4.0 или более поздней MSDE запускается автоматически; для автоматического запуска MSDE в Windows 95 или более поздней версии следует установить флажок Auto-Start service when OS starts в окне диспетчера SQL Server Service Manager.

Возврат в начало

Дополнительные сведения

Создание проекта Access с помощью мастера баз данных

Подключение проекта Access к базе данных SQL Server

Репликация в проекте Microsoft Access

Использование служебных программ баз данных Microsoft SQL Server из Microsoft Access

Документация по Microsoft SQL Server

Возврат в начало


 Оптимизация проекта Microsoft Access

Оптимизация проекта Microsoft Access

В приложениях клиент/сервер основные правила для снижения загруженности сети и оптимизации производительности приложения таковы: выполняйте обработку данных на сервере, сведите к минимуму обмен сигналами с сервером для доступа к данным, а также ограничьте загрузку данных с сервера. Данный раздел содержит справочные сведения по следующим вопросам.

OLE DB и среда клиент/сервер

Обработка данных на сервере

Ограничение данных, загружаемых с сервера

Оптимизация базы данных Microsoft SQL Server

Оптимизация форм

Оптимизация отчетов

Дополнительные сведения

OLE DB и среда клиент/сервер

Проекты Microsoft Access используют OLE DB для подключения и связи с базой данных SQL Server. Архитектура OLE DB создана специалистами Майкрософт для эффективной работы в среде клиент/сервер.

При доступе к данным через форму или таблицу OLE DB загружает обновляемый статический набор записей из базы данных SQL Server (не превышающий предельное число записей) и кэширует данные на клиентском компьютере — совершая цикл обмена с сервером. Access загружает данные асинхронно, что означает возможность продолжения взаимодействия с Access во время загрузки данных. При работе с данными в форме или таблице (просмотр, фильтрация, сортировка, поиск и обновление данных) работа ведется с данными, кэшированными на клиентском компьютере.

Возврат в начало

Обработка данных на сервере

Для обработки данных на сервере можно использовать сохраненные процедуры и триггеры; кроме того, можно отсортировать данные на сервере перед их загрузкой.

Сохраненная процедура представляет собой заранее откомпилированную последовательность инструкций SQL и необязательных управляющих инструкций, которая способна принимать параметры и обрабатывается в Microsoft SQL Server как одна программная единица. Сохраненные процедуры располагаются в базе данных SQL Server. Поскольку сохраненные процедуры компилируются на сервере при создании, они выполняются быстрее, чем отдельные инструкции SQL, а выполнение сохраненных процедур на сервере позволяет использовать мощь процессора сервера. См. сведения о работе с сохраненными процедурами.

Триггеры — это особый сорт сохраненных процедур, автоматически выполняемых при обновлении, вставке или удалении данных. Триггеры используются для проверки бизнес-правил и ограничений, более сложных, чем определяемые посредством проверяемых ограничений. В отличие от проверяемых ограничений, триггеры могут ссылаться на столбцы других таблиц. Например, триггер может отменить обновления, пытающиеся применить скидку (хранящуюся в таблице скидок) к книгам (хранящимся в таблице названий) стоимостью менее 10 рублей. См. сведения о работе с триггерами.

Сортировка записей на сервере выполняется с помощью сохраненной процедуры или инструкции SQL, указанной в качестве значения свойства Источник записей (RecordSource) формы или отчета (выполняемого на сервере). Сортировка записей на сервере — это еще один способ использования мощи процессора сервера. См. сведения о способах сортировки.

Возврат в начало

Ограничение данных, загружаемых с сервера

Объем данных, загружаемых из базы данных SQL Server, следует по возможности ограничивать. Используйте для этого представления, сохраненные процедуры, серверные фильтры и предложения WHERE в инструкциях SQL, ограничивающие круг данных, отображаемых для пользователей в формах или таблицах только нужными данными. Вообще, избегайте разрабатывать сценарии приложений, в которых пользователи могут перемещаться по базе данных без ограничений.

Для ограничения данных, отображаемых в форме или отчете, обычно используется кнопка предельного числа записей или свойство Максимальное число записей (MaxRecords).

Кроме того, можно использовать серверные фильтры для ограничения записей до их загрузки из базы данных на сервере, а также фильтры для дальнейшего ограничения записей на клиентском компьютере. См. сведения о создании фильтров. Фильтр можно определить в свойстве Серверный фильтр (ServerFilter) формы или отчета. Также можно оптимизировать производительность списков значений в окнах Серверный фильтр по форме и Фильтр по форме, изменив свойство Применение автофильтра (FilterLookup) для ограничения числа отображаемых значений при загрузке с сервера или клиентского компьютера. См. сведения об оптимизации производительности фильтра.

Возврат в начало

Оптимизация базы данных SQL Server

Ниже приведены основные рекомендации по оптимизации производительности базы данных SQL Server. Подробные сведения о повышении производительности баз данных SQL Server см. в документации по SQL Server.

  • Разрабатывайте таблицы, не содержащие лишних данных. Хорошая структура таблицы является необходимым условием быстрой загрузки и обновлений данных.

  • Обеспечьте целостность данных, сохраняющую отношения, определенные между таблицами, при добавлении, обновлении или удалении строк в этих таблицах путем определения в связанных таблицах ограничений по первичному ключу и внешнему ключу.

  • Выбирайте подходящий тип данных для полей. Это поможет уменьшить размеры базы данных и увеличит скорость выполнения операций объединения. При описании поля следует задать для него тип данных наименьшего размера, позволяющий хранить нужные данные.

  • Создавайте индексы для сортируемых и объединяемых полей, а также для полей, для которых заданы условия отбора. Существенное повышение скорости выполнения запросов приносит индексирование полей, расположенных по обе стороны объединения, а также индексирование всех полей, используемых для заданий условий отбора в запросе. Тем не менее, индексы могут снизить скорость вставки, обновления и удаления данных.

  • Добавляйте в таблицы поля timestamp для повышения производительности удаления и обновления данных, особенно если таблицы содержит большое количество полей. SQL Server использует поля timestamp для указания на то, что запись была изменена (не времени ее изменения), путем создания поля с уникальным значением и последующего обновления этого поля при каждом обновлении записи. SQL Server использует значения полей timestamp перед обновлением записи, чтобы определить, была ли она изменена. В целом, поле timestamp обеспечивает наилучшую производительность и надежность, особенно в многопользовательской среде. Без поля timestamp SQL Server должен проверить все поля записи, чтобы определить, была ли она изменена, а это снижает производительность.

  • Время от времени выполняйте сжатие базы данных SQL Server для экономии дискового пространства, а также реорганизацию индексов и данных для более быстрого доступа.

Возврат в начало

Оптимизация форм

При разработке формы определите необходимые данные и функции и отложите запрашивание этих данных и функций с сервера до тех пор, пока эти сведения не понадобятся пользователю. Например, создайте форму таким образом, чтобы при ее открытии данные с сервера не загружались. Можно, например, добавить в форму кнопку для загрузки данных.

Поля, загрузка данных для которых с сервера занимает много времени (например, поля текста и изображений), отображайте только по запросу. Возможно использование следующих способов.

  • Поместите поля текста и изображений в подчиненную форму, использующую тот же источник данных. Access будет извлекать текст или изображение только для текущей записи.

  • Отобразите наиболее важные поля в главной форме и предоставьте кнопку с подписью «Дополнительные сведения» для открытия другой формы, содержащей другие поля. Вторая форма при этом основывается на запросе, параметры которого задаются первичным ключом главной формы.

  • Если в приложение интенсивно вводятся данные, например, заказы, создайте специальную форму для добавления записей, задав для ее свойства Ввод данных (DataEntry) значение «Да». При открытии этой формы для ввода новых данных Access не отображает все существующие записи. Это экономит время, поскольку не приходится загружать все записи с сервера.

  • Если форма или отчет основаны на сохраненной процедуре с параметрами, используйте для указания значений параметров свойство Input Parameters.

Используйте инструкции SQL UPDATE и DELETE с соответствующим предложением WHERE для обновления или удаления нескольких записей, отвечающих одним и тем же условиям. Это более эффективно, чем открывать набор записей и обновлять или удалять записи по одной.

Возврат в начало

Оптимизация отчетов

Вместо печати длинных отчетов разбивайте отчеты на более мелкие подмножества данных с использованием в качестве источников данных представлений, сохраненных процедур и инструкций SQL, либо с помощью фильтров.

При разработке отчетов пользуйтесь просмотром образца вместо предварительного просмотра. В режиме просмотра образца можно быстро просмотреть макет, включающий только образцы данных. По окончании работы над макетом отчета проверьте данные, открыв отчет в режиме предварительного просмотра.

Обычно отчеты создаются и распространяются по расписанию, в соответствии с деловыми циклами, например, еженедельные сводки биржевой активности, ежемесячные отчеты о продажах или ежеквартальные финансовые документы. Создавайте и распространяйте эти отчеты в виде снимков отчетов в пакетном файле. Для просмотра и печати таких отчетов пользователи могут использовать программу Просмотр снимков. Если пользователям постоянно нужны самые свежие отчеты, используйте страницы доступа к данным с группировкой.

Возврат в начало

Дополнительные сведения

Советы по оптимизации страниц доступа к данным

Оптимизация программ Visual Basic

Возврат в начало


 Документация по Microsoft SQL Server

Документация по Microsoft SQL Server

В справочной системе Microsoft Access и в книге Руководство программиста по Visual Basic для Microsoft Office 2000 описывается использование и программирование проектов Microsoft Access, подключенных к базам данных Microsoft SQL Server. Сведения по SQL Server могут потребоваться для получения ответов на возможные вопросы, относящиеся к этому продукту. Документация по SQL Server содержит следующие сведения.

Элемент | Описание
Электронная документация | Полная документация по SQL Server 7.0, включая справочную документацию по программированию и Transact-SQL, концептуальные сведения по SQL Server, а также основные инструкции по использованию SQL Server.
Справка по Transact-SQL | Справочные сведения о синтаксисе Transact-SQL. Примечание. Эти справочные сведения также доступны в окне содержания справочной системы Access.
Сообщения об ошибках SQL Server | Справочные сведения о сообщениях SQL Server об ошибках, их номерах, а также о действиях по их исправлению. Примечание. Эти справочные сведения также доступны в окне содержания справочной системы Access.
Справка по Enterprise Manager | Справочные сведения по администрированию баз данных SQL Server.
Мастер репликации | Справочные сведения по настройке и управлению репликацией.
Справка служебной программы настройки клиента | Справочные сведения по управлению параметрами сетевого подключения SQL Server.
Справка по драйверам ODBC | Справочные сведения о создании определений источников данных ODBC для SQL Server.
Справка по анализатору быстродействия | Справочные сведения о записи событий SQL Server в файл трассировки для анализа и воспроизведения.
Справка по анализатору запросов | Справочные сведения о графическом интерфейсе пользователя, используемом для разработки и проверки в интерактивном режиме инструкций Transact-SQL, пакетов и сценариев.
Справка по Data Transformation Services (DTS) Designer | Справочные сведения об импорте, экспорте и преобразовании различных источников данных.
SQL-DMO | Контекстно-зависимые справочные сведения, доступные из среды разработки для объектов SQL-DMO, свойств и методов.
Учебная база данных Pubs | Традиционная учебная база данных SQL Server.
Учебная база данных Northwind SQL | Новая учебная база данных, содержащая те же таблицы, что и в базе данных Access Northwind (в русской версии «Борей»), с добавлением примеров, специфичных для SQL Server.


 Использование проекта Microsoft Access в многопользовательской среде

Использование проекта Microsoft Access в многопользовательской среде

Существует несколько способов совместного использования данных проекта Microsoft Access (.adp), а также несколько вопросов, на которые следует обратить внимание при работе в многопользовательской среде. Данный раздел содержит справочные сведения по следующим вопросам.

Использование проектов Microsoft Access в многопользовательской среде

Выполнение параллельных обновлений

Совместное использование базы данных Microsoft SQL в Интернете

Репликация базы данных SQL Server

Использование проектов Microsoft Access в многопользовательской среде

В многопользовательской среде каждый пользователь работает с собственной копией файла проекта Access, подключенной к общей базе данных Microsoft SQL Server. Один и тот же файл проекта Access не может использоваться несколькими пользователями.

При открытии проекта Access он всегда открывается в монопольном режиме. При попытке открыть проект Access, уже открытый другим пользователем, Access выводит предупреждение о том, что этот файл открыт в монопольном режиме, и предлагает открыть копию, доступную только для чтения.

Практически при запуске приложения для совместной работе каждому пользователю этого приложения предоставляется копия файла проекта Access. В этом случае каждый пользователь получает собственную копию форм, отчетов, страниц доступа к данным, макросов и модулей. Но фактически совместная работа ведется с одной базой данных SQL Server и находящимися в этой базе данных таблицами, представлениями, сохраненными процедурами и схемами баз данных. Таким образом, в многопользовательской среде важно обеспечить достаточную защиту этих совместно используемых объектов базы данных, чтобы их целостность не нарушалась. См. сведения о защите проектов Access.

Возврат в начало

Выполнение параллельных обновлений

В многопользовательской среде с одной и той же записью могут одновременно работать несколько пользователей. Поскольку в то время, когда один пользователь пытается внести изменения в записи, другой пользователь может также вносить в них изменения или даже удалить данные, иногда могут возникать противоречия. В проектах Access для предотвращения конфликтов записей используется стратегия, которую называют нежесткой блокировкой записи.

Если запись, в которую вносятся изменения, была обновлена другим пользователем до ее сохранения, то Access выводит на экран окно сообщения с предупреждением о том, что в случае сохранения записи изменения, внесенные другим пользователем, будут утрачены. Возможны следующие варианты действий.

  • Нажмите кнопку Сохранить запись, чтобы сохранить запись, заменив изменения, внесенные другим пользователем.

  • Нажмите кнопку Копировать в буфер, чтобы сначала просмотреть изменения, внесенные другим пользователем, и согласовать их со своими.

  • Нажмите кнопку Отменить изменения, чтобы отменить свои изменения и принять изменения, внесенные другим пользователем.

Поскольку записи, с которыми ведется работа, могут добавляться, изменяться или удаляться другими пользователями, следует периодически обновлять отображение данных в режиме таблицы или формы с помощью команды Обновить (меню Записи).

Возврат в начало

Совместное использование базы данных Microsoft SQL в Интернете

Существует возможность создания страниц доступа к данным или вывода одного или нескольких объектов базы данных в генерируемый сервером файл HTML или статический файл HTML, отображения этих Web-страниц в обозревателе, таком как Microsoft Internet Explorer, и доступа к данным через эти Web-страницы. См. сведения о трех типах Web-страниц, создаваемых в Access.

Возврат в начало

Репликация базы данных SQL Server

При использовании двух компьютеров, например, стоящего в офисе и переносного, имеется возможность создавать реплики базы данных SQL Server и поддерживать синхронизацию этих реплик. При этом находящиеся в разных местах пользователи могут одновременно работать каждый со своей копией основной реплики, а затем синхронизировать их по сети через удаленное подключение или Интернет. См. сведения о репликации в проекте Access.

Возврат в начало


 Обновление данных в проекте Microsoft Access или на странице доступа к данным

Обновление данных в проекте Microsoft Access или на странице доступа к данным

Способ обновления данных в проекте Microsoft Access или на странице доступа к данным отличается от способа обновления данных в базе данных Microsoft Access. Пользователи и программисты должны помнить об этих отличиях. Данный раздел содержит следующие справочные сведения.

Основные правила обновления данных

Работа с обновляемыми статическими наборами записей

Отображение обновленных значений поля

Рекомендуемые способы обновления связанных данных

Основные правила обновления данных

Следующие правила применяются при обновлении данных из проекта Access или со страницы, подключенной к базе данных Access или к базе данных Microsoft SQL Server.

  • Для обновления любого поля (включая поле первичного ключа) в отдельной таблице или базовой таблице объединения необходимо определить уникальное поле или комбинацию полей в качестве полей ограничения первичного ключа, уникального ограничения или любого уникального индекса для этой таблицы.

  • Можно обновлять в формах и на страницах данные, основанные на объединении один-ко-многим, но только для полей на стороне «многие». При открытии представления или запуске в режиме таблицы сохраненной процедуры, содержащей объединение, данные будут по умолчанию доступны только для чтения. Однако, если задать свойство формы или страницы Однозначная таблица (UniqueTable) (см. обсуждение ниже), то можно обновлять данные этой формы или страницы, даже если она в качестве источника данных использует представление или сохраненную процедуру.

  • Для обновления представления или сохраненной процедуры необходимо иметь разрешения UPDATE, INSERT и DELETE на доступ к базовым таблицам, на которые ссылается представление или процедура, а также разрешение SELECT на доступ к представлению или разрешение EXECUTE на доступ к процедуре.

  • Обновление данных на страницах с группировкой невозможно, только на страницах без группировки.

  • Ни при каких обстоятельствах нельзя обновить данные, извлеченные из самообъединения (например, все сотрудники и менеджеры, которым они подчиняются).

  • При работе с базами данных Access.
    • Нельзя обновить форму, таблицу или страницу, базовая инструкция SQL источника записей которой содержит предложение GROUP BY или COMPUTE.

    • Нельзя обновлять поля, основанные на выражениях (например, «цена * количество AS общая_стоимость»).

    • Нельзя обновить форму, таблицу или страницу, основанную на отношении многие-ко-многим.

Возврат в начало

Работа с обновляемыми статическими наборами записей

Access 2000 поддерживает вставку, удаление и обновление данных только в строках уникальной таблицы (на стороне «многие» объединения) в обновляемых статических наборах записей, созданных при выполнении операции объединения «один-ко-многим» в представлении, сохраненной процедуре, возвращающей строки, или инструкции SQL. Access 2000 не позволяет обновлять поля на стороне объединения «один».

Для того чтобы набор записей был обновляемым, в форме или странице, основанной на объединении «один-ко-многим», должно определяться свойство Однозначная таблица (UniqueTable). Уникальная таблица располагается на стороне «многие» отношения «один-ко-многим». Таблицу называют уникальной потому, что одной ее записи соответствует только одна запись представления, возвращающей строки сохраненной процедуры или инструкции SQL. Например, в представлении, объединяющем таблицы «Клиенты» и «Заказы», таблица «Заказы» является уникальной, поскольку одна запись из этой таблицы соответствует не более чем одной уникальной записи в представлении. Напротив, одна запись в таблице «Клиенты» может соответствовать нескольким записям в представлении.

Кроме того, для источника записей, являющегося сохраненной процедурой или инструкцией SQL, содержащей маркеры параметров, если требуется отобразить текущее значение записи после ее обновления, необходимо также задать свойство Команда синхронизации (ResyncCommand). Обратите внимание, что если в этих случаях свойство Команда синхронизации (ResyncCommand) не задано, единственным последствием будет невозможность просмотра текущих значений записи после обновления или вставки. Обновление или вставка продолжают выполняться правильно. Для других типов источников данных Access отображает текущие значения даже в тех случаях, когда свойство Команда синхронизации (ResyncCommand) не задано.

В обновляемом статическом наборе записей текущие значения отображаются только в отредактированных или вновь вставленных записях после успешного сохранения (см. обсуждение ниже). Например, таблица «Заказы» содержит в качестве первичного ключа столбец кодов идентификации. При вставке в эту таблицу новое значение «КодЗаказа» отображается после сохранения записи или перехода к другой записи (что приводит к неявному сохранению записи). Точно так же в форме, основанной на представлении, объединяющем таблицы «Клиенты» и «Заказы», при обновлении поля «КодЗаказа» до другого значения «КодКлиента» адрес нового клиента отображается в поле «Адрес» только после сохранения записи.

Наконец, все ключевые поля или имя уникальной таблицы должны быть включены в список выбора инструкции SQL (хотя необязательно видимы). Также необходимо выбрать все столбцы, удовлетворяющие условию NOT NULL, для которых не определены параметры сервера по умолчанию, и предоставить в наборе записей значения для этих столбцов, за исключением полей с установленным свойством Identity.

Возврат в начало

Отображение обновленных значений поля

Как правило, при обновлении полей формы, таблицы или страницы Access может автоматически вставлять значения. Такую вставку определяют например, значение по умолчанию, вычисляемое поле, значение типа timestamp, поле типа identity/AutoNumber или действие, выполняемое триггером. Однако, в отличие от баз данных Access, отображение значения или результат операции проявляются после внесения записи. Это происходит потому, что Access выполняет операцию сначала на сервере, а затем обновляет текущее отображение на клиентском компьютере.

Возврат в начало

Рекомендуемые способы обновления связанных данных

Рекомендуемые способы обновления связанных данных перечислены ниже.

  • Автоформа является удобным способом создания форм, позволяющих обновлять представления или сохраненные процедуры, основанные на объединениях. Воспользуйтесь автоформой для быстрого создания формы, затем переключитесь в режим конструктора для задания свойства Однозначная таблица (UniqueTable). Можно также задать свойство Режим по умолчанию (DefaultView), если режим таблицы кажется вам предпочтительнее режима простой формы.

  • Для обновления данных в отношении «один-ко-многим» можно создать комбинацию форма/подчиненная форма. Например, вместо отображения данных в простой форме, объединяющей сведения о заказах и клиентах (в этом случае поля записей о клиентах будут доступны только для чтения), можно создать форму со сведениями о клиентах и подчиненную форму со сведениями о заказах. Поскольку форма и подчиненная форма используют два разных набора записей, можно обновлять все поля. Кроме того, можно отобразить эту комбинацию форма/подчиненная форма в виде таблицы с подтаблицей.

  • На странице комбинацию форма/подчиненная форма можно имитировать посредством связывания двух страниц, использующих поле гиперссылки, а затем воспользоваться Microsoft FrontPage для создания двух кадров, по одному для каждой страницы.

Возврат в начало


 Сравнение объектов базы данных в базе данных Microsoft Access и проекте Microsoft Access

Сравнение объектов базы данных в базе данных Microsoft Access и проекте Microsoft Access

В следующей таблице сравниваются объекты баз данных в базе данных Microsoft Access и проекте Microsoft Access.

База данных Access | Проект Access
Таблица | Таблица
Запрос на выборку | Представление
Запрос на изменение Запрос с параметрами | Сохраненная процедура
Межтабличная связь | Схема базы данных (графическое представление)
Форма | Форма
Отчет | Отчет
Страница доступа к данным | Страница доступа к данным
Макрос | Макрос
Модуль | Модуль

Примечание. Таблицы, представления, сохраненные процедуры и схемы баз данных физически сохраняются в базе данных Microsoft SQL, подключенной к проекту Access. См. сведения о проектах Access.


 Сравнение типов данных в базе данных Microsoft Access и проекте Microsoft Access

Сравнение типов данных в базе данных Microsoft Access и проекте Microsoft Access

В следующей таблице сравниваются типы данных в базе данных Microsoft Access и проекте Microsoft Access.

См. сведения о типах данных Access.

См. сведения о типах данных сервера SQL Server.

тип данных Microsoft Access | тип данных SQL Server
Логический | bit
Числовой (Байт) | tinyint
Числовой (Целое) | smallint
Числовой (Длинное целое) | int
Числовой (Одинарное с плавающей точкой) | real
Числовой (Двойное с плавающей точкой) | float
Денежный | money smallmoney
Действительное/числовой | decimal numeric
Дата, время | datetime smalldatetime
Счетчик (Последовательные) | int (с определенным свойством Identity)
Текстовый (n) | varchar(n) nvarchar(n)
Поле MЕМО | text
Объекты OLE | image
Код реплики (также используется название глобальный уникальный идентификатор (GUID)) | uniqueidentifier (только SQL Server версии 7.0)
Гиперссылки | ntext (гиперссылка не активна)
(отсутствует) | nchar
(отсутствует) | varbinary
(отсутствует) | user-defined
(отсутствует) | smallint
(отсутствует) | timestamp
(отсутствует) | char nchar

Примечания

  • В проекте Access префикс «n» является сокращением от «national» и означает, что тип данных подходит для кодировки Юникод. В базе данных Access все текстовые столбцы по умолчанию являются пригодными для кодировки Юникод.

  • Эквивалентом типу данных базы данных Access «Счетчик» в проекте Access является тип данных int, определенный со свойством Identity. Этот тип данных содержит генерируемые системой последовательные значения, однозначно определяющие каждую строку таблицы (например, идентификационные номера сотрудников). При вставке значений в таблицу со столбцом Identity Access автоматически генерирует значение следующего поля на основе последнего использованного значения Identity (задается в свойстве Identity Seed) и величиной приращения (задается в свойстве Identity Increment), указанного при создании столбца. Для того, чтобы этот тип данных действовал как тип данных «Счетчик», задайте для свойств Identity Seed и Identity Increment значение 1.

  • В типе данных «Логический» базы данных Microsoft Access хранится нуль (0) или минус единица (-1). База данных Access интерпретирует 0 как значение 0, «Нет» или False, а все остальное как значение -1, «Да» или True. Напротив, SQL Server хранит в типе данных bit нуль (0) или плюс единицу (+1). Проект Access интерпретирует 0 как значение False, а плюс единицу (+1) как значение True.

  • Хотя тип данных ntext не хранит активные гиперссылки, в форме проекта Access можно сделать гиперссылку активной, связав элемент управления с любым текстом и задав для свойства IsHyperlink значение True.


 Сравнение разделителей, операторов, констант и подстановочных знаков в базе данных Microsoft Access и проекте Microsoft Access

Сравнение разделителей, операторов, констант и подстановочных знаков в базе данных Microsoft Access и проекте Microsoft Access

В следующей таблице сравниваются разделители, операторы, константы и символы подстановки в базе данных Microsoft Access и проекте Microsoft Access.

Описание | База данных Access | Проект Access
Разделитель даты | Знак # | Одинарные кавычки (')
Ограничители строковых значений | Одинарные (') или прямые (") кавычки в начале и в конце строки | Одинарные кавычки (') в начале и в конце строки
Оператор Mod | mod | Знак процента (%)
Оператор слияния строк | Амперсанд (&) | Знак плюс (+)
Подстановочный знак (заменяет один символ) | Вопросительный знак (?) | Символ подчеркивания (_)
Подстановочный знак (заменяет любое число символов) | Звездочка (*) | Знак процента (%)
Константа | Да | 1
Константа | Вкл | 1
Константа | True | 1
Константа | Нет | 0
Константа | Выкл | 0
Константа | False | 0


 Различия в синтаксисе языка SQL в Microsoft Access и SQL Server

Различия в синтаксисе языка SQL в Microsoft Access и SQL Server

В следующей таблице дана сводка важных различий в синтаксисе языка SQL, используемого в Microsoft Access и Microsoft SQL Server, и способы обработки этих различий мастером преобразования в формат SQL Server. Эти справочные сведения можно также использовать при преобразовании синтаксиса SQL из приложения базы данных Microsoft Access в приложение проекта Microsoft Access вручную.

Элемент синтаксиса SQL Microsoft
Access 		Microsoft SQL
Server 		Мастер преобразования в формат SQL Server
Идентификаторы Ограничение в 64 символа.

Разрешены ключевые слова и специальные символы.

Может начинаться с любого символа.

 SQL Server 6.5:
  • ограничение в 30 символов;

  • ключевые слова и специальные символы не допускаются;

  • первый символ должен быть буквой.

SQL Server 7.0 полностью поддерживает идентификаторы Access.

 По необходимости преобразует в имена SQL Server.
Выходные поля | Разрешает одинаковые имена для нескольких выходных полей. | Составные имена выходных полей не поддерживаются в представлениях. | Добавляет псевдонимы для повторяющихся имен столбцов.
Разделитель даты | Знак «#» | Апостроф (') | Преобразует разделитель.
Логические константы | True, False; Вкл, Выкл; Да, Нет | Целые: 1 (true), 0 (false) | Преобразует константы.
Слияние строк Амперсанд (&) Знак плюс (+) Преобразует символ.

Примечание. В SQL Server амперсанд (&) используется для поразрядных логических операций AND.
Подстановочные знаки Звездочка (*) заменяет любое число символов.

Вопросительный знак (?) заменяет один символ.

Восклицательный знак (!) означает отсутствие в списке

Знак «#» означает одну цифру.

 Знак процента (%) заменяет любое число символов.

Символ подчеркивания (_) заменяет один символ.

Знак «^» означает отсутствие в списке

Эквивалент для знака «#» отсутствует.

 Преобразует символы.

Знак «#» преобразуется в [0-9] для подстановки вместо одной цифры.
TOP Автоматически включает связи при наличии предложения ORDER BY. SQL Server 6.5 не поддерживает.

SQL Server 7.0 требует явного предложения WITH TIES.

 Для SQL Server 6.5 игнорирует все запросы TOP.

Для SQL Server 7.0 добавляет предложение WITH TIES в конец всех запросов TOP, содержащих предложение ORDER BY.

CREATE INDEX Разрешены индексы по возрастанию и по убыванию.

Разрешает описание ключа и запрет или игнорирование пустых значений.

 Преобразует индекс.
DROP INDEX Синтаксис:

Drop Index <имя индекса> ON <имя таблицы>

 Синтаксис:

Drop Index <имя таблицы>, <имя индекса>

 Не преобразует.
DISTINCTROW | Поддерживается (допускается отбор уникальных записей). | Не поддерживается. | Не преобразует.
OWNERACCESS | Поддерживается (управляет разрешениями доступа во время выполнения). | Не поддерживается. | Удаляет из инструкции SQL.
Таблица в операции UNION Поддерживается (разрешается указание таблиц в следующем синтаксисе:

TABLE <имя таблицы>

Не поддерживается. Не преобразует.
ORDER BY в объединениях | Поддерживается. Допускается несколько предложений ORDER BY в запросах на объединение. | Поддерживается. Разрешено только одно предложение ORDER BY в конце инструкции. | Не преобразует.
TRANSFORM | Поддерживается. Используется для перекрестных запросов. | Не поддерживается | Не преобразует.
PARAMETERS | Поддерживается (записывается на языке SQL). | Не поддерживается. | Удаляет явные параметры из строки SQL.


Сравнение функций Visual Basic для приложений и Microsoft SQL Server Transact-SQL

В следующей таблице сравниваются функции Microsoft Visual Basic для приложений (VBA) и Microsoft SQL Server Transact-SQL. Обратите внимание, что мастер преобразования в формат SQL Server преобразует следующие функции VBA (которые могут встречаться в условиях на значение таблиц, полей и значений по умолчанию) в функции Transact-SQL. Данный раздел содержит справочные сведения по следующим вопросам.

Функции, обрабатывающие строковые значения

Функции преобразования

Функции, обрабатывающие даты

Математические функции

Функции, обрабатывающие строковые значения

Функции Visual Basic | Функции Transact-SQL
asc(x) | ascii(x)
chr$(x) | char(x)
lcase$(x) | lower(x)
len(x) | datalength(x)
ltrim$( x) | ltrim(x)
mid$(x,y,z) | substring(x,y,z)
right$(x,y) | right(x,y)
rtrim$(x) | rtrim(x)
space$( x) | space(x)
str$(x) | str(x)
ucase$( x) | upper(x)

Возврат в начало

Функции преобразования

Функции Visual Basic | Функции Transact-SQL
ccur(x) | convert(money,x)
cdbl(x) | convert(float,x)
cint(x) | convert(smallint,x)
clng(x) | convert(int,x)
csng(x) | convert(real,x)
cstr(x) | convert(varchar,x)
cvdate(x) | convert(datetime,x)

Возврат в начало

Функции, обрабатывающие даты

Функции Visual Basic | Функции Transact-SQL
date(x ) | convert(datetime,convert(varchar,getdate(x)))
dateadd("<компонентДаты Access>", x, y) | dateadd(<компонентДаты SQL Server>, x, y)
datediff("<компонентДаты Access>", x, y) | datediff(<компонентДаты SQL Server>, x, y)
datepart("<компонентДаты Access>", x) | datepart(<компонентДаты SQL Server>, x)
day(x) | datepart(дд,x)
hour(x) | datepart(чч,x)
minute(x) | datepart(ми,x)
month(x) | datepart(ме,x)
now(x) | getdate(x)
second(x) | datepart(сс,x)
weekday(x) | datepart(дн,x)
year(x) | datepart(гг,x)

Возврат в начало

Математические функции

Функции Visual Basic | Функции Transact-SQL
int(x) | floor(x)
sgn(x) | sign(x)

Возврат в начало


 Предпосылки и преимущества преобразования базы данных Microsoft Access в формат Microsoft SQL Server

Предпосылки и преимущества преобразования базы данных Microsoft Access в формат Microsoft SQL Server

Большинство приложений баз данных со временем разрастаются, становятся более сложными и число их пользователей также растет. На некотором этапе существования приложения базы данных Microsoft Access следует подумать о ее преобразовании в формат Microsoft SQL Server с целью оптимизации производительности, масштабируемости, безопасности, надежности, способности к восстановлению и доступности базы данных и приложения. Данный раздел содержит справочные сведения об основных доводах в пользу преобразования баз данных в формат SQL Server.

Высокая производительность и масштабируемость

Повышенная надежность

Улучшенная безопасность

Возможность быстрого восстановления

Надежность распространяемых данных и транзакций

Обработка данных на сервере

Высокая производительность и масштабируемость

Во многих случаях Microsoft SQL Server обеспечивает более высокую производительность, чем база данных Access. SQL Server также обеспечивает поддержку очень крупных баз данных, размером до одного терабайта, что значительно превышает существующий в настоящее время для баз данных Access предел в два Гбайт. К тому же, SQL Server весьма эффективно работает в среде Microsoft Windows NT, обрабатывая запросы параллельно (с использованием естественных потоков команд в пределах одного процесса для обработки запросов пользователя) и снижая до минимума требования к памяти при добавлении пользователей.

Возврат в начало

Повышенная надежность

С помощью Microsoft SQL Server можно выполнять динамическое резервное копирование (добавочное или полное) базы данных во время ее использования. Таким образом, пользователи избавлены от необходимости выходить из базы данных для резервного копирования данных. Это позволяет использовать базу данных 24 часа в сутки, семь дней в неделю.

Возврат в начало

Улучшенная безопасность

Microsoft SQL Server допускает интеграцию со средствами защиты операционной системы Windows NT, что обеспечивает единую процедуру для входа в сеть и в базу данных. Это значительно облегчает управление сложными схемами защиты. Кроме того, серверные базы данных SQL Server лучше защищены по той причине, что неавторизованные пользователи не могут получить доступ непосредственно к файлу базы данных, а должны сначала получить доступ к серверу.

Возврат в начало

Возможность быстрого восстановления

На случай сбоя системы (например, при аварийном завершении работы оперативной системы или отключении питания) в Microsoft SQL Server имеется механизм автоматического восстановления базы данных до последнего состояния согласованности всего за несколько минут, причем вмешательство администратора базы данных не требуется. Важные приложения могут быть восстановлены и повторно запущены сразу же.

Возврат в начало

Надежность распространяемых данных и транзакций

Обработка транзакций является важнейшим требованием для систем, предназначенных для поддержки критических приложений, например, банковское дело и ввод заказов в реальном времени. Microsoft SQL Server поддерживает огромные транзакции с ведением журнала транзакций, что гарантирует передачу или откат всех изменений, выполняемых в рамках транзакции.

Согласованность и возможность восстановления транзакций базы данных гарантируется даже в случае сбоя системы и при сложных обновлениях, выполняемых несколькими пользователями. SQL Server рассматривает все базы данных в пределах транзакции как одну обрабатываемую единицу. По определению, транзакция либо безопасно выполняется полностью с отражением всех результирующих изменений в базе данных, либо откатывается с отменой всех изменений в базе данных.

С помощью протокола двухуровневого завершения транзакций SQL Server может даже поддерживать синхронизированные транзакции, охватывающие несколько серверов, обеспечивая поддержание всех серверов сети в согласованном состоянии.

Возврат в начало

Обработка данных на сервере

Приложение Microsoft SQL Server с самого начала разрабатывалось как база даных в архитектуре клиент/сервер. Данные и индексы располагаются на одном сервере, доступ к которому часто осуществляется через сеть с нескольких клиентских компьютеров. SQL Server снижает загруженность сети, выполняя обработку запросов базы данных на сервере перед отправкой результатов на клиентский компьютер. Таким образом, создаваемые приложения в архитектуре клиент/сервер могут выполнять обработку там, где она выполняется лучше всего — на сервере.

В приложении также могут использоваться сохраненные процедуры и триггеры для централизации и разделения логики приложения, бизнес-правил и политик, сложных запросов, а также для выполнения программ проверки условий на значение и целостности данных на сервере, а не на клиентском компьютере.

Возврат в начало


 Преобразование базы данных Microsoft Access в формат SQL Server

Преобразование базы данных Microsoft Access в формат SQL Server

Такое преобразование представляет собой перенос некоторых или всех объектов базы данных из базы данных Microsoft Access (.mdb) в новую или существующую базу данных Microsoft SQL Server или новый проект Microsoft Access (.adp). Данный раздел содержит справочные сведения по следующим вопросам.

Способы преобразования в формат SQL Server

Отчет мастера преобразования в формат SQL Server

Преобразование программы приложения

Прочее

Способы преобразования в формат SQL Server

Мастер преобразует базу данных Access в новую или существующую базу данных Microsoft SQL Server версий 6.5 и 7.0 или в новый проект Access путем преобразования данных и определений данных в формат SQL Server и переноса объектов базы данных. Мастер преобразования в формат SQL Server можно использовать тремя способами.

  • Преобразовать только данные или определения данных из формата базы данных Access в формат базы данных SQL Server.

  • Создать клиентскую базу данных Access для серверной базы данных SQL Server, что позволит создать приложение типа клиент/сервер.

  • Преобразовать все объекты базы данных Access в формат проекта Access, что позволит создать приложение типа клиент/сервер.

Возврат в начало

Отчет мастера преобразования в формат SQL Server

Мастер создает отчет, содержащий подробное описание всех созданных объектов и перечень всех ошибок, возникших в ходе процесса. Мастер преобразования в формат SQL Server автоматически создает этот отчет в виде снимка отчета с тем же именем, что и у базы данных Access (например, Борей.snp), и сохраняет его в той же папке.

Отчет мастера преобразования в формат SQL Server содержит следующие сведения.

  • Сведения о базе данных, включая ее размер, а также журнал транзакций и имена и размеры устройств для базы данных SQL Server 6.5.

  • Параметры преобразования в формат SQL Server, включая атрибуты таблиц, выбранных для преобразования, и способ преобразования.

  • Сведения о таблицах, включая сравнение значений в Access и SQL Server для имен, типов данных, индексов, условий на значение, значений по умолчанию, триггеров, а также режим добавления штампов времени.

  • Все встреченные ошибки, включая переполнение базы данных или журнала транзакций, неадекватные разрешения, не созданные устройства или базы данных, пропущенные таблицы, значения по умолчанию или условия на значение, не установленные отношения, пропущенные запросы (поскольку они не могут быть преобразованы в синтаксис SQL Server), а также ошибки преобразования элементов управления и источников записей в формах и отчетах.

Возврат в начало

Преобразование программы приложения

Разработка и сборка оптимизированного приложения в архитектуре клиент/сервер отличается от разработки и сборки оптимизированного приложения файлового сервера. Поэтому может возникнуть необходимость модификации приложения для полного использования преимуществ SQL Server и проекта Access. После преобразования следует вручную преобразовать программы модулей из формата объектов доступа к данным (DAO) в формат объектов данных ActiveX (ADO), а также преобразовать запросы, которые не были преобразованы мастером (например, запросы со слишком глубоким уровнем вложения). Дополнительные сведения о разработке оптимизированных приложений в архитектуре клиент/сервер см. в книге Руководство программиста по Visual Basic для Microsoft Office 2000

Возврат в начало

Дополнительные сведения

Предварительные действия перед преобразованием базы данных Microsoft Access в формат SQL Server

Преобразование базы данных Microsoft Access в формат SQL Server

Оптимизация проекта Microsoft Access

Возврат в начало


 Предварительные действия перед преобразованием базы данных Microsoft Access в формат SQL Server

Предварительные действия перед преобразованием базы данных Microsoft Access в формат SQL Server

Перед преобразованием базы данных Microsoft Access в формат базы данных Microsoft SQL Server или проекта Microsoft Access, рекомендуется выполнить следующие действия.

Создайте резервную копию базы данных. Хотя мастер преобразования в формат SQL Server не удаляет из базы данных Access данные или объекты базы данных, перед преобразованием базы данных Access рекомендуется создать ее резервную копию.

Убедитесь в наличии достаточного места на диске. На диске, где будет храниться преобразованная база данных SQL Server, должно быть достаточно свободного места. Мастер преобразования лучше всего работает, когда на диске много свободного пространства.

Если на сервере вместительный диск, умножьте размер базы данных Access на два и зарезервируйте полученный объем дискового пространства. Это гарантирует наличие достаточного свободного места для преобразования базы данных с помощью мастера, даже с некоторым запасом. Если ожидается добавление в базу данных большого объема данных, используйте множитель побольше.

Внимание! Если мастер преобразования в формат SQL Server обнаружит недостаток дискового пространства на сервере, работа мастера прекращается, а часть базы данных и все устройства, созданные мастером, остаются на сервере. В этом случае устройства, базы данных и таблицы можно удалить с помощью Microsoft SQL Server Enterprise Manager.

Если нужно, создайте несколько дисковых устройств. При преобразовании к формату базы данных SQL Server 6.5 перед запуском мастера преобразования может потребоваться создание устройств. Мастер создает все новые устройства на том же физическом диске, на котором находится главная база данных. Если на сервере установлено несколько дисков, можно поместить базу данных на одном из них, а журнал транзакций на другом. В случае сбоя диска базу данных можно восстановить. Убедитесь, что оба диска достаточно велики. При необходимости создайте новые устройства.

В SQL Server базы данных и журналы транзакций могут занимать по несколько дисков, однако мастер преобразования позволяет указать только один диск для базы данных и один диск для журнала транзакций. Чтобы указать для базы данных или журнала транзакций несколько устройств, сделайте эти (и только эти) устройства используемыми по умолчанию. Затем запустите мастер преобразования в формат SQL Server и выберите устройство, используемое по умолчанию для базы данных или для журнала транзакций.

Примечание. Если размер новой базы данных SQL Server или журнала транзакций не требует использования всех устройств, заданных по умолчанию, SQL Server использует только устройства, необходимые для размещения базы данных или журнала транзакций.

Установите принтер по умолчанию. Для использования мастера преобразования в формат SQL Server необходимо установить принтер по умолчанию, поскольку мастер автоматически создает снимок отчета с отчета мастера.

Присвойте себе необходимые разрешения на доступ к базе данных Access. Для преобразования всех объектов базы данных необходимо иметь к ним доступ с разрешением на чтение макета.

Присвойте себе необходимые разрешения на доступ к базе данных SQL Server

  • Для преобразования существующей базы данных необходимы разрешения CREATE TABLE и CREATE DEFAULT.

  • Для построения новой базы данных необходимо разрешение CREATE DATABASE, а также разрешение SELECT на доступ к системным таблицам в главной базе данных.

  • Для создания новых устройств необходимо быть системным администратором.

С самого начала следуйте правилам задания имен в SQL Server 6.5. При преобразовании в формат базы данных SQL Server 6.5 мастер автоматически преобразует недопустимые имена, заменяя пробелы и недопустимые символы на символы подчеркивания (_). Однако рекомендуется по возможности следовать правилам задания имен в SQL Server 6.5 с самого начала. Имена в SQL Server 6.5 должны иметь длину не более 30 символов. Первый символ должен быть буквой или знаком «@». Остальные символы могут быть цифрами, буквами, знаками доллара ($), решетки (#) или подчеркивания (_). Использование пробелов не допускается.

Примечание. Имена баз данных SQL Server 7.0 полностью совместимы с именами баз данных Access.


 Преобразование базы данных Microsoft Access в формат SQL Server

Преобразование базы данных Microsoft Access в формат SQL Server

  1. Откройте базу данных Microsoft Access, которую требуется преобразовать.

  2. Выберите в меню Сервис команду Служебные программы и подкоманду Мастер преобразования в формат SQL Server.

  3. Следуйте инструкциям в диалоговых окнах мастера. Закончив, нажмите кнопку Готово.

  4. Для получения дополнительных сведений о параметрах каждого диалогового окна пользуйтесь кнопкой Справка.

Выполнение мастера преобразования в формат SQL Server начинается после нажатия кнопки Готово; дополнительные приглашения не выводятся. Все сообщения записываются в отчет мастера. Это особенно полезно, если требуется преобразовать большую базу данных без непосредственного наблюдения. При необходимости прервать процесс преобразования нажмите кнопку Отмена в окне состояния, выводимого мастером на экран после нажатия кнопки Готово.


 Назначение устройств хранения и размеров для базы данных и журнала транзакций

Назначение устройств хранения и размеров для базы данных и журнала транзакций

Если выбрано создание новой базы данных Microsoft SQL Server 6.5, мастер преобразования в формат SQL Server предлагает указать устройства хранения и размеры базы данных и журнала транзакций. Также следует ввести размеры памяти, предварительно выделяемой под базу данных и транзакции. Данный раздел содержит справочные сведения по выполнению следующих операций.

Ввод устройства хранения и размера базы данных

Ввод устройства хранения и размера журнала транзакций

Ввод размера базы данных и журнала транзакций

Возврат в начало

Ввод устройства хранения и размера базы данных

Все базы данных и журналы транзакций SQL Server размещаются на устройствах. Устройством называют совокупность логического расположения баз данных и журналов транзакций и физических файлов. При создании устройства SQL Server создает файл и резервирует указанный объем дискового пространства для использования.

Для системных администраторов мастер преобразования в формат SQL Server отображает объем доступного места на существующих устройствах. Выберите устройство с достаточным размером свободного места, ориентируясь по предполагаемому размеру базы данных.

Если ни на одном из существующих устройств нет достаточного свободного места, можно создать новое устройство с помощью мастера преобразования в формат SQL Server. Новые устройства должны иметь размер не менее предполагаемого размера базы данных. По возможности размер устройства должен превышать размер базы данных, позволяя в дальнейшем увеличивать базу данных или помещать на то же устройство другие базы данных или журналы транзакций.

Возврат в начало

Ввод устройства хранения и размера журнала транзакций

Журнал транзакций представляет собой хронологический список операций, выполняемых на сервере, который используется SQL Server для резервного копирования и восстановления базы данных.

Устройство, выбранное для журнала транзакций, должно иметь не менее одного Мбайт доступного пространства. Лучше всего помещать базу данных и соответствующий журнал транзакций на устройства, представляющие собой разные физические диски. Эти устройства должны быть созданы до запуска мастера преобразования в формат SQL Server, поскольку мастер создает все новые устройства на том же физическом диске, на котором находится устройство хранения главной базы данных.

При наличии только одного физического диска следует поместить базу данных и ее журнал транзакций на различных устройствах, что позволит восстанавливать базу данных.

Мастер преобразования в формат SQL Server создает журнал транзакций с использованием указанного размера. Размер журнала транзакций не должен быть меньше совокупного размера всех преобразуемых таблиц базы данных. Указанный размер не должен превышать размер доступного пространства на выбранном для журнала транзакций устройстве хранения.

Примечание. Для новых баз данных мастер преобразования в формат SQL Server обрезает файл журнала транзакций по контрольной отметке, если он переполняется до завершения преобразования. Однако возможно переполнение журнала транзакций по отдельной таблице. Если это происходит, Microsoft Access не преобразует эту таблицу и записывает в журнал мастера ошибку.

Возврат в начало

Ввод размера базы данных и журнала транзакций

При создании базы данных Microsoft SQL Server 6.5 выделяет для нее фиксированный размер дискового пространства на одном или нескольких устройствах. База данных не обязательно занимает все это пространство сразу. Размер базы данных представляет собой максимальный размер, который может быть достигнут базой данных.

Чтобы оценить размер дискового пространства, необходимого для базы данных, выясните размер базы данных Microsoft Access и прикиньте, во сколько раз больше будет размер новой базы данных SQL Server. Как правило каждый Мбайт данных Microsoft Access требует не менее чем от 1,3 до 1,5 Мбайт в SQL Server. Учтите, что размер файла базы данных Microsoft Access (.mdb) включает все объекты базы данных Microsoft Access, а не только данные.

Если на сервере вместительный диск, умножьте размер базы данных Access на два. Это гарантирует наличие достаточного свободного места для преобразования базы данных с помощью мастера, даже с некоторым запасом. Если ожидается добавление в базу данных большого объема данных, используйте множитель побольше.

Размер журнала транзакций должен составлять около 25% процентов размера базы данных.

Возврат в начало


 Выбор таблиц, которые будут преобразованы в формат SQL Server

Выбор таблиц, которые будут преобразованы в формат SQL Server

Существует возможность выбора таблиц базы данных Microsoft Access, которые требуется преобразовать в формат базы данных Microsoft SQL Server. Данный раздел содержит справочные сведения по следующим вопросам.

Связанные таблицы

Запросы на дублирование

Эффект от использования DRI (Declarative Referential Integrity — декларативная целостность данных)

Связанные таблицы

Список Доступные таблицы включает все связанные таблицы, кроме таблиц Microsoft SQL Server, уже находящихся в базе данных SQL Server. Указывающие на базу данных SQL Server связанные таблицы, выбранные для преобразования, автоматически появляются в списке Экспорт в базу данных SQL Server и не могут быть удалены. Все таблицы, имена которых оканчиваются на «_локальная», исключаются из списка доступных таблиц во избежание преобразования таблиц, которые уже были преобразованы. Если требуется повторное преобразование этих таблиц, следует переименовать их перед выполнением мастера преобразования в формат SQL Server, удалив суффикс «_local». Таблицы, не отображаемые в данный момент в окне базы данных, включая скрытые и системные таблицы, также исключаются.

Возврат в начало

Запросы на дублирование

Если выбран вариант связывания таблиц Microsoft SQL Server с базой данных Access, мастер преобразования в формат SQL Server может создать запрос на дублирование для устранения различий в именах между Microsoft Access и Microsoft SQL Server 6.5, не допускающем в именах полей пробелов или специальных символов, отличных от знака «#», знака доллара ($) и символа подчеркивания (_). Мастер преобразования автоматически заменяет пробелы и недопустимые символы на символ «_». В случае изменения имен полей при преобразовании таблицы мастер добавляет к имени связанной таблицы суффикс «_remote» (например, Сотрудники_remote), а к имени исходной таблицы суффикс «_local» (например, Сотрудники_local). Затем мастер преобразования в формат SQL Server создает запрос на дублирование с именем «Сотрудники» для обеспечения дальнейшей правильной работы форм, отчетов и запросов в новой связанной таблице SQL Server.

Возврат в начало

Эффект от использования DRI (Declarative Referential Integrity — декларативная целостность данных)

Если при выполнении преобразования в формат SQL Server версии 6.5 выбран параметр DRI для предварительного преобразования таблиц, декларативная целостность данных предотвращает замену ранее преобразованных таблиц. Можно сбросить (удалить) целую преобразованную базу данных SQL Server с помощью SQL Server's Enterprise Manager и последующего повторного преобразования базы данных Access. Если требуется повторно преобразовать только некоторые таблицы, необходимо сначала сбросить эти таблицы и все другие таблицы, с которыми они связаны, начиная с таблицы на стороне «многие» в отношении «один-ко-многим» (таблица, на первичный ключ которой нет ссылок из другой таблицы), а затем повторно преобразовать весь набор таблиц. Мастер преобразования в формат SQL Server может установить отношения DRI только между связанными таблицами, преобразованными в одно и то же время, но не может установить отношения между этими таблицами и таблицами, уже существовавшими на сервере.

Возврат в начало


 Выбор атрибутов таблиц, которые будут преобразованы в формат SQL Server

Выбор атрибутов таблиц, которые будут преобразованы в формат SQL Server

Существует возможность выбора атрибутов таблиц, которые следует преобразовать в формат базы данных Microsoft SQL Server. Мастер преобразования как минимум преобразует имена полей Access в допустимые имена полей SQL Server и преобразует типы данных Access в эквивалентные типы данных SQL Server. По умолчанию для преобразования выбираются все атрибуты. Данный раздел содержит справочные сведения о результатах выбора следующих параметров.

Преобразование индексов

Преобразование условий на значение

Преобразование значений по умолчанию

Преобразование связей между таблицами

Добавление в таблицы полей штампа времени

Отказ от преобразования данных

Преобразование индексов

Если установлен флажок Индексы, мастер преобразования в формат SQL Server преобразует все индексы.

Мастер преобразует первичные ключи Microsoft Access в некластеризованные, уникальные индексы Microsoft SQL Server и помечает их как первичные ключи SQL Server. Если выбрано связывание преобразуемой таблицы SQL Server с базой данных Access, мастер преобразования добавляет также префикс «aaaaa». Microsoft Access выбирает в качестве первичного ключа первый индекс по алфавиту из списка доступных индексов, а префикс «aaaaa» гарантирует выбор нужного индекса.

Имена всех остальных индексов остаются без изменений, кроме имен, в которых недопустимые символы заменяются символами «_». Уникальные и неуникальные индексы Microsoft Access становятся уникальными и неуникальными индексами SQL Server. Обратите внимание на то, что SQL Server не поддерживает индексы по возрастанию или убыванию.

Уникальный индекс связанной таблицы должен быть обновляемым в Microsoft Access. Мастер преобразования в формат SQL Server может преобразовать существующий уникальный индекс, но не может создать индекс, если его не существует. При необходимости иметь возможность обновлять таблицы следует добавить уникальные индексы в каждую таблицу Access перед преобразованием.

Возврат в начало

Преобразование условий на значение

Если установлен флажок Правила проверки на значения, мастер преобразует все условия на значения таблиц, записей и полей, а также свойства полей Обязательное поле (Required) как триггеры обновления и вставки.

Триггер представляет собой ряд инструкций Transact-SQL, связанных с таблицей SQL Server. Таблица может иметь три триггера, по одному на каждую из команд, способных изменить данные в таблице: UPDATE, INSERT и DELETE. Триггер автоматически выполняется при выполнении команды. Мастер преобразования в формат SQL Server использует для проверки условий на значение на уровне полей триггеры, а не правила SQL Server, поскольку правила SQL Server не позволяют выводить на экран специальные сообщения об ошибках.

Каждое условие на значение не обязательно должно соответствовать одному триггеру. Каждое условие на значение может стать частью нескольких триггеров, а каждый триггер может содержать программу для эмуляции функциональности нескольких условий на значение.

Когда для свойства поля Microsoft Access Обязательное поле (Required) установлено значение «Истина», пользователь не может вставить запись, оставив это поле пустым (если к полю не присоединено значение по умолчанию), или сделать это поле пустым при обновлении записи. Обязательные поля преобразуются в поля SQL Server, не допускающие значений Null. Мастер преобразования в формат SQL Server также создает фрагмент программы Transact-SQL, представляющий собой сообщение, аналогичное тому, которое выводится в Microsoft Access, когда при добавлении или обновлении записи поле оказывается пустым.

Возврат в начало

Преобразование значений по умолчанию

Если установлен флажок Значения по умолчанию, мастер преобразует все значения по умолчанию как значения ANSI (American National Standards Institute), а не как стандартные объекты, присоединенные к соответствующему полю SQL Server. Значения по умолчанию в Microsoft SQL Server, в отличие от значений по умолчанию в Microsoft Access, независимы от какого-либо конкретного поля или таблицы. Создав значение по умолчанию, можно присоединять его к любому числу различных полей.

Возврат в начало

Преобразование связей между таблицами

Для преобразования связей между таблицами и целостности данных можно использовать либо триггеры обновления, вставки и удаления, либо DRI (Declarative Referential Integrity — декларативная целостность данных).

DRI действует так же, как целостность данных Microsoft Access, определяя ограничения по первичному ключу для базовых таблиц (сторона «один» отношения «один-ко-многим») и ограничения по внешнему ключу для внешних таблиц (как правило сторона «многие» отношения «один-ко-многим»). Однако DRI в SQL Server не обладает возможностями каскадного обновления и удаления, доступными в Microsoft Access.

  • Использование триггеров. Если в связях между таблицами Microsoft Access определены каскадные обновления или удаления, и требуется сохранить эти возможности в преобразованных таблицах, установите флажки Связи таблиц и Триггеры, чтобы преобразовать все каскадные обновления или удаления как триггеры для поддержания целостности данных.

    Связь между таблицами не обязательно должно соответствовать одному триггеру. Каждое отношение может стать частью нескольких триггеров, а каждый триггер может содержать программу для эмуляции функциональности нескольких условий целостности данных. Триггеры вставки используются в дочерних таблицах, а триггеры удаления в родительских таблицах.

    Примечание. Средства разработки Microsoft SQL Server Design Tool требуют наличия DRI для чтения схемы базы данных SQL Server. Для обеспечения возможности чтения схемы базы данных средствами разработки SQL Server Design Tools при поддержании целостности данных с помощью триггеров мастер преобразования в формат SQL Server налагает условия DRI на связи, но отключает проверку ограничений по внешнему ключу.

  • Использование DRI. Если в базе данных не определены каскадные обновления или удаления, либо если утрата этих возможностей в преобразованной базе данных не имеет значения, установите флажки Связи таблиц и DRI, чтобы использовать DRI для наложения условий целостности данных. В этом случае мастер выводит предупреждение о том, что возможности каскадного обновления и удаления будут утеряны.

Возврат в начало

Добавление в таблицы полей штампа времени

Microsoft SQL Server использует поля timestamp для обозначения измененных записей (без указания времени изменения) путем создания поля с уникальными значениями и последующего обновления этого поля при каждом обновлении записи. Для связанной таблицы Access использует значение поля timestamp, чтобы перед обновлением поля определить, было ли оно изменено. Как правило поле timestamp обеспечивает наилучшее быстродействие и надежность. При отсутствии полей timestamp SQL Server должен проверить все поля записи, чтобы определить, была ли она изменена, что снижает быстродействие.

  • Если выбрано значение по умолчанию, Да, определяется мастером, мастер преобразования в формат SQL Server создает новые поля с типом данных timestamp в таблицах SQL Server, преобразованных из таблиц Microsoft Access, содержащих поля с типами данных «С плавающей точкой (4 байт или 8 байт)», поле Memo, или поле объекта OLE.

  • Также можно выбрать режим создания мастером полей timestamp для всех преобразуемых таблиц, независимо от типов данных полей, которые в них содержатся. Для этого следует выбрать вариант Да, всегда. Это повысит быстродействие преобразованных таблиц Access, которые могут не содержать полей Memo, полей объектов OLE или полей с числами с плавающей точкой, но содержат поля других типов.

Примечание. Microsoft Access не выполняет в связанных таблицах SQL Server проверку с целью определить, изменялись ли поля Memo или поля объектов OLE, поскольку размеры этих полей могут исчисляться многими мегабайтами, а сравнение может слишком перегружать сеть и занимать слишком много времени. Поэтому, если были изменены только текстовые поля или поля изображений, а поля timestamp отсутствуют, Microsoft Access уничтожает изменения. Кроме того, значения поля с плавающей точкой могут производить впечатление измененных при отсутствии изменений, поэтому при отсутствии полей timestamp Microsoft Access может определить, что запись была изменена, хотя на деле это не так.

Возврат в начало

Отказ от преобразования данных

По умолчанию мастер преобразует все данные в формат SQL Server. Если установлен флажок Создать только структуру таблицы и не преобразовывать данные, преобразуется только структура данных.

Возврат в начало


 Выбор способа преобразования приложения в формат SQL Server

Выбор способа преобразования приложения в формат SQL Server

Существует несколько способов преобразования приложения базы данных Microsoft Access в формат SQL Server. Данный раздел содержит справочные сведения об изменении приложения при выборе каждого из вариантов.

No application changes

Link SQL Server tables to existing application

Create new Access client/server application

Save password and user ID

No application changes

Выберите параметр No application changes в том случае, если требуется только преобразовать данные, не внося никаких других изменений в существующее приложение базы данных Access.

Возврат в начало

Link SQL Server tables to existing application

При выборе параметра Link SQL Server tables to existing application мастер преобразования в формат SQL Server может преобразовать базу данных Access таким образом, что запросы, формы, отчеты и страницы доступа к данным будут использовать данные новой базы данных Microsoft SQL Server, а не данные из базы данных Microsoft Access.

Мастер преобразования в формат SQL Server переименовывает преобразуемые таблицы Microsoft Access, добавляя суффикс «_local». Например, при преобразовании таблицы с именем «Сотрудники» в формат SQL Server она будет переименована в базе данных Access в «Сотрудники_local». Затем мастер преобразования создает связанную таблицу SQL Server с именем «Сотрудники».

Запросы, формы, отчеты и страницы доступа к данным, основанные на исходных таблицах «Сотрудники» будут теперь использовать таблицу «Сотрудники» SQL Server. Многие свойства полей исходной локальной таблицы наследуются новой локальной таблицей, включая свойства Описание (Description), Подпись (Caption), Формат (Format), Маска ввода (InputMask) и Число десятичных знаков (DecimalPlaces). См. сведения о свойствах связанной таблицы.

Возврат в начало

Create new Access client/server application

При выборе параметра Create new Access client/server application мастер преобразования в формат SQL Server создает новый проект Microsoft Access. Мастер выводит приглашение указать имя (по умолчанию используется имя текущей базы данных Access), добавляет суффикс «CS», а затем сохраняет его в том же расположении, что и у существующей базы данных Access.

Мастер преобразования в формат SQL Server создает файл проекта Access, выводит на экран диалоговое окно Data Link Properties, позволяющее подключиться к базе данных SQL Server, а затем преобразует все объекты базы данных из формата базы данных Access в формат проекта Access:

  • Запросы. Мастер преобразования в формат SQL Server изменяет запросы, преобразуя их в представления или сохраненные процедуры, и преобразуя синтаксис языка SQL для Access в синтаксис языка SQL для SQL Server. Запросы на выборку преобразуются в представления. Запросы с сортировкой преобразуются в комбинацию представлений и сохраненных процедур, что делает возможным вложение и сортировку (представления могут быть вложенными, но не могут содержать предложения ORDER BY; сохраненные процедуры могут содержать предложения ORDER BY, но не могут быть вложенными). Запросы с параметрами, запросы, зависящие от запросов с параметров, а также запросы на изменение преобразуются в сохраненные процедуры. Может потребоваться преобразование вручную запросов, которые не преобразуются мастером (например, запросы со слишком низким уровнем вложения). Запросы к серверу SQL, управляющие запросы и запросы на объединение не преобразуются.

  • Формы, отчеты и элементы управления. Мастер преобразования в формат SQL Server изменяет свойства Источник записей (RecordSource), Данные (ControlsSource) и Источник строк (RowSource) путем изменения имен таблиц, запросов, инструкций SQL или полей на эквивалентные имена таблиц, представлений, сохраненных процедур или полей SQL Server.

  • Страницы доступа к данным. Мастер преобразования в формат SQL Server изменяет подключение OLE DB и сведения о присоединении данных из элемента управления источников данных Microsoft Office для работы с новой базой данных SQL Server, а также копирует файл HTML страницы в то же расположение, что и у проекта Access, добавляя к имени файла HTML суффикс «_CS». Новые страницы в проекте Access сохраняют исходные имена, так что гиперссылки между страницами SQL Server продолжают работать.

  • Макросы и модули. В эти объекты базы данных мастер преобразования в формат SQL Server не вносит никаких изменений. После преобразования с помощью мастера необходимо вручную преобразовать в модулях программы, использующие наборы записей, из формата объектов доступа к данным (DAO) в формат объектов данных ActiveX (ADO), а также проверить коды структур всех таблиц и запросов (мастер преобразования в формат SQL Server не преобразует инструкции SQL языка описания данных (Data Definition Language). Дополнительные сведения по разработке оптимизированных приложений в архитектуре клиент/сервер см. в книге Руководство программиста по Visual Basic для Microsoft Office 2000

Возврат в начало

Сохранить пароль и код пользователя

По умолчанию мастер создает связанные таблицы в существующем приложении или создает проект Access без сохранения имени пользователя и пароля. Это значит, что пользователи должны указывать имя пользователя и пароль каждый раз при входе в базу данных SQL Server.

При выборе параметра Save password and user ID пользователи могут иметь доступ к базе данных SQL Server без регистрации в ней. При выборе параметра Create new Access client/server application пароль для имени пользователя сохраняется в проекте Access в строке подключения OLE DB.

Примечание. Этот параметр недоступен при выборе параметра No application changes, если связанная таблица SQL Server совместно с таблицей «MSysConf» настроена на отказ в сохранении паролей.

Возврат в начало


What's New for Microsoft Access 2000 Developers

Extensive changes have been made to the Microsoft Access 2000 Visual Basic object model to support new and improved features in the application. Many objects, properties, and methods have been replaced. To provide backward compatibility, most of the replaced components have been hidden rather than removed. This means that they don't show up in the Object Browser by default, but old code that uses the hidden components will still work correctly without modification. When you write new code, however, you should use the new objects, properties, and methods.

New Feature Areas

The following topics provide conceptual information about features that are new in Microsoft Access 2000.

Database window

Database Design

Data Access Pages

Forms and Reports

Internet Support

Macros

Microsoft Access Projects

Security

Visual Basic Editor

Viewing and editing Web Script

New Language Elements

The following topics provide lists of language elements that are new in Microsoft Access 2000.

New Objects

New Properties (Alphabetic List)

New Properties (by Object)

New Methods (Alphabetic List)

New Methods (by Object)

New Events

Language-Specific Properties and Methods

Hidden Language Elements

The following topics provide lists of language elements that have been hidden in Microsoft Access 2000.

Hidden Properties

New Features in Microsoft Access 97

The following topics provide information about developer features and language elements that were new in Microsoft Access 97.

New Properties

New Methods


 События: обеспечение взаимодействия объектов базы данных

События: обеспечение взаимодействия объектов базы данных

Что такое событие?

Событие — это определенное действие, возникающее при работе с конкретным объектом. Microsoft Access реагирует на целый ряд событий: нажатие кнопки мыши, изменение данных, открытие или закрытие форм и т.д. Обычно события возникают вследствие действий пользователя.

С помощью процедуры обработки события или макроса возможно определение собственных откликов на события, происходящие в форме, отчете или элементе управления.

Предположим, при нажатии кнопки «Сведения о товаре» в форме «Заказы» требуется открыть форму «Сведения о товаре». В следующем примере показано, как сделать это с помощью процедуры обработки события или с помощью макроса.

Отклик на событие «Нажатие кнопки» (Click) с помощью процедуры обработки события

При создании процедуры обработки события для объекта Access добавляет в модуль формы или модуль отчета именованный шаблон процедуры обработки события для данного события и объекта. Остается только дописать код, определяющий желаемый отклик на событие в форме или отчете.

Создание события кнопки

Помещение методов в процедуры обработки событий для выполнения действий

Отклик на событие «Нажатие кнопки» (Click) с помощью макроса

Чтобы в ответ на событие запустить макрос, следует открыть окно свойств формы, отчета или элемента управления, найти соответствующее событию свойство и установить в качестве его значения имя макроса, который следует запускать.

Создание макроса, связанного с событием

Для просмотра полного списка событий нажмите кнопку [image] .

Для получения сведений о запуске макроса или процедуры обработки события из формы, отчета или элемента управления нажмите кнопку [image] .


 Сохранение объекта базы данных с помощью макроса или процедуры обработки события

Сохранение объекта базы данных с помощью макроса или процедуры обработки события

Для автоматического сохранения объекта базы данных следует создать макрос или процедуру обработки события, в которых выполняется макрокоманда «Сохранить» (Save).

Предполагаемые действия

Сохранение объекта базы данных при помощи макроса

Сохранение объекта базы данных с помощью процедуры обработки события


 Запуск макроса или процедуры обработки для события в форме, отчете или элементе управления

Запуск макроса или процедуры обработки для события в форме, отчете или элементе управления

Microsoft Access реагирует на события различных типов, возникающие в формах, отчетах и элементах управления, в том числе на нажатия кнопок мыши, изменение данных, а также на открытие или закрытие формы или отчета.

  1. Откройте форму или отчет в режиме конструктора.

  2. Создайте макрос или процедуру обработки события. Например, можно создать макрос или процедуру обработки события, выводящие сообщение при нажатии кнопки.

  3. Введите в ячейку свойства соответствующего события формы, отчета или элемента управления имя макроса или выберите элемент [Процедура обработки событий], если используется процедура обработки события.

    Например, чтобы использовать макрос для вывода сообщения при нажатии кнопки, введите имя этого макроса в ячейку свойства Нажатие кнопки (OnClick). Для использования процедуры обработки события создайте для кнопки процедуру обработки события «Click» и установите свойство Нажатие кнопки (OnClick) кнопки в значение [Процедура обработки событий].

Примечания

  • Для получения дополнительных сведений о создании макроса нажмите кнопку

  • Для получения дополнительных сведений по созданию процедуры обработки события нажмите кнопку [image] .

  • Для получения дополнительных сведений о причинах и порядке возникновения событий нажмите кнопку [image] .


 Причины и порядок возникновения событий

Причины и порядок возникновения событий

Одно действие, например, переход от одного элемента управления к другому, может явиться причиной нескольких различных событий, возникающих в определенной последовательности. Понимание того, когда и в какой последовательности возникают события, весьма существенно, поскольку порядок событий определяет условия и очередность выполнения макросов и процедур обработки событий. Например, если созданы две процедуры обработки событий, которые должны выполняться в определенном порядке, пользователь должен быть уверен, что события, вызывающие эти процедуры, возникают в том же порядке.

Предполагаемые действия

Изучение порядка событий для элементов управления в формах

Изучение порядка событий для записей в формах

Изучение порядка событий для форм и подчиненных форм

Изучение порядка событий клавиатуры и мыши

Изучение порядка событий в отчетах и в разделах отчетов


 События, используемые для проверки условий на значения

События, используемые для проверки условий на значения

Обычно для запуска макросов или процедур обработки событий, проверяющих условия на значения, используют следующие события.

Событие формы | Проверка
До обновления (BeforeUpdate) | Перед сохранением новых или измененных данных в записи.
Удаление (OnDelete) | Перед удалением записи.

Событие элемента управления | Проверка
До обновления (BeforeUpdate) | Перед сохранением новых или измененных данных в элементе управления.
Выход (OnExit) | Перед выходом из элемента управления.


 Порядок проверки условий на значения для элементов управления и полей

Порядок проверки условий на значения для элементов управления и полей

Условия на значения элементов управления и полей проверяются в следующем порядке:

  1. Макрос или процедура обработки события (например, макрос или процедура обработки события, запускаемая в ответ на событие «До обновления» (BeforeUpdate) элемента управления или формы, содержащей элемент управления).

  2. Свойство Условие на значение (ValidationRule) элемента управления.

  3. Условия на значение поля, определенные в базовой таблице. Эти условия задаются в свойствах поля Условие на значение (ValidationRule), Обязательное поле (Required) и Пустые строки (AllowZeroLength).

  4. Свойство Условие на значение (ValidationRule) базовой таблицы (данное свойство определяет условия для записей).


 Перемещение по элементам управления, записям и страницам формы

Перемещение по элементам управления, записям и страницам формы

Для автоматического перехода на элемент управления, запись или на страницу формы в ответ на событие в форме следует создать макрос или процедуру обработки события, в которых выполняется макрокоманда «КЭлементуУправления» (GoToControl), «НаСтраницу» (GoToPage) или «НаЗапись» (GoToRecord).

Предполагаемые действия

Перемещение по элементам управления, записям и страницам формы с помощью макроса

Перемещение по элементам управления, записям и страницам формы с помощью программы Visual Basic для приложений


 Поиск записи по выбранному в списке значению

Поиск записи по выбранному в списке значению

В форме можно создать список или поле со списком, выполняющие поиск записи при выборе значения из списка.

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Мастера [image] на панели элементов, если эта кнопка еще не нажата.

  3. На панели элементов нажмите кнопку Список Список или Поле со списком .

  4. Выберите в форме место, в которое нужно поместить список или поле со списком.

  5. В первом диалоговом окне мастера выберите параметр для поиска записи по значению, выбранному в списке или поле со списком.

  6. Выполняйте инструкции, выводящиеся в окна диалога мастера. В последнем окне диалога нажмите кнопку Готово для вывода списка или поля со списком в режиме конструктора.

Для просмотра процедуры обработки события, обеспечивающей работу списка или поля со списком, откройте окно свойств элемента управления и нажмите кнопку построителя [image] рядом с ячейкой свойства После обновления (AfterUpdate).


 Автоматический вывод в форме обновленных записей

Автоматический вывод в форме обновленных записей

Для автоматического вывода в форме последних версий записей следует выполнить операции обновления экрана или обновления данных.

При работе с общей базой данных в сети удобно создать кнопку для обновления данных в форме.

Для вывода в форме последних версий записей, включая новые записи, можно использовать макрокоманду «Обновление» (Requery) в макросе или метод Requery в процедуре Visual Basic.

Предполагаемые действия

Создание кнопки для обновления данных в форме

Автоматический вывод в форме обновленных записей с помощью макроса

Автоматический вывод в форме обновленных записей с использованием Visual Basic


 Вывод связанных записей в одной форме при переходах по записям в другой форме

Вывод связанных записей в одной форме при переходах по записям в другой форме

При переходе по записям в форме можно отображать связанные записи во второй форме с помощью макроса или процедуры обработки события, запускаемых в ответ на событие «Текущая запись» (Current) в первой форме.

Предполагаемые действия

Использование макроса для вывода связанных записей при переходах по записям в форме

Использование процедуры Visual Basic для вывода связанных записей при переходах по записям в форме


Пример использования процедуры Visual Basic для вывода связанных записей при переходах по записям

При переходе по записям в форме «Поставщики» может потребоваться просмотр записей из формы «Список товаров» о товарах, поставляемых каждым поставщиком. Для этого следует в процедуре обработки события Form_Current формы «Поставщики» задать значения свойств формы «Список товаров» Фильтр включен (FilterOn) и Фильтр (Filter):

Private Sub Form_Current()

    ' Описывает переменную, в которой сохраняется
    ' предложение WHERE,определяющее отбираемые записи,
    ' и задает значение переменной.
    Dim strCond As String
    strCond = "КодПоставщика = Forms!Поставщики!КодПоставщика"

    ' Использует функцию IsLoaded из базы данных «Борей»
    ' для проверки, является ли форма «Список товаров»
    ' открытой, после чего определяет ее свойства.
    If IsLoaded("Список товаров") Then
        Forms![Список товаров].FilterOn = True
        Forms![Список товаров].Filter = strCond
    End If

End Sub


Синхронизация связанных записей в двух формах

В некоторых случаях возникает необходимость одновременного просмотра связанных записей в двух формах. Например, при просмотре записей о клиенте в форме «Клиенты» может потребоваться открыть форму «Заказы» и просмотреть список заказов, сделанных этим клиентом.

При переходе по записям в одной форме может потребоваться автоматическое отображение связанных записей другой формы. Например, при переходах по записям о поставщиках в форме «Поставщики» может потребоваться просмотр записей о товарах, поставляемых каждым поставщиком, из формы «Список товаров».

Для синхронизации записей между двумя формами можно создать кнопку, которая открывает вторую форму и синхронизирует ее с первой, или использовать процедуру обработки события «Текущая запись» (Current) для отображения связанных записей из второй формы при переходе по записям в первой форме.

Совет. Для создания двух связанных форм можно также воспользоваться мастером форм. На первом экране мастера выберите поля из двух различных таблиц. На втором экране установите переключатель Связанные формы. Мастер создаст две связанные формы, каждая из которых будет содержать поля из одной таблицы. В одной из форм также будет создана кнопка для открытия другой формы и синхронизации записей между этими формами.

Предполагаемые действия

Создание кнопки для открытия и синхронизации формы

Вывод связанных записей в форме при переходах по записям в другой форме


 Печать отчета из формы

Печать отчета из формы

Для автоматизации процесса печати отчета следует создать макрос, в котором выполняются макрокоманды «ОткрытьОтчет» (OpenReport) и «Печать» (PrintOut), или процедуру обработки события. Например, можно создать кнопку, печатающую отчет или определить для этой задачи специальную команду меню или сочетание клавиш.

Макрокоманду «ОткрытьОтчет» (OpenReport) следует использовать, если требуется произвести отбор выводящихся на печать записей или открыть отчет в режиме предварительного просмотра. При печати отчета после выполнения макрокоманды «ОткрытьОтчет» отчет печатается с использованием стандартных настроек, заданных в диалоговом окне Печать.

Макрокоманду «Печать» (PrintOut) используют для указания настроек печати перед выводом отчета на печать. Аргументы макрокоманды «Печать» соответствуют всем параметрам в диалоговом окне Печать.

Предполагаемые действия

Создание кнопки для вывода отчета на печать

Добавление в макрос макрокоманды «ОткрытьОтчет» (OpenReport) или «Печать» (PrintOut)

Выполнение макрокоманды «ОткрытьОтчет» (OpenReport) или «Печать» (PrintOut) в процедуре Visual Basic

Знакомство с макрокомандой «ОткрытьОтчет» (OpenReport)

Знакомство с макрокомандой «Печать» (PrintOut)


 Создание кнопки для печати текущей записи

Создание кнопки для печати текущей записи

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Мастера [image] на панели элементов, если эта кнопка еще не нажата.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, где должен находиться верхний левый угол кнопки.

  5. В первом окне диалога мастера выберите Работа с записями в списке Категории и Печать записи в списке Действия.

  6. Следуйте инструкциям, выводимым в диалоговых окнах мастера. В последнем диалоговом окне нажмите кнопку Готово; кнопка появится в режиме конструктора.

Для просмотра процедуры обработки события, обеспечивающей работу кнопки, откройте окно свойств кнопки и нажмите кнопку построителя [image] рядом с ячейкой свойства Нажатие кнопки (OnClick).

Совет. Если требуется печатать текущую запись формы в отчете, следует вызвать макрокоманду «ОткрытьОтчет» (OpenReport) в процедуре обработки события кнопки «Нажатие кнопки» (Click). Например, для печати текущей записи отчета с именем «Счет» добавьте в процедуру обработки события для кнопки из формы «Заказы» следующие инструкции Visual Basic для приложений:

Dim strDocName As String
Dim strFilter As String
strDocName = "Счет"
strFilter = "КодЗаказа = Forms!Счет!КодЗаказа"
DoCmd.OpenReport DocName, acViewNormal, , strFilter


 Задание значения элемента управления или свойства при возникновении события

Задание значения элемента управления или свойства при возникновении события

Задание новых значений для элементов управления или свойств в ответ на события, возникающие в форме или отчете, позволяет организовать взаимодействие нескольких созданных объектов таким образом, чтобы их было легче использовать.

Ниже перечислены наиболее часто возникающие ситуации, вызывающие задание значений с помощью макроса или процедуры обработки события.

Ввод в элемент управления в форме значения элемента управления из другой формы

В форму «Клиенты» помещается кнопка, которая открывает форму «Заказы» и автоматически вводит в заказ нужные данные из формы «Клиенты».

Открытие другой формы с помощью кнопки

Обновление значения элемента управления в зависимости от значения другого элемента управления

Для элемента управления «ДатаОплаты» задается значение по умолчанию, равное дате исполнения заказа (значению элемента управления «ДатаИсполнения»). Для автоматического изменения значения поля «ДатаОплаты» при изменении значения поля «ДатаИсполнения» можно использовать макрос или процедуру обработки события.

Для получения дополнительных сведений о задании значения элемента управления с помощью значения другого элемента управления нажмите кнопку [image] .

Задание значения свойства формы или элемента управления в ответ на выбор пользователя или другое событие

Изменение значений свойств формы или элемента управления с помощью макроса или процедуры обработки события позволяет добиться следующих результатов.

  • Скрыть или отобразить элемент управления в зависимости от значения другого элемента управления. Например, можно сделать элемент управления «ДатаОплаты» в форме «Заказы» скрытым, если заказ уже оплачен (если элемент управления «Оплачено» имеет значение «Да») или видимым, если заказ еще не оплачен.

  • Отключить или заблокировать элемент управления в зависимости от значения другого элемента управления. Например, можно сделать недоступным поле «ВодительскиеПрава», если поле «Возраст» содержит значение, которое ниже минимального возраста, начиная с которого выдаются водительские права.

  • Вывести разные наборы записей в зависимости от выбора пользователя. Например, можно вывести в форме «Клиенты» разные наборы записей, определяющиеся параметром, выбранным в группе параметров «Категории клиентов». Для этого следует указать в свойстве формы Источник записей (RecordSource) имя одного из нескольких запросов, в каждом из которых отбираются записи, соответствующие определенной категории клиентов.

Для получения дополнительных сведений о задании значения свойства в ответ на событие нажмите кнопку [image] .


 Задание значения элемента управления на основании значения другого элемента управления

Задание значения элемента управления на основании значения другого элемента управления

Для того чтобы задать значение элемента управления на основании значения другого элемента управления, следует включить в макрос макрокоманду «ЗадатьЗначение» (SetValue) или использовать инструкцию присваивания в процедуре Visual Basic.

Предполагаемые действия

Задание значения элемента управления на основании значения другого элемента управления с помощью макроса

Задание значения элемента управления на основании значения другого элемента управления с помощью программы Visual Basic для приложений


 Задание значения свойства в ответ на событие

Задание значения свойства в ответ на событие

Для того чтобы задать значение свойства в ответ на событие, например, нажатие кнопки, следует включить в макрос макрокоманду «ЗадатьЗначение» (SetValue) или использовать инструкцию присваивания в процедуре Visual Basic.

Предполагаемые действия

Задание значения свойства в ответ на событие с помощью макроса

Задание значения свойства в ответ на событие с помощью программы Visual Basic


 Примеры задания значения свойства при возникновении события

Примеры задания значения свойства при возникновении события

Для того чтобы задать значение свойства на основании значения в текущей записи, следует выполнить макрос или процедуру обработки события в ответ на событие формы «Текущая запись» (Current). Например, можно сделать элемент управления «ДатаОплаты» в форме «Заказы» скрытым, если заказ уже оплачен (если элемент управления «Оплачено» имеет значение «Да» или True).

Для запуска макроса укажите в значении свойства события формы Текущая запись (OnCurrent) имя макроса, который задает для свойства Вывод на экран (Visible) элемента управления «ДатаОплаты» значение Нет, если элемент управления «Оплачено» имеет значение «Да».

Задание значения в ответ на событие

Для выполнения тех же действий с помощью процедуры включите следующие инструкции Visual Basic в процедуру обработки события Form_Current:

If Me![Оплачено] = True Then
    Me![ДатаОплаты].Visible = False
Else
    Me![ДатаОплаты].Visible = True
End If


 Вывод окна сообщения

Вывод окна сообщения

Если требуется вывести небольшое сообщение, например, предупреждение, можно воспользоваться стандартным диалоговым окном — окном сообщения. Окно сообщения можно вызвать, добавив макрокоманду «Сообщение» (MsgBox) в макрос, или добавив функцию MsgBox в процедуру Visual Basic.

Предполагаемые действия

Вывод окна сообщения с помощью макроса

Вывод окна сообщения с помощью программы Visual Basic для приложений.


 Вывод на экран или скрытие предупреждений

Вывод на экран или скрытие предупреждений

Можно отключить вывод модальных окон предупреждений Microsoft Access на время выполнения макроса или процедуры Visual Basic или возобновить его, выполнив в макросе или в процедуре макрокоманду «УстановитьСообщения» (SetWarnings).

Предполагаемые действия

Вывод на экран или скрытие предупреждений с помощью макросов

Вывод на экран или скрытие предупреждений с помощью программы Visual Basic для приложений


 Проверка условий на значения с помощью макроса или процедуры обработки события

Проверка условий на значения с помощью макроса или процедуры обработки события

Для проверки данных, вводимых в форму, можно создать макрос, выполняющийся в ответ на событие в форме, или процедуру обработки события формы.

Предполагаемые действия

Проверка условий на значения с помощью макроса

Проверка условий на значения с помощью процедуры обработки события

Дополнительные сведения о проверке условия на значение в макросе или в процедуре обработки события


 Использование макросов и процедур обработки событий для проверки условий на значения

Использование макросов и процедур обработки событий для проверки условий на значения

В большинстве случаев правильность ввода данных в элемент управления в форме можно проверить путем задания свойства элемента управления Условие на значение (ValidationRule) или условий на значение полей или записей в базовой таблице, к которой присоединен элемент управления. Макросы и процедуры обработки события используют в тех случаях, когда требуется задать более сложные условия.

Ниже перечислены ситуации, в которых условия на значение задаются с помощью макросов или процедур обработки событий.

  • В условия на значение включаются значения нескольких элементов управления в форме. Например, перед сохранением записи проверяется заполнение двух или трех полей.

  • Для разных ошибок требуется вывести различные сообщения об ошибках. Например, одно сообщение выводится, когда введенное значение выходит за верхнюю границу допустимого диапазона, а другое, когда введенное значение меньше минимально допустимого.

  • Требуется предоставить пользователям возможность нарушить условие на значение. В таких случаях обычно выводят предупреждение с приглашением подтвердить ввод данных.

  • Выражения, определяющие условия на значения, содержат функции или ссылки на элементы управления в других формах.

  • Условия на значение определяются для нескольких форм одновременно и требуется обеспечить возможность применения универсальных условий к разным формам.

Для получения дополнительных сведений о создании макросов нажмите кнопку [image] .

Для получения дополнительных сведений о настройке процедур обработки событий нажмите кнопку [image] .


 Примеры проверки условий на значения с помощью процедуры обработки события

Примеры проверки условий на значения с помощью процедуры обработки события

В некоторых ситуациях может потребоваться использование условий на значение, содержащих сложные выражения, с последующим выполнением тех или иных действий в зависимости от значений этих выражений. Например, в разных странах существуют различные стандарты для почтовых индексов, поэтому невозможно проверить правильность ввода в базу данных почтовых индексов с помощью простого условия.

В этом случае следует создать процедуру обработки события, в которой определяется значение, введенное в поле «Страна», а затем проверяется соответствие значения, вводящегося в поле «Индекс», стандартам этой страны.

Вначале откройте в режиме конструктора форму, содержащую элементы управления. Затем определите для процедуры обработки события «До обновления» (BeforeUpdate) следующую программу Visual Basic, выводящую различные сообщения в зависимости от значения поля «Страна» и длины значения поля «Индекс».

Private Sub Form_BeforeUpdate(Cancel As Integer)
    Select Case Me![Страна]
        Case "Франция", "Италия", "Испания"
            If Len(Me![Индекс]) <> 5 Then
                MsgBox "Индекс должен состоять из 5 символов."
                Cancel = True
            End If
        Case "Австралия", "Сингапур"
            If Len(Me![Индекс]) <> 4 Then
                MsgBox "Индекс должен состоять из 4 символов."
                Cancel = True
            End If
    End Select
End Sub

Примечание. Программа Visual Basic определяется для процедуры обработки события «До обновления» (BeforeUpdate) формы, а не элементов управления, поскольку в данном условии проверяются значения двух элементов управления.

При использовании данной формы для добавления нового поставщика Microsoft Access запустит процедуру проверки условия на значение после ввода новой записи, но до ее сохранения в таблице «Поставщики». При выполнении любого из условий, определенных в процедуре, Access выведет на экран соответствующее сообщение, а запись не будет сохранена в таблице «Поставщики».


 Новые возможности макросов

Новые возможности макросов

Microsoft Access 2000 предоставляет новые макрокоманды, с помощью которых можно открывать страницы доступа к данным и новые объекты базы данных, диаграммы, сохраненные процедуры и представления в проекте Microsoft Access (.adp).

  • Открытие страниц доступа к данным. Для открытия страницы доступа к данным в режиме конструктора или в режиме страницы можно использовать макрокоманду ОткрытьСтраницуДоступаКДанным (OpenDataAccessPage).

  • Открытие схем в проектах Access. Для открытия схемы в текущем проекте Access можно использовать макрокоманду ОткрытьСхему (OpenDiagram).

  • Открытие сохраненных процедур в проекте Access. Для открытия сохраненной процедуры в текущем проекте Access можно использовать макрокоманду ОткрытьСохраненнуюПроцедуру (OpenStoredProcedure). Сохраненную процедуру можно открыть в режиме таблицы, режиме конструктора или в режиме предварительного просмотра.

  • Открытие представлений в проекте Access. Для открытия представления в текущем проекте Access можно использовать макрокоманду ОткрытьПредставление (OpenView).


 Макросы: что это такое и как они работают

Макросы: что это такое и как они работают

Что такое макрос?

Макросом называют набор из одной или более макрокоманд, выполняющих определенные операции, такие как открытие форм или печать отчетов. Макросы могут быть полезны для автоматизации часто выполняемых задач. Например, при нажатии пользователем кнопки можно запустить макрос, который распечатает отчет.

Макросы содержат макрокоманды и аргументы

Макрос может быть как собственно макросом, состоящим из последовательности макрокоманд, так и группой макросов. В некоторых случаях для решения, должна ли в запущенном макросе выполняться определенная макрокоманда, может применяться условное выражение.

Последовательность макрокоманд

Следующий макрос состоит из серии макрокоманд. Microsoft Access выполняет эти макрокоманды каждый раз при запуске макроса. Для запуска данного макроса следует обратиться к имени макроса «Просмотр товаров».

Макрос, содержащий несколько макрокоманд

Группа макросов

Если макросов много, объединение родственных макросов в группы может упростить управление базой данных. Для просмотра имен макросов выбранной группы макросов достаточно в в меню Вид окна макроса выбрать команду Имена макросов.

Например, следующая группа макросов с именем «Кнопки» состоит из трех родственных макросов: «Сотрудники», «Товары» и «Отчеты». В каждом макросе содержится макрокоманда «ОткрытьФорму» (OpenForm), а в макросе «Товары» кроме того макрокоманда «СдвигРазмер» (MoveSize).

Пример группы макросов

Имя в столбце Имя макроса определяет каждый макрос. При запуске макроса в группе макросов, выполняется макрокоманда в столбце макрокоманд, а также все следующие макрокоманды, для которых столбец Имя макроса пуст.

Для запуска макроса из группы макросов следует указать имя группы, а затем, через точку, имя макроса. В предыдущем примере для обращения к макросу «Сотрудники» в группе макросов «Кнопки» следовало использовать синтаксис Кнопки.Сотрудники.

Условные макрокоманды

Для вывода столбца Условие следует в окне макроса в меню Вид выбрать команду Условия. Следующий макрос запускает макрокоманды «Сообщение» (MsgBox) и «ОстановитьМакрос» (StopMacro) только в тех случаях, когда условие в столбце Условие истинно (когда поле «КодПоставшика» имеет значение Null).

Пример условной макрокоманды в макросе

Для получения сведений о создании макросов нажмите кнопку [image] . Для получения сведений о запуске макросов нажмите кнопку [image] .


 Выбор между использованием макросов и программ Visual Basic

Выбор между использованием макросов и программ Visual Basic

В Microsoft Access многие действия выполняются с помощью макросов или через интерфейс пользователя. Во многих других СУБД для решения тех же самых задач требуется программирование. Выбор между созданием макроса или разработкой программы Visual Basic для приложений обычно определяется требуемыми действиями.

В каких случаях следует использовать макрос?

Макрос является удобным средством выполнения простых задач, таких как открытие и закрытие форм, вывод на экран и скрытие панелей инструментов или запуск отчетов. Действия, связывающие различные объекты базы данных, выполняются легко и просто, поскольку не требуют запоминания правил синтаксиса; все аргументы для каждой макрокоманды отображаются в нижней половине окна макроса.

В дополнение к упомянутым простым действиям, макросы необходимо использовать для выполнения следующих задач.

  • Определение общих назначенных клавиш.

  • Выполнение макрокоманды или набора макрокоманд при открытии базы данных. Однако определенные действия, которые должны выполняться при открытии базы данных, например, открытие формы, могут быть заданы в диалоговом окне Параметры запуска.

В каких случаях следует использовать Visual Basic?

Программы на Visual Basic используют вместо макросов в следующих случаях.

  • Упрощение управления базой данных. Поскольку макросы являются объектами, существующими отдельно от использующих их форм и отчетов, поддержание базы данных, в которой реакция на события в формах и отчетах определяется многими макросами, становится достаточно затруднительным. В отличие от этого, процедуры обработки события Visual Basic являются встроенными в описания соответствующих форм и отчетов. При переносе формы или отчета из одной базы данных в другую встроенные процедуры обработки события автоматически переносятся вместе с формой или отчетом.

  • Создание пользовательских функций. В Access определен ряд встроенных функций, например, функция IPmt, которая рассчитывает проценты по платежам. Встроенные функции можно использовать для выполнения вычислений без необходимости разрабатывать сложные выражения. Язык Visual Basic позволяет пользователям создавать также собственные функции как для решения задач, выходящих за рамки возможных для встроенных функций, так и для замены сложных выражений, содержащих встроенные функции. Кроме того, создаваемые пользователем функции используются в выражениях для выполнения общих операций над несколькими объектами.

  • Скрытие сообщений об ошибках. Стандартные сообщения об ошибках Microsoft Access, выводимые на экран при возникновении нештатных ситуаций во время работы с базой данных, могут оказаться малопонятными для пользователя, особенно, если этот пользователь плохо знаком с Access. С помощью Visual Basic можно перехватывать ошибку при ее возникновении и либо выводить собственное сообщение об ошибке, либо предпринимать определенные действия.

  • Создание или обработка объектов. В большинстве случаев удобнее создавать или изменять объекты в режиме конструктора. Однако в некоторых ситуациях приходится работать с описанием объекта в программе. Средства Visual Basic позволяют выполнять обработку всех объектов в базе данных, а также самой базы данных.

  • Выполнение действий на уровне системы. Выполнение в макросе макрокоманды «ЗапускПриложения» (RunApp) позволяет запускать из собственного приложения другое приложение, работающее в среде Microsoft Windows или Microsoft MS-DOS, однако этим возможности использования макроса вне Microsoft Access практически исчерпываются. Средства Visual Basic позволяют проверять существование файлов, использовать программирование объектов или динамический обмен данными (DDE) для связи с другими приложениями для Windows, например, Microsoft Excel, а также вызывать функции из библиотек динамической компоновки (DLL) Windows.

  • Обработка записей по одной. Инструкции Visual Basic позволяют перебирать наборы записей по одной и выполнять определенные действия над отдельной записью. В отличие от этого, макросы позволяют работать только с целым набором записей.

  • Передача аргументов в процедуры Visual Basic. Аргументы для макрокоманд можно задавать в нижней части окна макроса при его создании, но при выполнении макроса изменять их невозможно. Однако при помощи Visual Basic можно передавать аргументы в выполняемую программу или использовать в качестве значений аргументов переменные; макросы не позволяют делать это. Передача аргументов повышает гибкость выполнения процедур Visual Basic.


 Открытие макроса

Открытие макроса

  1. В окне базы данных щелкните значок Макросы [image] в списке Объекты.

  2. Выберите макрос, который требуется открыть.

  3. Нажмите кнопку Конструктор на панели инструментов окна базы данных.

  4. Внесите нужные изменения. Например:
    • для добавления макрокоманды нажмите кнопку [image] ;

    • для перемещения или копирования макрокоманды нажмите кнопку [image] ;

    • для добавления условий нажмите кнопку [image] .


 Открытие окна макроса или окна программы редактора Visual Basic из формы или отчета

Открытие окна макроса или окна программы редактора Visual Basic из формы или отчета

  1. В режиме конструктора формы или режиме конструктора отчета выполните одно из следующих действий.
    • Дважды щелкните область выделения формы или область выделения отчета, чтобы открыть окно свойств формы или отчета.

    • Дважды щелкните область выделения раздела, чтобы открыть окно свойств раздела.

    • Убедитесь, что нужный элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов.
  2. Нажмите кнопку построителя [image] рядом с ячейкой соответствующего свойства события. Например, если требуется создать макрос или процедуру обработки события, которые будут запускаться при нажатии кнопки в форме, нажмите кнопку построителя рядом с ячейкой свойства кнопки Нажатие кнопки (OnClick).

  3. Выберите в списке элемент Макросы, чтобы открыть окно макроса, или элемент Программы, чтобы открыть окно программы в редакторе Visual Basic.

Примечание. Для просмотра всех программ, определенных для формы или отчета, выберите в меню Вид команду Программа.


Создание макросов

Предполагаемые действия

Создание макроса

Создание группы макросов

Добавление макрокоманды в макрос

Изменение положения макрокоманды в макросе

Ввод выражения в аргумент макрокоманды

Использование условий в макросе

Вывод на экран и скрытие имен макросов и условий в окне макроса


 Создание группы макросов

Создание группы макросов

Для того, чтобы объединить несколько родственных макросов, можно создать группу макросов. Работать с группой часто оказывается удобнее, чем с несколькими отдельными макросами.

  1. В окне базы данных выберите значок Макросы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. Нажмите кнопку Имена макросов [image] на панели инструментов, если она еще не нажата.

  4. Введите в ячейку столбца Имя макроса имя первого макроса группы макросов.

  5. Введите макрокоманды, выполняемые в первом макросе.

    Инструкции

  6. Повторите шаги 4 и 5 для всех остальных макросов, которые нужно включить в группу.

Примечание. Имя, указанное при сохранении группы макросов, будет служить именем группы. Это имя будет выводиться в списке макросов и групп макросов в окне базы данных. Для ссылок на макросы, входящие в группу макросов, используется следующий синтаксис:

имяГруппыМакросов.имяМакроса

Например, имя «Кнопки.Товары» задает ссылку на макрос «Товары» в группе «Кнопки». В списках имен макросов, например, в списке возможных значений аргумента «Имя макроса» макрокоманды «ЗапускМакроса» (RunMacro), макрос «Товары» будет отображаться под именем «Кнопки.Товары».


 Выполнение макрокоманд при открытии базы данных

Выполнение макрокоманд при открытии базы данных

Специальный макрос AutoExec позволяет автоматически выполнить макрокоманду или набор макрокоманд при открытии базы данных. В процессе открытия базы данных Microsoft Access выполняет поиск макроса с этим именем и, если такой макрос существует, автоматически запускает его.

  1. Создайте макрос, содержащий макрокоманды, которые требуется выполнить при открытии базы данных.

    Инструкции

  2. Сохраните макрос под именем AutoExec.

При следующем открытии базы данных Access автоматически запустит этот макрос.

Примечания

  • Если требуется открыть базу данных, не выполняя при этом макрос AutoExec, открывайте базу данных при нажатой клавише SHIFT.

  • Другие параметры запуска базы данных или приложения можно задать в диалоговом окне Параметры запуска (меню Сервис). Для получения дополнительных сведений нажмите кнопку [image] .


 Советы по заданию аргументов макрокоманд в макросах

Советы по заданию аргументов макрокоманд в макросах

После добавления макрокоманды в макрос следует задать в нижней части окна макроса аргументы макрокоманды. Эти аргументы дают Microsoft Access дополнительные сведения по выполнению данной макрокоманды.

Ниже приведены некоторые советы по заданию аргументов макрокоманд.

  • Значение можно ввести в поле аргумента или, во многих случаях, выбрать из списка.

  • В общем случае рекомендуется задавать аргументы макрокоманды в том порядке, в котором они перечислены, поскольку выбор одного аргумента может определять возможные значения следующего аргумента.

  • Если макрокоманда добавляется в макрос путем перетаскивания объекта базы данных из окна базы данных, Microsoft Access автоматически задает подходящие аргументы для этой макрокоманды.

  • Если макрокоманда имеет аргумент, вызывающий имя объекта базы данных, значение этого аргумента и соответствующий тип объекта можно задать автоматически, перетащив объект из окна базы данных в поле аргумента.

  • Для задания многих аргументов макрокоманд используется выражение, перед которым ставится знак равенства (=).

  • Для получения дополнительных сведений о задании конкретных аргументов макрокоманд щелкните нужный аргумент и нажмите клавишу F1.


 Ввод выражения в аргумент макрокоманды

Ввод выражения в аргумент макрокоманды

  • Введите знак равенства (=), за которым следует выражение. Например, следующее выражение задает в качестве аргумента текущее значение элемента управления «ВыборНазвания»:

    =[Выбор названия]

Из этого правила существуют два исключения: аргумент «Выражение» (Expression) макрокоманды «ЗадатьЗначение» (SetValue) и аргумент «Число повторений» (Repeat Expression) макрокоманды «ЗапускМакроса» (RunMacro). Если ввести знак равенства перед выражением, задающим значение аргумента, то выражение будет рассчитываться дважды, что может привести к непредсказуемым результатам.

Совет. В базе данных Microsoft Access (.mdb) выберите кнопку построителя [image] для использования построителя выражений. Построитель выражений недоступен из проекта Microsoft Access.

Для получения дополнительных сведений о задании аргументов макрокоманды нажмите кнопку [image] .


 Использование условий в макросах

Использование условий в макросах

В некоторых случаях требуется выполнять макрокоманду или серию макрокоманд только при выполнении некоторых условий. Например, если в макросе проверяется соответствие данных в форме условиям на значение, то для одних значений может потребоваться вывести одно сообщение, а для других значений другое сообщение. В подобных случаях условия позволяют определить порядок передачи управления между макрокомандами в макросе.

Например, в следующем макросе макрокоманда «ОстановитьМакрос» (StopMacro) выполняется только в том случае, если поле «Страна» имеет значение Null. Если длина или структура значения поля «Индекс» не соответствует значению для страны, указанной в поле «Страна», то выполняется одна из нескольких пар макрокоманд «Сообщение» (MsgBox) и «ОтменитьСобытие» (CancelEvent).

Условный макрос выполняется по-разному в зависимости от значений в полях «Страна» и «Индекс»

Условие задается логическим выражением. В зависимости от значения логического выражения управление передается разным макрокомандам. Для просмотра примеров условных выражений в макросе нажмите кнопку [image] .

Условное выражение вводится в ячейку столбца Условие в окне макроса. Если условие истинно, выполняется макрокоманда, содержащаяся в данной строке. Для того чтобы выполнить набор макрокоманд при истинности условия, следует ввести начиная со следующей строки многоточие (...) в ячейки столбца Условие идущих подряд макрокоманд, принадлежащих к этому набору.

Для получения сведений о том, как запустить макрос при выполнении конкретных условий, нажмите кнопку [image] .


 Задание условий для выполнения макроса

Задание условий для выполнения макроса

  1. В окне макроса нажмите кнопку Условия [image] на панели инструментов.

  2. Введите условное выражение в ячейку столбца Условие той строки, для которой требуется задать условие.

    Примечания

    • В базе данных Microsoft Access (.mdb) нажмите кнопку построителя [image] , чтобы использовать построитель выражений. Построитель выражений недоступен из проекта Microsoft Access.

    • Нельзя использовать выражения SQL в ячейках столбца Условие.
  3. Введите в ячейку столбца Макрокоманда имя макрокоманды, которая должны выполняться, если условное выражение истинно.

При запуске макроса Microsoft Access проверяет значение первого условного выражения. Если это выражение истинно, выполняется макрокоманда, находящаяся в той же строке, и все идущие подряд макрокоманды, у которых в ячейках столбца Условие содержится многоточие (...). Например, в следующем макросе макрокоманды «Сообщение» (MsgBox) и «ОстановитьМакрос» (StopMacro) выполняются только в том случае, если поле «КодПоставщика» имеет значение Null.

Макрос с условным выражением

После этого будут выполнены все макрокоманды, у которых ячейки столбца Условие являются пустыми, до следующей макрокоманды с определенным условием, до следующего имени макроса или до конца макроса.

Если условное выражение ложно, Microsoft Access игнорирует эту макрокоманду и все идущие подряд макрокоманды, у которых в ячейках столбца Условие содержится многоточие (...), и переходит к ближайшей строке, в которой содержится новое условие или ячейка столбца Условие является пустой.

Для просмотра примеров условных выражений в макросах нажмите кнопку [image] . Для получения сведений о создании условных выражений нажмите кнопку [image] .


 Отображение и скрытие имен макросов и условий в окне макроса

Отображение и скрытие имен макросов и условий в окне макроса

  • Для того чтобы отобразить или скрыть столбец Имя макроса, нажмите кнопку Имена макросов [image] на панели инструментов. Для того чтобы отобразить или скрыть столбец Условие, нажмите кнопку Условия [image] .

Чтобы задать режим отображения или скрытия этих столбцов при создании макросов, выберите в меню Сервис команду Параметры, перейдите на вкладку Вид и установите или снимите флажки столбец имен и столбец условий в группе Конструктор макросов.


 Примеры условных выражений в макросах

Примеры условных выражений в макросах

Выражение | Условие выполнения макрокоманды
Город="Москва" | Поле «Город» в форме, из которой запускается макрос, содержит значение «Москва».
DCount("[КодЗаказа]", "Заказы")>35 | Имеется более 35 значений в поле «КодЗаказа» таблицы «Заказы».
DCount("*", "Заказано", "[КодЗаказа]=Forms![ПримерФормы]![КодЗаказа]")>3 | Имеется более трех записей в таблице «Заказано», у которых значение поля «КодЗаказа» совпадает со значением поля «КодЗаказа» в форме «ПримерФормы».
[ДатаИсполнения] Between #2-фев-1995# And #2-мар-1995# | Поле «Дата исполнения» в форме, из которой запускается макрос, содержит значение не раньше 2-фев-95 и не позже 2-мар-95.
Forms!Товары!На складе<5 | Значение поля «На складе» в форме «Товары» меньше 5.
IsNull([Имя]) | Поле «Имя» в форме, из которой запускается макрос, содержит пустое (Null) значение. Данное выражение эквивалентно следующему: [Имя] Is Null.
[Страна]="Литва" And Forms![Сумма продаж]![Объем заказов]>100 | Одновременное выполнение двух условий. Поле «Страна» в форме, из которой запускается макрос, содержит значение «Литва»; а значение поля «Объем заказов» в форме «Сумма продаж» превышает 100.
[Страна] In ("Латвия", "Литва", "Эстония") And Len([Индекс])<>5 | Поле «Страна» имеет значение «Латвия», «Литва» или «Эстония», а длина содержимого поля «Индекс» не равняется пяти символам.
MsgBox("Изменить?",1)=1 | Пользователь нажимает кнопку OK в диалоговом окне, которое открывается функцией MsgBox. Нажатие кнопки Отмена в диалоговом окне игнорируется.

Совет. Для того чтобы временно пропустить макрокоманду, введите в качестве условия «False». Такой прием часто используют при отладке макросов.


 Принудительный разрыв страницы в отчете при выполнении условия

Принудительный разрыв страницы в отчете при выполнении условия

Принудительный перевод страницы в отчете при выполнении условия осуществляется путем установки свойства Вывод на экран (Visible) элемента управления разрыва страницы в макросе или в процедуре обработки события.

Предполагаемые действия

Использование макроса для принудительного разрыва страницы в отчете при выполнении условия

Использование процедуры Visual Basic для приложений для принудительного разрыва страницы в отчете при выполнении условия


Пример использования макроса для вывода связанных записей при переходах по записям

При переходе по записям в форме «Поставщики» может потребоваться просмотреть в форме «Список товаров» записи о товарах, поставляемых каждым поставщиком. Для этого можно создать макрос, выполняющий макрокоманду «ОткрытьФорму» (OpenForm) в ответ на событие «Текущая запись» (Current) в форме «Поставщики». Аргумент Условие отбора, определяющий вывод в форме «Список товаров» записей, у которых значение поля «КодПоставщика» совпадает со значением поля «КодПоставщика» в форме «Поставщики», задается с помощью выражения:

[КодПоставщика]=Forms![Поставщики]![КодПоставщика]

Совет. Если всегда открывать форму «Список товаров» при переходах по записям в форме «Поставщики» не требуется, включите в макрос условное выражение, с помощью которого проверяется, открыта или нет форма «Список товаров».

Отображение записей из другой таблицы с помощью макроса

После создания макроса укажите его имя в свойстве Текущая запись (OnCurrent) формы «Поставщики».


 Преобразование макросов в программы Microsoft Visual Basic

Преобразование макросов в программы Microsoft Visual Basic

Microsoft Access может автоматически преобразовывать макросы в процедуры обработки событий или модули Visual Basic, которые выполняют эквивалентные действия. Можно преобразовать макросы для отдельной формы или отчета, либо глобальные макросы, не связанные с конкретной формой или отчетом.

Предполагаемые действия

Преобразование макросов в форме или отчете

Преобразование глобальных макросов


 Выполнение макрокоманды в процедуре Visual Basic для приложений (VBA)

Выполнение макрокоманды в процедуре Visual Basic для приложений (VBA)

В Microsoft Access определен особый объект DoCmd, предназначенный для выполнения макрокоманд в процедурах Visual Basic. Для выполнения макрокоманды в программе следует включить метод объекта DoCmd в процедуру. Большинству макрокоманд соответствуют методы DoCmd, имена которых совпадают с английскими именами макрокоманд.

  • Для вызова методов объекта DoCmd в процедурах используется следующий синтаксис:

    DoCmd.метод [аргументы]

где метод — имя метода, а аргументы — аргументы метода, если таковые существуют.

Например, для создания процедуры, в которой будет выполняться макрокоманда «ОткрытьФорму» (OpenForm), следует вызвать в процедуре метод OpenForm объекта DoCmd. Выполнение следующей конструкции эквивалентно выполнению макрокоманды «ОткрытьФорму» (OpenForm); в результате будет открыта форма «Новый товар»:

DoCmd.OpenForm "Новый товар"

У нескольких макрокоманд нет соответствующих им методов объекта DoCmd, хотя у некоторых из них имеются эквивалентные инструкции или функции Visual Basic. Для просмотра списка этих макрокоманд и эквивалентных инструкций Visual Basic нажмите кнопку [image] .


Макрокоманды, не имеющие соответствующих методов объекта DoCmd, и их эквиваленты в Visual Basic

Макрокоманда | Эквивалент Visual Basic
AddMenu | Отсутствует
MsgBox | Функция и инструкция MsgBox
ЗапускПриложения (RunApp) | Функция Shell
ЗапускПрограммы (RunCode) | Вызов процедуры (инструкция Call)
КомандыКлавиатуры (SendKeys) | Инструкция SendKeys
ЗадатьЗначение (SetValue) | Инструкция присвоения (Let)
ОстановитьВсеМакросы (StopAllMacros) | Инструкции Stop или End
ОстановитьМакрос (StopMacro) | Инструкции Exit Sub или Exit Function


 Запуск макроса

Запуск макроса

При запуске макроса выполнение макрокоманд начинается с первой строки макроса и продолжается до конца макроса или, если макрос входит в группу макросов, до начала следующего макроса.

Выполнение макроса может начинаться по команде пользователя, при вызове из другого макроса или процедуры обработки события, а также в ответ на событие в форме, отчете или элементе управления. Например, можно связать макрос с кнопкой в форме или отчете, в результате чего макрос будет запускаться при нажатии кнопки. Допускается также создание специальной команды меню или кнопки панели инструментов, запускающей макрос, определение сочетания клавиш, нажатие которых запускает макрос, а также автоматический запуск макроса при открытии базы данных.

Предполагаемые действия

Непосредственный запуск макроса

Запуск макроса, входящего в группу макросов

Запуск макроса из другого макроса или из процедуры обработки события

Запуск макроса в ответ на событие в форме, отчете или элементе управления

Создание кнопки, запускающей макрос

Создание специальной команды меню, запускающей макрос

Создание кнопки панели инструментов, запускающей макрос

Назначение сочетания клавиш для запуска макроса

Запуск макроса при открытии базы данных


 Запуск макроса из другого макроса или из процедуры Visual Basic

Запуск макроса из другого макроса или из процедуры Visual Basic

Для запуска макроса из другого макроса или из процедуры Visual Basic следует включить в макрос или в процедуру макрокоманду «ЗапускМакроса» (RunMacro).

  • Для добавления макрокоманды ЗапускМакроса (RunMacro) в макрос выберите ее в списке макрокоманд в пустой строке макрокоманды и укажите в аргументе Имя макроса имя запускаемого макроса.

  • Для добавления макрокоманды «ЗапускМакроса» (RunMacro) в процедуру Visual Basic включите в процедуру метод RunMacro объекта DoCmd и укажите имя вызываемого макроса. Например, в следующей конструкции метод RunMacro вызывает макрос «Макрос 2»:

    DoCmd.RunMacro "Макрос 2"

Для получения дополнительных сведений о макрокоманде «ЗапускМакроса» (RunMacro) нажмите кнопку [image] .


 Отладка макроса в пошаговом режиме

Отладка макроса в пошаговом режиме

Выполнение макроса в пошаговом режиме позволяет проследить передачу управления и результаты выполнения каждой макрокоманды. Это облегчает поиск макрокоманды, которая приводит к возникновению ошибки или дает неверные результаты.

  1. Откройте макрос.

    Инструкции

  2. Нажмите кнопку По шагам [image] на панели инструментов.

  3. Нажмите кнопку Запуск [image] на панели инструментов.

  4. Нажмите кнопку Шаг для выполнения макрокоманды, имя которой выведено в диалоговом окне Пошаговое исполнение макроса.

  5. Нажмите кнопку Прервать, чтобы прекратить выполнение макроса и закрыть окно диалога.

  6. Нажмите кнопку Продолжить, чтобы отключить режим пошагового исполнения и выполнить оставшуюся часть макроса.

Совет. Чтобы прервать выполнение макроса и перейти в пошаговый режим, нажмите клавиши CTRL+BREAK.


 Назначение клавиши для выполнения макрокоманды или набора макрокоманд

Назначение клавиши для выполнения макрокоманды или набора макрокоманд

Допускается связывание макрокоманды или набора макрокоманд с конкретной клавишей или сочетанием клавиш с помощью специальной группы макросов AutoKeys. После этого при нажатии клавиши или сочетания клавиш Microsoft Access будет выполнять данную макрокоманду.

  1. В окне базы данных выберите значок Макросы [image] в списке Объекты.

  2. Нажмите кнопку Создать.

  3. Нажмите кнопку Имена макросов [image] на панели инструментов.

  4. Укажите в ячейке столбца Имя макроса клавишу или сочетание клавиш, с которыми нужно связать макрокоманду или набор макрокоманд.

    Для получения дополнительных сведений о сочетаниях клавиш, которые можно использовать для присваивания макросам, нажмите кнопку [image] .

  5. Добавьте в макрос макрокоманду или набор макрокоманд, которые должны выполняться при нажатии указанной клавиши или сочетания клавиш. Например, можно выбрать макрокоманду «ЗапускМакроса» (RunMacro), которая будет запускать макрос «Печать текущей записи» при нажатии клавиш CTRL+П.

    Выберите макрокоманду, которая будет запускаться при нажатии указанного сочетания клавиш.

  6. Повторите шаги 4 и 5 для каждого нового сочетания клавиш.

  7. Сохраните группу макросов под именем AutoKeys.

Новые сочетания клавиш вступят в действие сразу после сохранения макроса и будут доступны при каждом открытии базы данных.

Примечание. Если макрокоманда или набор макрокоманд связывается с сочетанием клавиш, которое уже используется в Access (например, CTRL+C - сочетание клавиш для команды Копировать), то новое назначение макрокоманд на это сочетание клавиш заменит стандартное назначение команд Access.


 Сочетания клавиш в AutoKeys

Сочетания клавиш в AutoKeys

В следующей таблице представлены сочетания клавиш, используемые для назначения клавиш в группе макросов AutoKeys. Допустимые сочетания клавиш являются подмножеством синтаксиса инструкции Visual Basic SendKeys. Для получения дополнительных сведений о синтаксисе инструкции SendKeys нажмите кнопку [image] .

Инструкция SendKeys | Сочетание клавиш
^A или ^4 | CTRL+Любая буква или цифра
{F1} | Любая функциональная клавиша
^{F1} | CTRL+Любая функциональная клавиша
+{F1} | SHIFT+Любая функциональная клавиша
{INSERT} | INS
^{INSERT} | CTRL+INS
+{INSERT} | SHIFT+INS
{DELETE} or {DEL} | DEL
^{DELETE} or ^{DEL} | CTRL+DEL
+{DELETE} or +{DEL} | SHIFT+DEL


 Вызов встроенной справки Visual Basic

Вызов встроенной справки Visual Basic

Существует целый ряд способов обращения к справке для получения ответов на вопросы о языке Microsoft Visual Basic и сведений о его ключевых словах. Ниже приведены несколько наиболее полезных и широко используемых приемов обращения к справке.

Обратиться к справке можно следующими способами.

  • Нажатие клавиши F1 в окне модуля Visual Basic. При работе в окне модуля можно быстро получить справку по методу, свойству, функции, инструкции или объекту, щелкнув ключевое слово в строке программы и нажав клавишу F1.

  • Нажатие клавиши F1 в окне просмотра объектов. В окне просмотра объектов выводятся сведения об объектах, свойствах, методах и константах. Для получения сведений об использовании окна просмотра объектов нажмите кнопку [image] .

  • Вызов помощника по Office. Чтобы открыть выноску помощника и ввести свой вопрос, нажмите кнопку Справка по Microsoft Access на панели инструментов, либо, если помощник уже присутствует на экране без выноски, щелкните помощника. Помощник облегчает поиск нужных разделов справки. Просто введите имя метода, свойства, функции, предложения или объекта, либо введите запрос, а затем выберите один из предложенных разделов. Чем определеннее будет запрос, тем точнее будут подобраны разделы справки.

    Примечания

    • Когда активно окно редактора Visual Basic, помощник по Office по умолчанию будет искать сведения только в файлах справки по программированию. Чтобы в этом случае поиск выполнялся и в справке по программированию, и в справке по продукту, щелкните помощника правой кнопкой, выберите команду Параметры и установите флажок просматривать две справочных системы при работе с VBA.

    • Если активно любое другое окно, помощник по Office будет искать нужную информацию только в справке по продукту. Сведения по макрокомандам и свойствам Microsoft Access доступны в обеих справочных системах.
  • Использование вкладок «Содержание» и «Поиск». Диалоговое окно Справка содержит несколько вкладок, которыми можно пользоваться для получения справочных сведений.
    • Откройте вкладку Содержание и дважды щелкните книгу Программирование или Справочник по языку Visual Basic. Содержимое этих книг сгруппировано по таким категориям, как макрокоманды, события, функции, объекты и наборы, методы, свойства и инструкции. Чтобы вывести список разделов справки данной категории, дважды щелкните эту категорию.

      Чтобы вывести раздел или всю книгу разделов на печать, выберите раздел или книгу и нажмите кнопку Печать.

    • Откройте вкладку Поиск и выберите нужный раздел.

Советы

  • Для переключения между окном приложения и окном справки по программированию нажмите клавиши ALT+TAB или воспользуйтесь панелью задач Windows. Если оставить окно справки активным, то можно будет быстро вернуться к последнему просмотренному разделу справки.


 Копирование примеров программ Visual Basic из окна справки в окно программы

Копирование примеров программ Visual Basic из окна справки в окно программы

  1. Выделите в окне справки текст примера программы и щелкните его правой кнопкой мыши.

  2. Выберите в контекстном меню команду Копировать.

  3. Переключитесь в редактор Visual Basic.

  4. Вставьте пример в окно Code нужного модуля.


 Модули: что это такое и как они работают

Модули: что это такое и как они работают

Что такое модуль?

Модуль — это набор описаний и процедур на языке Visual Basic для приложений, собранных в одну программную единицу.

Составные части модуля

Существует два основных типа модулей: модули класса и стандартные модули. Каждая процедура в модуле может быть либо процедурой-функцией Function, либо процедурой-подпрограммой Sub.

Модули класса

Модули форм и модули отчетов являются модулями класса, связанными с определенной формой или отчетом. Они часто содержат процедуры обработки событий, запускаемые в ответ на событие в форме или отчете. Процедуры обработки событий используются для управления поведением формы или отчета и их откликом на события, такие как нажатие кнопки.

При создании первой процедуры обработки события для формы или отчета автоматически создается связанный с ней модуль формы или отчета. Для просмотра модуля для формы или отчета достаточно нажать кнопку Программа [image] на панели инструментов в режиме конструктора.

Выбор объекта и события для процедуры

В процедурах модулей форм и отчетов могут содержаться вызовы процедур, добавленных в стандартные модули.

В Access 95 модули класса существуют только в связи с формой или отчетом. В Access 97 модули класса могут также существовать независимо от них. Модули класса этого типа выводятся в группе Модули из списка Объекты в окне базы данных. Модуль класса из группы Модули можно использовать для создания определения специального объекта. Для получения дополнительных сведений о программировании с использованием этих модулей класса нажмите кнопку [image] .

Стандартные модули

В стандартных модулях содержатся общие процедуры, не связанные ни с каким объектом, а также часто используемые процедуры, которые могут быть запущены из любого окна базы данных.

Стандартные модули содержат процедуры, доступные из любой части базы данных

Для просмотра списка стандартных модулей базы данных щелкните Модули в списке Объекты в окне базы данных. Формы, отчеты и стандартные модули выводятся также в окне просмотра объектов.

Для получения дополнительных сведений о процедурах можно получить нажмите кнопку [image] .


 Процедуры: общие сведения

Процедуры: общие сведения

В языке Visual Basic замкнутыми программными единицами являются процедуры. Процедура содержит набор инструкций и методов, с помощью которых выполняются действия или рассчитывается значение. Например, в следующей процедуре обработки события метод OpenForm открывает форму «Заказы»:

Private Sub ОткрытиеФормыЗаказы_Click()

    DoCmd.OpenForm "Заказы"

End Sub

Существуют процедуры двух типов.

  • Процедура-подпрограмма Sub, аналогично инструкциям Visual Basic, выполняет действие или набор действий, но не возвращает значение. Пользователь имеет возможность создавать процедуры Sub самостоятельно или использовать процедуры обработки событий, определенные в Microsoft Access.

    Каждая форма или отчет в базе данных имеют встроенный модуль формы или модуль отчета, содержащий встроенные процедуры обработки событий, которые выполняются в ответ на события, возникающие в форме или отчете и в элементах управления в форме или отчете. После того как Microsoft Access определит, что событие возникло в форме, отчете или в элементе управления, автоматически запускается процедура обработки события, имя которой образуется как комбинация имен объекта и события. Например, процедура обработки события позволяет открыть другую форму при нажатии кнопки в форме.

    Совет. При создании объекта с помощью мастера часто автоматически создаются процедуры обработки событий для данного объекта. Для того чтобы понять, как работают процедуры, полезно ознакомиться с такими процедурами.

  • Процедура-функция Function (часто такие процедуры называют просто функциями) возвращает значение, например, полученное в результате расчетов. Visual Basic включает ряд встроенных функций; например, функция Now возвращает текущее значение даты и времени. В дополнение к встроенным функциям, пользователь имеет возможность самостоятельно создавать функции, которые называют специальными или пользовательскими функциями.

    Функции, возвращающие значения, могут использоваться в выражениях. Выражения, содержащие функции, широко используются в Microsoft Access, например, в аргументах инструкций или в методов Visual Basic, при указании значений свойств и при определении условий в запросах или фильтрах.

Ниже приводится пример процедуры Function с именем «НачалоСледующегоМесяца», которая возвращает дату первого дня следующего месяца:

Function НачалоСледующегоМесяца()

    НачалоСледующегоМесяца = _
        DateSerial(Year(Now), Month(Now) + 1, 1)

End Function

Данная функция состоит из единственной инструкции присвоения, в которой результат выражения (стоящего справа от знака равенства [=]) присваивается функции «НачалоСледующегоМесяца» (имя которой стоит слева от знака равенства). Результат рассчитывается с помощью встроенных функций Visual Basic DateSerial, Year, Now и Month.

После создания функции ее можно использовать в Microsoft Access в любых выражениях. Например, чтобы сделать дату первого дня следующего месяца значением, которое поле получает по умолчанию, следует в окне свойств определить свойство этого поля Значение по умолчанию (DefaultValue) с помощью следующего выражения:

=НачалоСледующегоМесяца()

Примечание. Для того чтобы использовать функцию в качестве значения свойства, ее необходимо поместить в модуль формы или отчета или в стандартный модуль. Нельзя использовать в виде значения свойства формы или отчета функцию в модуле класса, не связанном с формой или отчетом.

Процедуры Sub и Function могут принимать аргументы. Для получения дополнительных сведений об использовании аргументов в Visual Basic нажмите кнопку [image] .


 Создание пользовательских процедур Visual Basic для приложений

Создание пользовательских процедур Visual Basic для приложений

Используя в базе данных процедуры Visual Basic, можно управлять взаимодействием таблиц, форм, отчетов и запросов этой базы данных. Существует несколько типов процедур. Можно создать процедуру обработки события, добавив ее код в предопределенные шаблоны в модуле формы или модуле отчета. Можно также создавать собственные процедуры Function и процедуры Sub в стандартных модулях или в модулях класса (которые содержат модули форм и отчетов).

Процедуры, содержащиеся в стандартном модуле или модуле класса, могут быть вызваны из выражений, из других процедур, из процедур обработки событий, из процедур в других стандартных модулях или из макросов. Процедуры обработки событий вызываются автоматически в ответ на события (например, щелчок мыши), возникающие в форме, отчете или элементе управления.

Предполагаемые действия

Создание пользовательской функции

Создание пользовательской процедуры Sub

Создание процедуры обработки события


 Создание модуля класса, не связанного с формой или отчетом

Создание модуля класса, не связанного с формой или отчетом

  1. В окне базы данных или в редакторе Visual Basic выберите команду Модуль класа (Class Module) в меню Вставка (Insert).

    Пустой модуль класса будет открыт в редакторе Visual Basic.

  2. Добавьте в модуль нужные описания и процедуры.

  3. Для сохранения модуля нажмите кнопку Save [image] на панели инструментов и укажите имя модуля класса в диалоговом окне Сохранение.

Чтобы открыть модуль класса после того, как он был впервые сохранен, в окне базы данных выберите значок Модули [image] в списке Объекты и нажмите кнопку Конструктор.

Для получения дополнительных сведений об использовании модулей классов нажмите кнопку [image] . Также, см. книгу Building Applications with Forms and Reports.


 Использование аргументов в программах Visual Basic для приложений (VBA)

Использование аргументов в программах Visual Basic для приложений (VBA)

Аргументы используются для передачи необходимых данных в процедуру, инструкцию или метод. Для того чтобы иметь возможности передавать информацию в вызываемую процедуру, следует при создании процедуры Function или Sub описать ее аргументы.

При вызове процедуры, имеющей аргументы, необходимо указать значения этих аргументов. Аргументы имеются у ряда инструкций и методов.

Предполагаемые действия

Создание пользовательской функции

Создание процедуры Sub

Указание аргументов процедуры, инструкции или метода


 Работа с данными и с объектами базы данных с помощью программ Visual Basic

Работа с данными и с объектами базы данных с помощью программ Visual Basic

Наряду с обработкой данных и объектов базы данных с помощью интерфейса пользователя Microsoft Access можно использовать язык Microsoft Visual Basic для написания процедур, динамически создающих, удаляющих и изменяющих данные и объекты. Например, можно написать процедуру, помещающую подпись в форму или изменяющую цвет поля в форме при выполнении пользователем определенного действия.

В программах допускаются прямые ссылки на данные и объекты или описание объектных переменных, представляющих данные и объекты. После описания объектной переменной и присвоения ей значения эта переменная может быть использована везде, где используется объект. Значения объектных переменных изменяются так же, как значения других переменных.

Например, следующая процедура Sub создает таблицу «Старые счета», содержащую единственное поле «КодЗаказа»:

Sub CreateTable ()

    ' Описывает переменные.
    Dim dbs As Database, tbl As TableDef, fld As Field

    ' Присваивает объектной переменной базы данных
    ' значение текущей базы данных.
    Set dbs = CurrentDB

    ' Создает таблицу и поле и присваивает их
    ' объектным переменным.
    Set tbl = dbs.CreateTableDef("Старые счета")
    Set fld = tbl.CreateField("КодЗаказа", dbText)

    ' Добавляет поле в таблицу,
    ' а затем таблицу в базу данных.
    tbl.Fields.Append fld
    dbs.TableDefs.Append tbl
    dbs.TableDefs.Refresh

End Sub

Объекты доступа к данным (Microsoft DAO) содержат объекты, такие как таблицы, запросы, отношения и индексы, которые выполняют задачи управления данными в базе данных Microsoft Access. Эти объекты называют объектами доступа к данным. Программу Visual Basic, использующую объекты доступа к данным, можно использовать совместно с другими приложениями, использующими Microsoft DAO, например, с Microsoft Excel.

Также можно использовать объекты репликации и Jet для доступа к данным на сервере баз данных и выполнения действий над ними через любое средство доступа OLE DB.

Кроме того, в Microsoft Access определен ряд объектов, предназначенных непосредственно для обработки данных, таких как формы, отчеты и элементы управления.

Для получения дополнительных сведений о работе с объектами доступа к данным нажмите кнопку [image] или обратитесь к руководству Building Applications with Forms and Reports. Для получения дополнительных сведений о работе с объектами репликации и Jet нажмите кнопку [image] .


 Запуск программ Visual Basic

Запуск программ Visual Basic

В Microsoft Access для выполнения программы Visual Basic следует запустить содержащую эту программу процедуру Sub или процедуру Function. Программа записывается внутри процедуры как набор инструкций и методов, с помощью которых выполняются требуемые операции или рассчитываются значения.

Процедуры сохраняются в объектах базы данных, которые называются модулями. Сами модули не являются выполняемыми объектами; содержащиеся в модулях процедуры выполняются в ответ на события или вызываются из выражений, макросов или других процедур.

В Microsoft Access существуют следующие способы запуска программ Visual Basic

  • Создание процедуры обработки события. Процедура обработки события выполняется при выполнении пользователем действия, которое вызывает событие.

    Например, программу, выполняющуюся при открытии формы, включают в процедуру обработки события «Нажатие кнопки» (Click) для кнопки, при нажатии которой будет открываться эта форма. Для получения дополнительных сведений о создании процедуры обработки события нажмите кнопку [image] .

  • Вызов функции в выражении или в окне проверки редактора Visual Basic.

    Например, функции применяются в выражениях, определяющих вычисляемые поля в формах, отчетах или запросах. Выражения используются для указания условий в запросах и фильтрах, а также в макросах и макрокомандах, в инструкциях и методах Visual Basic и в инструкциях SQL. Для получения дополнительных сведений о создании специальных функций нажмите кнопку [image] .

  • Вызов процедуры Sub в другой процедуре или в окне проверки редактора Visual Basic.

    Если определенная программа выполняется часто, можно поместить ее в процедуру Sub. Это позволяет не повторять программу Visual Basic, выполняющую нужную операцию, в каждой процедуре, а написать ее один раз в общей процедуре и затем выполнять эту общую процедуру каждый раз, когда требуется выполнить нужную операцию. Для получения дополнительных сведений о создании процедуры Sub нажмите кнопку [image] .

  • Выбор команды Run Sub/UserForm в меню Run редактора Visual Basic для запуска процедуры без аргументов.

    В окне программы поместите курсор в процедуру, которую требуется выполнить, а затем выберите команду Run Sub/UserForm из меню Run.

  • Выполнение макрокоманды «ЗапускПрограммы» (RunCode) в макросе.

    Макрокоманда «ЗапускПрограммы» (RunCode), выполняемая в макросе, вызывает встроенную функцию Visual Basic или функцию, созданную пользователем. Для запуска процедуры Sub или процедуры обработки события следует создать функцию, которая вызывает процедуру Sub или процедуру обработки события, и с помощью макрокоманды «ЗапускПрограммы» (RunCode) вызвать эту функцию. Для получения дополнительных сведений о макрокоманде «ЗапускПрограммы» (RunCode) нажмите кнопку [image] .


 Использование редактора Microsoft Visual Basic

Использование редактора Microsoft Visual Basic

Редактор Visual Basic представляет собой среду разработки, предназначенную для создания и редактирования программ на языке Visual Basic для приложений (VBA), содержащихся в файлах, создаваемых в приложениях Microsoft Office — включая базы данных Microsoft Access и проекты Microsoft Access. Редактор включает в себя окно проекта, окно свойств, окно просмотра объектов и окно программы, а также средства отладки.

Предполагаемые действия

Выполнение программ Visual Basic для приложений

Создание процедуры Visual Basic

Работа с объектами в программах Visual Basic с помощью средства просмотра объектов

Отладка программ Visual Basic

Вызов встроенной справки Visual Basic


 Работа с объектами в программах Visual Basic с помощью средства просмотра объектов

Работа с объектами в программах Visual Basic с помощью средства просмотра объектов

Окно просмотра объектов позволяет посматривать объекты, доступные для использования в Microsoft Access и других приложениях, поддерживающих язык Microsoft Visual Basic. Кроме того, в окне просмотра объектов выводятся методы и свойства каждого объекта. Выбрав метод или свойство в окне просмотра объектов, можно вставить его в активный модуль.

Предполагаемые действия

Поиск метода или свойства в окне просмотра объектов

Вставка метода или свойства из окна просмотра объектов в активный модуль Visual Basic


 Поиск метода или свойства в окне просмотра объектов

Поиск метода или свойства в окне просмотра объектов

  1. Откройте любой модуль в редакторе Visual Basic.

  2. Нажмите кнопку Object Browser [image] на панели инструментов.

  3. В поле со списком Project/Library (верхнее левое поле) выберите Access или другую библиотеку.

  4. В списке Classes выберите нужный объект.

  5. В списке Members Of выберите нужный метод или свойство.

Примечания

  • Для получения сведений о выбранном классе, методе, событии или свойстве нажмите кнопку Help [image] в окне Object Browser.

  • Чтобы просмотреть объекты, которые предоставляет библиотека Microsoft Office 9.0 Object Library (такие, как панели команд), нужно установить ссылку на эту библиотеку. В редакторе Visual Basic выберите команду References в меню Tools и установите флажок Microsoft Office 9.0 Object Library.


 Вставка метода или свойства из окна просмотра объектов в модуль

Вставка метода или свойства из окна просмотра объектов в модуль

  1. Выберите метод или свойство в окне просмотра объектов.

  2. В нижнем разделе окна просмотра объектов выберите синтаксическую конструкцию, которую требуется вставить.

  3. Нажмите кнопку Copy To Clipboard [image] в окне просмотра объектов.

  4. Перейдите в окно программы того модуля, в который требуется вставить имя.

  5. Нажмите кнопку Paste [image] на панели инструментов.

Синтаксическая конструкция, показанная на нижней панели окна просмотра объектов, будет вставлена в модуль.

Примечание. После вставки синтаксической конструкции для процедуры Sub необходимо удалить скобки, окружающие прототипы в синтаксической конструкции.


Настройка окна программы Visual Basic

Предполагаемые действия

Изменения параметров отображения программ Visual Basic в окне программы

Отключение проверки синтаксиса в программах Visual Basic

Отключение обработки ошибок в программах Visual Basic

Требование обязательного объявления переменных в программе Visual Basic


 Изменение параметров отображения программ Visual Basic в окне программы

Изменение параметров отображения программ Visual Basic в окне программы

  1. В меню Tools выберите команду Options.

  2. Выберите нужные параметры.

    Диалоговое окно Options позволяет изменить шрифт, его размер, цвет и интервал табуляции, используемые при работе с текстом программ Visual Basic в окне «Code». Кроме того, можно выбрать, будет ли в окне «Code» выводиться весь модуль (по умолчанию) или отдельные процедуры, а также настроить различные дополнительные параметры работы с этим окном.


 Вывод синтаксических подсказок в окне программы редактора Visual Basic

Вывод синтаксических подсказок в окне программы редактора Visual Basic

  1. В меню Tools выберите команду Options.

  2. Откройте вкладку Editor.

  3. Убедитесь, что в группе Code Settings установлен флажок Auto Quick Info.

Если флажок Auto Quick Info установлен, то редактор Visual Basic будет выводить подсказки по синтаксису в окне Code. При вводе имени метода или имени существующей процедуры, за которым следует пробел или открывающаяся круглая скобка, автоматически выдаются сведения о синтаксисе этого метода или процедуры, например, информация об аргументах.


 Просмотр значений переменных в окне локальных значений редактора Visual Basic

Просмотр значений переменных в окне локальных значений редактора Visual Basic

  1. Приостановите выполнение программы Visual Basic.

    Инструкции

  2. Выберите команду Locals Window в меню View.

В окне Locals Microsoft Access автоматически выводит имена, текущие значения и типы всех переменных и объектов текущей процедуры. Значения в окне «Locals» обновляются всякий раз при приостановке выполнения программы. Допускается изменение текущего значения переменной в окне «Locals», для чего нужно выделить существующее значение и ввести новое.


 Вывод списка подходящих объектов, свойств и методов в окне программы редактора Visual Basic

Вывод списка подходящих объектов, свойств и методов в окне программы редактора Visual Basic

  1. В меню Tools выберите команду Options.

  2. Перейдите на вкладку Editor.

  3. Убедитесь, что в группе Code Settings установлен флажок Auto List Members.

Когда флажок Auto List Members установлен, Microsoft Access помогает в завершении инструкций при вводе программы на языке Visual Basic. При вводе имени объекта, за которым следует пробел или открывающая скобка, Microsoft Access отображает список связанных объектов, свойств и методов, которые могут быть введены после имени объекта. Для ввода элемента списка в текущую строку программы используются следующие клавиши.

Клавиша | Результат
TAB | Ввод элемента
ПРОБЕЛ | Ввод элемента с добавлением пробела
ENTER | Ввод элемента и перемещение курсора на следующую строку

Примечание. Для того чтобы убрать список, нажмите клавишу ESC.


 Требование обязательного объявления переменных в программе Visual Basic

Требование обязательного объявления переменных в программе Visual Basic

Microsoft Visual Basic не требует обязательного явного описания переменной перед ее использованием в процедуре. Если используется переменная, не описанная в явном виде, Visual Basic неявно описывает ее как переменную типа Variant.

Несмотря на удобство использования неявно описанных переменных, в некоторых случаях наличие таких переменных может привести к ошибкам, которые трудно обнаружить. Для того чтобы наложить требование обязательного описания переменных, используемых в процедурах, выполните следующие действия.

  1. В меню Tools выберите команду Options.

  2. Перейдите на вкладку Editor.

  3. В группе Code Settings установите флажок Require Variable Declaration.

    После установки флажка Require Variable Declaration Microsoft Access автоматически включает инструкцию Option Explicit в раздел описаний любого нового модуля в базе данных, в том числе в новые модули создаваемых форм и отчетов. Для получения дополнительных сведений об инструкции Option Explicit нажмите кнопку [image] .


Отладка программ Visual Basic

Предполагаемые действия

Дополнительная информация об отладке

Использование точек останова для прерывания работы программы

Пошаговое выполнение программы

Вывод значений переменных и выражений в окне проверки

Отслеживание переменных и выражений с помощью установки контрольных выражений

Трассировка вызовов процедур Visual Basic

Просмотр значений переменных в окне локальных значений

Просмотр значения переменной или выражения в приостановленной программе в редакторе Visual Basic


 Отключение проверки синтаксиса в программах Visual Basic

Отключение проверки синтаксиса в программах Visual Basic

Microsoft Visual Basic автоматически выполняет проверку текста, вводимого в окно Code редактора Visual Basic, на наличие синтаксических ошибок. Чтобы отключить эту проверку, выполните следующие действия.

  1. В меню Tools выберите команду Options.

  2. Откройте вкладку Editor.

  3. В группе Code Settings сбросьте флажок Auto Syntax Check.


 Использование окна проверки редактора Visual Basic при работе с программами Visual Basic

Использование окна проверки редактора Visual Basic при работе с программами Visual Basic

Окно проверки в редакторе Visual Basic используется для проверки результатов обработки строки программы Visual Basic. С помощью окна проверки можно проверить значение элемента управления, поля или свойства, отобразить результат выражения либо присвоить новое значение переменной, полю, столбцу или свойству. Окно проверки представляет собой нечто вроде черновика, позволяющего немедленно проверить инструкции, методы и процедуры Sub.

  1. Для того чтобы воспользоваться окном проверки в определенном месте программы, прервите выполнение программы в этом месте.

    Инструкции

  2. Нажмите кнопку Immediate Window на панели инструментов «Debug».

  3. Введите в окно проверки инструкцию, метод или вызов процедур Function и Sub и нажмите клавишу ENTER.

Советы

  • Для того чтобы просмотреть в окне проверки результат выражения, вызовите метод Print объекта Debug и укажите выражение. Для краткости можно заменить вызов метода Print символом (?). Например, Microsoft Visual Basic выведет результат, возвращаемый специальной функцией «НачалоСледующегоМесяца», при вводе в окно проверки любой из следующих строк:
    Debug.Print НачалоСледующегоМесяца()

? НачалоСледующегоМесяца()

    Кроме того, допускается включение вызовов метода Print объекта Debug в программу Visual Basic для записи результатов значений или выражений в окно проверки во время выполнения программы. Эти результаты станут доступными для просмотра после завершения выполнения программы.

  • Окно проверки может быть открыто в Microsoft Access в любой момент нажатием клавиш CTRL+G.


 Отключение обработки ошибок в программах Visual Basic

Отключение обработки ошибок в программах Visual Basic

Если в процедуре Visual Basic используются инструкции On Error, то при возникновении ошибки Microsoft Visual Basic автоматически вызывает процедуру обработки ошибок. В некоторых случаях, например, во время отладки, требуется отключить обработку ошибок.

  1. В меню Tools выберите команду Options.

  2. Откройте вкладку General.

  3. В группе параметров Error Trapping выберите переключатель Break On All Errors.

    После установки этого флажка в случае возникновения ошибки автоматически выполняется переход в режим останова (Break), вне зависимости от существования подпрограмм обработки ошибок.


 Оптимизация программ Visual Basic для приложений

Оптимизация программ Visual Basic для приложений

Обычно, лучшим способом ускорить выполнение программы Visual Basic является выбор более эффективного алгоритма. Однако полезно помнить о следующих приемах, повышающих быстродействие.

  • Убедитесь, что программа в базе данных скомпилирована. В окне программы редактора Visual Basic выберите команду Compile из меню Debug.

    Примечание. После переименования файла базы данных следует перекомпилировать программы.

  • Всегда описывайте переменные в явном виде. Для того чтобы наложить требование явного описания всех переменных перед их использованием в процедурах, установите флажок Require Variable Declaration на вкладке Editor диалогового окна Options. Для получения дополнительных сведений нажмите кнопку [image] .

  • Используйте наиболее подходящие типы переменных. Например, описывайте переменную, представляющую форму, с типом Form, а не с типом Object или Variant.

  • Используйте переменные для ссылок на свойства, элементы управления и объекты доступа к данным. Если требуется сослаться несколько раз на значение свойства элемента управления в форме, а также на объект доступа к данным или на его свойство, создайте объектные переменные и используйте эти переменные вместо полных идентификаторов.

  • Пользуйтесь ключевым словом Me для ссылок на форму в процедуре обработки события.

  • Не злоупотребляйте использованием функции Ilf. Старайтесь не пользоваться функцией Ilf, если расчет любого из входящих в эту функцию выражений занимает много времени.

  • Разумно используйте функции, обрабатывающие строковые значения. Пользуйтесь функциями типа «$» (например, функцией Str$) при работе со строковыми значениями и функциями, не принадлежащими к типу «$», при работе с типом Variant или другими типами данных.

  • По возможности, используйте типы данных Integer или Long в математических расчетах.

  • Для экономии памяти используйте динамические массивы и инструкции Erase или ReDim.

  • По возможности используйте константы.

  • Для ускорения переходов по записям пользуйтесь закладками вместо метода FindNext или других способов перехода на конкретную запись.

  • Применяйте методы FindRecord и FindNext к индексированным полям. Для индексированных полей эти методы выполняются значительно быстрее.

  • Оптимизируйте структуру модулей. Visual Basic загружает модули по требованию, то есть модуль загружается в память только при вызове в программе процедуры из этого модуля. Размещение взаимосвязанных процедур в одном модуле позволяет снизить время, требующееся на загрузку.

  • Уничтожайте не используемые процедуры и переменные. По мере развития приложения могут появиться процедуры, которые больше не вызываются, или описанные переменные, которые больше не используются. Регулярно просматривайте ваши программы и удаляйте устаревшие блоки.

Дополнительные сведения см. в руководстве Building Applications with Forms and Reports.


 Сценарии Visual Basic на Web-страницах

Сценарии Visual Basic на Web-страницах

Сценарий представляет собой тип компьютерной программы, которая может использоваться для придания Web-странице динамичности. Например, сценарий можно использовать для включения счетчика числа посетителей, прибавляющего единицу каждый раз, когда кто-то посещает данную Web-страницу; либо для включения обратного отсчета до конкретного события: "осталось всего x дней", где x каждый день уменьшается на 1. Создание сценариев является дополнительным средством Office, требующим знаний по программированию. Разработчики могут создавать и редактировать сценарии в Microsoft Access непосредственно на Web-страницах. Обычно сценарии выполняются Web-обозревателем при открытии Web-страницы или при отображении Web-страницы в режиме страницы, как правило для отображения возвращаемых сценарием данных.

Внимание!

Будьте внимательны при копировании и перемещении сценариев. Хотя некоторые сценарии самостоятельны и работают в любом расположении на любой Web-странице, другие сценарии зависимы от структуры Web-страницы. При копировании или перемещении на другую Web-страницу (или в другое место Web-страницы) эти сценарии могут работать неправильно или возвращать ошибки при просмотре в обозревателе.


 Создание и редактирование сценария Visual Basic на Web-странице

Создание и редактирование сценария Visual Basic на Web-странице

В Microsoft Access на страницу можно добавить сценарии VBScript (Microsoft Visual Basic Scripting Edition) или JScript.

Сценарии полезны при разработке пользовательских решений на базе Интернета. Создание сценария обеспечивает полную модель объектов для Web-обозревателя и объектов на текущей странице. Это облегчает написание программы, обрабатывающей элементы страницы, устраняя необходимость в знании языка HTML или способа внедрения объектов. Также можно создать специальный сценарий для обработки событий, происходящих с объектами (такими как элементы ActiveX) на Web-странице.

Для просмотра кода HTML или редактирования сценария для Web-страницы откройте редактор сценариев Microsoft Script Editor. В окне редактора сценариев можно добавлять текст, редактировать теги HTML и любые сценарии. Кроме того, можно просмотреть, как будет выглядеть Web-страница в Web-обозревателе.

Дополнительные сведения о создании сценариев см. в справке редактора сценариев Microsoft Script Editor.

Дополнительные сведения

Создание сценария на Web-странице

Просмотр и изменение сценария на Web-странице


 Изменение языка сценариев, используемого по умолчанию

Изменение языка сценариев, используемого по умолчанию

  1. Откройте Web-страницу в режиме конструктора или в режиме страницы.

  2. В меню Сервис выберите команду Макрос, а затем подкоманду Редактор сценариев.

  3. В списке окна Properties выберите Document.

  4. Измените значение свойства defaultClientScript на VBScript или JavaScript.


Поддержка Java-приложений

Java-приложение представляет собой небольшую программу, написанную на языке программирования Java, используемом главным образом в Интернете. Java-приложение — это отдельный файл, на который ссылается документ HTML. Java-приложение может использоваться для добавления на Web-страницу анимации, музыки, операций базы данных или обновлений. Язык Java был создан и продолжает разрабатываться корпорацией Sun Microsystems, Inc. При открытии Web-страницы, содержащей Java-приложение, в Microsoft Access на странице отображается значок, представляющий это приложение Значок Java-приложения.

Этот значок не появляется при просмотре Web-страницы в обозревателе и при печати Web-страницы.

Разработчики также могут изменять исходный текст Java-приложения.

Внимание!

Будьте внимательны при копировании и перемещении Java-приложений. Хотя некоторые Java-приложения самостоятельны и работают в любом расположении на любой Web-странице, другие Java-приложения зависимы от структуры Web-страницы. При копировании или перемещении на другую Web-страницу (или в другое место Web-страницы) такие Java-приложения могут работать неправильно или возвращать ошибки при просмотре в обозревателе.


 Просмотр и изменение Web-сценария

Просмотр и изменение Web-сценария

  1. Откройте Web-страницу в режиме конструктора или в режиме страницы.

  2. В меню Сервис выберите команду Макрос, а затем подкоманду Редактор сценариев.


 Scoping and Object-Naming Compatibility

Scoping and Object-Naming Compatibility

Visual Basic scoping rules affect the names you choose for your objects, modules, and procedures.

Modules and Other Objects with the Same Name

When you name a module, avoid prefacing module names with "Form_" or "Report_". Naming a module in this way could conflict with existing code you've written behind forms and reports.

If you have a module in an application created with version 1.x or 2.0 of Microsoft Access that doesn't follow these naming rules, Microsoft Access 2000 generates an error when you try to convert your application. For example, a module named Form_Orders in a Microsoft Access version 1.x or 2.0 database would generate an error and you would be asked to rename the module before attempting to convert it.

Modules and Procedures with the Same Name

Although it is not suggested, you can have a procedure with the same name as a module. To call that procedure from an expression anywhere in your application, you must use a fully qualified name for the procedure, including both the module name and the procedure name, as in the following example:

IsLoaded.IsLoaded("Orders")

Note This will not work with the Runcode action in macros. Accessing procedures with the same name as a module is not possible with Macros.

Procedures and Controls with the Same Name

If you call a procedure from a form, and that procedure has the same name as a control on the form, you must fully qualify the procedure call with the name of the module in which it resides. For example, if you want to call a procedure named PrintInvoice that resides in a standard module named Utilities, and there's also a button on the same form named PrintInvoice, use the fully qualified name Utilities.PrintInvoice when you call the procedure from your form or form module.

Controls with Similar Names

You can't have a control with a name that differs from an existing control's name by only a space or a symbol. For example, if you have a control named [Last_Name], you can't have a control named [Last Name] or [Last+Name].

Modules with the Same Names as Type Libraries

You can't save a module with the same name as a type library. If you try to save a module with the name "ADO", "Access", "DAO" or "VBA", you'll get an error stating that the name conflicts with an existing module, project, or object library. Similarly, if you've set a reference to another type library, such as the Microsoft Excel type library, you can't save a module with the name "Excel".

Fields with the Same Names as Methods

If a field in the table has the same name as an ActiveX Data Objects (ADO) method on an ADO Recordset object, or a Data Access Object (DAO) method on a DAO Recordset object, you can't refer to the corresponding field in the recordset with the . (dot) syntax. You must use the ! (exclamation point) syntax, or Microsoft Access will generate an error. The following example shows how to refer to a field called AddNew in a recordset opened on a table called Contacts:

ADO

Dim rst As New ADODB.Recordset
rst.Open "Contacts",CurrentProject.Connection, _
    adOpenKeySet,adLockOptimistic
Debug.Print rst!AddNew

DAO

Dim dbs As Database, rst As DAO.Recordset
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset("Contacts")
Debug.Print rst!AddNew

Modules with the Same Names as Visual Basic Functions

If you save a module with the same name as an intrinsic Visual Basic function, Microsoft Access will generate an error when you try to run that function. For example, if you save a module named MsgBox, and then try to run a procedure that calls the MsgBox function, Microsoft Access generates the error "Expected variable or procedure, not module."

Modules with the Same Names as Objects

If a database created with a previous version of Microsoft Access includes a module that has the same name as a Microsoft Access object, an ADO object, or a DAO object, you may encounter compilation errors when you convert your database to Microsoft Access 2000. For example, a module named "Form" or "Database" may generate a compilation error. To avoid these errors, rename the module.

Naming Fields Used in Expressions or Bound to Controls on Forms and Reports

When you create a field in a table that will be bound to a control on a report or used in an expression in the ControlSource property of a control or a report, avoid assigning the field a name that's the same name as a method of the Application object. To see a list of methods of the Application object, click Object Browser on the View menu while in module Design view. Click Access in the Project/Library box, click Application in the Classes box, and view the methods of the Application object in the Members Of box.

When you create a field in a table that will be bound to a control on a form or report, avoid assigning the field any of the following names: AddRef, GetIDsOfNames, GetTypeInfo, GetTypeInfoCount, Invoke, QueryInterface, or Release.

Identifiers with Same Names as Visual Basic Keywords

The version of Visual Basic that's used by Microsoft Access 97 and 2000 contains some new Visual Basic keywords, so you can no longer use these keywords as identifiers. These keywords are: AddressOf, Assert, Decimal, DefDec, Enum, Event, Friend, Implements, RaiseEvent, and WithEvents. When you convert a database developed with a prior version of Microsoft Access, existing identifiers that are the same as a new Visual Basic keyword will cause a compile error. To correct this problem, rename the identifiers.

Project Names the Same as Microsoft Access Objects

A project name is the string that is the name of your Microsoft Access application. In prior versions of Microsoft Access, the project name was the name of the database. In Microsoft Access 2000, the project name is specified by the ProjectName property setting and its default setting is the name of the database. If you convert a database with a name that is the same as a class of objects, for example, "application," "form," or "report," Microsoft Access will append an underscore character to the database name to create a project name that does not conflict with existing objects.


 Custom Methods and Properties

Custom Methods and Properties

You can use a class module to create a definition for a new custom object. When you create a new instance of a class, you create a new object and return a reference to it.

Any public procedures defined within the class module become methods of the new object. The Sub statement defines a method that doesn't return a value; the Function statement defines a method that may return a value of a specified type.

Any Property Let, Property Get or Property Set procedures you define become properties of the new object. Property Get procedures retrieve the value of a property. Property Let procedures set the value of a nonobject property. Property Set procedures set the value of an object property.

For example, you can use a class module to create an interface layer between your application and a set of Windows application programming interface (API) functions that it calls. To do this, you create a set of simple procedures that call more complicated procedures in a DLL. When you create an instance of this class, the procedures you've created become methods of the new object. You can apply these methods as you would the methods of any object, and in doing so you also call the API functions.


 Program Toolbars and Menu Bars

Program Toolbars and Menu Bars

Microsoft Access 2000 includes command bars, which are programmable toolbars and menu bars. Using command bars, you can create custom toolbars and menus for your application.

In order to program with command bars, you must set a reference to the Microsoft Office 9.0 object library. Click References on the Tools menu while in module Design view, and select the check box next to Microsoft Office 9.0 Object Library.

The CommandBars collection includes all the command bars that currently exist within the application. You can add a new CommandBar object to the CommandBars collection by using the Add method of the CommandBars collection. For example, the following code creates a new command bar named MyCommandBar. Note that you need to set the new command bar's Visible property to True (-1) in order to see it.

Dim cmb As CommandBar
Set cmb = Application.CommandBars.Add("MyCommandBar")
cmb.Visible = True

Each CommandBar object has a CommandBarControls collection, which contains all the controls on the command bar. Command bar controls are different from the controls on a form. You can create different types of command bar controls, including buttons, combo boxes, and pop-ups. You can combine these controls to create a custom toolbar or menu bar.

To refer to the CommandBarControls collection, use the Controls property of the CommandBar object. To add a control to a command bar, use the Add method of the CommandBarControls collection, specifying which type of control you want to create. The following example adds a new button to the command bar created in the previous example:

Dim cbc As CommandBarControl
Set cbc = cmb.Controls.Add(msoControlButton)
cbc.Caption = "Button1"
cbc.Style = msoButtonCaption

You can specify an expression to evaluate or a macro to run when the user clicks a command bar control. Set the OnAction to the name of a macro or to an expression that contains a built-in or user-defined function. For example, the following line of code sets the OnAction property of a CommandBarControl object to an expression that includes the MsgBox function. This example uses the CommandBar and CommandBarControl objects created in the previous two examples:

CommandBars("MyCommandBar").Controls("Button1").OnAction = _
    "=MsgBox(""Wow!"")"

Note Unlike most other collections in Microsoft Access, the CommandBars collection and all the collections it contains are indexed beginning with 1 rather than 0.


 Improvements in Compilation Performance

Improvements in Compilation Performance

Microsoft Access includes improvements to module loading and compilation performance to make your code compile and run faster.

Form and Report Modules Created on Demand

When you create a form or report in Microsoft Access 2000, the form or report doesn't automatically have an associated module. When you click Code [image] on the toolbar to view the form's or report's module, the module is created. You can also create the module from Visual Basic by referring to the form's Module property while the form or report is in Design view, or by setting the HasModule property to True (-1).

The setting of the HasModule property indicates whether a form or report currently has an associated module.

Since a form or report module isn't created until you need to add code to it, your project may have fewer modules to compile, resulting in improved compilation performance. Also, forms and reports without modules load more quickly than those with modules.

Compiling on Demand

It's a good idea to explicitly compile the modules in your project by using the commands described above, but it's not necessary. Microsoft Access compiles a module before running a procedure in it if the module hasn't already been compiled.

When a module is loaded for execution, Microsoft Access checks to see whether the module has already been compiled. If not, Microsoft Access compiles the module immediately prior to executing a procedure within it. The process of compiling slows down your code, so code in modules that have been saved in a compiled state will run faster.

Note that in Microsoft Access 95, when you run a procedure in one module, all modules in the potential call tree are loaded, although by default they aren't compiled until a procedure within them is called. Because Microsoft Access 97and Access 2000 load modules on a need-only basis, your code may run faster in many cases.

You can further enhance performance by grouping procedures in modules to reduce unnecessary compilations. Group procedures in modules with other procedures that they call, as opposed to grouping them in modules with unrelated procedures.


 Macro Actions and Methods of the DoCmd Object

Macro Actions and Methods of the DoCmd Object

To carry out macro actions from code in Microsoft Access 2000, use the DoCmd object and its methods. This object replaces the DoCmd statement that you used in versions 1.x and 2.0 of Microsoft Access to carry out a macro action.

When you convert a database, Microsoft Access automatically converts any DoCmd statements and the actions that they carried out in your Access Basic code to methods of the DoCmd object by replacing the space with the . (dot) operator.

Some macro actions work differently in Microsoft Access 2000 than in version 1.x, 2.0, or 7.0; these differences are detailed below.

Databases Created with Microsoft Access 95

The DoMenuItem Action

The DoMenuItem action is no longer used in Microsoft Access 2000. The new RunCommand action can be used to accomplish the tasks for which you used to use the DoMenuItem action.

When you enable a database created with a prior version of Microsoft Access, the DoMenuItem action will continue to work as it did before.

When you convert a database created with a prior version of Microsoft Access, all DoMenuItem actions in macros are replaced with RunCommand actions the first time that the macros are saved after conversion. DoMenuItem methods used in Visual Basic procedures aren't changed.

Databases Created with Microsoft Access Version 1.x or 2.0

The TransferSpreadsheet Action

Microsoft Access 2000 can't import Microsoft Excel version 2.0 spreadsheets or Lotus 1-2-3 version 1.0 spreadsheets. If your converted database contains a macro that provided this functionality by using the TransferSpreadsheet action in Microsoft Access version 1.x or 2.0, converting the database will change the Spreadsheet Type argument to Microsoft Excel version 3.0 (if you originally specified Microsoft Excel version 2.0), or causes an error if you originally specified Lotus 1-2-3 version 1.0 format.

To work around this problem, convert the spreadsheets to a later version of Microsoft Excel or Lotus 1-2-3 before importing them into Microsoft Access.

The TransferText and TransferSpreadsheet Actions

In Microsoft Access 2000, you can't use a SQL statement to specify data to export when you're using the TransferText action or the TransferSpreadsheet action. Instead of using a SQL statement, you must first create a query and then specify the name of the query in the Table Name argument.

Comparisons Involving Null Values

In Microsoft Access versions 1.x and 2.0, if you compare two expressions within a macro condition by using a comparison operator and one of the expressions is Null, Access Basic will return True or False for the comparison, depending on which comparison operator you use. In Microsoft Access 2000, Visual Basic returns Null for a comparison in which one expression is Null. To determine whether the comparison evaluates to Null, use the IsNull function to check the result of the comparison.


 Using Enumerated Constants in Microsoft Access 2000

Using Enumerated Constants in Microsoft Access 2000

In Microsoft Access 2000, a number of intrinsic constants have been added or changed. This was done to create lists of "enumerated" constants that are displayed in the Auto List Members list in the Module window for the arguments of various Microsoft Access methods, functions, and properties, or as the setting of various Microsoft Access properties. You can select the appropriate constant from the list in the Module window, instead of having to remember the constant or look it up in the Help topic.

The following information applies to enumerated constants:

  • The set of enumerated constants for each method, function, or property argument has a name, which is displayed in the syntax line for the method, function, or property in the Module window when the Auto Quick Info option is selected in the Editor tab of the Options dialog box, available by clicking Options on the Tool menu. (For property settings, the name isn't displayed, just the list of constants.) For example, the syntax line for the OpenForm method of the DoCmd object shows [View as AcFormView = acNormal] for the view argument of this method. AcFormView is the name of this set of enumerated constants, and acNormal is the default setting for the argument. The Object Browser also lists the names of the sets of enumerated constants in the Classes box and lists the intrinsic constants contained in each of these sets in the Members box.

  • For constant names that have changed, the old constants will still work. For example, one of the intrinsic constants for the save argument of the Close method of the DoCmd object was acPrompt. It's now acSavePrompt, but acPrompt will still work.

  • In a number of cases in previous versions of Microsoft Access, you could leave an argument setting blank, and Microsoft Access would perform the default action for that argument. For example, you could leave the objecttype (and objectname) arguments of the Close method blank, and Microsoft Access would close the active window. For the new sets of enumerated constants, the blank setting has been replaced with a new default constant. For example, the objecttype argument of the Close method now has a new default constant, acDefault. Setting this argument to the new constant has the same effect as leaving the argument blank. In addition, you can still leave such arguments blank, and Microsoft Access will assume the new default constant.

  • There's one exception to this. If you run Visual Basic code from previous versions of Visual Basic in Microsoft Access by using Automation, blank arguments will cause an error for those arguments that have the new default constants. This problem doesn't occur for old Visual Basic for Applications or Visual Basic code run directly in Microsoft Access.

The following table lists all the intrinsic constants that have been added or changed in order to create enumerated constant lists in Microsoft Access 2000.

Language element | Argument | Old constant | New constant
Close method | objecttype | (none) | acDataAccessPage acDiagram acServerView acStoredProcedure
CopyObject method | sourceobjecttype | (none) | acDataAccessPage acDiagram acServerView acStoredProcedure
DeleteObject method | objecttype | (none) | acDataAccessPage acDiagram acServerView acStoredProcedure
OpenDataAccessPage method | view | (none) | acDataAccessPageBrowse acDataAccessPageDesign
OutputTo method | objecttype | (none) | acOutputDataAccessPage acOutputServerView acOutputStoredProcedure
Rename method | objecttype | (none) | acDataAccessPage acDiagram acServerView acStoredProcedure
RepaintObject method | objecttype | (none) | acDataAccessPage acDiagram acServerView acStoredProcedure
RunCommand method | command | (none) | acCmdDataAccessPageBrowse acCmdDataAccessPageDesignView acCmdDiagramAddRelatedTables acCmdDiagramAutosizeSelectedTables acCmdDiagramDeleteRelationship acCmdDiagramLayoutDiagram acCmdDiagramLayoutSelection acCmdDiagramModifyUserDefinedView acCmdDiagramNewLabel acCmdDiagramNewTable acCmdDiagramRecalculatePageBreaks acCmdDiagramRelationshipLabels acCmdDiagramViewPageBreaks acCmdEditTriggers acCmdHidePane acCmdMicrosoftScriptEditor acCmdNewObjectAutoDataAccessPage acCmdNewObjectDataAccessPage acCmdNewObjectDiagram acCmdNewObjectStoredProcedure acCmdNewObjectView acCmdQueryAddToOutput acCmdSelectDataAccessPage acCmdShowPaneDiagram acCmdShowPaneGrid acCmdShowPaneView acCmdViewDataAccessPages acCmdViewDiagrams acCmdViewFieldList acCmdViewStoredProcedures acCmdViewTableColumnNames acCmdViewTableColumnProperties acCmdViewTableKeys acCmdViewTableNameOnly acCmdViewTableUserView acCmdViewViewVerifySQL acCmdViewViewViews acCmdZoomSelection
Save method | objecttype | (none) | acDataAccessPage acDiagram acServerView acStoredProcedure
SelectObject method | objecttype | (none) | acDataAccessPage acDiagram acServerView acStoredProcedure
SendObject method | objecttype | (none) | acSendDataAccessPage
TransferDatabase method method | objecttype | (none) | acDataAccessPage acDiagram acServerView acStoredProcedure


 Comparison of Data Types

Comparison of Data Types

The Microsoft Jet database engine recognizes several overlapping sets of data types. In Microsoft Access, there are four different contexts in which you may need to specify a data type - in table Design view, in the Query Parameters dialog box, in Visual Basic, and in SQL view in a query.

The following table compares the five sets of data types that correspond to each context. The first column lists the Type property settings available in table Design view and the five FieldSize property settings for the Number data type. The second column lists the corresponding query parameter data types available for designing parameter queries in the Query Parameters dialog box. The third column lists the corresponding Visual Basic data types. The fourth column lists DAO Field object data types. The fifth column lists the corresponding Jet database engine SQL data types defined by the Jet database engine along with their valid synonyms.

Table fields | Query parameters | Visual Basic | ADO Data Type property constants | Microsoft Jet database engine SQL and synonyms
Not supported | Binary | Not supported | adBinary | BINARY (See Notes) (Synonym: VARBINARY)
Yes/No | Yes/No | Boolean | adBoolean | BOOLEAN (Synonyms: BIT, LOGICAL, LOGICAL1, YESNO)
Number (FieldSize = Byte) | Byte | Byte | adUnsignedTinyInt | BYTE (Synonym: INTEGER1)
AutoNumber (FieldSize= Long Integer) | Long Integer | Long | adInteger | COUNTER (Synonym: AUTOINCREMENT)
Currency | Currency | Currency | adCurrency | CURRENCY (Synonym: MONEY)
Date/Time | Date/Time | Date | adDate | DATETIME (Synonyms: DATE, TIME, TIMESTAMP)
Number (FieldSize = Double) | Double | Double | adDouble | DOUBLE (Synonyms: FLOAT, FLOAT8, IEEEDOUBLE, NUMBER, NUMERIC)
AutoNumber /GUID (FieldSize = Replication ID) | Replication ID | Not supported | adGUID | GUID
Number (FieldSize = Long Integer) | Long Integer | Long | adInteger | LONG (See Notes) (Synonyms: INT, INTEGER, INTEGER4)
OLE Object | OLE Object | String | adLongVarBinary | LONGBINARY (Synonyms: GENERAL, OLEOBJECT)
Memo | Memo | String | adLongVarWChar | LONGTEXT (Synonyms: LONGCHAR, MEMO, NOTE)
Number (FieldSize = Single) | Single | Single | adSingle | SINGLE (Synonyms: FLOAT4, IEEESINGLE, REAL)
Number (FieldSize = Integer) | Integer | Integer | adSmallInt | SHORT (See Notes) (Synonyms: INTEGER2, SMALLINT)
Text | Text | String | adVarWChar | TEXT (Synonyms: ALPHANUMERIC, CHAR, CHARACTER, STRING, VARCHAR)
Hyperlink | Memo | String | adLongVarWChar | LONGTEXT (Synonyms: LONGCHAR, MEMO, NOTE)
Not supported | Value | Variant | adVariant | VALUE (See Notes)

Notes

  • Microsoft Access itself doesn't use the BINARY data type. It's recognized only for use in queries on linked tables from other database products that support the BINARY data type.

  • The INTEGER data type in Jet database engine SQL doesn't correspond to the Integer data type for table fields, query parameters, or Visual Basic. Instead, in SQL, the INTEGER data type corresponds to a Long Integer data type for table fields and query parameters and to a Long data type in Visual Basic.

  • The VALUE reserved word doesn't represent a data type defined by the Jet database engine. However, in Microsoft Access or SQL queries, the VALUE reserved word can be considered a valid synonym for the Visual Basic Variant data type.

  • If you are setting the data type for a DAO object in Visual Basic code, you must set the object's Type property.


 Call Procedures in a Subform or Subreport

Call Procedures in a Subform or Subreport

You can call a procedure in a module associated with a subform or subreport in one of two ways. If the form containing the subform is open in Form view, you can refer to the procedure as a method on the subform. The following example shows how to call the procedure GetProductID in the Orders Subform, which is bound to a subform control on the Orders form:

In the Orders Subform class module enter:

Function GetProductID()
    'Return current productID
    GetProductID = ProductID
End Function
Forms!Orders![Orders Subform].Form.GetProductID

You can also create a new instance of the form that is being used as a subform, even if neither the main form nor the subform is open, and call the procedure. This will work for any form, whether or not it is being used as a subform. The following example shows how to create an instance of the Orders Subform and call the GetProductID procedure:

Dim frm As New [Form_Orders Subform]
frm.GetProductID

Note When you create a new instance of a form with a name consisting of more than one word, enclose the class name of the form in brackets, as shown in the preceding example.


 Program with Class Modules

Program with Class Modules

In Microsoft Access 2000, there were two types of modules: standard modules and class modules. In Microsoft Access 95, class modules existed only in association with a form or report. In Microsoft Access 97, they also existed on the Modules tab of the Database window.

Creating Custom Objects with Class Modules

You can use a class module to create a definition for a custom object. The name with which you save the class module becomes the name of your custom object. Public Sub and Function procedures that you define within a class module become custom methods of the object. Public Property Let, Property Get, and Property Set procedures become properties of the object.

Once you've defined procedures within the class module, you can create the new object by creating a new instance of the class. To create a new instance of a class, you declare a variable of the type defined by that class. For example, if the name of your class is ABasicClass, you would create a new instance of it in the following manner:

Dim abc As New ABasicClass

When you run the code containing this declaration, Visual Basic creates the new instance. You can then apply its methods and properties by using the variable abc. For example, if you've defined a custom method called ListNames, you could apply it as follows:

abc.ListNames

New in Microsoft Access 95: Creating the Default Instance of a Form Class

When you open a form in Form view, whether from the user interface or from Visual Basic, you create an instance of that form's class module. In other words, you designate space in memory where the object now exists, and you can then call its methods and set or return its properties from code, as you would for any built-in object. The same is true when you open a report in Print Preview.

When you refer to a form in Visual Basic code, you're usually working with the default instance of the form's class. A form's class has only one default instance. You can also create multiple instances of the same form's class from Visual Basic. When you create multiple instances of a form's class, you create nondefault instances.

There are four ways to create the default instance of a form. You can open an existing form by using the user interface, by executing the OpenForm method of the DoCmd object, by calling the CreateForm method and switching the new form into Form view, or by using Visual Basic to create a variable of type Form to refer to the default instance. The following example opens an Employees form and points a Form object variable to it:

Dim frm As Form
DoCmd.OpenForm "Employees"
Set frm = Forms!Employees

Microsoft Access also provides a shortcut that enables you to open a form and refer to a method or property of that form or one of its controls in one step. You refer to the form's class module as shown in the following example:

Form_Employees.Visible = True
Form_Employees.Caption = "New Employees"

When you run this code, Microsoft Access opens the Employees form in Form view if it's not already open and sets the form's caption to "New Employees." The form isn't visible until you explicitly set its Visible property to True (-1). When the procedure that calls this code has finished executing, this instance of the form is destroyed - that is, the form is closed.

If you try to run this code when the Employees form is open in Design view, Microsoft Access generates a run-time error. The form must either be open in Form view or not open at all.

If you use this syntax to change a property of the form or one of its controls, that change is lost when the instance of the form is destroyed. This holds true any time you change a property setting for a form in Form view. You must change the property in Design view and save the change with the form.

Creating Multiple Nondefault Instances of Forms

You can create multiple nondefault instances of a form's class if you want to display more than one instance of a form at a time. For example, you might want to display the records for an employee and the employee's manager at the same time. You can create one instance of the Employees form's class to display the employee's record, and one to display the manager's record.

To create new, nondefault instances of a form's class from Visual Basic, declare a variable for which the type is the name of the form class module. You must include the New keyword in the variable declaration. For example, the following code creates a new instance of the Employees form and assigns it to a variable of type Form:

Dim frm As New Form_Employees

This nondefault instance of the form isn't visible until you explicitly set its Visible property.

When the procedure that creates this instance has finished executing, the instance is removed from memory unless you've declared the variable representing it as a module-level variable. Since module-level variables retain their values until they are reset with the Reset command on the Run menu or the Reset button [image] on the toolbar, the form will stay open if the variable has been declared as a module-level variable.

Any properties that you set will affect this instance of the form's class, but won't be saved with the form. Also, a new instance of the form's class can't be created if the form is open in Design view.

A nondefault instance of a form's class can't be referred to by name in the Forms collection. You can refer to it by index number only. Since you can create multiple nondefault instances of a form, and each instance has the same name, you can have more than one form with the same name in the Forms collection, without any means of distinguishing them other than by index number.


 Option Private Module not permitted in Class module

Option Private Module not permitted in Class module

Microsoft Access form modules and report modules are class modules. You can't include an Option Private Module statement within a form or report module.


 Set References to Type Libraries

Set References to Type Libraries

When you set a reference to another application's type library, you can use the objects supplied by that application in your code. For example, if you set a reference from Microsoft Access to the Microsoft Excel library, you can then use Microsoft Excel objects through Automation (formerly called OLE Automation). If you set a reference to a Visual Basic project in another Microsoft Access database, you can call its public procedures. If you set a reference to an ActiveX control, you can use that control on Microsoft Access forms.

You can set a reference from Microsoft Access while the Microsoft Visual Basic Editor is open, or you can set a reference in Visual Basic code.

Setting a Reference from Microsoft Access

To set a reference to an application's type library:

  1. On the Tools menu, click References. The References command on the Tools menu is available only when a Module window is open and active in Design view.

  2. Select the check boxes for those applications whose type libraries you want to reference.

Setting a Reference from Visual Basic

To set a reference from Visual Basic, you create a new Reference object representing the desired reference. The References collection contains all currently set references.

To create a new Reference object, use either the AddFromFile or AddFromGUID method of the References collection. To remove a Reference object, use the Remove method.

Advantages of Setting References

Your Automation code will run faster if you set a reference to another application's type library before you work with its objects. If you've set a reference, you can declare an object variable representing an object in the other application as its most specific type. For example, if you're writing code to work with Microsoft Excel objects, you can declare an object variable of type Excel.Application by using the following syntax only if you've created a reference to the Microsoft Excel type library:

Dim appXL As New Excel.Application

If you haven't set a reference to the Microsoft Excel type library, you must declare the variable as a generic variable of type Object. The following code runs more slowly:

Dim appXL As Object

Additionally, if you set a reference to an application's type library, all of its objects, as well as their methods and properties, are listed in the Object Browser. This makes it easy to determine what properties and methods are available to each object.

Since Microsoft Access is an COM component that supports Automation, you can also set a reference to its type library from another application and work with Microsoft Access objects from that application.


 Set a Reference to a Visual Basic Project in Another Microsoft Access Database or Project

Set a Reference to a Visual Basic Project in Another Microsoft Access Database or Project

Each Microsoft Access database (.mdb or .adp) includes a Visual Basic project. The Visual Basic project is the set of all modules in the project, including both standard modules and class modules. Every Microsoft Access database (.mdb or .adp), library database, or add-in contained in an .mde file includes a Visual Basic project.

The name of the Access database and the name of the project can differ. The name of the Access database is determined by the name of the .mdb (or .mda or .mde) or .adp file, while the name of the project is determined by the setting of the Project Name option on the Advanced tab of the Options dialog box, available by clicking Options on the Tools menu. When you first create a database (.mdb or .adp), the database name and project name are the same by default. However, if you rename the database, the project name doesn't automatically change. Likewise, changing the project name has no effect on the database name.

You can set a reference from a Visual Basic project in one Microsoft Access database to a project in another Microsoft Access database, a library database, or an add-in contained in an .mde file. Once you've set a reference, you can run Visual Basic procedures in the referenced project. For example, the Northwind sample database includes a module named Utility Functions that contains a function called IsLoaded. You can set a reference to the project in the Northwind sample database from the project in the current database, and then call the IsLoaded function just as you would if it were defined within the current database.

To set a reference to the project in the Northwind sample database from another project:

  1. Open the Module window.

  2. On the Tools menu, click References, and click Browse in the References dialog box.

  3. In the Files Of Type box, click Microsoft Access Databases (*.mdb).

  4. Locate the Northwind.mdb file. If you've installed this file, it will be in the \Program Files\Microsoft Office\Office\Samples folder by default.

  5. Click OK.

You should now see "Northwind.mdb" in the list of available references in the References dialog box.

Notes

  • Set a reference to the project in another Microsoft Access database when you want to call a public procedure that's defined within a standard module in that database. You can't call procedures that are defined within a class module or procedures in a standard module that are preceded with the Private keyword.

  • You can set a reference to the project in a Microsoft Access database only from another Microsoft Access database.

  • You can set a reference to a project only in another Microsoft Access 2000 database. To set a reference to a project in a database created in a previous version of Microsoft Access, first convert that database to Microsoft Access 2000.

  • If you set a reference to a project or type library from Microsoft Access and then move the file that contains that project or type library to a different folder, Microsoft Access will attempt to locate the file and reestablish the reference. If the RefLibPaths key exists in the registry, Microsoft Access will first search there. If there's no matching entry, Microsoft Access will search for the file first in the current folder, then in all the folders on the drive. You can create the RefLibPaths key by using the Registry Editor in Windows, under the registry key \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\9.0\Access. For more information about using the Registry Editor, see your Windows documentation.


 Set Form, Report, and Control Properties

Set Form, Report, and Control Properties

Each form, report, section, and control has property settings that you can change to alter the look or behavior of that particular item. You view and change properties by using the property sheet, macro, or Visual Basic.

To set properties

  1. In form Design view or report Design view, select the control, section, form, or report for which you want to set the property. You can select:
    • One or more controls. To select multiple controls, hold down the SHIFT key and click the controls, or drag the mouse pointer over the controls you wish to select. If you select multiple controls, the property sheet will display only those properties that the selected controls have in common.

    • One section. Click the section selector of the section you wish to select.

    • The entire form or report. Click the form selector or report selector in the upper-left corner of the form or report.
  2. Display the property sheet by right-clicking the object or section and then clicking Properties on the shortcut menu, or by clicking Properties [image] on the toolbar.

  3. Click the property for which you want to set the value, and then do one of the following:
    • In the property box, type the appropriate setting or expression.

    • If the property box contains an arrow, click the arrow and then click a value in the list.

    • If a Build button [image] appears to the right of the property box, click it to display a builder or to display a dialog box giving you a choice of builders. For example, you can use the Code Builder, Macro Builder, or Query Builder to set some properties.

If the property sheet is blank or if you don't see the properties you expect in the property sheet, see Troubleshoot property sheets.

Tips

  • Microsoft Access provides a Zoom box for typing and viewing expressions or other long property settings. To display the Zoom box, click a property box in the property sheet. Then press SHIFT+F2, or right-click and then click Zoom on the shortcut menu.

  • You can set the ControlSource property for some controls by typing the property setting in the control itself. For more information, see Create a calculated control.

  • You can change the default property settings for a type of control so that future controls you create will have the new default settings.

  • The property settings of a bound control might not match the corresponding settings in the field in the underlying table or query to which the control is bound. If the settings are different, the form or report settings typically override those in the table or query. For more information about how properties are inherited, see How control properties relate to properties in their underlying fields.


Set Properties by Using Visual Basic

You can set most properties from Visual Basic code. How you set a property depends on whether you are setting it for a Form, Report, or Control object, an ActiveX Data Object (ADO), a Data Access Object (DAO), or for a DataAccessPage object. The following topics outline the steps involved for setting properties of each type of object:

Set Form, Report, and Control Properties in Visual Basic

Set Properties of ActiveX Data Objects in Visual Basic

Set Properties of Data Access Objects in Visual Basic

Set Properties of Data Access Pages in Visual Basic


 Set Properties by Using Macros

Set Properties by Using Macros

From a macro, you can set properties for Form, Report, and Control objects, as well as form and report sections. You use the SetValue action from a macro to set the value of a property.

You can't use a macro to set properties of other Microsoft Access objects or ActiveX Data Objects (ADO), or to set the default properties of a control, but you can set them either by using Visual Basic or an object's property sheet in Design view.

To set a form, report, or control property by using a macro

  1. In a macro, add a SetValue action.

  2. Set the Item action argument of the SetValue action to an expression that refers to the property you want to set:
    • To set a form or report property, use the syntax Forms!formname.propertyname or Reports!reportname.propertyname. For example, the following expression refers to the Visible property of the Customers form:
      Forms!Customers.Visible
    • To set a property of a control on a form or report, use the syntax Forms!formname!controlname.propertyname or Reports!reportname!controlname.propertyname. For example, the following expression refers to the Visible property of the HiddenPageBreak control on the Invoices report:
      Reports!Invoices!HiddenPageBreak.Visible

    Tip If the macro containing the SetValue action runs from the form or report with the property you want to set, you can refer to the property by using just the syntax propertyname. However, it's a good idea to use the full syntax to refer to the property to avoid conflicts with names of controls or Visual Basic keywords. For example, Name is a Microsoft Access property; if you also have a control on your form called Name, you should use the full syntax to refer to both the control and the property.

  3. Set the Expression action argument of the SetValue action to the value you want to set the property to. If the setting is a string, be sure to enclose it in double (") quotation marks. For example, to set the Caption property of a form to Orders, you would enter "Orders" in the Expression argument.

To set a section property by using a macro

  1. In a macro, add a SetValue action.

  2. In the Item action argument, use the syntax Forms!formname.Section(constant).propertyname to refer to the property you want to set. The constant argument refers to a particular section on the form or report, as described in the Section property. For example, the following expression refers to the Visible property of the page header section of the Customers form:
    Forms!Customers.Section(acPageHeader).Visible
  3. Set the Expression action argument as described above.

Note For each property you want to set, you can look up the property in the Help index to find information about:

  • Whether you can set the property from a macro.

  • Views in which you can set the property. Not all properties can be set in all views. For example, you can set a form's BorderStyle property only in form Design view.

  • Which values you can use to set the property. Some properties require settings that don't correspond to values in the property sheet but to numeric values. You may need to set the property by using the settings you would use in Visual Basic rather than those you would use in the property sheet. For example, if the property settings are selections from a list, you must use the value or numeric equivalent for each selection.


 Set Data Access Page and Control Properties

Set Data Access Page and Control Properties

Each data access page, section, and its control have property settings that you can change to alter the look or behavior of that particular item. You view and change properties by using the property sheet, or the Microsoft Visual Script Editor.

To set properties

  1. In page Design view, select the data access page, section, or control for which you want to set the property. You can select:
    • A control. Click the control you wish to select.

    • One section. Click the section selector of the section you wish to select.

    • The entire data access page. Click the data access page title bar.
  2. Display the property sheet by selecting the object and clicking Properties [image] on the toolbar. For sections and controls, you can right-click the section or control and then click Properties on the shortcut menu.

  3. Click the property for which you want to set the value, and then do one of the following:
    • In the property box, type the appropriate setting or expression.

    • If the property box contains an arrow, click the arrow and then click a value in the list.

If the property sheet is blank or if you don't see the properties you expect in the property sheet, see Troubleshoot property sheets.

Tips

  • Microsoft Access provides a Zoom box for typing and viewing expressions or other long property settings. To display the Zoom box, click a property box in the property sheet. Then press SHIFT+F2, or right-click and then click Zoom on the shortcut menu.

  • The property settings of a bound control might not match the corresponding settings in the field in the underlying table, query, or view to which the control is bound. If the settings are different, the form or report settings typically override those in the table, query, or view. For more information about how properties are inherited, see How control properties relate to properties in their underlying fields.


Set Startup Properties and Options in Code

Startup properties affect how your database application appears when it's opened. For example, startup properties enable you to customize the application's title bar, menus, toolbars, and startup form. To view the properties in the Startup dialog box, click Startup on the Tools menu.

You can set options in the Options dialog box to change various aspects of the application's environment while you're working in it. For example, you can set form, report, table, and query default options. To view the Options dialog box, click Options on the Tools menu.

The following topics provide specific information about setting startup properties and options in code.

Set Startup Properties from Visual Basic

Set Options from Visual Basic


 Startup Properties Within New Projects and Databases

Startup Properties Within New Projects and Databases

When you create a new Microsoft Access project (.adp) or Microsoft Access database (.mdb), Microsoft Access adds a set of properties to the project's AccessObjectProperties collection or a database's Properties collection.

  • In a Access project, the following properties are added to the CurrentProject object.

    Build AccessVersion

    You access these properties using the following syntax.

    CurrentProject.Properties("propertyname").Value

  • In a Access database, the following properties are added to the Database object.

    Name | RecordsAffected
    Connect | ReplicaID
    Transactions | DesignMasterID
    Updatable | Connection
    CollatingOrder | AccessVersion
    QueryTimeout | Build
    Version

    You access these properties using the following syntax.

    CurrentDB.Properties("propertyname").Value

When you set a startup property in a project or database through the Startup dialog box, available by clicking Startup on the Tools menu, Microsoft Access adds a set of startup properties to the appropriate Properties collection. These properties are not added when a startup property is added programatically.

  • In a Access project, a subset of the following startup properties are added to the CurrentProject object. The set of startup properties varies depending on the startup property set through the Startup dialog box.

    AppTitle | AllowBuiltinToolbars
    StartupForm | AllowToolbarChanges
    StartupShowDBWindow | AllowBreakIntoCode
    StartupShowStatusbar | AllowSpecialKeys
    StartupMenubar | AppIcon
    AllowShortcutMenus | StartupShortcutMenubar
    AllowFullMenus | HijriCalendar

  • In a Access database, a subset of the following startup properties are added to the Database object. The set of startup properties varies depending on the startup property set through the Startup dialog box.

    AppTitle | AllowBuiltinToolbars
    StartupForm | AllowToolbarChanges
    StartupShowDBWindow | AllowBreakIntoCode
    StartupShowStatusbar | AllowSpecialKeys
    StartupMenubar | AppIcon
    AllowShortcutMenus | StartupShortcutMenubar
    AllowFullMenus | HijriCalendar


 Date and Time Criteria Expressions

Date and Time Criteria Expressions

To specify date or time criteria for an operation, you supply a date or time value as part of the string expression that forms the criteria argument. This value must be enclosed in number signs (#).

Note The number signs indicate to Microsoft Access that the criteria argument contains a date or time within a string.

Suppose that you are creating a filter for an Employees form to display records for all employees born on or after January 1, 1960. You could construct the criteria argument for the form's Filter or ServerFilter property as in the following example. Note the placement of the number signs.

Forms!Employees.Filter = "[BirthDate] >= #1-1-60#"


 Date and Time Criteria from a Control on a Form

Date and Time Criteria from a Control on a Form

If you want to change the criteria argument for an operation based on a user's decision, you can specify that the criteria comes from a control on a form. For example, you could specify that the criteria argument comes from a list box containing order dates from an Orders table.

To specify date and time criteria that comes from a control on a form, you include in the criteria argument an expression that references the control on the form. This expression should be separate from the string expression, so that Microsoft Access will evaluate the control expression first and concatenate it with the rest of the string expression before performing the appropriate operation.

In addition to enclosing the entire string expression in double quotation marks ("), you must also ensure that the date or time criteria within the string expression is enclosed in number signs (#). The number signs must be included in the strings flanking the expression that references the control on the form.

Note The number signs indicate to Microsoft Access that the criteria argument contains a date or time within a string.

The following examples set a form's Filter or ServerFilter property based on criteria that comes from a control named HireDate that's on the form. Note the placement of the number signs.

Forms!Employees.Filter = "[HireDate] >= #" _
 &     Forms!Employees!HireDate & "#"
Forms!Employees.FilterOn = True

- or -

Forms!Employees.ServerFilter = "[HireDate] >= #" _
 &     Forms!Employees!HireDate & "#"
Forms!Employees.FilterOn = True

If the current value of the HireDate control is 5-1-92, the Filter or ServerFilter property will have the following criteria argument:

"[HireDate] >= #5-1-92#"

Tip To troubleshoot an expression in the criteria argument, break the expression into smaller components and test each individually in the Immediate window. When all of the components are working correctly, put them back together one at a time until the complete expression works correctly.

You can also include a variable representing a date or time in the criteria argument. The variable should be separate from the string expression, so that Microsoft Access will evaluate the variable first and then concatenate it with the rest of the string expression. The date or time criteria must be enclosed in number signs.

The following example shows how to construct a criteria argument that includes a variable representing a date or time:

Dim datHireDate As Date
datHireDate = #5-1-92#
Forms!Employees.Filter = "[HireDate] >= #" _
 &     datHireDate & "#"


 Multiple Fields in Criteria Expressions

Multiple Fields in Criteria Expressions

You can specify multiple fields in a criteria argument.

To specify multiple fields in the criteria argument, you must ensure that multiple string expressions are concatenated correctly to form a valid SQL WHERE clause. In an SQL WHERE clause with multiple fields, fields may be joined with one of three keywords: AND, OR, or NOT. Your expression must evaluate to a string that includes one of these keywords.

For example, suppose that you wish to set the Filter property of an Employees form to display records restricted by two sets of criteria. The following example filters the form so that it displays only those employees whose title is "Sales Representative" and who were hired since January 1, 1993:

Dim datHireDate As Date, strTitle As String
datHireDate = #1/1/93#
strTitle = "Sales Representative"
Forms!Employees.Filter = "[HireDate] >= #" & _
    datHireDate & "# AND [Title] = '" & strTitle & "'"
Forms!Employees.FilterOn = True

The criteria argument evaluates to the following string:

"[HireDate] >= #1-1-93# AND [Title] = 'Sales Representative'"

Tip To troubleshoot an expression in the criteria argument, break the expression into smaller components and test each individually in the Immediate window. When all of the components are working correctly, put them back together one at a time until the complete expression works correctly.


 Numeric Criteria Expressions

Numeric Criteria Expressions

To specify numeric criteria for an operation, you supply a numeric value as part of the string expression that forms the criteria argument.

Suppose that you are performing the DLookup function on an Employees table to find the last name of a particular employee, and you want to use a value from the EmployeeID field in the function's criteria argument. You could construct a criteria argument like the following example, which returns the last name of the employee whose EmployeeID is 7:

=DLookup("[LastName]", "Employees", "[EmployeeID] = 7")


 Numeric Criteria from a Control on a Form

Numeric Criteria from a Control on a Form

If you want to change the criteria argument for an operation based on a user's decision, you can specify that the criteria comes from a control on a form. For example, you could specify that the criteria argument comes from a text box containing the EmployeeID number.

To specify numeric criteria coming from a control on a form, you can include in the criteria argument an expression that references that control. This control expression should be separate from the string expression, so that Microsoft Access will evaluate control expression first and concatenate it with the rest of the string expression before performing the appropriate operation.

Suppose that you are performing the DLookup function on an Employees table to find the last name of an employee based on the EmployeeID number. In the following example, the criteria is determined by the current value of the EmployeeID control on the Orders form. The expression referencing the control is evaluated each time the function is called, so that if the value of the control changes, the criteria argument will reflect that change.

=DLookup("[LastName]", "Employees", "[EmployeeID] = " _
    & Forms!Orders!EmployeeID)

If the current value of the EmployeeID field is 7, the criteria argument that is passed to the DLookup function is:

"[EmployeeID] = 7"

Tip To troubleshoot an expression in the criteria argument, break the expression into smaller components and test each individually in the Immediate window. When all of the components are working correctly, put them back together one at a time until the complete expression works correctly.

You can also include a variable representing a numeric value in the criteria argument. The variable should be separate from the string expression, so that Microsoft Access will evaluate the variable first and then concatenate it with the rest of the string expression.

The following example shows how to construct a criteria argument that includes a variable:

Dim intNum As Integer, varResult As Variant
intNum = 7
varResult = DLookup("[LastName]", "Employees", _
    "[EmployeeID] = " & intNum)


 Textual Criteria Expressions

Textual Criteria Expressions

To specify textual criteria for an operation, you supply a text string as part of the string expression that forms the criteria argument. This text string must be enclosed in single quotation marks (').

Note The single quotation marks indicate to Microsoft Access that the criteria argument contains a string within a string.

Suppose that you are using the ADO Find method to find the first occurrence of a last name in an Employees table. You could construct the criteria argument as in the following example, which moves the current record pointer to the first record in which an employee's last name is Buchanan. Note that the string literal Buchanan is enclosed in single quotation marks and the entire string comprising the criteria argument must also be enclosed in double quotation marks (").

Dim rs As New ADODB.Connection

rs.open "Employees", CurrentProject.Connection,_
     dbOpenDynaset, adlockoptimistic)
rs.Find "[LastName] = 'Buchanan'"


 Textual Criteria from a Control on a Form

Textual Criteria from a Control on a Form

If you want to change the criteria argument for an operation based on a user's decision, you can specify that the criteria comes from a control on a form. For example, you could specify that the criteria argument comes from a list box containing the last names of all employees in an Employees table.

To specify textual criteria coming from a control on a form, you include in the criteria argument an expression that references the control on the form. This expression should be separate from the string expression, so that Microsoft Access will evaluate the control expression first and concatenate it with the rest of the string expression before performing the appropriate operation.

In addition to enclosing the entire string expression in double quotation marks ("), you must also ensure that the textual criteria within the string expression is enclosed in single quotation marks ('). The quotation marks must be included in the strings flanking the expression that references the control on the form.

Note The single quotation marks indicate to Microsoft Access that the criteria argument contains a string within a string.

The following example performs a lookup on an Employees table and returns the region in which an employee lives, based on the employee's last name. The current value of a list box control called LastName on the Employees form determines the criteria. Note the placement of the single quotation marks.

=DLookup("[Region]", "Employees", "[LastName] = '" _
    & Forms!Employees!LastName & "'")

If the current value of the control is King, the following criteria argument is passed to the DLookup function after Microsoft Access evaluates the expression and concatenates the strings:

"[LastName] = 'King'"

Keep in mind that the entire string comprising the criteria argument must also be enclosed in double quotation marks once the strings have been concatenated.

Tip To troubleshoot an expression in the criteria argument, break the expression into smaller components and test each individually in the Immediate window. When all of the components are working correctly, put them back together one at a time until the complete expression works correctly.

You can also include a variable representing a textual string in the criteria argument. The variable should be separate from the string expression, so that Microsoft Access will evaluate the variable first and then concatenate it with the rest of the string expression. The textual string must be enclosed in single or double quotation marks.

The following example shows how to construct a criteria argument that includes a variable representing a textual string:

Dim strLastName As String, varResult As Variant
strLastName = "King"
varResult = DLookup("[EmployeeID]", "Employees", "[LastName] = '" _
    & strLastName & "'")


Differences in String Function Operations

Language-specific information

The memory storage formats for text are different in Visual Basic for Microsoft Access 7.0 and Access Basic of previous versions of Microsoft Access. Text is stored in ANSI format within Access Basic code, and in Unicode format in Visual Basic.

The Unicode format is used in Visual Basic to match the format of text within OLE, which is indirectly related to Visual Basic.

For example, the text string "ABC [image] [image] [image] " would be stored in memory as shown below.

Storage format | Storage pattern | Description
Unicode | 41 00 42 00 43 00 42 30 44 30 46 30 | Each character is stored as 2 bytes.
ANSI | 41 42 43 82 A0 82 A2 82 A4 | ASCII characters are stored as 1 byte; Japanese characters are stored as 2 bytes.

Because of these differences in internal format, there are string processing functions that operate differently in Access Basic and Visual Basic. The functions that operate differently and their statements are as shown below.

Asc function, Chr function, InputB function, InStrB function, LeftB function, LenB function, RightB function, MidB function, and their corresponding statements.

Also, the ChrB function and AscB function have been added to Visual Basic.

In that these functions and statements both process text in byte units, they are the same in Access Basic and Visual Basic, but because their storage formats for text are different, they operate differently. For example, in LenB("A") would be 1 in Access Basic, but 2 in Visual Basic.

Programs created in previous versions of Microsoft Access that use the string processing functions that work in byte units must be changed in Visual Basic to a source code that recognizes Unicode. However, if only string processing functions that process character units, such as the Len function, Left function, and Right function, are used, there is no need to recognize them.

If programs created in a previous version of Microsoft Access are moved to Microsoft Access 7.0, consider the following points regarding string processing.

Asc Function and AscB Function

This program ran properly in previous versions of Access, but produces a run-time error in Visual Basic in Microsoft Access 7.0.

Print Asc(MidB("  ", 2,1))

This is because MidB(" [image] ", 2,1), an argument of the Asc function, does not correctly return data to Unicode text.

Use the following AscB function to make this program run in Microsoft Access 7.0:

Print AscB(MidB("  ", 2,1))

In this program, the value (&H30) of the second Unicode byte is returned.

Chr Function and ChrB Function

The Chr function in Microsoft Access 7.0 always returns 2-byte characters. In previous versions of Microsoft Access, Chr(&H41) and ChrB(&H41) were equal, but in Microsoft Access 7.0, Chr(&H41) and ChrB(&H41) + ChrB(0) are equal.

Also, in previous versions of Microsoft Access, " [image] " was expressed as ChrB(&H82) + ChrB(&HA0), but in Microsoft Access 7.0 it is expressed as ChrB(&H42) + ChrB(&H30).

Calling the Windows Application Programming Interface (API)

In several Windows API the byte length of a string has a special meaning. For example, the following program returns a folder set up in Windows. In Microsoft Access 7.0, LeftB(Buffer, ret) does not return the correct string. This is because, in spite of the fact that it shows the byte length of an ANSI string, the LeftB function processes Unicode strings. In this case, use the InStr function so that only the character string, without nulls, is returned.

Private Declare Function GetWindowsDirectory Lib "kernel32" _
    Alias "GetWindowsDirectoryA" (ByVal lpBuffer As String, _
    ByVal nSize As Long) As Long

Private Sub Command1_Click()
    Buffer$ = Space(255)
    ret = GetWindowsDirectory(Buffer$, 255)
    ' WinDir = LeftB(Buffer, ret)   '<--- Incorrect code"

    WinDir = Left(Buffer$, InStr(Buffer$, Chr(0)) - 1)
                                        '<--Correct code"
    Print WinDir
End Sub

Input Function and InputB Function

The Input function in Microsoft Access 7.0 converts the number of characters designated when the text is read from the file into a Unicode string and reads them as variables. The InputB function, on the other hand, assumes the data to be binary data and stores it as variables without converting it. If the InputB function is used when reading a file stored in a fixed length field, the fixed byte length data must be converted once it is read.

Open "Data.Dat" For Input As 1
dat1 = StrConv(InputB(10, 1), vbUnicode)
dat2 = StrConv(InputB(10, 1), vbUnicode)
dat3 = StrConv(InputB(10, 1), vbUnicode)

===DATA.DAT
123456789012345678901234567
Name      Address      Telephone

Processing ANSI string bytes in Microsoft Access 7.0

If it is necessary to process ANSI string bytes in Microsoft Access 7.0, use the StrConv function. You can convert text between ANSI and Unicode by setting the vbUnicode or vbFromUnicode constant. If you process bytes after temporarily converting a string to an ANSI string, and then reconvert it back to Unicode once the process is finished, you can use codes from previous version of Access relatively easily.

'                                                    ANSI
dat = StrConv(dat, vbFromUnicode)
.
.
.    '
.    '
.
.
'                                                     Unicode
dat = StrConv(dat, vbUnicode)

Sample Functions that perform operations that are compatible with byte processing functions of 16-bit versions

In Microsoft Access 7.0's Visual Basic, the internal processing of strings is performed using Unicode. Thus, the binary processing functions are different from those of Access Basic used in previous versions of Microsoft Access.

The ANSI function was created to preserve compatibility between the operations of Access Basic and Visual Basic.

Note Strings input and removed with these ANSI processing functions are always Unicode. After being converted temporarily to ANSI strings within the function, they are restored to Unicode once the process is finished.

The following cannot combine the first and second byte of a DBCS character to create a DBCS character.

AnsiMidB("  ",1,1) + AnsiMidB("  ",2,1)

These functions have been created to process strings in byte units. However, a different character cannot be created by the byte-unit processing. In this case, it would be expressed as follows:

StrArg = "  "
StrArg = StrConv(StrArg, vbFromUnicode)    ' ANSI
RetArg = MidB(StrArg,1,1) + MidB(StrArg,2,1)    '
    '
StrArg = StrConv(StrArg, vbUnicode)    '                Unicode
RetArg = StrConv(RetArg, vbUnicode)    '

Generally, if you convert a string to an ANSI character before processing, you should restore the converted string to a Unicode character after the process is finished.

A byte string process is always a function for processing a string. To process binary data, use a byte Array, not a string variable or a byte string processing function.

A string stored in a byte Array appears as follows:

       Array
Dim Var() As Byte
Var = "            "             ' Unicode
Var = StrConv("            ", vbFromUnicode)    ' ANSI

Function AnsiStrConv(StrArg, flag)
    nsiStrConv = StrConv(StrArg, flag)
End Function

' LenB               ANSI                               Unicode
Function AnsiLenB(ByVal StrArg As String) As Long
    AnsiLenB = LenB(AnsiStrConv(StrArg, vbFromUnicode))
End Function

' MidB                 ANSI                                 Unicode
'
Function AnsiMidB(ByVal StrArg As String, ByVal arg1 As Long, _
            Optional arg2) As String
    If IsMissing(arg2) Then
    AnsiMidB = AnsiStrConv(MidB(AnsiStrConv(StrArg, vbFromUnicode) _
            , arg1),vbUnicode)
    Else
    AnsiMidB = AnsiStrConv(MidB(AnsiStrConv(StrArg, vbFromUnicode) _
            , arg1, arg2), vbUnicode)
    End If
End Function

' LeftB                  ANSI                                 Unicode
Function AnsiLeftB(ByVal StrArg As String, ByVal arg1 As Long) As String
    AnsiLeftB = AnsiStrConv(LeftB(AnsiStrConv(StrArg, _
            vbFromUnicode), arg1), vbUnicode)
End Function

' RightB                 ANSI                                 Unicode
Function AnsiRightB(ByVal StrArg As String, ByVal arg1 As Long) As String
    AnsiRightB = AnsiStrConv(RightB(AnsiStrConv(StrArg, _
            vbFromUnicode), arg1), vbUnicode)
End Function

' InStrB    2                        Ansi             Ansi
Function AnsiInStrB(arg1, arg2, Optional arg3) As Integer
    If IsNumeric(arg1) Then
    pos = LenB(AnsiLeftB(arg2, arg1))
    AnsiInStrB = InStrB(arg1, AnsiStrConv(arg2, vbFromUnicode) _
            , AnsiStrConv(arg3, vbFromUnicode))
    Else
    AnsiInStrB = InStrB(AnsiStrConv(arg1, vbFromUnicode) _
            , AnsiStrConv(arg2, vbFromUnicode))
    End If
End Function

Using byte data type

In Microsoft Access 7.0 Byte data type is added as a new data type. If a string variable is used when processing binary data, text is converted between ANSI and Unicode, and binary data is changed. Thus, when dealing with binary data, use Byte data type variables.

Dim ByteData() As Byte
ByteData = "        "        ' Unicode
ByteData = StrConv("        ", vbFromUnicode)     'ANSI
ByteData = InputB(10, #1)    '
Debug.Print ByteData(5)        '


 Quotation Marks in Strings

Quotation Marks in Strings

In situations where you must construct strings to be concatenated, you may need to embed a string within another string, or a string variable within a string. Situations in which you might need to nest one string within another include:

  • When specifying criteria for domain aggregate functions.

  • When specifying criteria for the Find methods.

  • When specifying criteria for the Filter or ServerFilter property of a form.

  • When building SQL strings.

In all of these instances, Microsoft Access must pass a string to the Microsoft Jet database engine. When you specify a criteria argument for a domain aggregate function, for example, Microsoft Access must evaluate any variables, concatenate them into a string, and then pass the entire string to the Jet database engine.

If you embed a numeric variable, Microsoft Access evaluates the variable and simply concatenates the value into the string. If the variable is a text string, however, the resulting criteria string will contain a string within a string. A string within a string must be identified by string delimiters. Otherwise, the Jet database engine won't be able to determine which part of the string is the value you want to use.

The string delimiters aren't actually part of the variable itself, but they must be included in the string in the criteria argument. There are three different ways to construct the string in the criteria argument. Each method results in a criteria argument that looks like one of the following examples.

"[LastName] = 'Smith'"

- or -

"[LastName] = ""Smith"""

Include Single Quotation Marks

You should include single quotation marks in the criteria argument in such a way that when the value of the variable is concatenated into the string, it will be enclosed within the single quotation marks. For instance, suppose your criteria argument must contain a string variable called strName. You could construct the criteria argument as in the following example:

"[LastName] = '" & strName & "'"

When the variable strName is evaluated and concatenated into the criteria string, the criteria string becomes:

"[LastName] = 'Smith'"

Note This syntax does not permit the use of apostrophes (') within the value of the variable itself. If the value of the string variable includes an apostrophe, Microsoft Access generates a run-time error. If your variable may represent values containing apostrophes, consider using one of the other syntax forms discussed in the following sections.

Include Double Quotation Marks

You should include double quotation marks within the criteria argument in such a way so that when the value of the variable is evaluated, it will be enclosed within the quotation marks. Within a string, you must use two sets of double quotation marks to represent a single set of double quotation marks. You could construct the criteria argument as in the following example:

"[LastName] = """ & strName & """"

When the variable strName is evaluated and concatenated into the criteria argument, each set of two double quotation marks is replaced by one single quotation mark. The criteria argument becomes:

"[LastName] = 'Smith'"

This syntax may appear more complicated than the single quotation mark syntax, but it enables you to embed a string that contains an apostrophe within the criteria argument. It also enables you to nest one or more strings within the embedded string.

Include a Variable Representing Quotation Marks

You can create a string variable that represents double quotation marks, and concatenate this variable into the criteria argument along with the value of the variable. The ANSI representation for double quotation marks is Chr$(34); you could assign this value to a string variable called strQuote. You could then construct the criteria argument as in the following example:

"[LastName] = " & strQuote & strName & strQuote

When the variables are evaluated and concatenated into the criteria argument, the criteria argument becomes:

[LastName] = "Smith"


 Restrict Data to a Subset of Records

Restrict Data to a Subset of Records

When working with records you will often need to restrict your data to a specific set of records. Some procedures take a criteria argument that enables you to specify what data should be returned. For example, you specify the criteria argument to restrict which records are returned when you use domain aggregate functions. You may also specify criteria when you use the Find method of a Recordset object, set the Filter or ServerFilter property of a form, or construct an SQL statement. Although each of these operations involves a different syntax, you construct the criteria expression in a similar manner for each.

For example, you can use the DSum function, a domain aggregate function, to find the sum total of all freight costs in the Orders table. You could create a calculated control by entering the following expression in the ControlSource property:

=DSum("[Freight]", "Orders")

If you specify the optional criteria argument, the DSum function will be performed on a subset of domain. For example, you could find the sum total of all freight costs in the Orders table for only those orders being shipped to California:

=DSum("[Freight]", "Orders", "[ShipRegion] = 'CA'")

When you supply a criteria argument, Microsoft Access first evaluates any expressions included in the argument to form a string expression. Then the string expression is passed to the domain function. The string expression is equivalent to an SQL WHERE clause, without the word WHERE.

You can specify numeric, textual, or date/time criteria. No matter what type of criteria you specify, the criteria argument is always converted to a string before being passed to the domain aggregate function. Therefore, you must make certain that after any expressions have been evaluated, all parts of the argument are concatenated into a single string, the whole of which is enclosed in double quotation marks (").

Use caution when constructing criteria to ensure that the string will be properly concatenated.

The following list of topics outlines the different ways in which you can specify criteria:

Numeric Criteria Expressions

Textual Criteria Expressions

Date and Time Criteria Expressions

Change Numeric Criteria from a Control on a Form

Change Textual Criteria from a Control on a Form

Change Date and Time Criteria from a Control on a Form

Multiple Fields in Criteria Expressions


 Calculate Fields in Domain Aggregate Functions

Calculate Fields in Domain Aggregate Functions

You can use the string expression argument (the expr argument) in a domain aggregate function to perform a calculation on values in a field. For example, you can calculate a percentage (such as a surcharge or sales tax) by dividing a field value by a number.

The following table provides examples of calculations on fields from an Orders table and an Order Details table.

Calculation | Example
Add a number to a field | "[Freight] + 5"
Subtract a number from a field | "[Freight] - 5"
Multiply a field by a number | "[Freight] * 2"
Divide a field by a number | "[Freight] / 2"
Add one field to another | "[UnitsInStock] + [UnitsOnOrder]"
Subtract one field from another | "[ReorderLevel] - [UnitsInStock]"

You would most likely use a domain aggregate function in a macro or module, in a calculated control on a form or report, or in a criteria expression in a query.

For example, you can calculate the average discount amount for all orders in an Order Details table. Multiply the Unit Price and Discount fields to determine the discount for each order, then calculate the average. Enter the following example in a procedure in a module.

Dim dblX As Double
dblX = DAvg("[UnitPrice] * [Discount]", "[Order Details]")


 Build SQL Statements That Include Variables and Controls

Build SQL Statements That Include Variables and Controls

When working with Data Access Objects (DAO), you may need to construct an SQL statement in code. For example, if you're creating a new QueryDef object, you must set its SQL property to a valid SQL string. You're also likely to need an SQL statement when creating a Recordset object.

The easiest way to construct an SQL statement is to create a query in the query design grid, switch to SQL view, and copy and paste the corresponding SQL statement into your code.

Often a query must be based on values that the user supplies, or that change in different situations. If this is the case, you'll need to include variables or control values in your query. The Microsoft Jet database engine processes all SQL statements, but not variables or controls. Therefore, you must construct your SQL statement so that Microsoft Access first determines these values and then concatenates them into the SQL statement that's passed to the Jet database engine.

The following example shows how to create a QueryDef object with a simple SQL statement. This query returns all orders from an Orders table that were placed after 3-31-96:

Dim dbs As Database, qdf As QueryDef, strSQL As String
Set dbs = CurrentDb
strSQL = "SELECT * FROM Orders WHERE OrderDate >#3-31-96#;"
Set qdf = dbs.CreateQueryDef("SecondQuarter", strSQL)

The next example creates the same QueryDef object by using a value stored in a variable. Note that the number signs (#) that denote the date values must be included in the string so that they are concatenated with the date value.

Dim dbs As Database, qdf As QueryDef, strSQL As String
Dim dteStart As Date
dteStart = #3-31-96#
Set dbs = CurrentDb
strSQL = "SELECT * FROM Orders WHERE OrderDate" _
    & "> #" & dteStart & "#;"
Set qdf = dbs.CreateQueryDef("SecondQuarter", strSQL)

The following example creates a QueryDef object by using a value in a control called OrderDate on an Orders form. Note that you provide the full reference to the control, and that you include the number signs that denote the date within the string.

Dim dbs As Database, qdf As QueryDef, strSQL As String
Set dbs = CurrentDb
strSQL = "SELECT * FROM Orders WHERE OrderDate" _
    & "> #" & Forms!Orders!OrderDate & "#;"
Set qdf = dbs.CreateQueryDef("SecondQuarter", strSQL)


 Use International Date Formats in SQL Statements

Use International Date Formats in SQL Statements

You must use English (United States) date formats in SQL statements in Visual Basic. However, you can use international date formats in the query designgrid.


 Error Trapping

Error Trapping

You can use the On Error GoTo statement to trap errors and direct procedure flow to the location of error-handling statements within a procedure. For example, the following statement directs the flow to the ErrorHandler: label line:

On Error GoTo ErrorHandler

Be sure to give each error handler label in a procedure a unique name that will not conflict with any other element in the procedure, and make sure you append a colon to the name. Within the procedure, place the Exit Sub or Exit Function statement in front of the error handler label so that the procedure doesn't run the error-checking code if no error occurs.

Sub CausesAnError()
    ' Direct procedure flow.
    On Error GoTo ErrorHandler
    ' Raise division by zero error.
    Err.Raise 11
    Exit Sub

ErrorHandler:
    ' Display error information.
    MsgBox "Error number " & Err.Number & ": " & Err.Description
    ' Resume with statement following occurrence of error.
    Resume Next
End Sub

The Raise method of the Err object generates the specified error. The Number property of the Err object returns the number corresponding to the most recent run-time error; the Description property returns the corresponding message text for a given error.

Notes

  • In versions 1.x and 2.0 of Microsoft Access, you might have used the Error statement to generate the error, the Err function to return the error number, and the Error function to return a description of the error. Existing error-handling code that relies on the Error statement and the Error function will continue to work. However, it's better to use the Err object and its properties and methods when writing new code.

  • Versions 1.x and 2.0 of Microsoft Access returned only one error for all Automation, (formerly called OLE Automation) errors. The COM component application that generated the error now returns the same error information that you would receive if you were working in that application. You may need to rewrite existing error-handling code to handle new Automation errors properly.

  • If you wish to return the descriptive string associated with a Microsoft Access error or a Data Access Objects (DAO) error, but the error has not actually occurred in your code, you can use the AccessError method to return the string.

For more information about setting error traps and writing error-handling statements, see Chapter 9, "Error Handling and Debugging," in the OPG9TBD. For information about how to obtain the OPG9TBD, click [image] .


 Elements of Run-Time Error Handling

Elements of Run-Time Error Handling

Errors and Error Handling

When you're programming an application, you need to consider what happens when an error occurs. An error can occur in your application for one of two of reasons. First, some condition at the time the application is running makes otherwise valid code fail. For example, if your code attempts to open a table that the user has deleted, an error occurs. Second, your code may contain improper logic that prevents it from doing what you intended. For example, an error occurs if your code attempts to divide a value by zero.

If you've implemented no error handling, then Visual Basic halts execution and displays an error message when an error occurs in your code. The user of your application is likely to be confused and frustrated when this happens. You can forestall many problems by including thorough error-handling routines in your code to handle any error that may occur.

When adding error handling to a procedure, you should consider how the procedure will route execution when an error occurs. The first step in routing execution to an error handler is to enable an error handler by including some form of the On Error statement within the procedure. The On Error statement directs execution in event of an error. If there's no On Error statement, Visual Basic simply halts execution and displays an error message when an error occurs.

When an error occurs in a procedure with an enabled error handler, Visual Basic doesn't display the normal error message. Instead it routes execution to an error handler, if one exists. When execution passes to an enabled error handler, that error handler becomes active. Within the active error handler, you can determine the type of error that occurred and address it in the manner that you choose. Microsoft Access provides three objects that contain information about errors that have occurred, the ADO Error object, the Visual Basic Err object, and the DAO Error object.

For more information about handling errors, see Chapter 8, "Error Handling and Debugging," in the Microsoft Access 2000/Visual Basic Programmer's Guide.

Routing Execution When an Error Occurs

An error handler specifies what happens within a procedure when an error occurs. For example, you may want the procedure to end if a certain error occurs, or you may want to correct the condition that caused the error and resume execution. The On Error and Resume statements determine how execution proceeds in the event of an error.

The On Error Statement

The On Error statement enables or disables an error-handling routine. If an error-handling routine is enabled, execution passes to the error-handling routine when an error occurs.

There are three forms of the On Error statement: On Error GoTo label, On Error GoTo 0, and On Error Resume Next. The On Error GoTo label statement enables an error-handling routine, beginning with the line on which the statement is found. You should enable the error-handling routine before the first line at which an error could occur. When the error handler is active and an error occurs, execution passes to the line specified by the label argument.

The line specified by the label argument should be the beginning of the error-handling routine. For example, the following procedure specifies that if an error occurs, execution passes to the line labeled Error_MayCauseAnError:

Function MayCauseAnError()
    ' Enable error handler.
    On Error GoTo Error_MayCauseAnError
    .            ' Include code here that may generate error.
    .
    .

Error_MayCauseAnError:
    .            ' Include code here to handle error.
    .
    .
End Function

The On Error GoTo 0 statement disables error handling within a procedure. It doesn't specify line 0 as the start of the error-handling code, even if the procedure contains a line numbered 0. If there's no On Error GoTo 0 statement in your code, the error handler is automatically disabled when the procedure has run completely. The On Error GoTo 0 statement resets the properties of the Err object, having the same effect as the Clear method of the Err object.

The On Error Resume Next statement ignores the line that causes an error and routes execution to the line following the line that caused the error. Execution isn't interrupted. You can use the On Error Resume Next statement if you want to check the properties of the Err object immediately after a line at which you anticipate an error will occur, and handle the error within the procedure rather than in an error handler.

The Resume Statement

The Resume statement directs execution back to the body of the procedure from within an error-handling routine. You can include a Resume statement within an error-handling routine if you want execution to continue at a particular point in a procedure. However, a Resume statement isn't necessary; you can also end the procedure after the error-handling routine.

There are three forms of the Resume statement. The Resume or Resume 0 statement returns execution to the line at which the error occurred. The Resume Next statement returns execution to the line immediately following the line at which the error occurred. The Resume label statement returns execution to the line specified by the label argument. The label argument must indicate either a line label or a line number.

You typically use the Resume or Resume 0 statement when the user must make a correction. For example, if you prompt the user for the name of a table to open, and the user enters the name of a table that doesn't exist, you can prompt the user again and resume execution with the statement that caused the error.

You use the Resume Next statement when your code corrects for the error within an error handler, and you want to continue execution without rerunning the line that caused the error. You use the Resume label statement when you want to continue execution at another point in the procedure, specified by the label argument. For example, you might want to resume execution at an exit routine, as described in the following section.

Exiting a Procedure

When you include an error-handling routine in a procedure, you should also include an exit routine, so that the error-handling routine will run only if an error occurs. You can specify an exit routine with a line label in the same way that you specify an error-handling routine.

For example, you can add an exit routine to the example in the previous section. If an error doesn't occur, the exit routine runs after the body of the procedure. If an error occurs, then execution passes to the exit routine after the code in the error-handling routine has run. The exit routine contains an Exit statement.

Function MayCauseAnError()
    ' Enable error handler.
    On Error GoTo Error_MayCauseAnError
    .            ' Include code here that may generate error.
    .
    .

Exit_MayCauseAnError:
    Exit Function

Error_MayCauseAnError:
    .            ' Include code to handle error.
    .
    .
    ' Resume execution with exit routine to exit function.
    Resume Exit_MayCauseAnError
End Function

Handling Errors in Nested Procedures

When an error occurs in a nested procedure that doesn't have an enabled error handler, Visual Basic searches backward through the calls list for an enabled error handler in another procedure, rather than simply halting execution. This provides your code with an opportunity to correct the error within another procedure. For example, suppose Procedure A calls Procedure B, and Procedure B calls Procedure C. If an error occurs in Procedure C and there's no enabled error handler, Visual Basic checks Procedure B, then Procedure A, for an enabled error handler. If one exists, execution passes to that error handler. If not, execution halts and an error message is displayed.

Visual Basic also searches backward through the calls list for an enabled error handler when an error occurs within an active error handler. You can force Visual Basic to search backward through the calls list by raising an error within an active error handler with the Raise method of the Err object. This is useful for handling errors that you don't anticipate within an error handler. If an unanticipated error occurs, and you regenerate that error within the error handler, then execution passes back up the calls list to find another error handler, which may be set up to handle the error.

For example, suppose Procedure C has an enabled error handler, but the error handler doesn't correct for the error that has occurred. Once the error handler has checked for all the errors that you've anticipated, it can regenerate the original error. Execution then passes back up the calls list to the error handler in Procedure B, if one exists, providing an opportunity for this error handler to correct the error. If no error handler exists in Procedure B, or if it fails to correct for the error and regenerates it again, then execution passes to the error handler in Procedure A, assuming one exists.

To illustrate this concept in another way, suppose that you have a nested procedure that includes error handling for a type mismatch error, an error which you've anticipated. At some point, a division-by-zero error, which you haven't anticipated, occurs within Procedure C. If you've included a statement to regenerate the original error, then execution passes back up the calls list to another enabled error handler, if one exists. If you've corrected for a division-by-zero error in another procedure in the calls list, then the error will be corrected. If your code doesn't regenerate the error, then the procedure continues to run without correcting the division-by-zero error. This in turn may cause other errors within the set of nested procedures.

In summary, Visual Basic searches back up the calls list for an enabled error handler if:

  • An error occurs in a procedure that doesn't include an enabled error handler.

  • An error occurs within an active error handler. If you use the Raise method of the Err object to raise an error, you can force Visual Basic to search backward through the calls list for an enabled error handler.

Getting Information About an Error

Once execution has passed to the error-handling routine, your code must determine which error has occurred and address it. Visual Basic and Microsoft Access provide several language elements that you can use to get information about a specific error. Each is suited to different types of errors. Since errors can occur in different parts of your application, you need to determine which to use in your code based on what errors you expect.

The language elements available for error handling include:

  • The Err object.

  • The ADO Error object and Errors collection

  • The DAO Error object and Errors collection.

  • The AccessError method.

  • The Error event.

The Err Object

The Err object is provided by Visual Basic. When a Visual Basic error occurs, information about that error is stored in the Err object. The Err object maintains information about only one error at a time. When a new error occurs, the Err object is updated to include information about that error instead.

To get information about a particular error, you can use the properties and methods of the Err object. The Number property is the default property of the Err object; it returns the identifying number of the error that occurred. The Err object's Description property returns the descriptive string associated with a Visual Basic error. The Clear method clears the current error information from the Err object. The Raise method generates a specific error and populates the properties of the Err object with information about that error.

The following example shows how to use the Err object in a procedure that may cause a type mismatch error:

Function MayCauseAnError()
    ' Declare constant to represent likely error.
    Const conTypeMismatch As Integer = 13

    On Error GoTo Error_MayCauseAnError
        .            ' Include code here that may generate error.
        .
        .

Exit_MayCauseAnError:
    Exit Function

Error_MayCauseAnError:
    ' Check Err object properties.
    If Err = conTypeMismatch Then
        .            ' Include code to handle error.
        .
        .
    Else
        ' Regenerate original error.
        Dim intErrNum As Integer
        intErrNum = Err
        Err.Clear
        Err.Raise intErrNum
    End If
    ' Resume execution with exit routine to exit function.
    Resume Exit_MayCauseAnError
End Function

Note that in the preceding example, the Raise method is used to regenerate the original error. If an error other than a type mismatch error occurs, execution will be passed back up the calls list to another enabled error handler, if one exists.

The Err object provides you with all the information you need about Visual Basic errors. However, it doesn't give you complete information about Microsoft Access errors or Microsoft Jet database engine errors. Microsoft Access and Data Access Objects (DAO)) provide additional language elements to assist you with those errors.

The Error Object and Errors Collection

The Error object and Errors collection are provided by ADO and DAO. The Error object represents an ADO or DAO error. A single ADO or DAO operation may cause several errors, especially if you are performing DAO ODBC operations. Each error that occurs during a particular data access operation has an associated Error object. All the Error objects associated with a particular ADO or DAO operation are stored in the Errors collection, the lowest-level error being the first object in the collection and the highest-level error being the last object in the collection.

When a ADO or DAO error occurs, the Visual Basic Err object contains the error number for the first object in the Errors collection. To determine whether additional ADO or DAO errors have occurred, check the Errors collection. The values of the ADO Number or DAO Number properties and the ADO Description or DAO Description properties of the first Error object in the Errors collection should match the values of the Number and Description properties of the Visual Basic Err object.

The AccessError Method

You can use the Raise method of the Err object to generate a Visual Basic error that hasn't actually occurred and determine the descriptive string associated with that error. However, you can't use the Raise method to generate a Microsoft Access error, an ADO error, or a DAO error. To determine the descriptive string associated with a Microsoft Access error, an ADO error, or a DAO error that hasn't actually occurred, use the AccessError method.

The Error Event

You can use the Error event to trap errors that occur on a Microsoft Access form or report. For example, if a user tries to enter text in a field whose data type is Date/Time, the Error event occurs. If you add an Error event procedure to an Employees form, then try to enter a text value in the HireDate field, the Error event procedure runs.

The Error event procedure takes an integer argument, DataErr. When an Error event procedure runs, the DataErr argument contains the number of the Microsoft Access error that occurred. Checking the value of the DataErr argument within the event procedure is the only way to determine the number of the error that occurred. The Err object isn't populated with error information after the Error event occurs. You can use the value of the DataErr argument together with the AccessError method to determine the number of the error and its descriptive string.

Note The Error statement and Error function are provided for backward compatibility only. When writing new code, use the Err and Error objects, the AccessError function, and the Error event for getting information about an error.


Determine the Error Codes Reserved by Microsoft Access and the Microsoft Jet Database Engine

The following procedure creates a table containing many of the error codes and strings used or reserved by Microsoft Access and by the Microsoft Jet database engine. Not all error codes are included in the resulting table, as some exist outside the range of error codes evaluated by this procedure (0 to 4500).

Function AccessAndJetErrorsTable() As Boolean
    Dim cat As New ADOX.Catalog
    Dim tbl As New ADOX.Table
    Dim cnn As ADODB.Connection
    Dim rst As New ADODB.Recordset, lngCode As Long
    Dim strAccessErr As String

    Const conAppObjectError = "Application-defined or object-defined error"
    On Error GoTo Error_AccessAndJetErrorsTable

    Set cnn = CurrentProject.Connection
        ' Create Errors table with ErrorNumber and ErrorDescription fields.
    tbl.Name = "AccessAndJetErrors"
    tbl.Columns.Append "ErrorCode", adInteger
    tbl.Columns.Append "ErrorString", adLongVarWChar

    Set cat.ActiveConnection = cnn
    cat.Tables.Append tbl
    ' Open recordset on Errors table.
    rst.Open "AccessAndJetErrors", cnn, adOpenStatic, adLockOptimistic
    ' Loop through error codes.
    For lngCode = 0 To 3500
        On Error Resume Next
        ' Raise each error.
        strAccessErr = AccessError(lngCode)
        DoCmd.Hourglass True
        ' Skip error numbers without associated strings.
        If strAccessErr <> "" Then
            ' Skip codes that generate application or object-defined errors.
            If strAccessErr <> conAppObjectError Then
                ' Add each error code and string to Errors table.
                rst.AddNew
                rst!ErrorCode = lngCode
                ' Append string to memo field.
                rst!ErrorString = strAccessErr
                rst.Update
            End If
        End If
    Next lngCode
    ' Close recordset.
    rst.Close
    DoCmd.Hourglass False
    RefreshDatabaseWindow
    MsgBox "Access and Jet errors table created."
    AccessAndJetErrorsTable = True

Exit_AccessAndJetErrorsTable:
    Exit Function

Error_AccessAndJetErrorsTable:
    MsgBox Err & ": " & Err.Description
    AccessAndJetErrorsTable = False
    Resume Exit_AccessAndJetErrorsTable
End Function


 Determine the Error Codes Reserved by Visual Basic

Determine the Error Codes Reserved by Visual Basic

The following procedure creates a table in Microsoft Access containing the error codes and strings used or reserved by Visual Basic. The table doesn't include ActiveX Data Objects (ADO) errors.

Visual Basic reserves a portion of the first thousand possible error numbers, so this example considers only error numbers between 1 and 1000. Other error numbers are reserved by the Microsoft Jet database engine, or are available for defining custom errors.

Sub CreateErrorsTable()
    Dim cat As New ADOX.Catalog
    tbl As New ADOX.Table
    cnn As ADODB.Connection
    Dim rst As New ADODB.Recordset, lngCode As Long
    Const conAppObjectError = "Application-defined or object-defined error"

    Set cnn = CurrentProject.Connection
    ' Create Errors table with ErrorNumber and ErrorDescription fields.
    tbl.Name = "Errors"
    tbl.Columns.Append "ErrorCode", adInteger
    tbl.Columns.Append "ErrorString", adVarWChar
    Set cat.ActiveConnection = cnn
    cat.Tables.Append tbl
    ' Open recordset on Errors table.
    rst.Open"Errors", cnn adOpenStatic, adLockOptimistic
    ' Loop through first 1000 Visual Basic error codes.
    For lngCode = 1 To 1000
        On Error Resume Next
        ' Raise each error.
        Err.Raise lngCode
        DoCmd.Hourglass True
        ' Skip error codes that generate application or object-defined errors.
        If Err.Description <> conAppObjectError Then
            ' Add each error code and string to Errors table.
            rst.AddNew
            rst!ErrorCode = Err.Number
            rst!ErrorString = Err.Description
            rst.Update
        End If
        ' Clear Err object.
        Err.Clear
    Next lngCode
    ' Close recordset.
    rst.Close
    DoCmd.Hourglass False
    MsgBox "Errors table created."
End Sub


 Information About Properties, Methods, and Events of an ActiveX Control

Information About Properties, Methods, and Events of an ActiveX Control

This topic contains useful information on setting and using ActiveX control language elements in Microsoft Access 2000, and points out some features of ActiveX controls that were added in Microsoft Access 95 and Microsoft Access 97.

Note This information does not apply for ActiveX controls on a data access page environment.

General

When using ActiveX controls with Microsoft Access 95, you no longer needed to use the Object property when referring to properties and methods in syntax expressions. For example, the following two syntax lines are now normally equivalent:

ActiveXCtl0.Object.MonthLength = 0
ActiveXCtl0.MonthLength = 0

The only exception is if the name of the ActiveX control language element is the same as that of an existing Microsoft Access language element that also applies to this ActiveX control. In this case, you must still use the .Object syntax.

ActiveX control variables can only be dimensioned as type Control; they can't be a more specific type such as Calendar.

Properties

ActiveX control properties appear in the Microsoft Access property sheet. You can set most of these properties in either the ActiveX control's custom properties dialog box or the Microsoft Access property sheet.

Note The ActiveX control properties aren't listed in the ADO Properties or DAO Properties collections. The only way to access these properties is using the syntax shown in the previous section.

Events

For Microsoft Access events like Enter that apply to ActiveX controls, you can run a macro or event procedure when the event occurs by setting the event property to the name of the macro or [Event Procedure]. However, for events that are specific to ActiveX controls like the NewMonth event of the Calendar control, you must go into the form module in Design view, select the name of the ActiveX control from the Object box, and then select the event from the Procedure box. This creates an event procedure for the ActiveX control event that runs when the event occurs. You can also duplicate the syntax that's created in this case for the event procedure if you want to create it yourself.

If a Microsoft Access event and an ActiveX control event with the same name both apply to a ActiveX control object, Microsoft Access appends "Object" to the ActiveX control event in the Procedure box drop-down list box. This enables you to run a different procedure when each event occurs.


 Microsoft Access Language Elements That Apply to ActiveX Controls

Microsoft Access Language Elements That Apply to ActiveX Controls

In addition to the properties, methods, and events specific to an ActiveX control, some existing Microsoft Access properties, methods, and events also apply to ActiveX controls. For information on how these language elements work, see the Microsoft Access topic on each language element.

Properties

The following Microsoft Access properties apply to ActiveX controls on forms and reports, and are available in the Microsoft Access property sheet:

BorderColor

BorderStyle

BorderWidth

Class

ControlSource (only available for ActiveX controls that support binding)

ControlTipText

DisplayWhen

Enabled

HelpContextID

 Height

Left

Locked (only available for ActiveX controls that support binding)

Name

Object

OLEClass

OnEnter

OnExit

OnGotFocus

 OnLostFocus

OnUpdated

SpecialEffect

TabIndex

TabStop

Tag

Top

Verb

Visible

Width

The following Microsoft Access properties apply to ActiveX controls, and are available only in a macro or Visual Basic:

ControlType | InSelection | Parent
EventProcPrefix | ObjectVerbsCount | Section

Events

The following Microsoft Access events apply to ActiveX controls on forms and reports:

Enter | GotFocus | Updated
Exit | LostFocus |

Methods

The following Microsoft Access methods apply to ActiveX controls on forms and reports:


 The ActiveX Control's Custom Properties Dialog Box

The ActiveX Control's Custom Properties Dialog Box

When setting the properties of an ActiveX control, you may need or prefer to use the control's custom properties dialog box. This custom properties dialog box provides an alternative to the list of properties in the Microsoft Access property sheet for setting ActiveX control properties in Design view.

Note This information only applies to ActiveX controls in a Microsoft Access database (.mdb) environment.

Two Ways to Set Properties

The reason for the custom properties dialog box is that not all applications that use ActiveX controls provide a property sheet like the one in Microsoft Access. The custom properties dialog box provides an interface for setting key control properties regardless of the interface supplied by the hosting application.

For some ActiveX control properties, you can choose either of these two locations to set the property:

  • The Microsoft Access property sheet.

  • The ActiveX control's custom properties dialog box.

In some cases, the custom properties dialog box is the only way to set a property in Design view. This is usually the situation when the interface needed to set a property doesn't work inside the Microsoft Access property sheet. For example, the GridFont property for the Calendar control has a number of arguments; you can't set more than one argument per property in the Microsoft Access property sheet.

Finding the Custom Properties Dialog Box

Not all ActiveX controls provide a custom properties dialog box. To see whether a control provides this custom properties dialog box, look for the Custom property in the Microsoft Access property sheet for this control. If the list of properties contains the name Custom, then the control provides the custom properties dialog box.

Using the Custom Properties Dialog Box

After you click the Custom property box in the Microsoft Access property sheet, click the Build button [image] to the right of the property box to display the control's custom properties dialog box, often presented as a tabbed dialog box. Choose the tab that contains the interface for setting the properties that you want to set.

After you make changes on one tab, you can often apply those changes immediately by clicking the Apply button (if provided). You can click other tabs to set other properties as needed. To approve all changes made in the custom properties dialog box, click the OK button. To return to the Microsoft Access property sheet without changing any property settings, click the Cancel button.

You can also view the custom properties dialog box by clicking the Properties subcommand of the ActiveX control Object command (for example, Calendar Control Object) on the Edit menu, or by clicking this same subcommand on the shortcut menu for the ActiveX control. In addition, some properties in the Microsoft Access property sheet for the ActiveX control, like the GridFontColor property of the Calendar control, have a Build button to the right of the property box. When you click the Build button, the custom properties dialog box is displayed, with the appropriate tab selected (for example, Colors).


 View an ActiveX Control's About Box

View an ActiveX Control's About Box

To view an About box showing version and copyright information for an ActiveX control, click the About property box in the Microsoft Access property sheet. Then click the Build button [image] button to the right of the property box.

Note The About box is not available for ActiveX controls on a data access page.


 Conversion and Compatibility Issues

Conversion and Compatibility Issues

You can't open a Microsoft Access 2000 database by using prior versions of Microsoft Access. However, you can link and import Microsoft Access 2000 (version 9.0) tables into Microsoft Access 97 (version 8.0) databases. You can also export a version 8.0 table to a version 7.0 database, and you can cut, copy, or paste data from a version 8.0 table to a version 7.0 table.

You can enable a database created in a prior version of Microsoft Access to run in Microsoft Access 2000 but you can't add new objects to, or change the design of objects in, the database.

If your attempt to convert a database to Microsoft Access 2000 fails, you can also create a new Microsoft Access 2000 database and then import all the objects from the earlier version into your new database.

Note If you need to share a database with users who are running a previous version of Microsoft Access, you should open the prior-version database with the Enable option rather than the Convert option. If you must share the database with users running a previous version of Microsoft Access do not convert the database to the Microsoft Access 2000 format.

Convert a Database

Convert a Secured Database from a Previous Version of Microsoft Access

Convert Library Databases and Add-ins

What's New for Developers: Overview

Convert Access Basic Code to Visual Basic

Convert Code That Calls a DLL

Macro Actions and Methods of the DoCmd Object

Convert SendKeys Key Combinations

Style for Intrinsic Constants

Scoping and Object-Naming Compatibility

DAO Object Library Compatibility

Examples of Converting DAO Code


 Convert Microsoft Access Tables, Forms, and Reports

Convert Microsoft Access Tables, Forms, and Reports

Several changes introduced by Microsoft Access 2000 might affect the behavior of your version 1.x or 2.0 applications. The following sections provide more information about those changes.

Indexes and Relationships

A Microsoft Access table can contain up to 32 indexes. Very complex tables that are a part of many relationships may exceed the index limit, and you won't be able to convert the database that contains these tables. Version 3.5 of the Microsoft Jet database engine creates indexes on both sides of relationships between tables. If your database won't convert, delete some relationships and try again to convert the database.

The LimitToList Property of Combo Boxes

In Microsoft Access 2000, combo boxes accept Null values when the LimitToList property is set to True (-1), whether or not the list contains Null values. In version 2.0, a combo box that has the LimitToList property set to True won't accept a Null value unless the list contains a Null value. If you want to prevent users from entering a Null value by using a combo box, set the Required property of the field in the table to Yes.

Menus and In-Place Activation of OLE Objects

In order to make additional functionality available to you while activating OLE objects in place, some menu commands may have been moved to a menu that isn't replaced when you activate an OLE server.

Macros in your converted application that use a DoMenuItem action to carry out a version 2.0 menu command when a component is activated won't be affected by the changes. Version 2.0 commands are mapped to their Microsoft Access 2000 equivalents.

Referencing a Control on a Read-Only Form

In Microsoft Access 2000, you can't use an expression to refer to the value of a control on a read-only form that's bound to an empty record source. In previous versions, the expression returns a Null value. Before you reference a control on a read-only form, you should make sure that the form's record source contains records.

Date Fields and Data Entry

If you enter 3/3 in a field of type Date on a form or a table datasheet, Microsoft Access 2000 automatically fills in the current year. However, if you enter 3/3/ in the same field, Microsoft Access returns an error message. You must omit the last date delimiter so that Microsoft Access can translate the date into the proper format.

Buttons Created with the Command Button Wizard

If you used the Command Button Wizard in version 2.0 or 7.0 of Microsoft Access to generate code that called another application, you should delete the button and re-create it by using the Command Button Wizard in Microsoft Access 2000.

Form and Report Class Modules

In prior versions of Microsoft Access, Form and Report objects have associated class modules even if there's no code behind the object. In Microsoft Access 2000, you can set a form's or report's HasModule property to False. When you set the HasModule property to False, the form or report will take up less disk space and will load faster than because it will no longer have an associated class module.

Converted Version 2.0 Report Has Different Margins

You may encounter problems when trying to print or preview a Microsoft Access 2000 report that has been converted from Microsoft Access 2.0 if the report has some margins set to 0. When you convert a Microsoft Access 2.0 report, margins aren't set to 0; they are instead set to the minimum margin that's valid for the default printer. This prevents the report from printing data in the unprintable region of the printer.

To resolve this problem, reduce the column width, column spacing, or number of columns in the report so that the width of the columns plus the width of the default margins is equal to or less than the width of your paper.

Can't Use the Format Property to Distinguish Null Values and Zero-Length Strings

In versions 1.x and 2.0, you can use the Format property of a control to display different values for Null values and zero-length strings (" "). In Microsoft Access 2000, to distinguish between Null values and zero-length strings in a control on a form, set the control's ControlSource property to an expression that tests for the Null value case. For example, to display "Null" or "ZLS" in a control, set its ControlSource property to the following expression:

=IIf(IsNull([MyControl]), "Null", Format([MyControl], "@;ZLS"))


Converting DAO Code to ADO

Microsoft Access includes ActiveX Data Objects (ADO) 2.1 as the default data access library. Although Data Access Objects (DAO) 3.6 is included it is not referenced by default. To aid in converting code to the newer ADO standard the following information is provided.

Note Versions of the DAO library prior to 3.6 are no longer provided or supported in Microsoft Access 2000

DAO to ADO object Map

DAO | ADO(ADODB) | Note
DBEngine | None |
Workspace | None |
Database | Connection |
Recordset | Recordset |
Dynaset-Type | Keyset | Retrieves a set of pointers to the records in the recordset
Snapshot-Type | Static | Both retrieve full records but a Static recordset can be updated.
Table-Type | Keyset with adCmdTableDirect Option |
Field | Field | When referred to in a recordset

DAO ADO
Open a Recordset
Dim db as Database
Dim rs as DAO.Recordset
Set db = CurrentDB()
Set rs = db.OpenRecordset("Employees")

Dim rs as New ADODB.Recordset
rs.Open "Employees", CurrentProject.Connection, adOpenKeySet, adLockOptimistic
Edit a Recordset
rs.Edit
rs("TextFieldName") = "NewValue"
rs.Update

rs("TextFieldName") = "NewValue"
rs.Update

Note Moving focus from current record via MoveNext, MoveLast, MoveFirst, MovePrevious without first using the CancelUpdate method will implicitly execute the Update method.


Converting DAO DDL elements to ADOX

Microsoft Access includes additional libraries to use when converting DAO's Data Definition Language (DDL) functionality to the ActiveX Data Objects DDL functionality.

Note ADO DDL is not referenced by default in Microsoft Access 2000. You must first create a reference to MSADOX.DLL by selecting References on the Tools menu and selecting Microsoft ADO Ext. 2.1 for DDL and Security.

DAO to ADO object map

DAO | ADO(ADOX)
DBEngine | None
Workspace | None
Database | Catalog
QueryDef(Simple Select) | View
QueryDef(Action/Paramaterized) | Procedure
TableDef | Table
Parameter | Parameter
Field | Column

DAO to ADO security constants map

DAO | ADO(ADOX) | Note
dbSecNoAccess | adRightNone | User has no access to document
dbSecFullAccess | adRightFull | Has full object access
dbSecDelete | adRightDelete | Can delete object
dbSecReadSec | adRightReadDesign | Can read security-related information
dbSecWriteSec | adRightWriteDesign | Can change access
dbSecWriteOwner | adRightWriteOwner | Can change owner
dbSecCreate | adRightCreate or adRightWithGrant | Can create new documents
dbSecReadDef | adRightRead or adRightReadDesign | Read the definition of a table or query
dbSecWriteDef | adRightUpdate or adRightWriteDesign | Alter the definition of a table or query
dbSecRetrieveData | adRightRead | Read data stored ina table or query. Implicitly grants read permission to the definition.
dbSecInsertData | adRightInsert | Insert new rows into table or query
dbSecReplaceData | adRightUpdate | Modify table or query data
dbSecDeleteData | adRightDelete or adRightWithGrant | Delete rows from table or query

Jet Field Data Types | DAO Data types | ADO Data Types
Yes/No | dbBoolean | adBoolean
Number (FieldSize = Byte) | dbByte | adUnsignedTinyInt
AutoNumber (FieldSize = Long Integer) | dbLong | adInteger
Currency | dbCurrency | adCurrency
Date/Time | dbDate | adDate
Number (FieldSize = Double) | dbDouble | adDouble
Number or AutoNumber (FieldSize =Replication ID) | dbGUID | adGUID
Number (FieldSize = Long Integer) | dbLong | adInteger
OLE Object | dbLongBinary | adLongVarBinary
Memo | dbMemo | adLongVarWChar
Number (FieldSize = Single) | dbSingle | adSingle
Number (FieldSize = Integer) | dbInteger | adSmallInt
Text | dbText | adVarWChar
Hyperlink | dbMemo | adLongVarWChar
Numeric (FieldSize=Decimal) | dbDecimal | adDecimal

  4. DAO
  1. ADO
Creating a Database
Dim wsp As Workspace, dbs As Database
Set wsp = DBEngine(0)
Set dbs = wsp.CreateDatabase("Newdb.mdb")

Dim cat As New ADOX.Catalog
cat.Create "Provider = Microsoft.Jet.OLEDB.4.0;" _
       & "Data Source = Newdb.mdb"
Creating a Table
Dim dbs As Database
Dim tdf As TableDef, fld As Field

Set dbs = CurrentDb
Set tdf = dbs.CreateTableDef("NewTable")
Set fld = tdf.CreateField("FName", dbText, 50)
tdf.Fields.Append fld
dbs.TableDefs.Append tdf
Dim cat As New ADOX.Catalog
Dim tbl As New ADOX.Table

Set cat.ActiveConnection = CurrentProject.Connection
tbl.Name = "NewTable"
tbl.Columns.Append "FName", adVarWChar, 50
Cat.Tables.Append tbl
Creating a Query
Dim dbs As Database
Dim qdf As QueryDef

Set dbs = CurrentDb
Set qdf = dbs.CreateQueryDef("NewQuery", _
     "Select * From Employees")
dbs.QueryDefs.Append qdf
Dim cat As New ADOX.Catalog
Dim cmd As New ADODB.Command

Set cat.ActiveConnection = CurrentProject.Connection
cmd.CommandText "Select * From Employees"
Cat.Views.Append "NewQuery", cmd


Converting DAO Replication to JRO

In Addition to the ADO and ADOX object libraries Microsoft Access provides Jet and Replication Objects (JRO). This set of objects provides an object model and methods that are specifically designed for use with ADO and the Jet Database Engine.

Note You must first create a reference to MSJRO.DLL by selecting References on the Tools menu and selecting Microsoft Jet and Replication Objects 2.1 Library to use JRO functionality.

Below are listed some common DAO Replication methods and their JRO equivalents.

DAO | ADO(JRO) | Note
DBEngine | JetEngine |
Database | Catalog |

Creating a Replica
'Given an open database Object dbReplicable
Dim dbTemp As Database

Set dbTemp=OpenDatabase(dbReplicable)
dbTemp.MakeReplica strNewReplica, _
"Replica of " & strReplicableDB
dbsTemp.Close

Dim rpMaster As New JRO.Replica
rpMaster.MakeReplicable "northwind.mdb",False
Set rpMaster = Nothing
rpMaster.ActiveConnection ="northwind.mdb"
rpMaster.CreateReplica "northwind2.mdb", _
 "My Full Replica1", jrRepTypeFull, jrRepVisibilityGlobal
Set rpMaster = Nothing
Compact and Encrypt a Database
Dim dbNWD As Database
Set dbNWD =OpenDatabase("Northwind.mdb")
DBEngine.CompactDatabase "Northwind.mdb", _
"NWD_DAOComp.mdb", , dbEncrypt

Dim je As New JRO.JetEngine
je.CompactDatabase _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Northwind.mdb", _   "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=NWD_ADOComp.mdb.mdb;" _
& "Jet OLEDB:Encrypt Database=True"


 Examples of Converting DAO Code

Examples of Converting DAO Code

Microsoft Access includes version 4.0 of the Microsoft Jet database engine and the DAO 3.6 object library. All previous version of DAO are no longer supported in Microsoft Access 2000. The following examples demonstrate how to convert code constructs in Microsoft Access databases created with earlier versions of the Jet database engine and DAO object libraries

Note This information is provided for reference only. Versions of DAO code prior to 3.6 are no longer supported in Access 2000. It is suggested that you use the ADO methods of accessing data in your current database for all new applications and future version compatibility.

Setting a Reference to the current database

Version Example
1.x
Dim dbs As Database
Set dbs = CurrentDb
2.x
Dim dbs As Database
Set dbs = DBEngine.Workspaces(0).Databases(0)
or
Dim dbs As Database
Set dbs = DBEngine(0)(0)
7.0 or Later
Dim dbs As DAO.Database
Set dbs = CurrentDb
9.0

(Recommended)

Dim cnn As ADODB.Connection
Set cnn = CurrentProject.Connection

Note In Microsoft Access, the current database is the default database in the Databases collection, so you can still use the DBEngine(0)(0) syntax to return a Database object variable pointing to the current database. However, when using DAO the CurrentDb method is the preferred means of returning this object variable, because it enables you to create more than one Database object variable that points to the current database.

Opening a Database and Setting a Reference

Version Example
1.x
Set dbs = OpenDatabase("Contacts.mdb")
2.x and later
Set dbs = DBEngine.Workspaces(0).OpenDatabase("Contacts.mdb")
or
Set dbs = Workspaces(0).OpenDatabase("Contacts.mdb")
or
Set dbs = OpenDatabase("Contacts.mdb")
9.x (Recommended)
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Contact.mdb"

Opening a Table-Type Recordset

Version Example
1.x
Dim tbl As Table
Set tbl = dbs.OpenTable("Orders")
2.x
Dim rst As Recordset
Set rst = dbs.OpenRecordset("Orders", DB_OPEN_TABLE)
or
Dim rst As Recordset
Set rst = dbs!Orders.OpenRecordset
7.0 or later
Dim rst As DAO.Recordset
Set rst = dbs.OpenRecordset("Orders", dbOpenTable)
or
Dim rst As DAO.Recordset
Set rst = dbs!Orders.OpenRecordset
9.0 (Recommended)
Dim rst As New ADODB.Recordset
rst.Open "Orders",cnn,adOpenKeyset,adLockOptimistic,adCmdTableDirect

Opening a Table-Type Recordset Exclusively

Version Example
1.x
Dim tbl As Table
Set tbl = dbs.OpenTable("Orders", DB_DENY_READ)
2.x
Dim rst As Recordset
Set rst = dbs.OpenRecordset("Orders", DB_OPEN_TABLE, DB_DENY_READ)
or
Dim rst As Recordset
Set rst = dbs!Orders.OpenRecordset(DB_OPEN_TABLE, DB_DENY_READ)
7.0 or later
Dim rst As DAO.Recordset
Set rst = dbs.OpenRecordset("Orders", dbOpenTable, dbDenyRead)
or
Dim rst As DAO.Recordset
Set rst = dbs!Orders.OpenRecordset(dbOpenTable, dbDenyRead)
9.0 (Recommended)
S/A (Not available via ADO)

Opening a Dynaset-Type Recordset

Version Example
1.x
Dim dyn As Dynaset
Set dyn = dbs.CreateDynaset("Orders")
2.x
Dim rst As Recordset
Set rst = dbs.OpenRecordset("Orders", DB_OPEN_DYNASET)
or
Set rst = dbs!Orders.OpenRecordset(dbOpenDynaset)
7.0 or later
Dim rst As Recordset
Set rst = dbs.OpenRecordset("Orders", dbOpenDynaset)
or
Set rst = dbs!Orders.OpenRecordset(dbOpenDynaset)
9.0 (Recommended)
Dim rst As New ADODB.Recordset
rst.Open "Orders", cnn, adOpenKeyset, adLockOptimistic

Opening a Snapshot-Type Recordset

Version Example
1.x
Dim snp As Snapshot
Set snp = dbs.CreateSnapshot("Orders")
2.x
Dim rst As Recordset
Set rst = dbs.OpenRecordset("Orders", DB_OPEN_SNAPSHOT)
or
Set rst = dbs!Orders.OpenRecordset(DB_OPEN_SNAPSHOT)
7.0 or later
Dim rst As Recordset
Set rst = dbs.OpenRecordset("Orders", dbOpenSnapshot)
or
Set rst = dbs!Orders.OpenRecordset(dbOpenSnapshot)
9.0 (Recommended)
Dim rst As New ADODB.Recordset
rst.Open "Orders", cnn, adOpenStatic, adLockReadOnly

Listing Fields

Version Example
1.x
' Given open Table object tbl.
Dim snp As Snapshot
Set snp = tbl.ListFields()
While Not snp.EOF
   Debug.Print snp!Name, snp!Type
   snp.MoveNext
Wend
snp.Close
2.x
' Given open TableDef object tdf.
Dim intI As Integer, fld As Field
For intI = 0 To tdf.Fields.Count - 1
   Set fld = tdf.Fields(intI)
   Debug.Print fld.Name, fld.Type
Next intI
7.0 or later
' Given open TableDef object tdf.
Dim fld As Field
For Each fld in tdf.Fields
   Debug.Print fld.Name, fld.Type
Next fld
9.0 (Recommended)
' Given open Table object tbl
Dim col as ADOX.column
For Each col in tbl.Columns
   Debug.Print col.Name, col.Type
Next col

Listing Tables in a Database

Version Example
1.x
' Given open Database object dbs.
Dim snp As Snapshot
Set snp = dbs.ListTables()
While Not snp.EOF
   Debug.Print snp!Name
   snp.MoveNext
Wend snp.Close
2.x
' Given open Database object dbs.
Dim intJ As Integer, tdf As TableDef
For intJ = 0 To dbs.TableDefs.Count - 1
   Set tdf = dbs.TableDefs(intJ)
   Debug.Print tdf.Name
Next intJ
7.0 or later
' Given open Database object dbs.
Dim tdf As TableDef
For Each tdf in dbs.TableDefs
   Debug.Print tdf.Name
Next tdf
9.0 (Recommended)
' Given open Catalog object cat
Dim tbl As ADOX.Table
For Each tbl in cat.Tables
   Debug.Print tbl.Name
Next tbl

Listing a Table's Indexes

Version Example
1.x
' Given open Table object tbl.
Dim snp As Snapshot
Set snp = tbl.ListIndexes()
While Not snp.EOF
   Debug.Print snp!Name
   snp.MoveNext
Wend
snp.Close
2.x
' Given open TableDef object tdf.
Dim intI As Integer, idx As Index
For intI = 0 To tdf.Indexes.Count - 1
   Set idx = tdf.Indexes(intI)
   Debug.Print idx.Name
Next intI
7.0 or later
' Given open TableDef object tdf.
Dim idx As DAO.Index
For Each idx in tdf.Indexes
   Debug.Print idx.Name
Next idx
9.0

(Recommended)

' Given open Table object tbl.
Dim idx As ADOX.Index
For Each idx in tbl.Indexes
   Debug.Print idx.Name
Next idx

Listing a Query's Parameters

Version Example
1.x
' Given open QueryDef object qdf.
Dim snp As Snapshot
Set snp = qdf.ListParameters()
While Not snp.EOF
   Debug.Print snp!Name
   snp.MoveNext
Wend
snp.Close
2.x
' Given open QueryDef object qdf.
Dim intI As Integer, prm As Parameter
For intI = 0 to qdf.Parameters.Count - 1
   Set prm = qdf.Parameters(i)
   Debug.Print prm.Name
Next intI
7.0 or later
' Given open QueryDef object qdf.
Dim prm As Parameter
For Each prm in qdf.Parameters
   Debug.Print prm.Name
Next prm
9.0 (Recommended)
' Given open Procedure object prc.
Dim prm As ADODB.Parameter
For Each prm in prc.Parameters
   Debug.Print prm.Name
Next prm

Setting Query Parameters Dynamically

Version Example
1.x
' Given open Database dbs.
Dim qdf As QueryDef, dyn As Dynaset
Set qdf = dbs.OpenQueryDef("OrdersQuery")
qdf.ParameterName = "[Start date]"
Set dyn = qdf.CreateDynaset()
2.x
' Given open QueryDef object qdf.
Dim intI As Integer, prm As Parameter, rst As Recordset
For intI = 0 To qdf.Parameters.Count - 1
   Set prm = qdf.Parameters(intI)
   prm.Value = InputBox("Value for " & prm.Name)
Next intI
Set rst = qdf.OpenRecordset
7.0 or later
' Given open QueryDef object qdf.
Dim prm As Parameter, rst As Recordset
For Each prm in qdf.Parameters
   prm.Value = InputBox("Value for " & prm.Name)
Next prm
Set rst = qdf.OpenRecordset
9.0 (Recommended)
' Given open Procedure object prc.
Dim prm As ADODB.Parameter, rst As ADODB.Recordset
For Each prm in prc.Command.Parameters
   prm.Value = InputBox("Value for " & prm.Name)
Next prm
rst.Open prc.Command,,adOpenKeyset, adLockOptimistic

Running a Pass-Through Query

Version Example
1.x
' Given open Database object dbs.
Dim lngRows As Long
' Run stored procedure on server.
lngRows = dbs.ExecuteSQL("EXECUTE SP_StoredProc")
or
Dim snp As Snapshot
Set snp = dbs.CreateSnapshot("EXECUTE SP_StoredProc", DB_SQLPassThrough)
2.x and later
' Given open Database object dbs.
Dim qdf As QueryDef, rst As Recordset
Set qdf = dbs.CreateQueryDef("ODBCQuery")
qdf.Connect = "ODBC;" & "DSN=MyServer;" _
   & "UID=sa;" & "PWD=hithere;" & "DATABASE=pubs"
qdf.SQL = "EXECUTE SP_StoredProc"
qdf.ReturnsRecords = True
.
.
.
Set rst = qdf.OpenRecordset
9.0 and later
' Given open Catalog Object with Activeconnection set, object cat.
Dim rst As Recordset, cmdPassthru As New ADODB.Command
Set cmdPassthru.ActiveConnection = Currentproject.connection
cmdPassthru("Jet OLEDB:Passthru Query conection string")= _
   "ODBC;DSN=MyServer;UID=sa;PWD=hithere;DATABASE=pubs"
cmdPassthru.CommandText = "EXECUTE SP_StoredProc"
cat.Procedures.Append "ODBCQuery", cmdPassthru

Set rst = cmd.Execute

Creating a Temporary Query

Version Example
1.x
' Given open Database object dbs.
Dim qdf As QueryDef, strTemp As String
strTemp = "TMP:" & User() & Time()
qdf = dbs.CreateQueryDef(strTemp)
qdf.SQL = "UPDATE Table1 SET Table1.Field1 = Field1 * 1.1;"
.
.
.
qdf.Execute
qdf.Close
.
.
dbs.DeleteQueryDef(strTemp)
2.x and later
qdf = dbs.CreateQueryDef("")
qdf.Execute
qdf.Close
9.0 and later
cmd.CommandText = "UPDATE Table1 SET Table1.Field1 = Field1 * 1.1;" cmd.Execute
set cmd = Nothing


 Automation with Microsoft Access

Automation with Microsoft Access

Microsoft Access is an COM component that supports Automation, formerly called OLE Automation. Microsoft Access supports Automation in two ways. From Microsoft Access, you can work with objects supplied by another component. Microsoft Access also supplies its objects to other COM components.

In previous versions of Microsoft Access, you could use the CreateObject function or the GetObject function to point a variable to an instance of a component. In Microsoft Access 97 and Access 2000, you can also use the New keyword to create a new instance of some components. Check the component's documentation to determine which syntax it supports.

In Microsoft Access, you can set a reference to a component's type library to improve performance when you work with that component through Automation. Microsoft Access also includes the Object Browser, a tool that enables you to view objects in another component's type library, as well as their methods and properties.

The Microsoft Access type library provides information about Microsoft Access objects to other components. You can set a reference to the Microsoft Access type library from a component and view its objects in the Object Browser.

To work with Microsoft Access objects through Automation, you must create an instance of the Microsoft Access Application object. For example, suppose you want to display data from Microsoft Excel in a Microsoft Access form or report. To launch Microsoft Access from Microsoft Excel, you can use the New keyword to create an instance of the Microsoft Access Application object. You can also use the CreateObject function to create a new instance of the Microsoft Access Application object, or you can use the GetObject function to point an object variable to an existing instance of Microsoft Access. Check your component's documentation to determine which syntax it supports.

Once you've launched an instance of Microsoft Access, if you want to control any Microsoft Access objects, you must open a database (.mdb) or project (.adp) in the Microsoft Access window by using either the OpenCurrentDatabase or the NewCurrentDatabase method for a database or by using the OpenAccessProject or the NewAccessProject method for a project.

If you've opened Microsoft Access only as a means of using the Data Access Objects provided by Microsoft DAO, then you don't need to open a database in the Microsoft Access window. You can use the DBEngine property of the Microsoft Access Application object to access objects in the Microsoft DAO 3.6 object library during an Automation operation.


 Using ActiveX Data Objects in Microsoft Access 2000

Using ActiveX Data Objects in Microsoft Access 2000

Microsoft Access 2000 provides three new object models to use in the creation, maintaining and managing of your Access 2000 databases and their related data by using Visual Basic.

Microsoft ActiveX Data Objects (ADO)

ADO contains the objects needed to create, maintain, and delete records in a given datasource.

Microsoft ADO Ext. for DDL and Security (ADOX)

ADOX provides the Data Definition Language(DDL) objects needed to create a new database and its contained objects in addition to the objects needed to manage security.

Microsoft Jet and Replication Objects 2.1 Library (JRO)

Since ADO objects were designed to work with many databases in addition to Microsoft Jet databases, functionality specific to Jet was broken out into the JRO library.

The following table lists the functionality provided by each compared to DAO.

Functionality | DAO | ADO1 | ADOX2 | JRO (MDB's Only)
Create Recordsets | X | X |  |
Edit Startup properties | X | X** |  |
Support ANSI92 SQL*** |  | X | X |
Create Tables | X |  | X |
Create New Database | X |  | X* |
Edit Existing Table properties | X |  | X |
Create table relationships | X |  | X* |
Create New Users/Groups | X |  | X |
Edit security settings | X |  | X* |
Support for new Jet 4.0 Decimal datatype |  |  | X |
Support for Compression attribute for column data |  |  | X |
Edit stored, basic SQL queries or views | X |  | X* |
Create permanent queries that are accessible only through code. |  |  | X* |
Create queries accessible through database container/UI and code. | X |  |  |
Compact/Encrypt database | X |  |  | X4
Refresh Cache | X |  |  | X
Make Database Replicable | X |  |  | X3
Make Database Replicas | X |  |  | X3
Synchronize Replicas | X |  |  | X3
Edit Database properties | X |  |  |
Create custom database properties | X |  |  |
Edit table column properties | X |  |  |

* Only available when working with Microsoft Access databases (.mdb). Future versions of the SQL Provider may provide this functionality in Microsoft Access projects (.adp).

** Only available when working with Access projects.

*** Though Jet does support some ANSI 92 SQL it is not yet fully ANSI92 compliant.

1 Uses Connection object to reference to database

2 Uses Catalog object to reference database

3 Uses Replica object to reference database

4 Uses JetEngine object to reference database

Note Unlike DAO, ADO and ADOX objects can perform the marked actions in databases other then Jet as long as the provider for those databases supports that action.


 DAO Object Library Compatibility

DAO Object Library Compatibility

Microsoft Access 2000 includes DAO objects, methods, and properties that replace those in versions 1.x, 2.0, and 7.0. You'll need to replace the older language elements that Microsoft Access 2000 doesn't support with the ones provided in the DAO 3.6 object library.

You can use the following table to identify the objects, methods, and properties that aren't included in the Microsoft DAO 3.6 object library and the features that replace them. You can use the new items in the second column to modify code written in earlier versions of Microsoft Access.

For examples of how to modify your code, see Examples of Converting DAO Code.

Functionality not present in DAO 3.6 | Recommended DAO 3.6 replacements
FreeLocks | Idle method of the DBEngine object (not needed for Microsoft Access 2000 databases)
SetDefaultWorkspace | DefaultUser/DefaultPassword properties of the DBEngine object
SetDataAccessOption | IniPath property of the DBEngine object
Database.BeginTrans | Workspace.BeginTrans
Database.CommitTrans | Workspace.CommitTrans
Database.CreateDynaset | Database.OpenRecordset of type dbOpenDynaset
Database.CreateSnapshot | Database.OpenRecordset of type dbOpenSnapshot
Database.DeleteQueryDef | Delete method of the QueryDefs collection
Database.ExecuteSQL | Database.Execute method and Database.RecordsAffected property
Database.ListTables | Database.TableDefs collection
Database.OpenQueryDef | Database.QueryDefs collection
Database.OpenTable | Database.OpenRecordset of type dbOpenTable
Database.Rollback | Workspace.Rollback
ListFields method of the Table, Dynaset, and Snapshot objects | Recordset.Fields collection
Table.ListIndexes | TableDef.Indexes collection
QueryDef.CreateDynaset | QueryDef.OpenRecordset
QueryDef.CreateSnapshot | QueryDef.OpenRecordset
QueryDef.ListParameters | QueryDef.Parameters collection
Dynaset object | Dynaset-type Recordset object
Snapshot object | Snapshot-type Recordset object
Table object | Table-type Recordset object
CreateDynaset method of the Dynaset and QueryDef objects | Recordset.OpenRecordset with dbOpenDynaset parameter
CreateSnapshot method of the Dynaset and QueryDef objects | Recordset.OpenRecordset with dbOpenSnapshot parameter


 Use ODBCDirect with Microsoft Access

Use ODBCDirect with Microsoft Access

What Is ODBCDirect?

ODBCDirect is a technology that enables you to work with ODBC database servers without loading the Microsoft Jet database engine. ODBCDirect relies on the Microsoft DAO 3.6 object model, so that you can easily modify your existing DAO code to take advantage of ODBCDirect. Microsoft DAO 3.6 includes new objects, methods, and properties to support ODBCDirect.

Advantages of Accessing ODBC Data with ODBCDirect

ODBCDirect offers the following advantages for ODBC operations:

  • ODBCDirect can make your code faster and more efficient by providing direct access to ODBC data sources. Since it doesn't require loading the Microsoft Jet database engine, ODBCDirect consumes fewer resources on the client side. The ODBC server is responsible for all query processing.

  • ODBCDirect gives you improved access to server-specific features that aren't available by using ODBC through Microsoft Jet. For example, for servers that support cursor specification, ODBCDirect allows you to specify where cursors are located, whether locally or on the server. In addition, to interact with stored procedures at the server level, you can specify input values and check return values, which you can't do when using Microsoft Jet.

  • ODBCDirect also supports asynchronous queries. When you execute a query, you don't have to wait for the query to finish running before you begin another operation. You can track the query's execution by checking the StillExecuting property.

  • ODBCDirect supports batch updating, enabling you to cache Recordset object changes locally and then submit these changes to the server in a single batch.

  • With ODBCDirect, you can create simple cursorless result sets, or more complex cursors. You can also run queries that return any number of result sets. You can limit the number of rows returned and monitor all the messages and errors generated by the remote data source without affecting the performance of the executing query.

Creating an ODBCDirect Workspace

You can create an ODBCDirect workspace by specifying the constant dbUseODBC for the type argument of the CreateWorkspace method. You can also specify that an ODBCDirect workspace be created by default by setting the DefaultType property of the DBEngine object.

Once you've created an ODBCDirect workspace, you can use specific DAO objects, properties, and methods to work with data on the ODBC database server.

Advantages of Accessing ODBC Data with Microsoft Jet

Microsoft Jet and ODBCDirect workspaces provide different but complementary functionality. You should use a Microsoft Jet workspace to access .mdb files and ISAM data formats, such as text and spreadsheets. Microsoft Jet provides unique capabilities that aren't available through ODBCDirect, including the following:

  • Updatable joins. You must use a Microsoft Jet workspace to update data in Recordset objects based on multiple-table joins.

  • Heterogeneous joins. You must use a Microsoft Jet workspace to perform joins of tables in different data sources.

  • Data Definition Language (DDL) operations. You must use a Microsoft Jet workspace to perform DDL operations using DAO. ODBCDirect doesn't provide a TableDef object, so you can't create or modify tables by using DAO. You can, however, perform DDL operations by using ODBCDirect to execute SQL DDL statements.

  • Form and control binding. If your application requires that forms or controls be bound to data in an ODBC data source, you must use Microsoft Jet. Data accessed within an ODBCDirect workspace can't be bound to forms or controls.

If you don't need these capabilities, you can use an ODBCDirect workspace.

Note You can define both Microsoft Jet and ODBCDirect workspaces in your applications and mix them in any fashion. For example, in the same function, you can define a Microsoft Jet workspace to perform DDL operations using DAO and you can also define an ODBCDirect workspace to perform asynchronous queries.


 Use Microsoft Access as a DDE Server

Use Microsoft Access as a DDE Server

Microsoft Access supports dynamic data exchange (DDE) as either a destination (client) application or a source (server) application. For example, an application such as Microsoft Word, acting as a client, can request data through DDE from a Microsoft Access database that's acting as a server.

Tip If you need to manipulate Microsoft Access objects from another application, you may want to consider using Automation.

A DDE conversation between a client and server is established on a particular topic. A topic can be either a data file in the format supported by the server application, or it can be the System topic, which supplies information about the server application itself. Once a conversation has begun on a particular topic, only a data item associated with that topic can be transferred.

For example, suppose you are running Microsoft Word and want to insert data from a particular Microsoft Access database into a document. You begin a DDE conversation with Microsoft Access by opening a DDE channel with the DDEInitiate function and specifying the database file name as the topic. You can then transfer data from that database to Microsoft Word through that channel.

As a DDE server, Microsoft Access supports the following topics:

  • The System topic

  • The name of a database (database topic)

  • The name of a table (tablename topic)

  • The name of a query (queryname topic)

  • A Microsoft Access SQL string (sqlstring topic)

Once you've established a DDE conversation, you can use the DDEExecute statement to send a command from the client to the server application. When used as a DDE server, Microsoft Access recognizes any of the following as a valid command:

  • The name of a macro in the current database.

  • Any action that you can carry out in Visual Basic by using one of the methods of the DoCmd object.

  • The OpenDatabase and CloseDatabase actions, which are used only for DDE operations. (For an example of how to use these actions, see the example later in this topic.)

Note When you specify a macro action as a DDEExecute statement, the action and any arguments follow the DoCmd object syntax and must be enclosed in brackets ([ ]). However, applications that support DDE don't recognize intrinsic constants in DDE operations. Also, string arguments must be enclosed in quotation marks (" ") if the string contains a comma. Otherwise, quotation marks aren't required.

The client application can use the DDERequest function to request text data from the server application over an open DDE channel. Or the client can use the DDEPoke statement to send data to the server application. Once the data transfer is complete, the client can use the DDETerminate statement to close the DDE channel, or the DDETerminateAll statement to close all open channels.

Note When your client application has finished receiving data over a DDE channel, it should close that channel to conserve memory resources.

The following example demonstrates how to create a Microsoft Word procedure with Visual Basic that uses Microsoft Access as a DDE server. (For this example to work, Microsoft Access must be running.)

Sub AccessDDE()
    Dim intChan1 As Integer, intChan2 As Integer
    Dim strQueryData As String

    ' Use System topic to open Northwind sample database.
    ' Database must be open before using other DDE topics.
    intChan1 = DDEInitiate("MSAccess", "System")
    ' You may need to change this path to point to actual location
    ' of Northwind sample database.
    DDEExecute intChan1, "[OpenDatabase C:\Access\Samples\Northwind.mdb]"

    ' Get all data from Ten Most Expensive Products query.
    intChan2 = DDEInitiate("MSAccess", "Northwind.mdb;" _
        & "QUERY Ten Most Expensive Products")
    strQueryData = DDERequest(intChan2, "All")
    DDETerminate intChan2

    ' Close database.
    DDEExecute intChan1, "[CloseDatabase]"
    DDETerminate intChan1

    ' Print retrieved data to Debug Window.
    Debug.Print strQueryData
End Sub

For information on using Microsoft Access as a DDE client, see information in the Microsoft Office 2000/Visual Basic Programmer's Guide. For information about how to obtain the Microsoft Office 2000/Visual Basic Programmer's Guide, click [image] .

The following sections provide information about the valid DDE topics supported by Microsoft Access.

The System Topic

The System topic is a standard topic for all Microsoft Windows-based applications. It supplies information about the other topics supported by the application. To access this information, your code must first call the DDEInitiate function with "System" as the topic argument, and then execute the DDERequest statement with one of the following supplied for the item argument.

Item | Returns
SysItems | A list of items supported by the System topic in Microsoft Access.
Formats | A list of the formats Microsoft Access can copy onto the Clipboard.
Status | "Busy" or "Ready".
Topics | A list of all open databases.

The following example demonstrates the use of the DDEInitiate and DDERequest functions with the System topic:

' In Visual Basic, initiate DDE conversation with Microsoft Access.
Dim intChan1 As Integer, strResults As String
intChan1 = DDEInitiate("MSAccess", "System")
' Request list of topics supported by System topic.
strResults = DDERequest(intChan1, "SysItems")
' Run OpenDatabase action to open Northwind.mdb.
' You may need to change this path to point to actual location
' of Northwind sample database.
DDEExecute intChan1, "[OpenDatabase C:\Access\Samples\Northwind.mdb]"

The database Topic

The database topic is the file name of an existing database. You can type either just the base name (Northwind), or its path and .mdb extension (C:\Access\Samples\Northwind.mdb). After you start a DDE conversation with the database, you can request a list of the objects in that database.

Note You can't use DDE to query the Microsoft Access workgroup information file.

The database topic supports the following items.

Item | Returns
TableList | A list of tables.
QueryList | A list of queries.
FormList | A list of forms.
ReportList | A list of reports.
MacroList | A list of macros.
ModuleList | A list of modules.
ViewList | A list of views
StoredProcedureList | A list of stored procedures
DatabaseDiagramList | A list of database diagrams

The following example shows how you can open the Employees form in the Northwind sample database from a Visual Basic procedure:

' In Visual Basic, initiate DDE conversation with
' Northwind sample database.
' Make sure database is open.
intChan2 = DDEInitiate("MSAccess", "Northwind")
' Request list of forms in Northwind sample database.
strResponse = DDERequest(intChan2, "FormList")
' Run OpenForm action and arguments to open Employees form.
DDEExecute intChan2, "[OpenForm Employees,0,,,1,0]"

The TABLE tablename, QUERY queryname, and SQL sqlstring Topics

These topics use the following syntax:

databasename; TABLE tablename

databasename; QUERY queryname

databasename; SQL [sqlstring]

Part | Description
databasename | The name of the database that the table or query is in or that the SQL statement applies to, followed by a semicolon (;). The database name can be just the base name (Northwind) or its full path and .mdb extension (C:\Access\Samples\Northwind.mdb).
tablename | The name of an existing table.
queryname | The name of an existing query.
sqlstring A valid SQL statement up to 256 characters long, ending with a semicolon. To exchange more than 256 characters, omit this argument and instead use successive DDEPoke statements to build an SQL statement.

For example, the following Visual Basic code uses the DDEPoke statement to build an SQL statement and then request the results of the query.

intChan1 = DDEInitiate("MSAccess", "Northwind;SQL")
DDEPoke intChan1, "SQLText", "SELECT *"
DDEPoke intChan1, "SQLText", " FROM Orders"
DDEPoke intChan1, "SQLText", " WHERE [Freight] > 100;"
strResponse = DDERequest(intChan1, "NextRow")
DDETerminate intChan1

The following table lists the valid items for the TABLE tablename, QUERY queryname, and SQL sqlstring topics.

Item | Returns
All | All the data in the table, including field names.
Data | All rows of data, without field names.
FieldNames | A single-row list of field names.
FieldNames;T | A two-row list of field names (first row) and their data types (second row).
These are the values returned and the data types they represent:
Value | Data type
0 | Invalid
1 | True/False (non-Null)
2 | Unsigned byte
3 | 2-byte signed integer (Integer)
4 | 4-byte signed integer (Long)
5 | 8-byte signed integer (Currency)
6 | 4-byte single-precision floating-point (Single)
7 | 8-byte double-precision floating-point (Double)
8 | Date/Time
9 | Binary data, 256 bytes maximum
10 | ANSI text, not case-sensitive, 256 bytes maximum (Text)
11 | Long binary (OLE Object)
12 | Long text (Memo)
NextRow | The data in the next row in the table or query. When you open a channel, NextRow returns the data in the first row. If the current row is the last record and you run NextRow, the request fails.
PrevRow | The data in the previous row in the table or query. If PrevRow is the first request on a new channel, the data in the last row of the table or query is returned. If the first record is the current row, the request for PrevRow fails.
FirstRow | The data in the first row of the table or query.
LastRow | The data in the last row of the table or query.
FieldCount | The number of fields in the table or query.
SQLText | An SQL statement representing the table or query. For tables, this item returns an SQL statement in the form "SELECT * FROM table;".
SQLText;n An SQL statement, in n-character chunks, representing the table or query, where n is an integer up to 256. For example, suppose a query is represented by the following SQL statement:
"SELECT * FROM Orders;"

The item "SQLText;7" returns the following tab-delimited chunks:

"SELECT "
"* FROM "
"Orders;"

The following example shows how you can use DDE in a Visual Basic procedure to request data from a table in the Northwind sample database and insert that data into a text file:

Sub NorthwindDDE
    Dim intChan1 As Integer, intChan2 As Integer, intChan3 As Integer
    Dim strResp1 As Variant, strResp2 As Variant, strResp3 As Variant

    ' In a Visual Basic module, get data from Categories table,
    ' Catalog query, and Orders table in Northwind.mdb.
    ' Make sure database is open first.
    intChan1 = DDEInitiate("MSAccess", "Northwind;TABLE Shippers")
    intChan2 = DDEInitiate("MSAccess", "Northwind;QUERY Catalog")
    intChan3 = DDEInitiate("MSAccess", "Northwind;SQL SELECT * " _
        & "FROM Orders " _
        & "WHERE OrderID > 10050;")

    strResp1 = DDERequest(intChan1, "All")
    strResp2 = DDERequest(intChan2, "FieldNames;T")
    strResp3 = DDERequest(intChan3, "FieldNames;T")
    DDETerminate intChan1
    DDETerminate intChan2
    DDETerminate intChan3

    ' Insert data into text file.
    Open "C:\DATA.TXT" For Append As #1
    Print #1, strResp1
    Print #1, strResp2
    Print #1, strResp3
    Close #1
End Sub


Microsoft Access Objects

Application object
Forms collection (Form object)
Controls collection (Control object)
Properties collection (Control object)

Properties collection (Form object)
Reports collection (Report object)
Controls collection (Control object)
Properties collection (Control object)

Properties collection (Form object)
Modules collection (Module object)
References collection (Reference object)
DataAccessPages collection (DataAccessPage object)

Legend

yellow box Object and collection
bluebox Object only

right arrow Click red arrow to expand chart
AllForms collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllReports collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllDataAccessPages collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllMacros collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllModules collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AccessObjectProperties collection (AccessObjectProperty object)

AllTables collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllQueries collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllViews collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllStoredProcedures collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllDatabaseDiagrams collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)

AllForms collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllReports collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllDataAccessPages collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllMacros collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllModules collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AccessObjectProperties collection (AccessObjectProperty object)

AllTables collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllQueries collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllViews collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllStoredProcedures collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)
AllDatabaseDiagrams collection (AccessObject object)
AccessObjectProperties collection (AccessObjectProperty object)


Actions Grouped by Task

The following table groups actions into categories based on their use.

Category | Task | Action
Data in forms and reports | Restrict data | ApplyFilter
 | Move through data | FindNext, FindRecord, GoToControl, GoToPage, GoToRecord
Execution | Carry out a command | RunCommand
 | Exit Microsoft Access | Quit
 | Run a macro, procedure, or query | OpenQuery, RunCode, RunMacro, RunSQL
 | Run another application | RunApp
 | Stop execution | CancelEvent, Quit, StopAllMacros, StopMacro
Import/export | Send Microsoft Access objects to other applications | OutputTo, SendObject
 | Transfer data between Microsoft Access and other data formats | TransferDatabase, TransferSpreadsheet, TransferText
Object manipulation | Copy, rename, or save an object | CopyObject, Rename, Save
 | Delete an object | DeleteObject
 | Move or resize a window | Maximize, Minimize, MoveSize, Restore
 | Open or close an object | Close, OpenForm, OpenModule, OpenQuery, OpenReport, OpenTable, OpenDataAccessPage, OpenDiagram, OpenStoredProcedure, OpenView
 | Print an object | OpenForm, OpenQuery, OpenReport, , OpenStoredProcedure, OpenView, PrintOut
 | Select an object | SelectObject
 | Set the value of a field, control, or property | SetValue
 | Update data or the screen | RepaintObject, Requery, ShowAllRecords
Miscellaneous | Create a custom menu bar, a custom shortcut menu, global menu bar, or global shortcut menu | AddMenu
 | Set the state of menu items on a custom menu bar or global menu bar | SetMenuItem
 | Display information on the screen | Echo, Hourglass, MsgBox, SetWarnings
 | Generate keystrokes | SendKeys
 | Display or hide the built-in or custom command bar | ShowToolbar
 | Sound a beep | Beep


 AddMenu Action

AddMenu Action

You can use the AddMenu action to create:

  • A custom menu bar for a form or report. The custom menu bar replaces the built-in menu bar for the form or report.

  • A custom shortcut menu for a form, form control, or report. The custom shortcut menu replaces the built-in shortcut menu for the form, form control, or report.

  • A global menu bar. The global menu bar replaces the built-in menu bar for all Microsoft Access windows, except where you've added a custom menu bar for a form or report.

  • A global shortcut menu. The global shortcut menu replaces the built-in shortcut menu for fields in table and query datasheets, forms in Form view, Datasheet view, and Print Preview, and reports in Print Preview, except where you've added a custom shortcut menu for a form, form control, or report.

Note While you can still create all these types of custom menus by using macros containing AddMenu actions in Microsoft Access 98 (and any existing custom menus you've created by using macros will still work), it's recommended that you create them by using the Customize dialog box, available by pointing to Toolbars on the View menu and clicking Customize. While the Customize dialog box is displayed, you can easily create a new menu or customize a built-in menu.

Setting

The AddMenu action has the following arguments.

Action argument | Description
Menu Name | The name of the drop-down menu to add to the custom menu bar or global menu bar. Enter the menu name in the Menu Name box in the Action Arguments section of the Macro window. This is a required argument for custom menu bars and global menu bars. This argument is ignored for custom shortcut menus and global shortcut menus.
 | To create an access key so that you can use the keyboard to choose the menu, type an ampersand (&) before the letter you want to be the access key. This letter will be underlined in the menu name on the menu bar.
Menu Macro Name | The name of the macro group that contains the macros for the menu's commands. This is a required argument. If you run a macro containing the AddMenu action in a library database, Microsoft Access looks for the macro group with this name in the current database only.
Status Bar Text | The text to display in the status bar when the menu is selected. This argument is ignored for custom shortcut menus and global shortcut menus.

Remarks

To create a custom menu bar, a custom shortcut menu, a global menu bar, or a global shortcut menu by using macros, you must do the following:

  1. Create a menu bar macro that contains an AddMenu action for each drop-down menu you want on the custom menu bar or global menu bar. For custom shortcut menus and global shortcut menus, the menu bar macro should contain just one AddMenu action.

  2. Assign commands to each drop-down menu by creating a macro group for each menu. Each command runs the set of actions defined by a macro in this macro group. For custom shortcut menus and global shortcut menus, create just one macro group in which each macro contains the set of actions for one of the commands in the shortcut menu.

  3. Attach the menu bar macro to the appropriate Microsoft Access object:
    • For custom menu bars, enter the name of the menu bar macro in the MenuBar property for the form or report.

    • For custom shortcut menus, enter the name of the menu bar macro in the ShortcutMenuBar property for the form, form control, or report.

    • For global menu bars, click Startup on the Tools menu, then in the Startup dialog box enter the name of the menu bar macro in the Menu Bar box.

    • For global shortcut menus, click Startup on the Tools menu, then in the Startup dialog box enter the name of the menu bar macro in the Shortcut Menu Bar box.

Each menu on the menu bar requires a separate AddMenu action.

The custom and global menu bars and shortcut menus replace the built-in menu bars and shortcut menus for the objects they're attached to. If you want to retain certain Microsoft Access commands to use on these menus, use the RunCommand action to put the commands into the macro groups for the desired menus.

You can run a macro from a menu command by using the RunMacro action in the macro for the command.

Note AddMenu actions can be used only in a menu bar macro specified by the MenuBar or ShortcutMenuBar property of a form, form control, or report, or by the Menu Bar box or Shortcut Menu Bar box in the Startup dialog box, available by clicking Startup on the Tools menu. Menu bar macros should contain only AddMenu actions.

When you specify a menu bar macro for a form or report or for the database, Microsoft Access runs this menu bar macro whenever the form, report, or database is opened. If you make changes to the menu bar macro or the macro groups that define the commands on the drop-down menus while the form, report, or database is open, you must close the form, report, or database and reopen it to see the changes in the custom menu bar and its menus.

When you are creating the macro groups that contain the commands for a custom menu, the following information applies:

  • In the macro group, the name in the Macro Name column for each macro will be the command name. The text in the Comment column in that row will appear in the status bar when you choose the command.

  • To create a line between two menu commands, type a hyphen (-) in the Macro Name column between the appropriate menu commands.

  • To create an access key so that you can use the keyboard to choose the command, type an ampersand (&) before the letter you want to be the access key in the command name. This letter will be underlined on the menu.

You can create a submenu for a custom menu or a custom shortcut menu by using the AddMenu action in a macro group specified by the Menu Macro Name argument. If you put an AddMenu action in such a macro group, Microsoft Access creates a submenu with the menu name and status bar text specified by the Menu Name and Status Bar Text arguments for this AddMenu action. The submenu contains the commands defined by the macros in the macro group specified by the Menu Macro Name argument for the AddMenu action. The Macro Name and Comment columns of such an AddMenu action (which normally specify the command name and status bar text for a command on the custom menu) are ignored, since this action defines a submenu, not a command on the top-level menu. You can create multiple levels of submenus by using AddMenu actions in the macro groups for each level of menu.

Macro conditions are supported in the top-level menu bar macro only. In other words, you can use a condition in a menu bar macro to determine if a particular menu will be displayed on the custom menu bar or global menu bar, but only for the menus on the top level of the menu bar. You can't use conditions to display or hide commands or submenus on the menus. You can also use a condition to hide or show a custom shortcut menu or global shortcut menu.

To run the AddMenu action in Visual Basic, use the AddMenu method of the DoCmd object. You can also set the MenuBar or ShortcutMenuBar property in Visual Basic to attach a custom menu bar or custom shortcut menu to a form, form control, or report. You can set the StartupMenuBar property (the programmatic equivalent of setting the Menu Bar box) to create a global menu bar. You can also set the MenuBar property of the Application object to create a global menu bar. Similarly, you can set the StartupShortcutMenuBar property (the programmatic equivalent of setting the Shortcut Menu Bar box) or the ShortcutMenuBar property of the Application object to create a global shortcut menu.


 ApplyFilter Action

ApplyFilter Action

You can use the ApplyFilter action to apply a filter, a query, or a SQL WHERE clause to a table, form, or report to restrict or sort the records in the table, or the records from the underlying table or query of the form or report. For reports, you can use this action only in a macro specified by the report's OnOpen event property.

Note You can only use this action to apply a SQL WHERE clause when applying a server filter. A server filter cannot be applied to a stored procedure record source.

Setting

The ApplyFilter action has the following arguments.

Action argument | Description
Filter Name | The name of a filter or query that restricts or sorts the records of the table, form, or report. You can enter the name of either an existing query or a filter that has been saved as a query in the Filter Name box in the Action Arguments section of the Macro window.
 | Note When using this action to apply a server filter, the Filter Name argument must be blank.
Where Condition | A valid SQL WHERE clause (without the word WHERE) or an expression that restricts the records of the table, form or report.
 | Note In a Where Condition argument expression, the left side of the expression typically contains a field name from the underlying table or query for the form or report. The right side of the expression typically contains the criteria you want to apply to this field in order to restrict or sort the records. For example, the criteria can be the name of a control on another form that contains the value you want the records in the first form to match. The name of the control should be fully qualified, for example: Forms!formname!controlname Field names should be surrounded by double quotes and string literals should be surrounded by single quotes.
 | The maximum length of the Where Condition argument is 256 characters. If you need to enter a longer SQL WHERE clause, use the ApplyFilter method of the DoCmd object in Visual Basic. You can enter SQL WHERE clause statements of up to 32,768 characters in Visual Basic.
Filter Type | Specifies whether the search includes formatted data. Click Normal (Microsoft Access searches for the data as it's formatted and displayed in the field) or Server (Microsoft Access searches for the data as it's stored in the database, which isn't always the same as it's displayed). The default is Normal.

Note You can use the Filter Name argument if you've already defined a filter that provides the appropriate data. You can use the Where Condition argument to enter the restriction criteria directly. If you use both arguments, Microsoft Access applies the WHERE clause to the results of the filter. You must use one or both arguments.

Remarks

You can apply a filter or query to a form in Form view or Datasheet view.

The filter and WHERE condition you apply become the setting of the form's or report's Filter or ServerFilter property.

For tables and forms, this action is similar to clicking Apply Filter/Sort or Apply Server Filter on the Records menu or clicking Apply Filter [image] or Apply Server Filter [image] on the toolbar. The menu command or button applies the most recently created filter to the table or form, whereas the ApplyFilter action applies a specified filter or query.

In a Microsoft Access database (.mdb), if you point to Filter on the Records menu and then click Advanced Filter/Sort after running the ApplyFilter action, the Advanced Filter/Sort window shows the filter criteria you've selected with this action.

To remove a filter and display all of the records for a table or form, in an Access database, you can use the ShowAllRecords action, the Remove Filter/Sort command on the Records menu, or Remove Filter [image] on the toolbar. To remove a filter in a Microsoft Access project (.adp), you can return to the Server Filter By Form window and remove all filter criteria and then click Apply Server Filter on the Records menu, or click Apply Server Filter on the toolbar, or set the ServerFilterByForm property to False (0).

When you save a table or form, Microsoft Access saves any filter currently defined in that object, but won't apply the filter automatically the next time the object is opened (although it will automatically apply any sort you applied to the object before it was saved). If you want to apply a filter automatically when a form is first opened, specify a macro containing the ApplyFilter action or an event procedure containing the ApplyFilter method of the DoCmd object as the OnOpen event property setting of the form. You can also apply a filter by using the OpenForm or OpenReport action, or their corresponding methods. To apply a filter automatically when a table is first opened, you can open the table by using a macro containing the OpenTable action, followed immediately by the ApplyFilter action.


 Beep Action

Beep Action

You can use the Beep action to sound a beep tone through the computer's speaker.

Setting

The Beep action doesn't have any arguments.

Remarks

You can use the Beep action to signal the following occurrences:

  • Important screen changes have occurred.

  • The wrong kind of data has been entered in a control. For example, the user has entered numeric data in a text box control.

  • A macro has reached a specified point or has completed its actions.

The frequency and duration of the beep depend on hardware, which may vary between computers.

To run the Beep action in Visual Basic, use the Beep method of the DoCmd object.


 CancelEvent Action

CancelEvent Action

You can use the CancelEvent action to cancel the event that caused Microsoft Access to run the macro containing this action. The macro name is the setting of an event property such as BeforeUpdate, OnOpen, OnUnload, or OnPrint.

Setting

The CancelEvent action doesn't have any arguments.

Remarks

In a form, you typically use the CancelEvent action in a validation macro with the BeforeUpdate event property. When a user enters data in a control or record, Microsoft Access runs the macro before adding the data to the database. If the data fails the validation conditions in the macro, the CancelEvent action cancels the update process before it starts.

Often, you use this action with the MsgBox action to indicate that the data has failed the validation conditions and to provide helpful information about the kind of data that should be entered.

The following events can be canceled by the CancelEvent action.

ApplyFilter | Dirty | MouseDown
BeforeDelConfirm | Exit | NoData
BeforeInsert | Filter | Open
BeforeUpdate | Format | Print
DblClick | KeyPress | Unload
Delete |  |

Note You can use the CancelEvent action with the MouseDown event only to cancel the event that occurs when you right-click an object.

If a control's OnDblClick event property setting specifies a macro containing the CancelEvent action, the action cancels the DblClick event.

For events that can be canceled, the default behavior for the event (that is, what Microsoft Access typically does when the event occurs) occurs after the macro for the event runs. This enables you to cancel the default behavior. For example, when you double-click a word that the insertion point is on in a text box, Microsoft Access normally selects the word. You can cancel this default behavior in the macro for the DblClick event and perform some other action, such as opening a form containing information about the data in the text box. For events that can't be canceled, the default behavior occurs before the macro runs.

Note If a form's OnUnload event property specifies a macro that carries out a CancelEvent action, you won't be able to close the form. You must either correct the condition that caused the CancelEvent action to be carried out or open the macro and delete the CancelEvent action. If the form is a modal form, you won't be able to open the macro.

To carry out the CancelEvent action in Visual Basic, use the CancelEvent method of the DoCmd object.


 Close Action

Close Action

You can use the Close action to close either a specified Microsoft Access window or the active window if none is specified.

Setting

The Close action has the following arguments.

Action argument | Description
Object Type | The type of object whose window you want to close. Click Table, Query, Form, Report, Macro, Module, Data Access Page, Server View, Diagram, or Stored Procedure in the Object Type box in the Action Arguments section of the Macro window. To select the active window, leave this argument blank.
 | Note If closing a module in the Visual Basic Editor, you must use Module in the Object Type argument.
Object Name | The name of the object to be closed. The Object Name box shows all objects in the database of the type selected by the Object Type argument. Click the object to close. If you leave the Object Type argument blank, leave this argument blank also.
Save | Whether to save changes to the object when it's closed. Click Yes (save the object), No (close the object without saving it), or Prompt (prompt the user whether or not to save the object). The default is Prompt.

Remarks

The Close action works on all database objects that the user can explicitly open or close. This action has the same effect as selecting an object and then closing it by clicking Close on the File menu, clicking Close on the Control menu for the object's window, or clicking the Close button {close.gif} for the object.

If the Save argument is set to Prompt and the object hasn't already been saved before the Close action is carried out, a dialog box prompts the user to save the object before the macro closes it. If you've set the Warnings On argument of the SetWarnings action to No, the dialog box isn't displayed and the object is automatically saved.

To run the Close action in Visual Basic, use the Close method of the DoCmd object.


 CopyObject Action

CopyObject Action

You can use the CopyObject action to copy the specified database object to a different Microsoft Access database (.mdb) or to the same database or Microsoft Access project (.adp) under a new name. For example, you can copy or back up an existing object in another database or quickly create a similar object with a few changes.

Setting

The CopyObject action has the following arguments.

Action argument | Description
Destination Database A valid path and file name for the destination database. Enter the path and file name in the Destination Database box in the Action Arguments section of the Macro window. Leave this argument blank if you want to select the current database.

Note This argument is only available in the Microsoft Access database environment (.mdb). When using this action in an Access project environment (.adp), the Destination Database argument must be blank.

If you run a macro containing the CopyObject action in a library database and leave this argument blank, Microsoft Access will copy the object into the library database.
New Name | A new name for the object. When copying to a different database, leave this argument blank to keep the same name.
Source Object Type | The object type you want to copy. Click Table, Query, Form, Report, Macro, Module. Data Access Page, Server View, Diagram, Stored Procedure. To copy the object selected in the Database window, leave this argument blank.
Source Object Name The name of the object to be copied. The Source Object Name box shows all objects in the database of the type selected by the Source Object Type argument. In the Source Object Name box, click the object to copy. If you leave the Source Object Type argument blank, leave this argument blank also.

If you run a macro containing the CopyObject action in a library database, Microsoft Access looks for the object with this name first in the library database, then in the current database.

Remarks

You must enter a value for either one or both of the Destination Database and New Name arguments for this action.

If you leave the Source Object Type and Source Object Name arguments blank, Microsoft Access copies the object selected in the Database window. To select an object in the Database window, you can use the SelectObject action with the In Database Window argument set to Yes.

The CopyObject action is similar to selecting an object in the Database window, clicking Copy on the Edit menu, and then clicking Paste on the Edit menu. The Paste As dialog box appears so you can give the object a new name. The CopyObject action performs all of these steps automatically.

Note When copying data access pages, the CopyObject action only copies the link to the associated .htm and not the actual .htm file.

You can also copy an object selected in the Database window, or an open object in the Table window, Query window, Form window, Report window, Macro window, or Module window by clicking Save As/Export on the File menu. The Save As dialog box gives you the option of saving a copy of the object in the current database with a new name, or saving the object in another database. If this object has already been saved and you save it in the current database with a new name, the original version still exists with its old name.

The path and file name of the destination database must exist before the macro runs the CopyObject action. If they don't exist, Microsoft Access displays an error message.

To run the CopyObject action in Visual Basic, use the CopyObject method of the DoCmd object.


 DeleteObject Action

DeleteObject Action

You can use the DeleteObject action to delete a specified database object.

Setting

The DeleteObject action has the following arguments.

Action argument | Description
Object Type | The type of object to delete. Click Table, Query, Form, Report, Macro, Module, Data Access Page, Server View, or Diagram, Stored Procedure in the Object Type box in the Action Arguments section of the Macro window. To delete the object selected in the Database window, leave this argument blank.
Object Name | The name of the object to delete. The Object Name box shows all objects in the database of the type selected by the Object Type argument. If you leave the Object Type argument blank, leave this argument blank also.
 | If you run a macro containing the DeleteObject action in a library database, Microsoft Access looks for the object with this name first in the library database, then in the current database.

Warning If you leave the Object Type and Object Name arguments blank, Microsoft Access deletes the object selected in the Database window without displaying a warning message when it encounters the DeleteObject action. To select an object in the Database window, you can use the SelectObject action with the In Database Window argument set to Yes.

Remarks

You can use the DeleteObject action to delete temporary objects you've created while running the macro. For example, you could use the OpenQuery action to run a make-table query that creates a temporary table. When you're finished using the temporary table, you can use the DeleteObject action to delete it.

This action has the same effect as selecting an object in the Database window and then pressing the DEL key or clicking Delete on the Edit menu.

To run the DeleteObject action in Visual Basic, you can use the DeleteObject method of the DoCmd object.


 Echo Action

Echo Action

You can use the Echo action to specify whether echo is turned on. For example, you can use this action to hide or show the results of a macro while it runs.

Setting

The Echo action has the following arguments.

Action argument | Description
Echo On | Click Yes (turn echo on) or No (turn echo off) in the Echo On box in the Action Arguments section of the Macro window. The default is Yes.
Status Bar Text | The text to display in the status bar when echo is turned off. For example, when echo is turned off, the status bar can display "The macro is running."

Remarks

When Microsoft Access runs a macro, screen updating often shows information not essential to the functioning of the macro. When you set the Echo On argument to No, the macro runs without updating the screen. When the macro finishes, Microsoft Access automatically turns echo back on and repaints the window. The No setting for the Echo On argument doesn't affect the macro or its results.

The Echo action doesn't suppress the display of modal dialog boxes, such as error messages, or pop-up forms, such as property sheets. You can use these to gather or display information when echo is turned off. Use the SetWarnings action to turn off all message or dialog boxes except error message boxes and dialog boxes that require the user to enter information.

You can run the Echo action more than once in a macro. This allows you to change the status bar text while the macro runs.

If you turn echo off, you can use the Hourglass action to change the mouse pointer into an hourglass icon (or whatever mouse pointer icon you've set for "Busy" in Microsoft Windows 98 or "Wait" in Windows NT) to provide a visual indication that the macro is running.

To run the Echo action in Visual Basic, use the Echo method of the DoCmd object.


 FindNext Action

FindNext Action

You can use the FindNext action to find the next record that meets the criteria specified by the previous FindRecord action or the Find In Field dialog box, available by clicking Find on the Edit menu. You can use the FindNext action to search repeatedly for records. For example, you can move successively through all the records for a specific customer.

Setting

The FindNext action doesn't have any arguments. The FindNext action finds the next record that meets the criteria set either by the FindRecord action or in the Find In Field dialog box. The arguments for the FindRecord action are shared with the options in the Find In Field dialog box.

To set the search criteria, use the FindRecord action. Typically, you enter a FindRecord action in a macro and then use the FindNext action to find succeeding records that meet the same criteria. To search for records only when a certain condition is met, you can enter a conditional expression in the Condition column of the action row for the FindNext action.

Remarks

This action has the same effect as using the Find Next button in the Find In Field dialog box.

Note While the FindRecord action corresponds to the Find command on the Edit menu for tables, queries, and forms, it doesn't correspond to the Find command on the Edit menu in the Module window. You can't use the FindRecord action or FindNext action to search for text in modules.

Tip If you've set the Only Current Field argument of the FindRecord action to Yes, you may need to use the GoToControl action to move the focus to the control containing the data you're searching for before you use the FindNext action.

If the currently selected text is the same as the search text at the time the FindNext macro action is carried out, the search begins immediately following the selection in the same field as the selection, and in the same record. Otherwise the search begins at the start of the current record. This enables you to find multiple instances of the same search criteria that might appear in a single record.

However, note that if you use a command button to run a macro containing the FindNext action, the first instance of the search criteria will be found repeatedly. This is because clicking the command button changes the focus from the field containing the matching value. The FindNext action will then begin searching from the start of the record. The first instance of the search criteria will be found repeatedly in the same record. To avoid this problem, run the macro by using a technique that doesn't change the focus, such as a custom toolbar button or a key combination defined in an AutoKeys macro, or in the macro set the focus to the field containing the search criteria before you carry out the FindNext action.

The same behavior also occurs if you use a command button to run a macro containing the FindRecord action with the Find First argument set to No.

To run the FindNext action in Visual Basic, use the FindNext method of the DoCmd object.


 FindRecord Action

FindRecord Action

You can use the FindRecord action to find the first instance of data that meets the criteria specified by the FindRecord arguments. This can be in the current record, in a succeeding or prior record, or in the first record. You can find records in the active table datasheet, query datasheet, form datasheet, or form.

Setting

The FindRecord action has the following arguments.

Action argument | Description
Find What | Specifies the data you want to find in the record. Enter the text, number, or date you want to find or type an expression, which is preceded by an equal sign (=), in the Find What box in the Action Arguments section of the Macro window. You can use wildcard characters. This is a required argument.
Match | Specifies where the data is located in the field. You can specify a search for data in any part of the field (Any Part Of Field), for data that fills the entire field (Whole Field), or for data located at the beginning of the field (Start Of Field). The default is Whole Field.
Match Case | Specifies whether the search is case-sensitive (uppercase and lowercase letters must match exactly). Click Yes (conduct a case-sensitive search) or No (search without matching uppercase and lowercase letters exactly). The default is No.
Search | Specifies whether the search proceeds from the current record up to the beginning of the records (Up); down to the end of the records (Down); or down to the end of the records and then from the beginning of the records to the current record, so all records are searched (All). The default is All.
Search As Formatted Specifies whether the search includes formatted data. Click Yes (Microsoft Access searches for the data as it's formatted and displayed in the field) or No (Microsoft Access searches for the data as it's stored in the database, which isn't always the same as it's displayed). The default is No.

You can use this feature to restrict the search to data in a particular format. For example, click Yes and enter 1,234 in the Find What argument to find a value of 1,234 in a field formatted to include commas. Click No if you want to enter 1234 to search for the data in this field.

To search for dates, click Yes to find a date exactly as it's formatted, such as 03-March-1991. If you click No, enter the date in the Find What argument in the format set in the Regional Settings Properties dialog box in Windows Control Panel. (This is the Short Date Style box found on the Date tab of the Regional Settings Properties dialog box.) For example, if the Short Date Style box is set to M/d/yy, you can enter 3/9/91, and Microsoft Access will find all entries in a Date field that correspond to March 9, 1991, regardless of how this field is formatted.

Note This argument takes effect only if the current field is a bound control, the Match argument is set to Whole Field, the Only Current Field argument is set to Yes, and the Match Case argument is set to No.

If you set Match Case to Yes or Only Current Field to No, you must also set Search As Formatted to Yes.
Only Current Field | Specifies whether the search is confined to the current field in each record or includes all fields in each record. The current field search is faster. Click Yes (confine the search to the current field) or No (search in all fields in each record). The default is Yes.
Find First | Specifies whether the search starts at the first record or at the current record. Click Yes (start at the first record) or No (start at the current record). The default is Yes.

Remarks

When a macro runs the FindRecord action, Microsoft Access searches for the specified data in the records (the order of the search is determined by the setting of the Search argument). When Microsoft Access finds the specified data, the data is selected in the record.

The FindRecord action is equivalent to clicking Find on the Edit menu, and its arguments are the same as the options in the Find In Field dialog box, available by clicking Find on the Edit menu. If you set the FindRecord arguments in the Macro window and then run the macro, you'll see the corresponding options selected in the Find In Field dialog box when you click Find.

Microsoft Access retains the most recent FindRecord arguments during a database session so that you don't need to enter the same criteria repeatedly as you perform subsequent FindRecord operations. If you leave an argument blank, Microsoft Access uses the most recent setting for the argument, as set either by a previous FindRecord action or in the Find In Field dialog box.

When you want to find a record by using a macro, use the FindRecord action, not the RunCommand action with its argument set to run the Find command.

Note While the FindRecord action corresponds to Find on the Edit menu for tables, queries, and forms, it doesn't correspond to Find on the Edit menu in the Module window. You can't use the FindRecord action to search for text in modules.

If the currently selected text is the same as the search text at the time the FindRecord macro action is carried out, the search begins immediately following the selection in the same field as the selection, and in the same record. Otherwise the search begins at the start of the current record. This enables you to find multiple instances of the same search criteria that might appear in a single record.

However, note that if you use a command button to run a macro containing the FindRecord action, the first instance of the search criteria will be found repeatedly. This is because clicking the command button changes the focus from the field containing the matching value. The FindRecord action will then begin searching from the start of the record. The first instance of the search criteria will be found repeatedly in the same record. To avoid this problem, run the macro by using a technique that doesn't change the focus, such as a custom toolbar button or a key combination defined in an AutoKeys macro, or in the macro set the focus to the field containing the search criteria before you carry out the FindRecord action.

The same behavior also occurs if you use a command button to run a macro containing the FindNext action.

To run the FindRecord action in Visual Basic, use the FindRecord method of the DoCmd object.


 GoToControl Action

GoToControl Action

You can use the GoToControl action to move the focus to the specified field or control in the current record of the open form, form datasheet, table datasheet, or query datasheet. You can use this action when you want a particular field or control to have the focus. This field or control can then be used for comparisons or FindRecord actions. You can also use this action to navigate in a form according to certain conditions. For example, if the user enters No in a Married control on a health insurance form, the focus can automatically skip the Spouse Name control and move to the next control.

Note This action is not available for use with data access pages.

Setting

The GoToControl action has the following argument.

Action argument | Description
Control Name | The name of the field or control where you want the focus. Enter the field or control name in the Control Name box in the Action Arguments section of the Macro window. This is a required argument. Note Enter only the name of the field or control in the Control Name argument, not the fully qualified identifier, such as Forms!Products![Product ID].

Remarks

You can't use the GoToControl action to move the focus to a control on a hidden form.

Tip You can use the GoToControl action to move to a subform, which is a type of control. You can then use the GoToRecord action to move to a particular record in the subform. You can also move to a control on a subform by using the GoToControl action to move first to the subform and then to the control on the subform.

To run the GoToControl action in Visual Basic, use the GoToControl method of the DoCmd object. You can also use the SetFocus method to move the focus to a control on a form or any of its subforms, or to a field in an open table, query, or form datasheet.


 GoToPage Action

GoToPage Action

You can use the GoToPage action to move the focus in the active form to the first control on a specified page. You can use this action if you've created a form with page breaks that contains groups of related information. For example, you might have an Employees form with personal information on one page, office information on another page, and sales information on a third page. You can use the GoToPage action to move to the desired page. You can also present multiple pages of information on a single form by using tab controls.

Setting

The GoToPage action has the following arguments.

Action argument | Description
Page Number | The number of the page to which you want to move the focus. Enter the page number in the Page Number box in the Action Arguments section of the Macro window. If you leave this argument blank, the focus stays on the current page. You can use the Right and Down arguments to display the part of the page you want to see.
Right | The horizontal position of the spot on the page, measured from the left edge of its containing window, that's to appear at the left edge of the window. This is required if you specify a Down argument.
Down | The vertical position of the spot on the page, measured from the top edge of its containing window, that's to appear at the top edge of the window. This is required if you specify a Right argument.

Note The Right and Down arguments are in inches or centimeters, depending on the units set for Measurement System on the Number tab of the Regional Settings Properties dialog box in Windows Control Panel.

Remarks

You can use this action to select the first control (as defined by the form's tab order) on the specified page. Use the GoToControl action to move to a particular control on the form.

You can use the Right and Down arguments for forms with pages larger than the Microsoft Access window. Use the Page Number argument to move to the desired page, and then use the Right and Down arguments to display the part of the page you want to see. Microsoft Access displays the part of the page whose upper-left corner is offset the specified distance from the upper-left corner of the page.

You can't use the GoToPage action in the following cases:

  • To move the focus to a page on a hidden form.

  • To move the focus from one page to another within the Tab control.

To run the GoToPage action in Visual Basic, use the GoToPage method of the DoCmd object.


 GoToRecord Action

GoToRecord Action

You can use the GoToRecord action to make the specified record the current record in an open table, form, or query result set.

Setting

The GoToRecord action has the following arguments.

Action argument | Description
Object Type | The type of object that contains the record you want to make current. Click Table, Query, Form, Server View, or Stored Procedure in the Object Type box in the Action Arguments section of the Macro window. Leave this argument blank to select the active object.
Object Name | The name of the object that contains the record you want to make the current record. The Object Name box shows all objects in the current database of the type selected by the Object Type argument. If you leave the Object Type argument blank, leave this argument blank also.
Record | The record to make the current record. Click Previous, Next, First, Last, Go To, or New in the Record box. The default is Next.
Offset An integer or expression that evaluates to an integer. An expression must be preceded by an equal sign (=). This argument specifies the record to make the current record. You can use the Offset argument in two ways:
  • When the Record argument is Next or Previous, Microsoft Access moves the number of records forward or backward specified in the Offset argument.

  • When the Record argument is Go To, Microsoft Access moves to the record with the number equal to the Offset argument. The record number is shown in the record number box at the bottom of the window.

Note If you use the First, Last, or New setting for the Record argument, Microsoft Access ignores the Offset argument. If you enter an Offset argument that's too large, Microsoft Access displays an error message. You can't enter negative numbers for the Offset argument.

Remarks

If the focus is in a particular control in a record, this action leaves it in the same control for the new record.

You can use the New setting for the Record argument to move to the blank record at the end of a form or table so you can enter new data.

This action is similar to clicking Go To on the Edit menu. The First, Last, Next, Previous, and New Record subcommands of the Go To command have the same effect on the selected object as the First, Last, Next, Previous, and New settings for the Record argument. You can also move to records by using the navigation buttons at the bottom of the window.

You can use the GoToRecord action to make a record on a hidden form the current record if you specify the hidden form in the Object Type and Object Name arguments.

To run the GoToRecord action in Visual Basic, use the GoToRecord method of the DoCmd object.


 Hourglass Action

Hourglass Action

You can use the Hourglass action to change the mouse pointer to an image of an hourglass (or another icon you've chosen) while a macro is running. This action can provide a visual indication that the macro is running. This is especially useful when a macro action or the macro itself takes a long time to run.

Setting

The Hourglass action has the following argument.

Action argument | Description
Hourglass On | Click Yes (display the icon) or No (display the normal mouse pointer) in the Hourglass On box in the Action Arguments section of the Macro window. The default is Yes.

Remarks

You often use this action if you've turned echo off by using the Echo action. When echo is off, Microsoft Access suspends screen updates until the macro is finished.

Microsoft Access automatically resets the Hourglass On argument to No when the macro finishes running.

Notes

  • In Microsoft Windows 95, the icon shown by this action is the icon you set for Busy in the Pointers tab of the Mouse Properties dialog box of Windows Control Panel (the default is an animated hourglass icon).

  • In Windows NT, this is the icon you set for Wait in the Cursors dialog box of Windows Control Panel (the default is also an hourglass icon).

  • In either case, you can choose another icon if you want.

To run the Hourglass action in Visual Basic, use the Hourglass method of the DoCmd object.


 Maximize Action

Maximize Action

You can use the Maximize action to enlarge the active window so that it fills the Microsoft Access window. This action will allow you to see as much of the object in the active window as possible.

Note This action cannot be applied to module windows in the Visual Basic Editor (VBE). For information about how to affect module windows see the WindowState property topic.

Setting

The Maximize action doesn't have any arguments.

Remarks

This action has the same effect as clicking the Maximize button in the window's upper-right corner or clicking Maximize on the Control menu.

You can use the Restore action to restore a maximized window to its previous size.

Tips

  • You may need to use the SelectObject action if the window you want to maximize isn't the active window.

  • When you maximize a window in Microsoft Access, all other windows are also maximized when you open them or switch to them. However, pop-up forms aren't maximized. If you want a form to maintain its size when other windows are maximized, set its PopUp property to Yes.

To run the Maximize action in Visual Basic, use the Maximize method of the DoCmd object.


 Minimize Action

Minimize Action

You can use the Minimize action to reduce the active window to a small title bar at the bottom of the Microsoft Access window.

Note This action cannot be applied to module windows in the Visual Basic Editor (VBE). For information about how to affect module windows see the WindowState property topic.

Setting

The Minimize action doesn't have any arguments.

Remarks

You can use this action to remove a window from the screen while leaving the object open. You can also use this action to open an object without displaying its window. To display the object, use the SelectObject action with either the Maximize or Restore action. The Restore action restores a minimized window to its previous size.

The Minimize action has the same effect as clicking the Minimize button in the window's upper-right corner or clicking Minimize on the Control menu.

Tips

  • You may first need to use the SelectObject action if the window you want to minimize isn't the active window.

  • To minimize the Database window, use the SelectObject action with the In Database Window argument set to Yes and then use the Minimize action.

  • You can use the Hide command on the Window menu to hide the active window. Instead of being reduced to an icon, the window becomes invisible. The Unhide command on the Window menu will make the window reappear. You can use the RunCommand action to carry out either of these commands from a macro.

  • You can also use the SetValue action to set a form's Visible property to hide or show the form's window.

To run the Minimize action in Visual Basic, use the Minimize method of the DoCmd object.


 MoveSize Action

MoveSize Action

You can use the MoveSize action to move or resize the active window.

Setting

The MoveSize action has the following arguments.

Action argument | Description
Right | The new horizontal position of the window's upper-left corner, measured from the left edge of its containing window. Enter the position in the Right box in the Action Arguments section of the Macro window.
Down | The new vertical position of the window's upper-left corner, measured from the top edge of its containing window.
Width | The window's new width.
Height | The window's new height.

If you leave an argument blank, Microsoft Access uses the window's current setting.

You must enter a value for at least one argument.

Note Each measurement is in inches or centimeters, depending on the units set for Measurement System on the Number tab of the Regional Settings Properties dialog box in Windows Control Panel.

Remarks

This action is similar to clicking Move or Size on the window's Control menu. With the menu commands, you use the keyboard's arrow keys to move or resize the window. With the MoveSize action, you enter the position and size measurements directly. You can also use the mouse to move and size windows.

You can use this action on any window, in any view.

Tips

  • To move a window without resizing it, enter values for the Right and Down arguments but leave the Width and Height arguments blank.

  • To resize a window without moving it, enter values for the Width and Height arguments but leave the Right and Down arguments blank.

To run the MoveSize action in Visual Basic, use the MoveSize method of the DoCmd object.


 MsgBox Action

MsgBox Action

You can use the MsgBox action to display a message box containing a warning or an informational message. For example, you can use the MsgBox action with validation macros. When a control or record fails a validation condition in the macro, a message box can display an error message and provide instructions about the kind of data that should be entered.

Setting

The MsgBox action has the following arguments.

Action argument | Description
Message | The text in the message box. Enter the message text in the Message box in the Action Arguments section of the Macro window. You can type up to 255 characters or enter an expression (preceded by an equal sign).
Beep | Specifies whether your computer's speaker sounds a beep tone once when the message displays. Click Yes (sound the beep tone) or No (don't sound the beep tone). The default is Yes.
Type | The type of message box. Each type has a different icon. Click None, Critical, Warning?, Warning!, or Information. The default is None.
Title | The text displayed in the message box title bar. For example, you can have the title bar display "Customer ID Validation". If you leave this argument blank, "Microsoft Access" is displayed.

Remarks

You can use the MsgBox action to create a formatted error message similar to built-in error messages displayed by Microsoft Access. The MsgBox action permits you to supply a message in three sections for the Message argument. You separate the sections with the "@" character.

The following example displays a formatted message box with a sectioned message. The first section of text in the message is displayed as a bold heading. The second section is displayed as plain text beneath that heading. The third section is displayed as plain text beneath the second section, with a blank line between them.

Enter the following in the Message argument:

Wrong button!@This button doesn't work.@Try another.

Note If the Office Assistant is visible, the message is displayed in the Assistant's balloon instead of in a separate message box.

You can't run the MsgBox action in Visual Basic. Use the MsgBox function instead.


 OpenDiagram Action

OpenDiagram Action

You can use the OpenDiagram action to open a database diagram in Design view.

Setting

The OpenDiagram has the following arguments.

Action argument | Description
Diagram Name | The name of the database diagram to open. The Diagram Name box in the Action Arguments section of the Macro window shows all database diagrams in the current database. This is a required argument. If you run a macro containing the OpenDiagram action in a library database, Microsoft Access looks for the diagram with this name first in the library database, then in the current database.

Remarks

This action is similar to clicking the Design button in the Database window after selecting a database diagram on the Database Diagrams tab.

Tip You can select a database diagram in the Database window and drag it to a macro action row. This automatically creates an OpenDiagram action that opens the database diagram in Design view.

To run the OpenDiagram action in Visual Basic, use the OpenDiagram method of the DoCmd object.


 OpenForm Action

OpenForm Action

You can use the OpenForm action to open a form in Form view, form Design view, Print Preview, or Datasheet view. You can select data entry and window modes for the form and restrict the records that the form displays.

Setting

The OpenForm action has the following arguments.

Action argument | Description
Form Name The name of the form to open. The Form Name box in the Action Arguments section of the Macro window shows all forms in the current database. This is a required argument.

If you run a macro containing the OpenForm action in a library database, Microsoft Access looks for the form with this name first in the library database, then in the current database.
View | The view in which the form will open. Click Form, Design, Print Preview, or Datasheet in the View box. The default is Form.
Note The View argument setting overrides the settings of the form's DefaultView and ViewsAllowed properties. For example, if a form's ViewsAllowed property is set to Datasheet, you can still use the OpenForm action to open the form in Form view.
Filter Name | A filter that restricts or sorts the form's records. You can enter the name of either an existing query or a filter that was saved as a query. However, the query must include all the fields in the form you are opening or have its OutputAllFields property set to Yes.
Where Condition A valid SQL WHERE clause (without the word WHERE) or expression that Microsoft Access uses to select records from the form's underlying table or query. If you select a filter with the Filter Name argument, Microsoft Access applies this WHERE clause to the results of the filter.

To open a form and restrict its records to those specified by the value of a control on another form, use the following expression:

[fieldname] = Forms![formname]![controlname on other form]

The fieldname argument is the name of a field in the underlying table or query of the form you want to open. The controlname on other form argument is the name of the control on the other form that contains the value you want records in the first form to match.
Note The maximum length of the Where Condition argument is 256 characters. If you need to enter a more complex SQL WHERE clause longer than this, use the OpenForm method of the DoCmd object in Visual Basic instead. You can enter SQL WHERE clause statements of up to 32,768 characters in Visual Basic.
Data Mode | The data entry mode for the form. This applies only to forms opened in Form view or Datasheet view. Click Add (the user can add new records but can't edit existing records), Edit (the user can edit existing records and add new records), or Read Only (the user can only view records). The default is Edit.
Notes
  • The Data Mode argument setting overrides the settings of the form's AllowEdits, AllowDeletions, AllowAdditions, and DataEntry properties. For example, if a form's AllowEdits property is set to No, you can still use the OpenForm action to open the form in Edit mode.

  • If you leave this argument blank, Microsoft Access opens the form in the data entry mode set by the form's AllowEdits, AllowDeletions, AllowAdditions, and DataEntry properties.
Window Mode | The window mode in which the form opens. Click Normal so the form is in the mode set by its properties, Hidden (the form is hidden), Icon (the form opens minimized as a small title bar at the bottom of the screen), or Dialog (the form's Modal and PopUp properties are set to Yes). The default is Normal.

Remarks

This action is similar to clicking the Open button or Design button in the Database window after selecting a form on the Forms tab.

A form can be modal (it must be closed or hidden before the user can perform any other action) or modeless (the user can move to other windows while the form is open). It can also be a pop-up form (a form used to collect or display information that remains on top of all other Microsoft Access windows). You set the Modal and PopUp properties when you design the form. If you use Normal for the Window Mode argument, the form opens in the mode specified by these property settings. If you use Dialog for the Window Mode argument, these properties are both set to Yes. A form opened as hidden or as an icon returns to the mode specified by its property settings when you show or restore it.

When you open a form with the Window Mode argument set to Dialog, Microsoft Access suspends the macro until the form is closed or hidden. You can hide a form by setting its Visible property to No by using the SetValue action.

Tip You can select a form in the Database window and drag it to a macro action row. This automatically creates an OpenForm action that opens the form in Form view.

Switching to Design view while the form is open removes most of the argument settings for the form, such as the Data Mode and Window Mode argument settings. They aren't in effect even if the user returns to Form view or Datasheet view.

The filter and WHERE condition you apply become the setting of the form's Filter property.


 OpenModule Action

OpenModule Action

You can use the OpenModule action to open a specified Visual Basic module at a specified procedure. This can be a Sub procedure, a Function procedure, or an event procedure.

Setting

The OpenModule action has the following arguments.

Action argument | Description
Module Name | The name of the module you want to open. You can leave this argument blank if you want to search all the standard modules in the database for a procedure, and open the appropriate module at that procedure.
 | If you run a macro containing the OpenModule action in a library database, Microsoft Access looks for the module with this name first in the library database, then in the current database.
Procedure Name | The name of the procedure you want to open the module to. If you leave this argument blank, the module opens to the Declarations section.

Note You must enter a valid name in either the Module Name or Procedure Name argument.

Remarks

You can use this action to open an event procedure by specifying the Module Name argument and the Procedure Name argument. For example, to open the Click event procedure of the PrintInvoice button on the form Orders, set the Module Name argument to Form.Orders and set the Procedure Name argument to PrintInvoice_Click. To view the event procedure for a form or report, the form or report must be open.

Similarly, to open a procedure in a class module, you must specify the module name, although the class module doesn't have to open.

To open a private procedure, the module containing it must be open.

This action has the same effect as selecting a module in the Database window, and then pressing the Design button. This action also enables you to specify a procedure name and to search the standard modules in a database for procedures.

Tip You can select a module in the Database window and drag it to a macro action row. This automatically creates an OpenModule action that opens the module to the Declarations section.

To run the OpenModule action in Visual Basic, use the OpenModule method of the DoCmd object.


 OpenQuery Action

OpenQuery Action

You can use the OpenQuery action to open a select or crosstab query in Datasheet view, Design view, or Print Preview. This action runs an action query. You can also select a data entry mode for the query.

Note This action is only available in the Microsoft Access database environment (.mdb). See the OpenView or OpenStoredProcedure actions if using the Access Project environment (.adp).

Setting

The OpenQuery action has the following arguments.

Action argument | Description
Query Name | The name of the query to open. The Query Name box in the Action Arguments section of the Macro window shows all queries in the current database. This is a required argument. If you run a macro containing the OpenQuery action in a library database, Microsoft Access looks for the query with this name first in the library database, then in the current database.
View | The view in which the query will open. Click Datasheet, Design, or Print Preview in the View box. The default is Datasheet.
Data Mode | The data entry mode for the query. This applies only to queries opened in Datasheet view. Click Add (the user can add new records but can't edit existing records), Edit (the user can edit existing records and add new records), or Read Only (the user can only view records). The default is Edit.

Remarks

If you use Datasheet for the View argument, Microsoft Access displays the result set if the query is a select, crosstab, union, or pass-through query whose ReturnsRecords property is set to Yes; and it runs the query if it were an action, data-definition, or pass-through query whose ReturnsRecords property is set to No.

The OpenQuery action is similar to clicking the Open button or Design button in the Database window after selecting a query in the Queries tab. With this action you can select additional options.

Tip You can select a query in the Database window and drag it to a macro action row. This automatically creates an OpenQuery action that opens the query in Datasheet view.

Switching to Design view while the query is open removes the Data Mode argument setting for the query. This setting isn't in effect even if the user returns to Datasheet view.

Tip If you don't want to display the system messages that normally appear when an action query is run (indicating it's an action query and showing how many records will be affected), you can use the SetWarnings action to suppress the display of these messages.

To run the OpenQuery action in Visual Basic, use the OpenQuery method of the DoCmd object.


 OpenReport Action

OpenReport Action

You can use the OpenReport action to open a report in Design view or Print Preview, or to print the report immediately. You can also restrict the records that are printed in the report.

Setting

The OpenReport action has the following arguments.

Action argument | Description
Report Name The name of the report to open. The Report Name box in the Action Arguments section of the Macro window shows all reports in the current database. This is a required argument.

If you run a macro containing the OpenReport action in a library database, Microsoft Access looks for the report with this name first in the library database, then in the current database.
View | The view in which the report will open. Click Print (print the report immediately), Design, or Print Preview in the View box. The default is Print.
Filter Name | A filter that restricts the report's records. You can enter the name of either an existing query or a filter that was saved as a query. However, the query must include all the fields in the report you are opening or have its OutputAllFields property set to Yes.
Where Condition A valid SQL WHERE clause (without the word WHERE) or expression that Microsoft Access uses to select records from the report's underlying table or query. If you select a filter with the Filter Name argument, Microsoft Access applies this WHERE clause to the results of the filter.

To open a report and restrict its records to those specified by the value of a control on a form, use the following expression:

[fieldname] = Forms![formname]![controlname on form]

The fieldname argument is the name of a field in the underlying table or query of the report you want to open. The controlname on form argument is the name of the control on the form that contains the value you want records in the report to match.
Note The maximum length of the Where condition argument is 256 characters. If you need to enter a more complex SQL WHERE clause longer than this, use the OpenReport method of the DoCmd object in Visual Basic instead. You can enter SQL WHERE clause statements of up to 32,768 characters in Visual Basic.

Remarks

The Print setting for the View argument prints the report immediately by using the current printer settings, without bringing up the Print dialog box. You can also use the OpenReport action to open and set up a report and then use the PrintOut action to print it. For example, you may want to modify the report or use the PrintOut action to change the printer settings before you print.

The filter and WHERE condition you apply become the setting of the report's Filter property.

The OpenReport action is similar to clicking the Design button, the Preview button, or the Print command on the File menu in the Database window after selecting a report.

Tips

  • To print similar reports for different sets of data, use a filter or a WHERE clause to restrict the records printed in the report. Then edit the macro to apply a different filter or change the Where Condition argument.

  • You can select a report in the Database window and drag it to a macro action row. This automatically creates an OpenReport action that opens the report in Print Preview.


 OpenStoredProcedure Action

OpenStoredProcedure Action

You can use the OpenStoredProcedure action to open a stored procedure in Datasheet view, stored procedure Design view, or Print Preview. This action runs the named stored procedure when opened in Datasheet view.You can select data entry for the stored procedure and restrict the records that the stored procedure displays.

Setting

The OpenStoredProcedure action has the following arguments.

Action argument | Description
Procedure Name | The name of the stored procedure to open. The Procedure Name box box in the Action Arguments section of the Macro window shows all stored procedure in the current database. This is a required argument. If you run a macro containing the OpenStoredProcedure action in a library database, Microsoft Access looks for the stored procedure with this name first in the library database, then in the current database.
View | The view in which the stored procedure will open. Click Datasheet, Design, or Print Preview in the View box. The default is Datasheet.
Data Mode | The data entry mode for the stored procedure. This applies only to stored procedures opened in Datasheet view. Click Add (the user can add new records but can't view or edit existing records), Edit (the user can view or edit existing records and add new records), or Read Only (the user can only view records). The default is Edit.

Remarks

This action is similar to clicking the Run button or Design button in the Database window after selecting a data access page on the Stored Procedures tab.

Switching to Design view while the stored procedure is open removes the Data Mode argument setting for the stored procedure. This setting isn't in effect even if the user returns to Datasheet view.

Tips You can select a stored procedure in the Database window and drag it to a macro action row. This automatically creates an OpenStoredProcedure action that opens the stored procedure page in Datasheet view.

If you don't want to display the system messages that normally appear when a stored procedure is run (indicating it's a stored procedure and showing how many records will be affected), you can use the SetWarning action to suppress the display of these messages.

To run the OpenStoredProcedure action in Visual Basic, use the OpenView method of the DoCmd object.


 OpenTable Action

OpenTable Action

You can use the OpenTable action to open a table in Datasheet view, Design view, or Print Preview. You can also select a data entry mode for the table.

Setting

The OpenTable action has the following arguments.

Action argument | Description
Table Name | The name of the table to open. The Table Name box in the Action Arguments section of the Macro window shows all tables in the current database. This is a required argument.
 | If you run a macro containing the OpenTable action in a library database, Microsoft Access looks for the table with this name first in the library database, then in the current database.
View | The view in which the table will open. Click Datasheet, Design, or Print Preview in the View box. The default is Datasheet.
Data Mode | The data entry mode for the table. This applies only to tables opened in Datasheet view. Click Add (the user can add new records but can't edit existing records), Edit (the user can edit existing records and add new records), or Read Only (the user can only view records). The default is Edit.

Remarks

This action is similar to clicking the Open button or Design button in the Database window after selecting a table on the Tables tab.

Tip You can select a table in the Database window and drag it to a macro action row. This automatically creates an OpenTable action that opens the table in Datasheet view.

Switching to Design view while the table is open removes the table's Data Mode argument setting. This setting won't be in effect even if the user returns to Datasheet view.

To run the OpenTable action in Visual Basic, use the OpenTable method of the DoCmd object.


 OpenView Action

OpenView Action

You can use the OpenView action to open a View in Datasheet view, view Design view, or Print Preview. This action runs the named view when opened in Datasheet view.This action runs the named view when opened in Datasheet view.You can select data entry for the view and restrict the records that the view displays.

Setting

The OpenView action has the following arguments.

Action argument | Description
View Name | The name of the view to open. The View Name box in the Action Arguments section of the Macro window shows all views in the current database. This is a required argument. If you run a macro containing the OpenView action in a library database, Microsoft Access looks for the view with this name first in the library database, then in the current database.
View | The view in which the view will open. Click Datasheet, Design, or Print Preview in the View box. The default is Datasheet.
Data Mode | The data entry mode for the view. This applies only to views opened in Datasheet view. Click Add (the user can add new records but can't view or edit existing records), Edit (the user can view or edit existing records and add new records), or Read Only (the user can only view records). The default is Edit.

Remarks

This action is similar to clicking the Open button or Design button in the Database window after selecting a view on the Views tab.

Switching to Design view while the view is open removes the Data Mode argument setting for the view. This setting isn't in effect even if the user returns to Datasheet view.

Tips You can select a view in the Database window and drag it to a macro action row. This automatically creates an OpenView action that opens the view in Datasheet view.

If you don't want to display the system messages that normally appear when a view is run (indicating it's a view and showing how many records will be affected), you can use the SetWarning action to suppress the display of these messages.

To run the OpenView action in Visual Basic, use the OpenView method of the DoCmd object.


 OutputTo Action

OutputTo Action

You can use the OutputTo action to output the data in the specified Microsoft Access database object (a datasheet, form, report, module, data access page) to a file in Microsoft Excel 98 (*.xls), MS-DOS text (*.txt), or rich-text (*.rtf) format. You can also output to a file in HTML (*.html) format, to files in Microsoft Internet Information Server (*.htx, *.idc) format, or to a file in Microsoft Active Server (*.asp) format. Files in Microsoft Internet Information Server format can also be used with Microsoft Personal Web Server.

Setting

The OutputTo action has the following arguments.

Action argument | Description
Object Type | The type of object containing the data to output. Click Table (for a table datasheet), Query (for a query datasheet), Form (for a form or form datasheet), Report, Module, Data Access Page, Stored Procedure, or View in the Object Type box in the Action Arguments section of the Macro window. You can't output a macro. If you want to output the active object, select its type with this argument, but leave the Object Name argument blank. This is a required argument. The default is Table.
Object Name | The name of the object containing the data to output. The Object Name box shows all objects in the database of the type selected by the Object Type argument.
 | If you run a macro containing the OutputTo action in a library database, Microsoft Access looks for the object with this name first in the library database, then in the current database.
Output Format | The type of format you want used to output the data. You can click HTML (*.html), Microsoft Active Server Pages (*.asp), Microsoft Excel (*.xls), Microsoft IIS (*.htx, *.idc), MS-DOS Text (*.txt), Rich Text Format (*.rtf), or Microsoft Data Access Page (*.html) in the box. Modules can be output only to MS-DOS text format. Data access pages can only be output in HTML format. Microsoft Internet Information Server and Microsoft Active Server formats are available only for tables, queries, and forms. If you leave this argument blank, Microsoft Access prompts you for the output format.
Output File | The file you want to output the data to, including the full path. You can include the standard file name extension (.asp, .htm or .html, .htx, .xls, .txt, or .rtf) for the output format you select with the Output Format argument, but it's not required. If you output to Microsoft Internet Information Server or Microsoft Active Server files, Microsoft Access will always create files with the standard .htx and .idc or .asp file name extensions. If you output data access pages, Microsoft Access will always create files with .html file name extensions. If you leave the Output File argument blank, Microsoft Access prompts you for an output file name.
Auto Start | Specifies whether you want the appropriate software to start immediately after the OutputTo action runs, with the file specified by the Output File argument opened. If you select Yes, one of the following starts with the output file from the Microsoft Access object opened: Microsoft Excel (for .xls files), Microsoft Windows Notepad (for .txt files), or Microsoft Word (for .rtf files). For .html files, your default Internet browser starts.
Template File | The path and file name of a file you want to use as a template for .html, .htx, or .asp files. The template file is a file containing HTML tags.

Remarks

The Microsoft Access data is output in the selected format and can be read by any application that uses the same format. For example, you can output a Microsoft Access report with its formatting to a rich-text format document and then open the document in Microsoft Word.

If you output the database object to HTML format, Microsoft Access creates a file in HTML format containing the data from the object. You can use the Template File argument to specify a file to be used as a template for the .html file.

If you output the object to Microsoft Internet Information Server format, Microsoft Access creates two files:

  • An .idc file, which contains information on how to connect to an ODBC data source, and an SQL statement to execute against this data source. In this case, the Microsoft Access object you're outputting contains the data defined by the SQL statement and the current Microsoft Access database is the ODBC data source

  • An .htx file, which specifies how to format data returned from the SQL statement specified in the .idc file as an HTML document. You can use the Template File argument to specify a .html file to be used as a template for the .htx file.

Microsoft Internet Information Server uses the .htx and .idc files to create an .html file with the data in the Microsoft Access object you output.

If you output the database object to Microsoft Active Server format, Microsoft Access creates a file in .asp format that contains information on how to access and format the object's data. Microsoft Active Server uses the .asp file to create a .html file with the data in the Microsoft Access object you output. You can use the Template File argument to specify a .html file to be used as a template for the .asp file.

The following rules apply when you use the OutputTo action to output a database object to any of the output formats except Microsoft Active Server (some of these rules also apply to the Microsoft Active Server format):

  • You can output data in table, query, and form datasheets. In the output file, all fields in the datasheet look as they do in Microsoft Access, except fields containing OLE objects. The columns for these fields are included in the output file, but the fields are blank.

  • For a control bound to a Yes/No field (a toggle button, option button, or check box), the output file displays the value -1 (Yes) or 0 (No).

  • For a text box bound to a Hyperlink field, the output file displays the hyperlink for all output formats except MS-DOS text (in this case, the hyperlink is just displayed as normal text).

  • If you output the data in a form in Form view, the output file always contains the form's Datasheet view.

  • If you output the data in a report, the only controls that are included in the output file are text boxes (for .xls output files), or text boxes and labels (for .rtf, .txt, and .html output files). All other controls are ignored. Header and footer information is also not included in the output file. The only exception to this is that when you output the data in a report to a Microsoft Excel file, a text box in a group footer containing an expression with the Sum function is included in the output file. No other control in a header or footer (and no aggregate function other than the Sum function) is included in the output file.

  • Subreports are included in the output file, but subforms will be included when outputting to .asp, but only when outputting as a form (not a datasheet).

  • When you output a datasheet, form, or data access page in HTML format, one .html file is created. When you output a report in HTML format, one .html file is created for each page in the report.

For more information on rules and restrictions when outputting to .html files, see Export a datasheet to static HTML format and Export a report to static HTML format.

For more information on rules and restrictions when outputting to Microsoft Internet Information Server files, see Export a datasheet to dynamic HTML format and Export a form to dynamic HTML format.

For more information on rules and restrictions when outputting to Microsoft Active Server files, see Export a datasheet to dynamic HTML format, Export a form to dynamic HTML format, and Supported and unsupported form controls for dynamic ASP format.

Tip If you output the data in a report to an output file and the columns and rows of data in the output file don't align as in the report, the following tips may help:

  • You can point to Size on the Format menu, then click To Fit to size the controls.

  • You should avoid overlapping controls or placing controls too close together.

  • You can point to Align on the Format menu, then click the appropriate command to align the controls on the report. Controls that aren't aligned in the same row may be placed in separate rows in the output file, causing additional spacing.

The OutputTo action is similar to clicking Export on the File menu and selecting the Save Formatted check box in the dialog box that's displayed. The action arguments correspond to the settings in the Export dialog box. The Export command, however, applies only to the object selected in the Database window. By using the OutputTo action, you can specify the object you want to output.

Note You can output the selected data with the Export command. However, this functionality isn't available with the OutputTo action.

You can also point to Office Links on the Tools menu, then click Analyze It With MS Excel or Publish It With MS Word to output a database object, and open the output file immediately in Microsoft Excel or Microsoft Word.

To run the OutputTo action in Visual Basic, use the OutputTo method of the DoCmd object.


 PrintOut Action

PrintOut Action

You can use the PrintOut action to print the active object in the open database. You can print datasheets, reports, forms, data access pages, and modules.

Setting

The PrintOut action has the following arguments.

Action argument | Description
Print Range | The range to print. Click All (the user can print all of the object), Selection (the user can print the part of the object that's selected), or Pages (the user can specify a range of pages in the Page From and Page To arguments) in the Print Range box in the Action Arguments section of the Macro window. The default is All.
Page From | The first page to print. Printing starts at the top of this page. This argument is required if you select Pages in the Print Range box.
Page To | The last page to print. Printing stops at the bottom of this page. This argument is required if you select Pages in the Print Range box.
Print Quality | The print quality. Click High, Medium, Low, or Draft. The lower the quality, the faster the object prints. The default is High.
Copies | The number of copies to print. The default is 1.
Collate Copies | Click Yes (collate the printed copies) or No (don't collate copies). The object may print faster if this argument is set to No. The default is Yes.

Remarks

This action is similar to selecting an object and then clicking Print on the File menu. With this action, however, no Print dialog box appears.

Tip If you have particular print settings you use frequently, create a macro containing a PrintOut action with these settings in its arguments.

The arguments for this action correspond to options in the Print dialog box. However, unlike the FindRecord action and Find In Field dialog box, the argument settings aren't shared with the Print dialog box options.

To run the PrintOut action in Visual Basic, use the PrintOut method of the DoCmd object.


 Quit Action

Quit Action

You can use the Quit action to exit Microsoft Access. The Quit action can also specify one of several options for saving database objects prior to exiting Microsoft Access.

Setting

The Quit action has the following argument.

Action argument | Description
Options | Specifies what happens to unsaved objects when you quit Microsoft Access. Click Prompt (to display dialog boxes that ask whether to save each object), Save All (to save all objects without prompting by dialog boxes), or Exit (to quit without saving any objects) in the Options box in the Action Arguments section of the Macro window. The default is Save All.

Remarks

Microsoft Access doesn't run any actions that follow the Quit action in a macro.

You can use this action to quit Microsoft Access without prompts from Save dialog boxes by using a custom menu command or a button on a form. For example, you might have a master form that you use to display the objects in your custom workspace. This form could have a Quit button that runs a macro containing the Quit action with the Options argument set to Save All.

This action has the same effect as clicking Exit on the File menu. If you have any unsaved objects when you click this command, the dialog boxes that appear are the same as those displayed when you use Prompt for the Options argument of the Quit action.

You can use the Save action in a macro to save a specified object without having to quit Microsoft Access or close the object.

To run the Quit action in Visual Basic, use the Quit method of the DoCmd object.


 Rename Action

Rename Action

You can use the Rename action to rename a specified database object.

Setting

The Rename action has the following arguments.

Action argument | Description
New Name | A new name for the database object. Enter the object name in the New Name box in the Action Arguments section of the Macro window. This is a required argument.
Object Type | The type of object you want to rename. Click Table, Query, Form, Report, Macro, Module, Data Access Page, Server View, Diagram, or Stored Procedure. To rename the object selected in the Database window, leave this argument blank.
Old Name | The name of the object to be renamed. The Old Name box shows all objects in the database of the type selected by the Object Type argument. If you leave the Object Type argument blank, leave this argument blank also. Note If you run a macro containing the Rename action in a library database, Microsoft Access looks for the object with this name first in the library database, then in the current database.

Remarks

The new name of the database object must follow the standard naming conventions for Microsoft Access objects.

You can't rename an open object.

If you leave the Object Type and Old Name arguments blank, Microsoft Access renames the object selected in the Database window. To select an object in the Database window, you can use the SelectObject action with the In Database Window argument set to Yes.

You can also rename an object by clicking it in the Database window, clicking it again so you can edit its name, and entering a new name. With the Rename action, you don't have to select the object first in the Database window, and you don't have to stop the macro to enter the new name.

This action differs from the CopyObject action, which creates a copy of the object under a new name.

To run the Rename action in Visual Basic, use the Rename method of the DoCmd object.


 RepaintObject Action

RepaintObject Action

You can use the RepaintObject action to complete any pending screen updates for a specified database object or the active database object, if none is specified. Such updates include any pending recalculations for the object's controls.

Setting

The RepaintObject action has the following arguments.

Action argument | Description
Object Type | The type of object to repaint. Click Table, Query, Form, Report, Macro, Module, Data Access Page, Server View, Diagram, or Stored Procedures in the Object Type box in the Action Arguments section of the Macro window. Leave this argument blank to select the active object.
Object Name | The name of the object to repaint. The Object Name box shows all objects in the database of the type selected by the Object Type argument. If you leave the Object Type argument blank, leave this argument blank also.

Remarks

Microsoft Access waits to complete pending screen updates until it finishes other pending tasks. With this action, you can force immediate repainting of the controls in the specified object. You can use this action:

  • When you use the SetValue action to change values in a number of controls. Microsoft Access might not show the changes immediately, especially if other controls (such as calculated controls) depend on values in the changed controls.

  • When you want to make sure that the form you're viewing displays data in all of its controls. For example, controls containing OLE objects don't display their data immediately after you open a form.

Notes

  • This action doesn't cause a requery of the database, so it doesn't show new and changed records, or remove deleted records from the object's underlying table or query. Use the Requery action to requery the source of the object or one of its controls. Use the ShowAllRecords action to display the most recent records and remove any applied filters.

  • The RepaintObject action doesn't have the same effect as choosing the Refresh command from the Records menu, which shows any changes you or other users have made to the currently displayed records in forms and datasheets.

To run the RepaintObject action in Visual Basic, use the RepaintObject method of the DoCmd object.


 Requery Action

Requery Action

You can use the Requery action to update the data in a specified control on the active object by requerying the source of the control. If no control is specified, this action requeries the source of the object itself. Use this action to ensure that the active object or one of its controls displays the most current data.

Setting

The Requery action has the following argument.

Action argument | Description
Control Name | The name of the control you want to update. Enter the control name in the Control Name box in the Action Arguments section of the Macro window. You should use only the name of the control, not the fully qualified identifier (such as Forms!formname!controlname). Leave this argument blank to requery the source of the active object. If the active object is a datasheet or a query result set, you must leave this argument blank.

Remarks

The Requery action does one of the following:

  • Reruns the query on which the control or object is based.

  • Displays any new or changed records, and removes any deleted records from the table on which the control or object is based.

Note The Requery action does not effect the position of the record pointer.

Controls based on a query or table include:

  • List boxes and combo boxes.

  • Subform controls.

  • OLE objects, such as charts.

  • Controls containing domain aggregate functions, such as DSum.

If the specified control isn't based on a query or table, this action forces a recalculation of the control.

If you leave the Control Name argument blank, the Requery action has the same effect as pressing SHIFT+F9 when the object has the focus. If a subform control has the focus, this action requeries only the source of the subform (just as pressing SHIFT+F9 does).

Note The Requery action requeries the source of the control or object. In contrast, the RepaintObject action repaints controls in the specified object but doesn't requery the database or display new records. The ShowAllRecords action not only requeries the active object, but it also removes any applied filters, which the Requery action doesn't do.

If you want to requery a control that isn't on the active object, you must use the Requery method in Visual Basic, not the Requery action or its corresponding Requery method of the DoCmd object. The Requery method in Visual Basic is faster than the Requery action or the DoCmd.Requery method. In addition, when you use the Requery action or the DoCmd.Requery method, Microsoft Access closes the query and reloads it from the database, but when you use the Requery method, Microsoft Access reruns the query without closing and reloading it. Note that the ActiveX Data Object (ADO) Requery method works the same way as the Microsoft Access Requery method.


 Restore Action

Restore Action

You can use the Restore action to restore a maximized or minimized window to its previous size.

Note This action cannot be applied to module windows in the Visual Basic Editor (VBE). For information about how to affect module windows see the WindowState property topic.

Setting

The Restore action doesn't have any arguments.

Remarks

This action works on the selected object. If an object has been minimized, you can first select it by using the SelectObject action and then restore it to its previous size by using the Restore action.

You can use the MoveSize action to move or size a window that you've restored.

The Restore action has the same effect as clicking the Restore button in the window's upper-right corner or clicking the Restore command on the window's Control menu.

To run the Restore action in Visual Basic, use the Restore method of the DoCmd object.


 RunApp Action

RunApp Action

You can use the RunApp action to run a Windows-based or MS-DOS-based application, such as Microsoft Excel, Microsoft Word, or Microsoft PowerPoint, from within Microsoft Access. For example, you may want to paste Microsoft Excel spreadsheet data into your Microsoft Access database.

Setting

The RunApp action has the following argument.

Action argument | Description
Command Line | The command line used to start the application (including the path and any other necessary parameters, such as switches that run the application in a particular mode). Enter the command line in the Command Line box in the Action Arguments section of the Macro window. This is a required argument.

Remarks

The application selected with this action loads and runs in the foreground. The macro containing this action continues to run.

You can transfer data between the other application and Microsoft Access by using the Microsoft Windows dynamic data exchange (DDE) facility or the Clipboard. You can use the SendKeys action to send keystrokes to the other application (although DDE is a more efficient method for transferring data). You can also share data among applications by using Automation (formerly called OLE Automation).

MS-DOS-based applications run in an MS-DOS window within the Windows environment.

In Windows 98, there are a number of ways to start an application, including starting the program from the Windows Explorer, by using the Run command on the Start menu, and double-clicking a program icon on the Windows Desktop.

You can't run the RunApp action in Visual Basic. Use the Visual Basic Shell function instead.


 RunCode Action

RunCode Action

You can use the RunCode action to call a Visual Basic Function procedure.

Setting

The RunCode action has the following argument.

Action argument | Description
Function Name | The name of the Visual Basic Function procedure to call. Put any function arguments in parentheses. Enter the function name in the Function Name box in the Action Arguments section of the Macro window. This is a required argument. Note In a Microsoft Access database (.mdb), click the Build button [image] to use the Expression Builder to select a function for this argument, to the right of the Function Name box. Click the desired function in the list in the Expression Builder.

Remarks

The user-defined Function procedures are stored in Microsoft Access modules.

You must include parentheses, even if the Function procedure doesn't have any arguments, as in the following example:

TestFunction()

Unlike user-defined function names used for event property settings, the function name in the Function Name argument doesn't begin with an equal sign (=).

Microsoft Access ignores the return value of the function.

Note You cannot call a Function procedure from a macro if the function name is the same as the module name.

Tip To run a Sub procedure or event procedure written in Visual Basic, create a Function procedure that calls the Sub procedure or event procedure. Then use the RunCode action to run the Function procedure.

If you use the RunCode action to call a function, Microsoft Access looks for the function with the name specified by the Function Name argument in the standard modules for the database. However, when this action runs in response to clicking a menu command on a form or report or in response to an event on a form or report, Microsoft Access looks for the function first in the form's or report's class module and then in the standard modules. Microsoft Access doesn't search the class modules that appear on the Modules tab in the Database window for the function specified by the Function Name argument.

This action isn't available in Visual Basic. Run the desired Function procedure directly in Visual Basic.


 RunCommand Action

RunCommand Action

You can use the RunCommand action to run a built-in Microsoft Access command. The command may appear on a Microsoft Access menu bar, toolbar, or shortcut menu.

Setting

The RunCommand action has the following action argument.

Action argument | Description
Command | The name of the command you want to run. The Command box shows the available built-in commands in Microsoft Access, in alphabetical order. This is a required argument.

Remarks

In Microsoft Access 97, the RunCommand action replaced the DoMenuItem action. When you open and save a macro from a previous version of Microsoft Access that contains a DoMenuItem action, the action and its action arguments will automatically be converted to the equivalent RunCommand action. The DoMenuItem action no longer appears in the list of actions in the Macro window.

You can use the RunCommand action to run a Microsoft Access command from a custom menu bar, global menu bar, custom shortcut menu, or global shortcut menu. However, it's normally easier to use the Customize dialog box, available by pointing to Toolbars on the View menu and clicking Customize, to add Microsoft Access commands to custom menus and shortcut menus. The Commands tab on the Customize dialog box lists the built-in Microsoft Access commands that appear on the Microsoft Access toolbars and menus.

You can use the RunCommand action in a macro with conditional expressions to run a command depending on certain conditions.

Note The Microsoft Access 2000 File menu shows the most recently used databases. You can click one of these databases instead of clicking Open Database. These database items don't appear in the drop-down list box for the Command argument, and aren't available by using the RunCommand action in a macro.

When you convert a Microsoft Access database from a previous version of Microsoft Access, some commands may no longer be available. A command may have been renamed, moved to a different menu, or may no longer be available in Microsoft Access 2000. The DoMenuItem actions for such commands can't be converted to RunCommand actions. When you open the macro, Microsoft Access will display a RunCommand action with a blank Command argument for such commands. You must edit the macro and enter a valid command argument, or delete the RunCommand action.

To run the RunCommand action in Visual Basic, use the RunCommand method of the Application object. (This is equivalent to the RunCommand method of the DoCmd object.)


 RunMacro Action

RunMacro Action

You can use the RunMacro action to run a macro. The macro can be in a macro group.

You can use this action:

  • To run a macro from within another macro.

  • To run a macro based on a certain condition.

  • To attach a macro to a custom menu command.

Setting

The RunMacro action has the following arguments.

Action argument | Description
Macro Name | The name of the macro to run. The Macro Name box in the Action Arguments section of the Macro window shows all macros (and macro groups) in the current database. If the macro is in a macro group, it's listed under the macro group name in the list as macrogroupname.macroname. This is a required argument.
 | If you run a macro containing the RunMacro action in a library database, Microsoft Access looks for the macro with this name in the library database and doesn't look for it in the current database.
Repeat Count | The maximum number of times the macro will run. If you leave this argument blank (and the Repeat Expression argument is also blank), the macro runs once.
Repeat Expression | An expression that evaluates to True (-1) or False (0). The macro stops running if the expression evaluates to False. The expression is evaluated each time the macro runs.

Remarks

If you enter a macro group name for the Macro Name argument, Microsoft Access runs the first macro in the macro group.

This action is similar to clicking Macro on the Tools menu, which you can use to select and run a specified macro. However, the command runs the macro only once, whereas the RunMacro action can run a macro as many times as you want.

Tip You can use the Repeat Count and Repeat Expression arguments to determine how many times the macro runs:

  • If you leave both arguments blank, the macro runs once.

  • If you enter a number for Repeat Count but leave Repeat Expression blank, the macro runs the specified number of times.

  • If you leave Repeat Count blank but enter an expression for Repeat Expression, the macro runs until the expression evaluates to False.

  • If you enter values for both arguments, the macro runs the number of times specified in Repeat Count or until Repeat Expression evaluates to False, whichever occurs first.

When you run a macro containing the RunMacro action, and it reaches the RunMacro action, Microsoft Access runs the called macro. When the called macro has finished, Microsoft Access returns to the original macro and runs the next action.

Notes

  • You can call a macro in the same macro group or in another macro group.

  • You can nest macros. That is, you can run macro A, which in turn calls macro B, and so on. In each case, when the called macro has finished, Microsoft Access returns to the macro that called it and runs the next action in that macro.

Tip You can use the RunMacro action in a macro group that defines custom commands for a custom menu bar to run a macro from the custom menu. However, it's easier to use the new command bars functionality to run a macro from a menu bar, toolbar, or shortcut menu. On the View menu, point to Toolbars and click Customize to display the Customize dialog box. On the Toolbars tab, select the menu bar, toolbar, or shortcut menu that you want to run the macro from. On the Commands tab, click All Macros in the Categories box, then in the Commands box select and drag the macro you want to run to the menu bar, toolbar, or shortcut menu. When you click the icon for this macro on the menu bar, toolbar, or shortcut menu, Microsoft Access will run the macro. You can also drag a macro from the Database window on to a menu bar or toolbar and Microsoft Access will create an icon that runs that macro.

To run the RunMacro action in Visual Basic, use the RunMacro method of the DoCmd object.


 RunSQL Action

RunSQL Action

You can use the RunSQL action to run a Microsoft Access action query by using the corresponding SQL statement. You can also run a data-definition query.

Setting

The RunSQL action has the following arguments.

Action argument | Description
SQL Statement | The SQL statement for the action query or data-definition query you want to run. The maximum length of this statement is 256 characters. This is a required argument.
Use Transaction | Select Yes to include this query in a transaction. Select No if you don't want to use a transaction. The default is Yes. Prior to Microsoft Access 97, previous versions of Microsoft Access have always included the query in a transaction when you ran this action. Starting with a BeginTrans method, executing the SQL statement, then concluding with a CommitTrans method. If you select No for this argument, the query may run faster.

Remarks

You can use action queries to append, delete, and update records and to save a query's result set as a new table. You can use data-definition queries to create, alter, and delete tables, and to create and delete indexes. With the RunSQL action, you can perform these operations directly from a macro without having to use stored queries.

If you need to type an SQL statement longer than 256 characters, use the RunSQL method of the DoCmd object in Visual Basic instead. You can type SQL statements of up to 32,768 characters in Visual Basic.

Microsoft Access queries are actually SQL statements that are created when you design a query by using the design grid in the Query window. The following table shows the Microsoft Access action queries and data-definition queries and their corresponding SQL statements.

Query type | SQL statement
Action |
Append | INSERT INTO
Delete | DELETE
Make-table | SELECT...INTO
Update | UPDATE
Data-definition (SQL-specific) |
Create a table | CREATE TABLE
Alter a table | ALTER TABLE
Delete a table | DROP TABLE
Create an index | CREATE INDEX
Delete an index | DROP INDEX

You can also use an IN clause with these statements to modify data in another database.

Note To run a select query or crosstab query from a macro, use the View argument of the OpenQuery action to open an existing select query or crosstab query in Datasheet view. You can also run existing action queries and SQL-specific queries in the same way.

Tip To see the SQL equivalent of a Microsoft Access query, click SQL View on the View menu in the Query window. You can use the listed SQL statements as models to create queries to run with the RunSQL action. Duplicating an SQL statement in the SQL Statement argument for the RunSQL action has the same effect as running this Microsoft Access query in the Query window.


 Save Action

Save Action

You can use the Save action to save either a specified Microsoft Access object or the active object if none is specified. You can also save the active object with a new name in some cases (this functions the same as the Save As command on the File menu).

Setting

The Save action has the following arguments.

Action argument | Description
Object Type | The type of object you want to save. Click Table, Query, Form, Report, Macro, Module, Data Access Page, Server View, Diagram, or Stored Procedure in the Object Type box in the Action Arguments section of the Macro window. To select the active object, leave this argument blank. If you select an object type in this argument, you must select an existing object's name in the Object Name argument.
Object Name | The name of the object to be saved. The Object Name box shows all objects in the database of the type selected by the Object Type argument. If you leave the Object Type argument blank, you can leave this argument blank to save the active object, or, in some cases, enter a new name in this argument to save the active object with this name. If you enter a new name, the name must follow the standard naming conventions for Microsoft Access objects.

Remarks

The Save action works on all database objects that the user can explicitly open and save. The specified object must be open for the Save action to have any effect on the object. This action has the same effect as selecting an object and then saving it by clicking Save on the File menu, or clicking Save [image] on the toolbar. Leaving the Object Type argument blank and entering a new name in the Object Name argument has the same effect as clicking Save As on the File menu, and entering a new name for the active object. Using the Save action enables you to specify an object to save and to perform a Save As command from a macro.

Note You can't use the Save action to save any of the following with a new name:

  • A form in Form view or Datasheet view.

  • A report in Print Preview.

  • A module.

  • A server view in Datasheet view or Print Preview.

  • A data access page in Page view.

  • A table in Datasheet view or Print Preview.

  • A query in Datasheet view or Print Preview.

  • A stored procedure in Datasheet view or Print Preview.

The Save action, whether it's carried out in a macro run in the current database or in a library database, always saves the specified object or the active object in the database in which the object was created.

If you save the active object with a new name, but the name is the same as the name of an existing object of this type, a dialog box asks if you want to overwrite the existing object. If you've set the Warnings On argument of the SetWarnings action to No, the dialog box isn't displayed and the old object is automatically overwritten.

To run the Save action in Visual Basic, use the Save method of the DoCmd object.


 SelectObject Action

SelectObject Action

You can use the SelectObject action to select a specified database object.

Setting

The SelectObject action has the following arguments.

Action argument | Description
Object Type | The type of database object to select. Click Table, Query, Form, Report, Macro, Module, Data Access Pages, Server View, Diagram, or Stored Procedure in the Object Type box in the Action Arguments section of the Macro window. This is a required argument.
Object Name | The name of the object to select. The Object Name box shows all objects in the database of the type selected by the Object Type argument. This is a required argument, unless you set the In Database Window argument to Yes. If you set the In Database Window argument to Yes and leave the Object Name argument blank, Microsoft Access selects the tab in the Database window that corresponds to the database object you specify in the Object Type argument.
 | Note The object names for ServerView, Diagram, or Stored Procedure objects are not displayed in the Object Name box of a Microsoft Access project (.adp).
In Database Window | Specifies whether Microsoft Access selects the object in the Database window. Click Yes (to select the object in the Database window) or No (not to select the object in the Database window). The default is No.

Remarks

The SelectObject action works with any Microsoft Access object that can receive the focus. This action gives the specified object the focus and shows the object if it's hidden. If the object is a form, the SelectObject action sets the form's Visible property to Yes and returns the form to the mode set by its form properties (for example, as a modal or pop-up form).

If the object isn't open in one of the other Microsoft Access windows, you can select it in the Database window by setting the In Database Window argument to Yes. If you set the In Database Window argument to No, an error message appears when you try to select an object that isn't open.

Often, you might use this action to select an object on which you want to perform additional actions. For example, you may want to restore an object that has been minimized (by using the Restore action) or maximize a window that contains an object you want to work with (by using the Maximize action).

If you select a form, you can use the GoToControl, GoToRecord, and GoToPage actions to move to specific areas on the form. The GoToRecord action also works for datasheets.

To run the SelectObject action in Visual Basic, use the SelectObject method of the DoCmd object.


 SendKeys Action

SendKeys Action

You can use the SendKeys action to send keystrokes directly to Microsoft Access or to an active Windows-based application.

Setting

The SendKeys action has the following arguments.

Action argument | Description
Keystrokes | The keystrokes you want Microsoft Access or the application to process. Enter the keystrokes in the Keystrokes box in the Action Arguments section of the Macro window. You can type up to 255 characters. This is a required argument.
Wait | Specifies whether the macro should pause until the keystrokes have been processed. Click Yes (to pause) or No (not to pause). The default is No.

Remarks

Microsoft Access processes the keystrokes it receives through the SendKeys action exactly as if you had typed them directly in a Microsoft Access window.

To specify the keystrokes, use the same syntax as the SendKeys statement.

Note An error can occur if the Keystrokes argument contains incorrect syntax, misspelled text, or other values that aren't appropriate for the window the keystrokes are sent to.

You can use this action to enter information in a dialog box, particularly if you don't want to interrupt the macro to respond manually to the dialog box. Some Microsoft Access actions, such as PrintOut and FindRecord, automatically select the options in certain frequently used dialog boxes. You can use the SendKeys action to select the options in less commonly used dialog boxes.

Notes

  • Because the dialog box suspends the macro, you must put the SendKeys action before the action that causes the dialog box to open and set the Wait argument to No.

  • The timing of the keystrokes reaching Microsoft Access or another application can be tricky. As a result, it's recommended that if there's some other method (such as the FindRecord action) you can use to achieve a desired task, use that method rather than using the SendKeys action to fill in the options in a dialog box.

If you want to send more than 255 characters to Microsoft Access or another Windows-based application, you can use several SendKeys actions in succession in a macro.

Using the SendKeys action to send keystrokes triggers the appropriate KeyDown, KeyUp, and KeyPress events. Sending non-ANSI keystrokes (such as a function key) doesn't trigger the KeyPress event.

This action isn't available from Visual Basic. Use the SendKeys statement instead.


 SendObject Action

SendObject Action

You can use the SendObject action to include the specified Microsoft Access datasheet, form, report, module, or data access page in an electronic mail message, where it can be viewed and forwarded. You can include objects in Microsoft Excel 2000 (*.xls), MS-DOS text (*.txt), rich-text (*.rtf), or HTML (*.html) format in messages for Microsoft Exchange, Microsoft Mail, Microsoft Windows for Workgroups mail, or another electronic mail application that uses the Microsoft Mail Applications Programming Interface (MAPI).

If you have an electronic mail application that uses the Vendor Independent Mail (VIM) protocol and have installed and set up the dynamic-link library (Mapivim.dll) that converts MAPI mail messages to the VIM protocol, you can send Microsoft Access objects to the VIM mail application.

Setting

The SendObject action has the following arguments.

Action argument | Description
Object Type | The type of object to include in the mail message. Click Table (for a table datasheet), Query (for a query datasheet), Form (for a form or form datasheet), Report, Module, or Data Access Page, Server View, or Stored Procedures in the Object Type box in the Action Arguments section of the Macro window. You can't send a macro. If you want to include the active object, select its type with this argument, but leave the Object Name argument blank.
Object Name | The name of the object to include in the mail message. The Object Name box shows all objects in the database of the type selected by the Object Type argument. If you leave both the Object Type and Object Name arguments blank, Microsoft Access sends a message to the mail application without any database object.
 | If you run a macro containing the SendObject action in a library database, Microsoft Access looks for the object with this name first in the library database, then in the current database.
Output Format | The type of format you want used for the included object. You can click HTML (*.html), Microsoft Excel (*.xls), MS-DOS Text (*.txt), Rich Text Format (*.rtf), or Microsoft Access Data Access Page (*.html) in the Output Format box. Modules can be sent only in MS-DOS text format. Data access pages can only be sent in HTML format. If you leave this argument blank, Microsoft Access prompts you for the output format.
 | Note You can't include objects in Microsoft Active Server (*.asp) or Microsoft IIS (*.htx, *.idc) format, although these selections are displayed in the list
To | The recipients of the message whose names you want to put on the To line in the mail message. If you leave this argument blank, Microsoft Access prompts you for the recipients' names.
 | Separate the recipients' names you specify in this argument and in the Cc and Bcc arguments with a semicolon (;) or with the list separator set on the Number tab of the Regional Settings Properties dialog box in Windows Control Panel. If the mail application can't identify the recipients' names, the message isn't sent and an error occurs.
Cc | The recipients of the message whose names you want to put on the Cc ("carbon copy") line in the mail message. If you leave this argument blank, the Cc line in the mail message is blank.
Bcc | The recipients of the message whose names you want to put on the Bcc ("blind carbon copy") line in the mail message. If you leave this argument blank, the Bcc line in the mail message is blank.
Subject | The subject of the message. This text appears on the Subject line in the mail message. If you leave this argument blank, the Subject line in the mail message is blank.
Message Text | Any text you want to include in the message in addition to the database object. This text appears in the main body of the mail message, after the object. If you leave this argument blank, no additional text is included in the mail message. If you leave the Object Type and Object Name arguments blank, you can use this argument to send a mail message without a database object.
Edit Message | Specifies whether the message can be edited before it's sent. If you select Yes, the electronic mail application starts automatically, and the message can be edited. If you select No, the message is sent without providing a chance to edit the message. The default is No.
Template File | The path and file name of a file you want to use as a template for an .html file. The template file is a file containing HTML tags.

Remarks

The SendObject action is available only if you have a MAPI-compliant electronic mail application installed on your computer, or if you have a VIM-compliant electronic mail application and have installed and set up Mapivi32.dll. For information on how to install and set up Microsoft Access support for VIM mail applications, see the Microsoft Office 2000/Visual Basic Programmer's Guide. For information about how to obtain the Microsoft Office 2000/Visual Basic Programmer's Guide, click [image] .

The object in the mail message is in the selected output format. When you double-click the object, the appropriate software starts with the object opened. The application for each type of output format is Microsoft Excel (for .xls files), Microsoft Windows Notepad (for .txt files), and Microsoft Word (for .rtf files). For .html files, your default Internet browser starts.

The following rules apply when you use the SendObject action to include a database object in a mail message:

  • You can send table, query, and form datasheets. In the included object, all fields in the datasheet look as they do in Microsoft Access, except fields containing OLE objects. The columns for these fields are included in the object, but the fields are blank.

  • For a control bound to a Yes/No field (a toggle button, option button, or check box), the output file displays the value -1 (Yes) or 0 (No).

  • For a text box bound to a Hyperlink field, the output file displays the hyperlink for all output formats except MS-DOS text (in this case, the hyperlink is just displayed as normal text).

  • If you send a form in Form view, the included object always contains the form's Datasheet view.

  • If you send a report, the only controls that are included in the object are text boxes (for .xls files), or text boxes and labels (for .rtf, .txt, and .html files). All other controls are ignored. Header and footer information is also not included. The only exception to this is that when you send a report in Microsoft Excel format, a text box in a group footer containing an expression with the Sum function is included in the object. No other control in a header or footer (and no aggregate function other than Sum) is included in the object.

  • Subreports are included in the object, but subforms will be included when outputting to .asp, but only when outputting as a form (not a datasheet).

  • When you send a datasheet, form, or data access page in HTML format, one .html file is created. When you send a report in HTML format, one .html file is created for each page in the report.

For more information on rules and restrictions when including objects in HTML format, see Export a datasheet to static HTML format and Export a report to static HTML format.

Tip If you send the data in a report and the columns and rows of data in the included object don't align as in the report, the following tips may help:

  • You can point to Size on the Format menu, then click To Fit to size the controls.

  • You should avoid overlapping controls or placing controls too close together.

  • You can point to Align on the Format menu, then click the appropriate command to align the controls on the report. Controls that aren't aligned in the same row may be placed in separate rows in the included object, causing additional spacing.

The SendObject action has the same effect as clicking Send on the File menu, and the action arguments correspond to the settings in the Send dialog boxes. The Send command, however, applies only to the active object. If you use the SendObject action, you can specify the object you want to send.

Note You can send the selected data with the Send command. However, this functionality isn't available with the SendObject action.

To run the SendObject action in Visual Basic, use the SendObject method of the DoCmd object.


 SetMenuItem Action

SetMenuItem Action

You can use the SetMenuItem action to set the state of menu items (enabled or disabled, checked or unchecked) on the custom menu bar or global menu bar for the active window.

Note The SetMenuItem action works only with custom menu bars and global menu bars created by using menu bar macros. The SetMenuItem action is included in this version of Microsoft Access only for compatibility with previous versions. It doesn't work with the new command bars functionality. However, you can use the Enabled and State properties in Visual Basic to disable or enable and check or uncheck items on the new menu bars, toolbars, and shortcut menus.

Setting

The SetMenuItem action has the following arguments.

Action argument | Description
Menu Index | The index of the menu that contains the command for which you want to set the state. Enter an Integer value, starting from 0, for the index of the desired menu in the custom menu bar or global menu bar for the active window. Enter the index value in the Menu Index box in the Action Arguments section of the Macro window. The index is relative to the menu's position in the menu bar macro for the custom menu bar or global menu bar (the position of this menu's AddMenu action in the menu bar macro, counting from 0). The menu bar's display may be somewhat different, since you can use conditional expressions in the menu bar macro to hide or display custom menu items. This is a required argument. If you select a menu with this argument and leave the Command Index and Subcommand Index arguments blank, you can enable or disable the menu name itself. You can't, however, check or uncheck a menu name (Microsoft Access ignores the Check and Uncheck settings for the Flag argument for menu names).
Command Index | The index of the command for which you want to set the state. Enter an Integer value, starting from 0, for the index of the desired command in the menu selected by the Menu Index argument. The index is relative to the command's position in the macro group that defines the selected menu for the custom menu bar or global menu bar (the position of this command's macro in the macro group, counting from 0). The menu's display may be somewhat different, since you can use conditional expressions in the menu's macro group to hide or display custom menu commands.
Subcommand Index | The index of the subcommand for which you want to set the state. This applies only if the desired command has a submenu. Enter an Integer value, starting from 0, for the index of the desired subcommand in the submenu selected by the Command Index argument. The index is relative to the subcommand's position in the macro group that defines the selected submenu for the custom menu bar or global menu bar (the position of this subcommand's macro in the macro group, counting from 0).
Flag | The state you want to set the command or subcommand to. Click Gray (to disable the command - it appears dimmed), Ungray (to enable it), Check (to place a check by the command - typically indicating it has been selected or toggled), or Uncheck (to remove the check). The default is Ungray.

Remarks

The SetMenuItem action works only on a custom menu bar or global menu bar for the active window. It doesn't work on the built-in Microsoft Access menu bars, and if the active window doesn't have a custom menu bar or global menu bar, running a macro containing the SetMenuItem action causes a run-time error. Note that a global menu bar, if you've defined one, replaces the built-in menu bar for all Microsoft Access windows, except where you've added a custom menu bar for a form or report.

You can use this action to set the state of menu commands and subcommands, but not subcommands of subcommands.

To run the SetMenuItem action in Visual Basic, use the SetMenuItem method of the DoCmd object.


 SetValue Action

SetValue Action

You can use the SetValue action to set the value of a Microsoft Access field, control, or property on a form, a form datasheet, or a report.

Note You cannot use the SetValue action to set the value of a Microsoft Access property that returns an object.

Setting

The SetValue action has the following arguments.

Action argument | Description
Item | The name of the field, control, or property whose value you want to set. Enter the field, control, or property name in the Item box in the Action Arguments section of the Macro window. You must use the full syntax to refer to this item, such as controlname (for a control on the form or report from which the macro was called) or Forms!formname!controlname. This is a required argument.
Expression The expression Microsoft Access uses to set the value for this item. You must always use the full syntax to refer to any objects in the expression. For example, to increase the value in a Salary control on an Employees form by 10 percent, use Forms!Employees!Salary*1.1. This is a required argument.

Note You shouldn't use an equal sign (=) before the expression in this argument. If you do, Microsoft Access evaluates the expression and then uses this value as the expression in this argument. This can produce unexpected results if the expression is a string.

For example, if you type ="String1" for this argument, Microsoft Access first evaluates the expression as String1. Then it uses String1 as the expression in this argument, expecting to find a control or property named String1 on the form or report that called the macro.

Note In a Microsoft Access database (.mdb), click the Build button [image] to the right of the Item or Expression box to use the Expression Builder to create an expression for either of these arguments.

Remarks

You can use this action to set a value for a field or control on a form, a form datasheet, or a report. You can also set the value for almost all control, form, and report properties in any view. To find out whether a particular property can be set by using a macro and which views it can be set in, see the topic for that property.

You can also set the value for a field in a form's underlying table even if the form doesn't contain a control bound to the field. Use the syntax Forms!formname!fieldname in the Item box to set the value for such a field. You can also refer to a field in a report's underlying table by using the syntax Reports!reportname!fieldname, but there must be a control on the report bound to this field, or the field must be referred to in a calculated control on the report.

If you set the value of a control on a form, the SetValue action doesn't trigger the control's form-level validation rules, but it does trigger the underlying field's table-level validation rules if the control is a bound control. The SetValue action also triggers recalculation, but the recalculation may not happen immediately. To trigger immediate repainting and force the recalculation to completion, use the RepaintObject action. The value you set in a control by using the SetValue action is also not affected by an input mask set in the control's or underlying field's InputMask property.

To change the value of a control, you can use the SetValue action in a macro specified by the control's AfterUpdate event property. However, you can't use the SetValue action in a macro specified by a control's BeforeUpdate event property to change the value of the control (although you can use SetValue to change the value of other controls). You can also use the SetValue action in a macro specified by the BeforeUpdate or AfterUpdate property of a form to change the value of any controls in the current record.

Note You can't use the SetValue action to set the value of the following controls:

  • Bound controls and calculated controls on reports.

  • Calculated controls on forms.

Tip You can use the SetValue action to hide or show a form in Form view. Enter Forms!formname.Visible in the Item box and No or Yes in the Expression box. Setting a modal form's Visible property to No hides the form and makes it modeless. Setting the property to Yes displays the form and makes it modal again.

Changing the value of or adding new data in a control by using the SetValue action in a macro doesn't trigger events such as BeforeUpdate, BeforeInsert, or Change that occur when you change or enter data in these controls in the user interface. These events also don't occur if you set the value of the control by using Visual Basic.

This action isn't available in by Visual Basic. Set the value directly in Visual Basic.


 SetWarnings Action

SetWarnings Action

You can use the SetWarnings action to turn system messages on or off.

Setting

The SetWarnings action has the following argument.

Action argument | Description
Warnings On | Specifies whether system messages are displayed. Click Yes (to turn on system messages) or No (not to turn off system messages) in the Warnings On box in the Action Arguments section of the Macro window. The default is No.

Remarks

You can use this action to prevent modal warnings and message boxes from stopping the macro. However, error messages are always displayed. Also, Microsoft Access displays any dialog boxes that require input other than just choosing a button (such as OK, Cancel, Yes, or No) - for example, any dialog box that requires you to enter text or select one of several options.

Carrying out this action with the Warnings On argument set to No has the same effect as pressing ENTER whenever a warning or message box is displayed. Typically, an OK or Yes button is chosen in response to the warning or message.

When the macro finishes, Microsoft Access automatically turns the display of the system messages back on.

Often, you'll use this action with the Echo action, which hides the results of a macro until it's finished. You can use the SetWarnings action to hide the warnings and message boxes as well.

Caution Although the SetWarnings action can simplify interactions with macros, you must be careful about turning system messages off. In some situations, you won't want to continue a macro if a certain warning message is displayed. Unless you're confident of the outcome of all macro actions, you should avoid using this action.

To run the SetWarnings action in Visual Basic, use the SetWarnings method of the DoCmd object.


 ShowAllRecords Action

ShowAllRecords Action

You can use the ShowAllRecords action to remove any applied filter from the active table, query result set, or form, and display all records in the table or result set or all records in the form's underlying table or query.

Setting

The ShowAllRecords action doesn't have any arguments.

Remarks

You can use this action to ensure that all records (including any changed or new records) are displayed for a table, query result set, or form. This action causes a requery of the records for a form or subform.

You can also use this action to remove any filter that was applied with the ApplyFilter action, the Apply Filter/Sort command on the Records menu, or the Filter Name or Where Condition argument of the OpenForm action.

This action has the same effect as clicking Remove Filter/Sort on the Records menu or clicking Remove Filter [image] on the toolbar in Form view or Datasheet view.

To run the ShowAllRecords action in Visual Basic, use the ShowAllRecords method of the DoCmd object.


 ShowToolbar Action

ShowToolbar Action

You can use the ShowToolbar action to display or hide a built-in toolbar or a custom toolbar. You can display a built-in toolbar in all Microsoft Access windows or just the view in which the toolbar is normally displayed (for example, the Form View toolbar in Form view).

Note The ShowToolbar action affects only toolbars, not menu bars or shortcut menus.

Setting

The ShowToolbar action has the following arguments.

Action argument | Description
Toolbar Name | The name of the toolbar you want to display or hide. The Toolbar Name box in the Action Arguments section of the Macro window shows all the built-in toolbars in Microsoft Access, followed by any custom toolbars you've defined in the current database. This is a required argument.
 | If the Allow Built-in Toolbars check box in the Startup dialog box (available by clicking Startup on the Tools menu) is cleared, you can use this action only to display and hide custom toolbars.
 | If you run a macro containing the ShowToolbar action in a library database, Microsoft Access looks for the toolbar with this name first in the library database, then in the current database.
Show | Specifies whether to display or hide the toolbar and in which views to display or hide it. The default is No (hide the toolbar).
 | For built-in toolbars, you can select Yes to display the toolbar in all Microsoft Access windows that become active, Where Appropriate to display the toolbar only in the view it's normally displayed in (as Microsoft Access does by default), or No to hide the toolbar in all Microsoft Access windows.
 | For custom toolbars, you can select Yes to display a form or report's custom toolbar in all Microsoft Access windows when the form or report becomes active,Where Appropriate to display a form or report's custom toolbar for the active window displaying the active form or report, or No to hide the toolbar in all Microsoft Access windows.

Remarks

You can use this action in a macro with conditional expressions to display or hide one or more toolbars depending on certain conditions.

If you want to show a particular toolbar on just one form or report, you can set the OnActivate property of the form or report to the name of a macro that contains a ShowToolbar action to show the toolbar. Then set the OnDeactivate property of the form or report to the name of a macro that contains a ShowToolbar action to hide the toolbar.

The ShowToolbar action has the same effect as pointing to Toolbars on the View menu and clicking Customize, then selecting or clearing a specific toolbar on the Toolbars tab of the Customize dialog box. The ShowToolbar action enables you to specify whether a built-in toolbar is displayed in all Microsoft Access windows or just the view in which it's normally displayed.

The built-in toolbars are also not available to display or hide by using this action if you set the AllowBuiltInToolbars property to False (0) in Visual Basic, or if you set the Allow Built-in Toolbars option to False in Visual Basic by using the SetOption method.

To run the ShowToolbar action in Visual Basic, use the ShowToolbar method of the DoCmd object.


 StopAllMacros Action

StopAllMacros Action

You can use the StopAllMacros action to stop all macros that are currently running.

Setting

The StopAllMacros action doesn't have any arguments.

Remarks

You typically use this action when an error condition makes it necessary to stop all macros. You can use a conditional expression in the macro's action row that contains this action. When the expression evaluates to True (-1), Microsoft Access stops all macros.

For example, you might have a macro that displays a message box as one of a number of complex actions, including running other macros. If the user clicks Cancel in this message box, the StopAllMacros action can stop all the macros that are running.

If a macro has used the Echo or SetWarnings actions to turn echo or the display of system messages off, the StopAllMacros action automatically turns them back on.

This action isn't available in Visual Basic.


 StopMacro Action

StopMacro Action

You can use the StopMacro action to stop the currently running macro.

Setting

The StopMacro action doesn't have any arguments.

Remarks

You typically use this action when a condition makes it necessary to stop the macro. You can use a conditional expression in the macro's action row that contains this action. When the expression evaluates to True (-1), Microsoft Access stops the macro.

For example, you might create a macro that opens a form showing the daily order totals for the date entered in a custom dialog box. You could use a conditional expression to be sure that the Order Date control on the dialog box contains a valid date. If it doesn't, the MsgBox action can display an error message and the StopMacro action can stop the macro.

If the macro has used the Echo or SetWarnings actions to turn echo or the display of system messages off, the StopMacro action automatically turns them back on.

This action isn't available in Visual Basic.


 TransferDatabase Action

TransferDatabase Action

You can use the TransferDatabase action to import or export data between the current Microsoft Access database (.mdb) or Access project (.adp) and another database. For Microsoft Access databases (.mdb) you can also link a table to the current Microsoft Access database from another database. With a linked table, you have access to the table's data while the table itself remains in the other database.

Setting

The TransferDatabase action has the following arguments.

Action argument | Description
Transfer Type | The type of transfer you want to make. Select Import, Export, or Link in the Transfer Type box in the Action Arguments section of the Macro window. The default is Import.
 | Note The Link transfer type is not supported for Access projects (.adp).
Database Type | The type of database to import from, export to, or link to. You can select Microsoft Access or one of a number of other database types in the Database Type box. The default is Microsoft Access.
 | The database types shown in the Database Type argument depend on how you've set up Microsoft Access. Not all database types are installed by default. If the database type you want to use for importing, exporting, or linking isn't available, run the Microsoft Access Setup program, click the Add/Remove option, select the Data Access and ActiveX Controls option in the dialog box and click the Change Option button, and then select the database type you want to install from the Database Drivers box and click the Change Option button again.
Database Name | The name of the database to import from, export to, or link to. Include the full path. This is a required argument.
 | For types of databases that use separate files for each table, such as FoxPro, Paradox, and dBASE, enter the directory containing the file. Enter the file name in the Source argument (to import or link) or the Destination argument (to export).
 | For ODBC databases, type the full Open Database Connectivity (ODBC) connection string. To see an example of a connection string, link an external table to Microsoft Access by pointing to Get External Data on the File menu and clicking Link Tables. Open the table in Design view and view the table properties. The text in the Description property setting is the connection string for this table.
 | For more information on ODBC connection strings, see the Help file or other documentation for the ODBC driver of this type of ODBC database.
Object Type | The type of object to import or export. If you select Microsoft Access for the Database Type argument, you can select Table, Query, Form, Report, Macro, Module, Data Access Page, Server View, Diagram, or Stored Procedures in the Object Type box. If you select any other type of database, or if you select Link in the Transfer Type box, this argument is ignored. The default is Table.
 | If you are exporting a select query to a Microsoft Access database, select Table in this argument to export the result set of the query, and select Query to export the query itself. If you are exporting a select query to another type of database, this argument is ignored and the result set of the query is exported.
Source | The name of the table, select query, or Microsoft Access object that you want to import, export, or link. For some types of databases, such as FoxPro, Paradox, or dBASE, this is a file name. Include the file name extension (such as .dbf) in the file name. This is a required argument.
Destination | The name of the imported, exported, or linked table, select query, or Microsoft Access object in the destination database. For some types of databases, such as FoxPro, Paradox, or dBASE, this is a file name. Include the file name extension (such as .dbf) in the file name. This is a required argument.
 | If you select Import in the Transfer Type argument and Table in the Object Type argument, Microsoft Access creates a new table containing the data in the imported table.
 | If you import a table or other object, Microsoft Access adds a number to the name if it conflicts with an existing name. For example, if you import Employees and Employees already exists, Microsoft Access renames the imported table or other object Employees1.
 | If you export to a Microsoft Access database or another database, Microsoft Access automatically replaces any existing table or other object that has the same name.
Structure Only | Specifies whether to import or export only the structure of a database table without any of its data. Select Yes or No. The default is No.

Remarks

You can import and export tables between Microsoft Access and other types of databases. You can also export Microsoft Access select queries to other types of databases. Microsoft Access exports the result set of the query in the form of a table. You can import and export any Microsoft Access database object if both databases are Microsoft Access databases.

In Microsoft Access 2000, if you import a table from another Microsoft Access database (.mdb) that's a linked table in that database, it will still be linked after you import it. That is, the link is imported, not the table itself.

If the database you're accessing requires a password, a dialog box appears when you run the macro. Type the password in this dialog box.

Note You can only import and export data between Microsoft Access and FoxPro version 3.0 databases. You can link to tables in these FoxPro databases if you have a FoxPro ODBC driver.

The TransferDatabase action is similar to pointing to Get External Data or Export on the File menu of the Database window and clicking Import or Link Tables. You can use these commands to select a source of data, such as Microsoft Access or a type of database, spreadsheet, or text file. If you select a database, one or more dialog boxes appear in which you select the type of object to import or export (for Microsoft Access databases), the name of the object, and other options, depending on the database you are importing from or exporting or linking to. The arguments for the TransferDatabase action reflect the options in these dialog boxes.

If you want to supply index information for a linked FoxPro or dBASE table, first link the FoxPro or dBASE table by pointing to Get External Data on the File menu and clicking Link Tables, then specify the indexes in the dialog boxes for this command. Microsoft Access stores the index information in a special information (.inf) file, located in the Office folder (the path is C:\Program Files\Microsoft Office\Office). You can then delete the link to the linked table. The next time you use the TransferDatabase action to link this FoxPro or dBASE table, Microsoft Access uses the index information that you've specified.

Note If you query or filter a linked table, the query or filter is case-sensitive.

To run the TransferDatabase action in Visual Basic, use the TransferDatabase method of the DoCmd object.


 TransferSpreadsheet Action

TransferSpreadsheet Action

You can use the TransferSpreadsheet action to import or export data between the current Microsoft Access database (.mdb) or Access project (.adp) and a spreadsheet file. You can also link the data in a Microsoft Excel spreadsheet to the current Microsoft Access database. With a linked spreadsheet, you can view and edit the spreadsheet data with Microsoft Access while still allowing complete access to the data from your Microsoft Excel spreadsheet program. You can also link to data in a Lotus 1-2-3 spreadsheet file, but this data is read-only in Microsoft Access.

Setting

The TransferSpreadsheet action has the following arguments.

Action argument | Description
Transfer Type | The type of transfer you want to make. Select Import, Export, or Link in the Transfer Type box in the Action Arguments section of the Macro window. The default is Import.
 | Note The Link transfer type is not supported for Access projects (.adp).
Spreadsheet Type | The type of spreadsheet to import from, export to, or link to. You can select one of a number of spreadsheet types in the box. The default is Microsoft Excel 8.
 | Note You can import from and link (read-only) to Lotus .WK4 files, but you can't export Microsoft Access data to this spreadsheet format. Microsoft Access also no longer supports importing, exporting, or linking data from Lotus .WKS or Microsoft Excel version 2.0 spreadsheets with this action. If you want to import from or link to spreadsheet data in Microsoft Excel version 2.0 or Lotus .WKS format, convert the spreadsheet data to a later version of Microsoft Excel or Lotus 1-2-3 before importing or linking the data into Microsoft Access.
Table Name | The name of the Microsoft Access table to import spreadsheet data to, export spreadsheet data from, or link spreadsheet data to. You can also type the name of the Microsoft Access select query you want to export data from. This is a required argument.
 | If you select Import in the Transfer Type argument, Microsoft Access appends the spreadsheet data to this table if the table already exists. Otherwise, Microsoft Access creates a new table containing the spreadsheet data.
 | In Microsoft Access 2000, you can't use an SQL statement to specify data to export when you are using the TransferSpreadsheet action. Instead of using an SQL statement, you must first create a query and then specify the name of the query in the Table Name argument.
File Name | The name of the spreadsheet file to import from, export to, or link to. Include the full path. This is a required argument.
 | Microsoft Access creates a new spreadsheet when you export data from Microsoft Access. If the file name is the same as the name of an existing spreadsheet, Microsoft Access replaces the existing spreadsheet, unless you're exporting to a Microsoft Excel version 5.0, 7.0, 8.0 or Excel 2000 workbook. In that case, Microsoft Access copies the exported data to the next available new worksheet in the workbook.
 | If you are importing from or linking to a Microsoft Excel version 5.0, 7.0, 8.0 or Excel 2000 spreadsheet, you can specify a particular worksheet by using the Range argument.
Has Field Names | Specifies whether the first row of the spreadsheet contains the names of the fields. If you select Yes, Microsoft Access uses the names in this row as field names in the Microsoft Access table when you import or link the spreadsheet data. If you select No, Microsoft Access treats the first row as a normal row of data. The default is No.
 | When you export a Microsoft Access table or select query to a spreadsheet, the field names are inserted into the first row of the spreadsheet no matter what you select in this argument.
Range | The range of cells to import or link. Leave this argument blank to import or link the entire spreadsheet. You can type the name of a range in the spreadsheet or specify the range of cells to import or link, such as A1:E25 (note that the A1..E25 syntax does not work in Microsoft Access 97 or Microsoft Access 2000). If you are importing from or linking to a Microsoft Excel version 5.0, 7.0, Excel 8.0, or Excel 2000 worksheet, you can prefix the range with the name of the worksheet and an exclamation point; for example, Budget!A1:C7.
 | Note When you export to a spreadsheet, you must leave this argument blank. If you enter a range, the export will fail.

Remarks

You can export the data in Microsoft Access select queries to spreadsheets. Microsoft Access exports the result set of the query, treating it just like a table.

Spreadsheet data that you append to an existing Microsoft Access table must be compatible with the table's structure.

  • Each field in the spreadsheet must be of the same data type as the corresponding field in the table.

  • The fields must be in the same order (unless you set the Has Field Names argument to Yes, in which case the field names in the spreadsheet must match the field names in the table).

This action is similar to pointing to Get External Data or Export on the File menu of the Database window and clicking Import or Link Tables. You can use these commands to select a source of data, such as Microsoft Access or a type of database, spreadsheet, or text file. If you select a spreadsheet, a series of dialog boxes appear, or a Microsoft Access wizard runs, in which you select the name of the spreadsheet and other options. The arguments of the TransferSpreadsheet action reflect the options in these dialog boxes or in the wizards.

Note If you query or filter a linked spreadsheet, the query or filter is case-sensitive.

If you link to an Excel spreadsheet open in Edit mode, Access will wait until the Excel spreadsheet is out of Edit mode before completing the link; there's no time-out.

To run the TransferSpreadsheet action in Visual Basic, use the TransferSpreadsheet method of the DoCmd object.


 TransferText Action

TransferText Action

You can use the TransferText action to import or export text between the current Microsoft Access database (.mdb) or Access project (.adp) and a text file. You can also link the data in a text file to the current Access database. With a linked text file, you can view the text data with Microsoft Access while still allowing complete access to the data from your word processing program. You can also import from, export to, and link to a table or list in an HTML file (*.html).

Note If you link to data in a text file or an HTML file, the data is read-only in Microsoft Access.

Setting

The TransferText action has the following arguments.

Action argument | Description
Transfer Type | The type of transfer you want to make. You can import data from, export data to, or link to data in delimited or fixed-width text files or HTML files. You can also export data to a Microsoft Word mail merge data file, which you can then use with the Microsoft Word mail merge feature to create merged documents such as form letters and mailing labels.
 | Select Import Delimited, Import Fixed Width, Import HTML, Export Delimited, Export Fixed Width, Export HTML, Export Word for Windows Merge, Link Delimited, Link Fixed Width, or Link HTML in the Transfer Type box in the Action Arguments section of the Macro window. The default is Import Delimited.
 | Note Only Import Delimited, Import Fixed Width, Export Delimited, Export Fixed Width, or Export Word for Windows Merge transfer types are supported in an Access project (.adp)..
Specification Name | The specification name for the set of options that determines how a text file is imported, exported, or linked. For a fixed-width text file, you must either specify an argument or use a schema.ini file, which must be stored in the same folder as the imported, linked, or exported text file.
 | You can use the Import or Link Tables subcommand of the Get External Data command or the Export command on the File menu to create a specification for a particular type of text file. For example, a delimited text file that uses tabs to separate fields and has an MDY format for dates. When you click one of these commands and select a type of text file to import, export, or link, the Import Text Wizard, Export Text Wizard, or Link Text Wizard runs. You can click the Advanced button in the wizard and define and save a specification in the dialog box that appears. You can then type the specification name in this argument whenever you want to import or export the same type of text file.
 | You can import, export, or link delimited text files without typing a specification name for this argument. In this case, Microsoft Access uses the defaults from the wizard dialog box. Microsoft Access uses a predetermined format for mail merge data files, so you don't ever need to type a specification name for this argument when you export these types of files. You can use import/export specifications with HTML files, but the only part of the specification that applies is the specification for data type formatting.
Table Name | The name of the Microsoft Access table to import text data to, export text data from, or link text data to. You can also type the name of the Microsoft Access query you want to export data from. This is a required argument.
 | If you click Import Delimited, Import Fixed Width, or Import HTML in the Transfer Type box, Microsoft Access appends the text data to this table if the table already exists. Otherwise, Microsoft Access creates a new table containing the text data.
 | In Microsoft Access 2000, you can't use an SQL statement to specify data to export when you are using the TransferText action. Instead of using an SQL statement, you must first create a query and then specify the name of the query in the Table Name argument.
File Name | The name of the text file to import from, export to, or link to. Include the full path. This is a required argument.
 | Microsoft Access creates a new text file when you export data from Microsoft Access. If the file name is the same as the name of an existing text file, Microsoft Access replaces the existing text file.
 | If you want to import or link a particular table or list in an HTML file, you can use the HTML Table Name argument.
Has Field Names | Specifies whether the first row of the text file contains the names of the fields. If you select Yes, Microsoft Access uses the names in this row as field names in the Microsoft Access table when you import or link the text data. If you select No, Microsoft Access treats the first row as a normal row of data. The default is No.
 | Microsoft Access ignores this argument for Microsoft Word for Windows mail merge data files because the first row must contain the field names.
 | When you export a Microsoft Access table or select query to a delimited or fixed-width text file, Microsoft Access inserts the field names of your table or select query into the first row of the text file if you've selected Yes for this argument.
 | If you are importing or linking a fixed-width text file and select Yes in this box, the first row containing the field names must use the field delimiter set in the import/export specification to separate the field names. If you are exporting to a fixed-width text file and select Yes for this argument, Microsoft Access inserts the field names into the first row of the text file with this delimiter.
HTML Table Name | The name of the table or list in the HTML file that you want to import or link. This argument is ignored unless the Transfer Type argument is set to Import HTML or Link HTML. If you leave this argument blank, the first table or list in the HTML file is imported or linked.
 | The table or list name in the HTML file is determined by the text specified by the <CAPTION> tag, if there's a <CAPTION> tag. If there's no <CAPTION> tag, the name is determined by the text specified by the <TITLE> tag. If more than one table or list has the same name, Microsoft Access distinguishes them by adding a number to the end of each name; for example, Employees1 and Employees2.
Code Page | The name of character set used with the code page.

Remarks

You can export the data in Microsoft Access select queries to text files. Microsoft Access exports the result set of the query, treating it just like a table.

Text data that you append to an existing Microsoft Access table must be compatible with the table's structure.

  • Each field in the text must be of the same data type as the corresponding field in the table.

  • The fields must be in the same order (unless you set the Has Field Names argument to Yes, in which case the field names in the text must match the field names in the table).

This action is similar to pointing to Get External Data or Export on the File menu of the Database window and clicking Import or Link Tables. You can use these commands to select a source of data, such as Microsoft Access or a type of database, spreadsheet, or text file. If you select a delimited or fixed-width text file or an HTML file, a wizard prompts you to select the name of the file and other options. The arguments of the TransferText action reflect the options in these wizards.

Tip An import/export specification stores the information Microsoft Access needs to import, export, or link a text file. You can use stored specifications to import, export, or link text data from or to similar text files. For example, you might receive weekly sales figures in a text file from a mainframe computer. You can create and save a specification for this type of data and then use the specification whenever you add this data to your Microsoft Access database.

Note If you query or filter a linked text file, the query or filter is case-sensitive.

To run the TransferText action in Visual Basic, use the TransferText method of the DoCmd object.


 Microsoft Access Constants - Overview

Microsoft Access Constants - Overview

General

A constant represents a numeric or string value that doesn't change. You can use constants to improve the readability of your Visual Basic code and to make your code easier to maintain. In addition, the use of intrinsic constants ensures that code will continue to work even if the underlying values that the constants represent are changed in later releases of Microsoft Access.

Microsoft Access supports three types of constants:

  • Symbolic constants, which you create by using the Const statement and use in modules.

  • Intrinsic constants, which are part of Microsoft Access or a referenced library.

  • System-defined constants: True, False, and Null.

Symbolic Constants

Often, you'll use the same values repeatedly in your code, or you'll find that the code depends on certain numbers that have no obvious meaning. In these cases, you can make the code much easier to read and maintain by using symbolic or user-defined constants, which enable you to use a meaningful name in place of a number or string.

Once you have created a constant by using the Const statement, you can't modify it or assign a new value to it. You also can't create a constant that has the same name as an intrinsic constant.

The following examples show some of the ways you can use the Const statement to declare numeric and string constants:

Const conPI = 3.14159265                ' Pi equals this number.
Const conPI2 = conPI * 2                ' A constant used to create another.
Const conVersion = "Version 7.0"        ' Declare a string constant.

Intrinsic Constants

In addition to the constants you declare with the Const statement, Microsoft Access automatically declares a number of intrinsic constants and provides access to the Visual Basic for Applications (VBA) constants, and ActiveX Data Objects (ADO) constants. You can also use constants in other referenced object libraries. For more information on adding references see Setting References to Type Libraries.

Any intrinsic constant can be used in a macro or Visual Basic. These constants are available at all times. The specific built-in constants used with a particular function, method, or property are described in the Help topic for that function, method, or property.

Note You can use the Object Browser to view lists of intrinsic constants from all available object libraries.

Intrinsic constants have a two letter prefix identifying the object library that defines the constant. Constants from the Microsoft Access library are prefaced with "ac"; constants from the ADO library are prefaced with "ad"; and constants from the Visual Basic library are prefaced with "vb". For example:

  • acForm

  • adAddNew

  • vbCurrency

Note Because the values represented by the intrinsic constants may change in future versions of Microsoft Access, you should use the constants instead of their actual values. You can, however, display the actual value of a constant by choosing the constant in the Object Browser or by typing ?constantname in the Immediate window.

You can use intrinsic constants wherever you can use symbolic, or user-defined constants, including in expressions. The following example shows how you might use the intrinsic constant vbCurrency to determine whether the variable varNum is a Variant for which the VarType function returns 6 (Currency):

Dim varNum As Variant
If VarType(varNum) = vbCurrency Then
    Debug.Print "varNum contains Currency data."
Else
    Debug.Print "varNum doesn't contain Currency data."
End If

There are several categories of intrinsic constants. For a list of the intrinsic constants in a particular category, click the category below:

  • The action constants

  • The ADO constants

  • The DAO constants

  • The event procedure constants

  • The Keycode constants

  • The miscellaneous constants

  • The RunCommand method constants (these are a subset of the action constants)

  • The security constants

  • The Visual Basic constants

  • The VarType function constants

System-Defined Constants

You can use the system-defined constants True, False, and Null anywhere in Microsoft Access. For example, you can use True in the following macro condition expression. The condition is met if the Visible property setting for the Employees form equals True.

Forms!Employees.Visible = True

You can use the constant Null anywhere in Microsoft Access. For example, you can use Null to set the DefaultValue property for a form control by using the following expression:

=Null


 Style for Intrinsic Constants

Style for Intrinsic Constants

In Microsoft Access 2000, all intrinsic constants are contained in type libraries and are visible in the Object Browser. Microsoft Access includes type libraries for Microsoft Access, ActiveX Data Objects (ADO), Data Access Objects (DAO), and Visual Basic. Each of these type libraries includes intrinsic constants.

Additionally, intrinsic constants in Microsoft Access 2000 are a mix of lowercase and uppercase, and parts of the constant are concatenated rather than separated by underscores. For example, the constant A_NORMAL in versions 1.x and 2.0 is now acNormal.

Intrinsic constants in databases created with previous versions of Microsoft Access won't automatically be converted to the new constant format, but old constants will continue to work without errors. However, it's recommended that you use the new format when writing new code.


 Intrinsic Constants as Bit Masks

Intrinsic Constants as Bit Masks

To test for the Button or Shift arguments, use a bit mask.

The Button argument is a bit field with bits corresponding to the left mouse button (bit 0), right mouse button (bit 1), and middle mouse button (bit 2). These bits correspond to the values 1, 2, and 4, respectively. Only one of the bits is set, indicating which button triggered the event.

The intrinsic constants that Microsoft Access provides for the Button argument have the following values.

Constant | Value
acLeftButton | 1
acRightButton | 2
acMiddleButton | 4

The Shift argument is a bit field, with the least significant bits corresponding to the SHIFT key (bit 0), the CTRL key (bit 1), and the ALT key (bit 2 ). These bits correspond to the values 1, 2, and 4, respectively. The Shift argument indicates the state of these keys. Some, all, or none of the bits can be set, indicating that some, all, or none of the keys is pressed. For example, if both CTRL and ALT were pressed, the value of the Shift argument would be 6.

The intrinsic constants that Microsoft Access provides for the Shift argument have the following values.

Constant | Value
acShiftMask | 1
acCtrlMask | 2
acAltMask | 4

You can use the constants to test for any combination of buttons and keys without having to figure out the unique bit field value for each combination. A bit is set if the button or key is pressed.


Events and Event Properties Reference

The following reference groups events into categories based on the type of task and lists the events alphabetically.

Grouped by Task

Data Events | Keyboard Events
Error and Timing Events | Mouse Events
Filter Events | Print Events
Focus Events | Window Events

Listed Alphabetically

Event | Event property
Activate | OnActivate
AfterDelConfirm | AfterDelConfirm
AfterInsert | AfterInsert
AfterUpdate | AfterUpdate
ApplyFilter | OnApplyFilter
BeforeDelConfirm | BeforeDelConfirm
BeforeInsert | BeforeInsert
BeforeUpdate | BeforeUpdate
Change | OnChange
Click | OnClick
Close | OnClose
Current | OnCurrent
DblClick | OnDblClick
Deactivate | OnDeactivate
Delete | OnDelete
Dirty Event | OnDirty
Enter | OnEnter
Error | OnError
Exit | OnExit
Filter | OnFilter
Format | OnFormat
GotFocus | OnGotFocus
Initialize | none
ItemAdded | none
ItemRemoved | none
KeyDown | OnKeyDown
KeyPress | OnKeyPress
KeyUp | OnKeyUp
Load | OnLoad
LostFocus | OnLostFocus
MouseDown | OnMouseDown
MouseMove | OnMouseMove
MouseUp | OnMouseUp
NoData | OnNoData
NotInList | OnNotInList
Open | OnOpen
Page | OnPage
Print | OnPrint
Resize | OnResize
Retreat | OnRetreat
Terminate | none
Timer | OnTimer
Unload | OnUnload
Updated | OnUpdated


New Events

Events that were added to Visual Basic in Microsoft Access 2000 are listed in the following table.

Dirty


 Activate, Deactivate Events

Activate, Deactivate Events

  • The Activate event occurs when a form or report receives the focus and becomes the active window.

  • The Deactivate event occurs when a form or report loses the focus to a Table, Query, Form, Report, Macro, or Module window, or to the Database window.

Note The Activate event doesn't occur when a form receives focus back from a dialog box, popup, or another form. The Deactivate event doesn't occur when a form or report loses the focus to a dialog box, to a form for which the PopUp property is set to Yes, or to a window in another application.

Remarks

To run a macro or event procedure when these events occur, set the OnActivate, or OnDeactivate property to the name of the macro or to [Event Procedure].

You can make a form or report active by opening it, clicking it or a control on it, or by using the SetFocus method in Visual Basic (for forms only).

The Activate event can occur only when a form or report is visible.

The Activate event occurs before the GotFocus event; the Deactivate event occurs after the LostFocus event.

When you switch between two open forms, the Deactivate event occurs for the form being switched from, and the Activate event occurs for the form being switched to. If the forms contain no visible, enabled controls, the LostFocus event occurs for the first form before the Deactivate event, and the GotFocus event occurs for the second form after the Activate event.

When you first open a form, the following events occur in this order:

Open Ю Load Ю Resize Ю Activate Ю Current

When you close a form, the following events occur in this order:

Unload Ю Deactivate Ю Close


 Delete, BeforeDelConfirm, AfterDelConfirm Events

Delete, BeforeDelConfirm, AfterDelConfirm Events

  • The Delete event occurs when the user performs some action, such as pressing the DEL key, to delete a record, but before the record is actually deleted.

  • The BeforeDelConfirm event occurs after the user deletes to the buffer one or more records, but before Microsoft Access displays a dialog box asking the user to confirm the deletions.

  • The AfterDelConfirm event occurs after the user confirms the deletions and the records are actually deleted or when the deletions are canceled.

Remarks

To run a macro or event procedure when these events occur, set the OnDelete, BeforeDelConfirm, or AfterDelConfirm property to the name of the macro or to [Event Procedure].

After a record is deleted, it's stored in a temporary buffer. The BeforeDelConfirm event occurs after the Delete event (or if you've deleted more than one record, after all the records are deleted, with a Delete event occurring for each record), but before the Delete Confirm dialog box is displayed. Canceling the BeforeDelConfirm event restores the record or records from the buffer and prevents the Delete Confirm dialog box from being displayed.

The AfterDelConfirm event occurs after a record or records are actually deleted or after a deletion or deletions are canceled. If the BeforeDelConfirm event isn't canceled, the AfterDelConfirm event occurs after the Delete Confirm dialog box is displayed. The AfterDelConfirm event occurs even if the BeforeDelConfirm event is canceled. The AfterDelConfirm event procedure returns status information about the deletion. For example, you can use a macro or event procedure associated with the AfterDelConfirm event to recalculate totals affected by the deletion of records.

If you cancel the Delete event, the BeforeDelConfirm and AfterDelConfirm events don't occur and the Delete Confirm dialog box isn't displayed.

Note The BeforeDelConfirm and AfterDelConfirm events don't occur and the Delete Confirm dialog box isn't displayed if you clear the Record Changes check box under Confirm on the Edit/Find tab of the Options dialog box, available by clicking Options on the Tools menu.

By running a macro or an event procedure when the Delete event occurs, you can prevent a record from being deleted or allow a record to be deleted only under certain conditions. You can also use a Delete event to display a dialog box asking whether the user wants to delete a record before it's deleted.

To delete a record, you can click Delete Record on the Edit menu. This deletes the current record (the record indicated by the record selector). You can also click the record selector or click Select Record on the Edit menu to select the record, and then press the DEL key to delete it. If you click Delete Record, the record selector of the current record, or Select Record, the Exit and LostFocus events for the control that has the focus occur. If you've changed any data in the record, the BeforeUpdate and AfterUpdate events for the record occur before the Exit and LostFocus events. If you click the record selector of a different record, the Current event for that record also occurs.

After you delete the record, the focus moves to the next record following the deleted record, and the Current event for that record occurs, followed by the Enter and GotFocus events for the first control in that record.

The BeforeDelConfirm event then occurs, just before Microsoft Access displays the Delete Confirm dialog box asking you to confirm the deletion. After you respond to the dialog box by confirming or canceling the deletion, the AfterDelConfirm event occurs.

You can delete one or more records at a time. The Delete event occurs after each record is deleted. This enables you to access the data in each record before it's actually deleted, and selectively confirm or cancel each deletion in the Delete macro or event procedure. When you delete more than one record, the Current event for the record following the last deleted record and the Enter and GotFocus events for the first control in this record don't occur until all the records are deleted. In other words, a Delete event occurs for each selected record, but no other events occur until all the selected records are deleted. The BeforeDelConfirm and AfterDelConfirm events also don't occur until all the selected records are deleted.


 BeforeInsert, AfterInsert Events

BeforeInsert, AfterInsert Events

  • The BeforeInsert event occurs when the user types the first character in a new record, but before the record is actually created.

  • The AfterInsert event occurs after a new record is added.

Note Setting the value of a control by using a macro or Visual Basic doesn't trigger these events.

Remarks

To run a macro or event procedure when these events occur, set the BeforeInsert or AfterInsert property to the name of the macro or to [Event Procedure].

You can use an AfterInsert event procedure or macro to requery a recordset whenever a new record is added.

The BeforeInsert and AfterInsert events are similar to the BeforeUpdate and AfterUpdate events. These events occur in the following order:

BeforeInsert Ю BeforeUpdate Ю AfterUpdate Ю AfterInsert.

The following table summarizes the interaction between these events.

Event | Occurs when
BeforeInsert | User types the first character in a new record.
BeforeUpdate | User updates the record.
AfterUpdate | Record is updated.
AfterInsert | Record updated is a new record.

If the first character in a new record is typed into a text box or combo box, the BeforeInsert event occurs before the Change event.


 BeforeUpdate, AfterUpdate Events

BeforeUpdate, AfterUpdate Events

  • The BeforeUpdate event occurs before changed data in a control or record is updated.

  • The AfterUpdate event occurs after changed data in a control or record is updated.

Notes

  • Changing data in a control by using Visual Basic or a macro containing the SetValue action doesn't trigger these events for the control. However, if you then move to another record or save the record, the form's BeforeUpdate and AfterUpdate events do occur.

  • The BeforeUpdate and AfterUpdate events apply only to controls on a form, not controls on a report.

  • These events don't apply to option buttons, check boxes, or toggle buttons in an option group. They apply only to the option group itself.

Remarks

To run a macro or event procedure when these events occur, set the BeforeUpdate, or AfterUpdate property to the name of the macro or to [Event Procedure].

The BeforeUpdate and AfterUpdate events are triggered when a control or record is updated. Within a record, changed data in each control is updated when the control loses the focus or when the user presses ENTER or TAB. When the focus leaves the record or if the user clicks Save Record on the Records menu, the entire record is updated, and the data is saved in the database.

When you enter new or changed data in a control on a form and then move to another record or save the record by clicking Save Record on the Records menu, the BeforeUpdate and AfterUpdate events for the form occur immediately after the BeforeUpdate and AfterUpdate events for the control. When you move to a different record, the Exit and LostFocus events for the control occur, followed by the Current event for the record you moved to, and the Enter and GotFocus events for the first control in this record. To run the BeforeUpdate and AfterUpdate macros or event procedures without running the Exit and LostFocus macros or event procedures, save the record by using the Save Record command on the Records menu.

BeforeUpdate and AfterUpdate macros and event procedures run only if you change the data in a control. These events don't occur when a value changes in a calculated control. BeforeUpdate and AfterUpdate macros and event procedures for a form run only if you change the data in one or more controls in the record.

For forms, you can use the BeforeUpdate event to cancel updating of a record before moving to another record.

For bound controls, the OldValue property isn't set to the updated value until after the AfterUpdate event for the form occurs. Even if the user enters a new value in the control, the OldValue property setting isn't changed until the data is saved (the record is updated). If you cancel an update, the value of the OldValue property replaces the existing value in the control.

You often use the BeforeUpdate event to validate data, especially when you perform complex validations, such as those that:

  • Involve conditions for more than one value on a form.

  • Display different error messages for different data entered.

  • Can be overridden by the user.

  • Contain references to controls on other forms or contain user-defined functions.

Note To perform simple validations, or more complex validations such as requiring a value in a field or validating more than one control on a form, you can use the ValidationRule property for controls and the ValidationRule and Required properties for fields and records in tables.


 ApplyFilter Event

ApplyFilter Event

The ApplyFilter event can occur within a Microsoft Access project (.adp) or Access database (.mdb).

Within an Access database, an ApplyFilter event occurs when the user does one of the following:

  • Clicks Apply Filter/Sort on the Records menu in Form view, clicks Apply Filter/Sort on the Filter menu in the Filter window, or clicks Apply Filter Filter object on the toolbar. This applies the most recently created filter (created by using either the Filter By Form feature or the Advanced Filter/Sort window).

  • On the Records menu in Form view, points to Filter and clicks Filter By Selection, or clicks Filter By Selection [image] on the toolbar. This applies a filter based on the current selection in the form.

  • On the Records menu in Form view, points to Filter and clicks Filter Excluding Selection. This applies a filter excluding the current selection in the form.

  • Clicks Remove Filter/Sort on the Records menu in Form view, or clicks Remove Filter Filter object on the toolbar. This removes any filter (or sort) currently applied to the form.

  • Clicks Filter By Selection, Filter Excluding Selection, or Remove Filter/Sort or enters a value or expression in the Filter For box on the shortcut menu when a bound control has the focus.

  • Closes the Advanced Filter/Sort window or the Filter By Form window.

  • Clicks Advanced Filter/Sort on the Filter menu while the Filter By Form window is open, or clicks Filter By Form on the Filter menu while the Advanced Filter/Sort window is open. This causes the ApplyFilter event to occur when the open filter window is closed, and then the Filter event to occur when the other filter window is opened.

Within an Access project, an ApplyFilter event occurs when the user does one of the following:

  • Clicks Apply Filter/Sort on the Records menu in Form view, clicks Apply Filter/Sort on the Filter menu in the Filter window, or clicks Apply Filter Filter object on the toolbar. This applies the most recently created filter (created by using the Filter By Form feature).

  • Clicks Apply Server Filter on the Records menu in Form view, clicks Apply Server Filter on the Filter menu in the Filter window, or clicks Apply Server Filter [image] on the toolbar. This applies the most recently created filter (created by using the Server Filter By Form feature).

  • On the Records menu in Form view, points to Filter and clicks Filter By Selection, or clicks Filter By Selection [image] on the toolbar. This applies a filter based on the current selection in the form.

  • On the Records menu in Form view, points to Filter and clicks Filter Excluding Selection. This applies a filter excluding the current selection in the form.

  • Clicks Filter By Selection or Filter Excluding Selection or enters a value or expression in the Filter For box on the shortcut menu when a bound control has the focus.

Remarks

To run a macro or event procedure when this event occurs, set the OnApplyFilter property to the name of the macro or to [Event Procedure].

You can use the ApplyFilter event to:

  • Make sure the filter that is being applied is correct. For example, you may want to be sure that any filter applied to an Orders form includes criteria restricting the OrderDate field. To do this, check the form's Filter or ServerFilter property value to make sure this criteria is included in the WHERE clause expression.

  • Change the display of the form before the filter is applied. For example, when you apply a certain filter, you may want to disable or hide some fields that aren't appropriate for the records displayed by this filter.

  • Undo or change actions you took when the Filter event occurred. For example, you can disable or hide some controls on the form when the user is creating the filter, because you don't want these controls to be included in the filter criteria. You can then enable or show these controls after the filter is applied.

The actions in the ApplyFilter macro or event procedure occur before the filter is applied or removed; or after the Advanced Filter/Sort, Filter By Form, or Server Filter By Form window is closed, but before the form is redisplayed. The criteria you've entered in the newly created filter are available to the ApplyFilter macro or event procedure as the setting of the Filter or ServerFilter property.

Note The ApplyFilter event doesn't occur when the user does one of the following:

  • Applies or removes a filter by using the ApplyFilter, OpenForm, or ShowAllRecords actions in a macro, or their corresponding methods of the DoCmd object in Visual Basic.

  • Uses the Close action or the Close method of the DoCmd object to close the Advanced Filter/Sort, Filter By Form, or Server Filter By Form window.

  • Sets the Filter or ServerFilter property or FilterOn or ServerFilterByForm property in a macro or Visual Basic (although you can set these properties in an ApplyFilter macro or event procedure).


 Change Event

Change Event

The Change event occurs when the contents of a text box or the text portion of a combo box changes. It also occurs when you move from one page to another page in a tab control. Examples of this event include entering a character directly in the text box or combo box or changing the control's Text property setting by using a macro or Visual Basic.

Notes

  • Setting the value of a control by using a macro or Visual Basic doesn't trigger this event for the control. You must type the data directly into the control, or set the control's Text property.

  • This event applies only to controls on a form, not controls on a report.

Remarks

To run a macro or event procedure when this event occurs, set the OnChange property to the name of the macro or to [Event Procedure].

By running a macro or event procedure when a Change event occurs, you can coordinate data display among controls. You can also display data or a formula in one control and the results in another control.

The Change event doesn't occur when a value changes in a calculated control or when you select an item from the combo box list.

Note A Change event can cause a cascading event. This occurs when a macro or event procedure that runs in response to the control's Change event alters the control's contents - for example, by changing a property setting that determines the control's value, such as the Text property for a text box. To prevent a cascading event:

  • If possible, avoid attaching a Change macro or event procedure to a control that alters the control's contents.

  • Avoid creating two or more controls having Change events that affect each other - for example, two text boxes that update each other.

Changing the data in a text box or combo box by using the keyboard causes keyboard events to occur in addition to control events like the Change event. For example, if you move to a new record and type an ANSI character in a text box in the record, the following events occur in this order:

KeyDown Ю KeyPress Ю BeforeInsert Ю Change Ю KeyUp

The BeforeUpdate and AfterUpdate events for the text box or combo box control occur after you have entered the new or changed data in the control and moved to another control (or clicked Save Record on the Records menu), and therefore after all of the Change events for the control.

In combo boxes for which the LimitToList property is set to Yes, the NotInList event occurs after you enter a value that isn't in the list and attempt to move to another control or save the record. It occurs after all the Change events for the combo box. In this case, the BeforeUpdate and AfterUpdate events for the combo box don't occur, because Microsoft Access doesn't accept a value that is not in the list.


 Click Event

Click Event

The Click event occurs when the user presses and then releases a mouse button over an object.

Notes

  • The Click event applies only to forms, form sections, and controls on a form, not controls on a report.

  • This event doesn't apply to check boxes, option buttons, or toggle buttons in an option group. It applies only to the option group itself.

  • This event doesn't apply to a label attached to another control, such as the label for a text box. It applies only to "freestanding" labels. Clicking an attached label has the same effect as clicking the associated control. The normal events for the control occur, not any events for the attached label.

  • This event applies to a control containing a hyperlink.

Remarks

To run a macro or event procedure when this event occurs, set the OnClick property to the name of the macro or to [Event Procedure].

On a form, this event occurs when the user clicks a blank area or record selector on the form.

For a control, this event occurs when the user:

  • Clicks a control with the left mouse button. Clicking a control with the right or middle mouse button does not trigger this event.

  • Clicks a control containing hyperlink data with the left mouse button. Clicking a control with the right or middle mouse button does not trigger this event. When the user moves the mouse pointer over a control containing hyperlink data, the mouse pointer changes to a "hand" icon. When the user clicks the mouse button, the hyperlink is activated, and then the Click event occurs.

  • Selects an item in a combo box or list box, either by pressing the arrow keys and then pressing the ENTER key or by clicking the mouse button.

  • Presses SPACEBAR when a command button, check box, option button, or toggle button has the focus.

  • Presses the ENTER key on a form that has a command button whose Default property is set to Yes.

  • Presses the ESC key on a form that has a command button whose Cancel property is set to Yes.

  • Presses a control's access key. For example, if a command button's Caption property is set to &Go, pressing ALT+G triggers the event.

Typically, you attach a Click event procedure or macro to a command button to carry out commands and command-like actions. For the other applicable controls, use this event to trigger actions in response to one of the occurrences discussed earlier in this topic.

For a command button only, Microsoft Access runs the macro or event procedure specified by the OnClick property when the user chooses the command button by pressing the ENTER key or an access key. The macro or event procedure runs once. If you want the macro or event procedure to run repeatedly while the command button is pressed, set its AutoRepeat property to Yes. For other types of controls, you must click the control by using the mouse button to trigger the Click event.

The Click event for a command button occurs when you choose the command button. In addition, if the command button doesn't already have the focus when you choose it, the Enter and GotFocus events for the command button occur before the Click event.

Double-clicking a control causes both the DblClick and Click events to occur. For command buttons, double-clicking triggers the following events, in this order:

MouseDown Ю MouseUp Ю Click Ю DblClick Ю Click

You can use a CancelEvent action in a DblClick macro to cancel the second Click event. For more information, see the DblClick event topic.

The Click event for an option group occurs after you change the value of one of the controls in the option group by clicking the control. For example, if you click a toggle button, option button, or check box in an option group, the Click event for the option group occurs after the BeforeUpdate and AfterUpdate events for the option group.

Tip To distinguish between the left, right, and middle mouse buttons, use the MouseDown and MouseUp events.


 Open, Close Events

Open, Close Events

  • The Open event occurs when a form is opened, but before the first record is displayed. For reports, the event occurs before a report is previewed or printed.

  • The Close event occurs when a form or report is closed and removed from the screen.

Remarks

To run a macro or event procedure when these events occur, set the OnOpen or OnClose property to the name of the macro or to [Event Procedure].

By running a macro or an event procedure when a form's Open event occurs, you can close another window or move the focus to a particular control on a form. You can also run a macro or an event procedure that asks for information needed before the form or report is opened or printed. For example, an Open macro or event procedure can open a custom dialog box in which the user enters the criteria for the set of records to display on a form or the date range to include for a report.

The Open event doesn't occur when you activate a form that's already open - for example, when you switch to the form from another window in Microsoft Access or use the OpenForm action in a macro to bring the open form to the top. However, the Activate event does occur in these situations.

When you open a form based on an underlying query, Microsoft Access runs the underlying query for the form before it runs the Open macro or event procedure. However, when you open a report based on an underlying query, Microsoft Access runs the Open macro or event procedure before it runs the underlying query for the report. This enables the user to specify criteria for the report before it opens - for example, in a custom dialog box you display when the Open event occurs.

If your application can have more than one form loaded at a time, use the Activate and Deactivate events instead of the Open event to display and hide custom toolbars when the focus moves to a different form.

The Open event occurs before the Load event, which is triggered when a form is opened and its records are displayed.

When you first open a form, the following events occur in this order:

Open Ю Load Ю Resize Ю Activate Ю Current

The Close event occurs after the Unload event, which is triggered after the form is closed but before it is removed from the screen.

When you close a form, the following events occur in this order:

Unload Ю Deactivate Ю Close

When the Close event occurs, you can open another window or request the user's name to make a log entry indicating who used the form or report.

If you're trying to decide whether to use the Open or Load event for your macro or event procedure, one significant difference is that the Open event can be canceled, but the Load event can't. For example, if you're dynamically building a record source for a form in an event procedure for the form's Open event, you can cancel opening the form if there are no records to display. Similarly, the Unload event can be canceled, but the Close event can't.


 Current Event

Current Event

The Current event occurs when the focus moves to a record, making it the current record, or when the form is refreshed or requeried.

Remarks

To run a macro or event procedure when this event occurs, set the OnCurrent property to the name of the macro or to [Event Procedure].

This event occurs both when a form is opened and whenever the focus leaves one record and moves to another. Microsoft Access runs the Current macro or event procedure before the first or next record is displayed.

By running a macro or event procedure when a form's Current event occurs, you can display a message or synchronize records in another form related to the current record. For example, when a customer record becomes current, you can display the customer's previous order. When a supplier record becomes current, you can display the products manufactured by the supplier in a Suppliers form. You can also perform calculations based on the current record or change the form in response to data in the current record.

If your macro or event procedure runs a GoToControl or GoToRecord action or the corresponding method of the DoCmd object in response to an Open event, the Current event occurs.

The Current event also occurs when you refresh a form or requery the form's underlying table or query - for example, when you click Remove Filter/Sort on the Records menu or use the Requery action in a macro or the Requery method in Visual Basic code.

When you first open a form, the following events occur in this order:

Open Ю Load Ю Resize Ю Activate Ю Current


 DblClick Event

DblClick Event

The DblClick event occurs when the user presses and releases the left mouse button twice over an object within the double-click time limit of the system.

On a form, the DblClick event occurs when the user double-clicks a blank area or record selector on the form. For a control, it occurs when the user double-clicks a control or its label in Form view. The DblClick event occurs when the user double-clicks the form or control but before the result of the double-click action occurs (for example, before Microsoft Access selects the word that the insertion point is on in a text box).

Notes

  • The DblClick event applies only to forms, form sections, and controls on a form, not controls on a report.

  • This event doesn't apply to check boxes, option buttons, or toggle buttons in an option group. It applies only to the option group itself.

  • This event doesn't apply to a label attached to another control, such as the label for a text box. It applies only to "freestanding" labels. Double-clicking an attached label has the same effect as double-clicking the associated control. The normal events for the control occur, not any events for the attached label.

Remarks

To run a macro or event procedure when this event occurs, set the OnDblClick property to the name of the macro or to [Event Procedure].

For controls, the result of double-clicking depends on the control. For example, double-clicking a word in a text box selects the entire word. Double-clicking a control containing an OLE object starts the application used to create the object, allowing it to be edited.

If the DblClick event doesn't occur within the double-click time limit of the system, the form, form section, or control recognizes two Click events instead of a single DblClick event. The double-click time limit depends on the setting under Double-Click Speed on the Buttons tab of the Mouse option of Windows Control Panel.

By running a macro or an event procedure when the DblClick event occurs, you can open a window or document when an icon is double-clicked.

Double-clicking a control causes both Click and DblClick events to occur. If the control doesn't already have the focus when you double-click it, the Enter and GotFocus events for the control occur before the Click and DblClick events.

For objects that receive mouse events, the events occur in this order:

MouseDown Ю MouseUp Ю Click Ю DblClick

When you double-click a command button, the following events occur in this order:

MouseDown Ю MouseUp Ю Click Ю DblClick Ю MouseUp Ю Click

The second click may have no effect (for example, if the Click macro or event procedure opens a modal dialog box in response to the first Click event). To prevent the second Click macro or event procedure from running, put a CancelEvent action in the DblClick macro or use the Cancel argument in the DblClick event procedure. Note that, generally speaking, double-clicking a command button should be discouraged.

If you double-click any other control besides a command button, the second Click event doesn't occur.


 Dirty Event

Dirty Event

The Dirty event occurs when the contents of a form or the text portion of a combo box changes. It also occurs when you move from one page to another page in a tab control. Examples of this event include entering a character directly in the text box or combo box or changing the control's Text property setting by using a macro or Visual Basic.

Notes

  • Modifying a record within a form by using a macro or Visual Basic doesn't trigger this event. You must type the data directly into the record or set the control's Text property.

  • This event applies only to bound forms, not an unbound form or report.

Remarks

To run a macro or event procedure when this event occurs, set the OnDirty property to the name of the macro or to [Event Procedure].

By running a macro or event procedure when a Dirty event occurs, you can determine if the record can be changed. You can also display a message and ask for edit permission.

Changing the data in a record by using the keyboard causes keyboard events to occur in addition to control events like the Dirty event. For example, if you move to a new record and type an ANSI character in a text box in the record, the following events occur in this order:

KeyDown Ю KeyPress Ю BeforeInsert Ю Dirty Ю KeyUp

The BeforeUpdate and AfterUpdate events for a record occur after you have entered the new or changed data in the record and moved to another record (or clicked Save Record on the Records menu), and therefore after the Dirty event for the record.


 Enter, Exit Events

Enter, Exit Events

  • The Enter event occurs before a control actually receives the focus from a control on the same form.

  • The Exit event occurs just before a control loses the focus to another control on the same form.

Notes

  • The Enter and Exit events apply only to controls on a form, not controls on a report.

  • These events don't apply to check boxes, option buttons, or toggle buttons in an option group. They apply only to the option group itself.

Remarks

To run a macro or event procedure when these events occur, set the OnEnter or OnExit property to the name of the macro or to [Event Procedure].

Because the Enter event occurs before the focus moves to a particular control, you can use an Enter macro or event procedure to display instructions; for example, you could use a macro or event procedure to display a small form or message box identifying the type of data the control typically contains, or giving instructions on how to use the control.

The Enter event occurs before the GotFocus event. The Exit event occurs before the LostFocus event.

Unlike the GotFocus and LostFocus events, the Enter and Exit events don't occur when a form receives or loses the focus. For example, suppose you select a check box on a form, and then click a report. The Enter and GotFocus events occur when you select the check box. Only the LostFocus event occurs when you click the report. The Exit event doesn't occur (because the focus is moving to a different window). If you select the check box on the form again to bring it to the foreground, the GotFocus event occurs, but not the Enter event (because the control had the focus when the form was last active). The Exit event occurs only when you click another control on the form.

If you move the focus to a control on a form, and that control doesn't have the focus on that form, the Exit and LostFocus events for the control that does have the focus on the form occur before the Enter and GotFocus events for the control you moved to.

If you use the mouse to move the focus from a control on a main form to a control on a subform of that form (a control that doesn't already have the focus on the subform), the following events occur:

Exit (for the control on the main form)

Я

LostFocus (for the control on the main form)

Я

Enter (for the subform control)

Я

Exit (for the control on the subform that had the focus)

Я

LostFocus (for the control on the subform that had the focus)

Я

Enter (for the control on the subform that the focus moved to)

Я

GotFocus (for the control on the subform that the focus moved to)

If the control you move to on the subform previously had the focus, neither its Enter event nor its GotFocus event occurs, but the Enter event for the subform control does occur. If you move the focus from a control on a subform to a control on the main form, the Exit and LostFocus events for the control on the subform don't occur, just the Exit event for the subform control and the Enter and GotFocus events for the control on the main form.

Note You often use the mouse or a key such as TAB to move the focus to another control. This causes mouse or keyboard events to occur in addition to the events discussed in this topic.


 Error Event

Error Event

The Error event occurs when a run-time error is produced in Microsoft Access when a form or report has the focus. This includes Microsoft Jet database engine errors, but not run-time errors in Visual Basic.

Remarks

To run a macro or event procedure when this event occurs, set the OnError property to the name of the macro or to [Event Procedure].

By running an event procedure or a macro when an Error event occurs, you can intercept a Microsoft Access error message and display a custom message that conveys a more specific meaning for your application.


 Filter Event

Filter Event

The Filter event can occur within a Microsoft Access project (.adp) or Access database (.mdb).

Within an Access database, a Filter event occurs when the user does one of the following:

  • On the Records menu in Form view, points to Filter and then clicks Filter By Form, or clicks Filter By Form [image] on the toolbar. This opens the Filter By Form window, where you can create a filter based on the fields in the form.

  • On the Records menu in Form view, points to Filter and then clicks Advanced Filter/Sort. This opens the Advanced Filter/Sort window, where you can create complex filters for the form.

  • Clicks Advanced Filter/Sort on the Filter menu while the Filter By Form window is open, or clicks Filter By Form on the Filter menu while the Advanced Filter/Sort window is open. This causes the ApplyFilter event to occur when the open filter window is closed, and then the Filter event to occur when the other filter window is opened.

Within an Access project, a Filter event occurs when the user does one of the following:

  • On the Records menu in Form view, points to Filter and then clicks Filter By Form, or clicks Filter By Form [image] on the toolbar. This opens the Filter By Form window, where you can create a filter based on the fields in the form.

  • On the Records menu in Form view, points to Filter and then clicks Server Filter By Form [image] on the toolbar. This opens the Server Filter By Form window, where you can quickly create a server filter based on the fields in the form.

  • The Advanced Filter/Sort window is not available in an Access project.

Remarks

To run a macro or event procedure when this event occurs, set the OnFilter property to the name of the macro or to [Event Procedure].

You can use the Filter event to:

  • Remove any previous filter for the form. To do this, set the Filter or ServerFilter property of the form to a zero-length string (" ") in the Filter macro or event procedure. This is especially useful if you want to make sure extraneous criteria don't appear in the new filter. For example, when you use the Filter By Selection feature, the criteria you use (the selected text in the form) is added to the Filter or ServerFilter property WHERE clause expression, and appears in both the Filter By Form window and the Advanced Filter/Sort window or the Server Filter By Form window. You can remove these old criteria by using the Filter event.

  • Enter default settings for the new filter. To do this, set the Filter or ServerFilter property to include these criteria. For example, you may want all filters for a Products form to display only current products (products for which the Discontinued control in the Products form isn't selected).

  • Use your own custom filter window instead of one of the Microsoft Access filter windows. When the Filter event occurs, you can open your own custom form and use the entries on this form to set the Filter or ServerFilter property and filter the original form. When the user closes this custom form, set the FilterOn or ServerFilterByForm property of the original form to True (-1) to apply the filter. Canceling the Filter event prevents the Microsoft Access filter window from opening.

  • Prevent certain controls on the form from appearing or being used in the Filter By Form or Server Filter By Form window. If you hide or disable a control in the Filter macro or event procedure, the control is hidden or disabled in the Filter By Form or Server Filter By Form window, and can't be used to set filter criteria. You can then use the ApplyFilter event to show or enable this control after the filter is applied, or when the filter is removed from the form.


 FirstPage, LastPage, NextPage, PrevPage Events

FirstPage, LastPage, NextPage, PrevPage Events

The FirstPage, LastPage, NextPage, PrevPage events occurs when the user clicks the Snapshot Viewer control navigation buttons or uses the control's pop-up menu.

Notes

  • These events have no arguments.

  • These events are triggered only when navigation occurs from the navigation buttons or the pop-up menu. They do not trigger when pages are navigated programmatically.


 Format Event

Format Event

The Format event occurs when Microsoft Access determines which data belongs in a report section, but before Microsoft Access formats the section for previewing or printing.

Remarks

To run a macro or event procedure when this event occurs, set the OnFormat property to the name of the macro or to [Event Procedure].

A Format event occurs for each section in a report. This allows you to create complex running calculations by using data from each section, including sections that aren't printed.

For report detail sections, the Format event occurs for each record in the section just before Microsoft Access formats the data in the record. A Format macro or event procedure has access to the data in the current record.

For report group headers, the Format event occurs for each new group, and a Format macro or event procedure has access to the data in the group header and the data in the first record in the detail section. For report group footers, the Format event occurs for each new group, and a Format macro or event procedure has access to the data in the group footer and the data in the last record in the detail section.

By running a macro or an event procedure when the Format event occurs, you can use data in the current record to make changes to the report that affect page layout. For example, you can display or hide a congratulatory message next to a salesperson's monthly sales total in a sales report, depending on the sales total. After the control is displayed or hidden, Microsoft Access formats the section by using the values of format properties, such as CanGrow, CanShrink, HideDuplicates, KeepTogether, and Visible.

For changes that don't affect page layout or for event procedures or macros that should run only after the data on a page has been formatted, such as a macro that prints page totals, use the Print event for the report section.

There are times when Microsoft Access must return to previous sections on a report to perform multiple formatting passes. When this happens, the Retreat event occurs as the report returns to each previous section, and the Format event occurs more than once for each section. You can run a macro or event procedure when the Retreat event occurs to undo any changes that you made when the Format event occurred for the section. This is useful when your Format macro or event procedure carries out actions, such as calculating page totals or controlling the size of a section, that you want to perform only once for each section.


 GotFocus, LostFocus Events

GotFocus, LostFocus Events

  • The GotFocus event occurs when a form or control receives the focus.

  • The LostFocus event occurs when a form or control loses the focus.

Note The GotFocus and LostFocus events apply only to forms and controls on a form, not controls on a report.

Remarks

To run a macro or event procedure when these events occur, set the OnGotFocus, or OnLostFocus property to the name of the macro or to [Event Procedure].

These events occur when the focus moves in response to a user action, such as pressing the TAB key or clicking the object, or when you use the SetFocus method in Visual Basic or the SelectObject, GoToRecord, GoToControl, or GoToPage action in a macro.

A control can receive the focus only if its Visible and Enabled properties are set to Yes. A form can receive the focus only if it has no controls or if all visible controls are disabled. If a form contains any visible, enabled controls, the GotFocus event for the form doesn't occur.

You can specify what happens when a form or control receives the focus by running a macro or an event procedure when the GotFocus event occurs. For example, by attaching a GotFocus event procedure to each control on a form, you can guide the user through your application by displaying brief instructions or messages in a text box. You can also provide visual cues by enabling, disabling, or displaying controls that depend on the control with the focus.

Note To customize the order in which the focus moves from control to control on a form when you press the TAB key, set the tab order or specify access keys for the controls.

The GotFocus event differs from the Enter event in that the GotFocus event occurs every time a control receives the focus. For example, suppose the user clicks a check box on a form, then clicks a report, and finally clicks the check box on the form to bring it to the foreground. The GotFocus event occurs both times the check box receives the focus. In contrast, the Enter event occurs only the first time the user clicks the check box. The GotFocus event occurs after the Enter event.

The LostFocus event differs from the Exit event in that the LostFocus event occurs every time a control loses the focus. The Exit event occurs only before a control loses the focus to another control on the same form. The LostFocus event occurs after the Exit event.

If you move the focus to a control on a form, and that control doesn't have the focus on that form, the Exit and LostFocus events for the control that does have the focus on the form occur before the Enter and GotFocus events for the control you moved to.

If you use the mouse to move the focus from a control on a main form to a control on a subform of that form, the following events occur:

Exit (for the control on the main form)

Я

LostFocus (for the control on the main form)

Я

Enter (for the subform control)

Я

Exit (for the control on the subform that had the focus)

Я

LostFocus (for the control on the subform that had the focus)

Я

Enter (for the control on the subform that the focus moved to)

Я

GotFocus (for the control on the subform that the focus moved to)

If the control you move to on the subform previously had the focus, neither its Enter event nor its GotFocus event occurs, but the Enter event for the subform control does occur. If you move the focus from a control on a subform to a control on the main form, the Exit and LostFocus events for the control on the subform don't occur, just the Exit event for the subform control and the Enter and GotFocus events for the control on the main form.

Note You often use the mouse or a key such as TAB to move the focus to another control. This causes mouse or keyboard events to occur in addition to the events discussed in this topic.

When you switch between two open forms, the Deactivate event occurs for the first form, and the Activate event occurs for the second form. If the forms contain no visible, enabled controls, the LostFocus event occurs for the first form before the Deactivate event, and the GotFocus event occurs for the second form after the Activate event.


 Initialize Event (Microsoft Access)

Initialize Event

The Initialize event for a class module occurs when you create an instance of that class module.

Note To run code when the Initialize event occurs, you must place that code within the Initialize event procedure in a class module.

Remarks

The Initialize event occurs when you:

  • Create a new instance of a class directly by using the New keyword with the Set statement.

  • Dimension an object variable using the New keyword and creating an instance of a class indirectly by setting or returning a property or applying a method defined in the class module.


 ItemAdded Event

ItemAdded Event

The ItemAdded event occurs when a reference is added to the project from Visual Basic.

Notes

  • The ItemAdded event applies to the References collection. It isn't associated with a control, form, or report, as are most other events. Therefore, in order to create a procedure definition for the ItemAdded event procedure, you must use a special syntax.

  • The ItemAdded event can run only an event procedure when it occurs, it cannot run a macro.

Remarks

This event occurs only when you add a reference from code. It doesn't occur when you add a reference from the References dialog box, available by clicking References on the Tools menu when the Module window is the active window.


 ItemRemoved Event

ItemRemoved Event

The ItemRemoved event occurs when a reference is removed from the project.

Notes

  • The ItemRemoved event applies to the References collection. It isn't associated with a control, form, or report, as are most other events. Therefore, in order to create a procedure definition for the ItemRemoved event procedure, you must use a special syntax.

  • The ItemRemoved event can run only an event procedure when it occurs, it cannot run a macro.

Remarks

This event occurs only when you remove a reference from code. It doesn't occur when you remove a reference from the References dialog box, available by clicking References on the Tools menu when the Module window is the active window.


 KeyDown, KeyUp Events

KeyDown, KeyUp Events

  • The KeyDown event occurs when the user presses a key while a form or control has the focus. This event also occurs if you send a keystroke to a form or control by using the SendKeys action in a macro or the SendKeys statement in Visual Basic.

  • The KeyUp event occurs when the user releases a key while a form or control has the focus. This event also occurs if you send a keystroke to a form or control by using the SendKeys action in a macro or the SendKeys statement in Visual Basic.

Note The KeyDown and KeyUp events apply only to forms and controls on a form, not controls on a report.

Remarks

To run a macro or event procedure when these events occur, set the OnKeyDown or OnKeyUp property to the name of the macro or to [Event Procedure].

For both events, the object with the focus receives all keystrokes. A form can have the focus only if it has no controls or all its visible controls are disabled.

A form will also receive all keyboard events, even those that occur for controls, if you set the KeyPreview property of the form to Yes. With this property setting, all keyboard events occur first for the form, and then for the control that has the focus. You can respond to specific keys pressed in the form, regardless of which control has the focus. For example, you may want the key combination CTRL+X to always perform the same action on a form.

If you press and hold down a key, the KeyDown and KeyPress events alternate repeatedly (KeyDown, KeyPress, KeyDown, KeyPress, and so on) until you release the key, then the KeyUp event occurs.

Although the KeyDown and KeyUp events occur when most keys are pressed, they are typically used to recognize or distinguish between:

  • Extended character keys, such as function keys.

  • Navigation keys, such as HOME, END, PAGE UP, PAGE DOWN, UP ARROW, DOWN ARROW, RIGHT ARROW, LEFT ARROW, and TAB.

  • Combinations of keys and standard keyboard modifiers (SHIFT, CTRL, or ALT keys).

  • The numeric keypad and keyboard number keys.

The KeyDown and KeyUp events don't occur when you press:

  • The ENTER key if the form has a command button for which the Default property is set to Yes.

  • The ESC key if the form has a command button for which the Cancel property is set to Yes.

Tip To find out the ANSI character corresponding to the key pressed, use the KeyPress event.

The KeyDown and KeyPress events occur when you press or send an ANSI key. The KeyUp event occurs after any event for a control caused by pressing or sending the key. If a keystroke causes the focus to move from one control to another control, the KeyDown event occurs for the first control, while the KeyPress and KeyUp events occur for the second control.

For more information, see Order of events for keystrokes and mouse clicks.

If a modal dialog box is displayed as a result of pressing or sending a key, the KeyDown and KeyPress events occur, but the KeyUp event doesn't occur.


 KeyPress Event

KeyPress Event

The KeyPress event occurs when the user presses and releases a key or key combination that corresponds to an ANSI code while a form or control has the focus. This event also occurs if you send an ANSI keystroke to a form or control by using the SendKeys action in a macro or the SendKeys statement in Visual Basic.

Note The KeyPress event applies only to forms and controls on a form, not controls on a report.

Remarks

To run a macro or event procedure when this event occurs, set the OnKeyPress property to the name of the macro or to [Event Procedure].

The object with the focus receives all keystrokes. A form can have the focus only if it has no controls or all its visible controls are disabled.

A form will also receive all keyboard events, even those that occur for controls, if you set the KeyPreview property of the form to Yes. With this property setting, all keyboard events occur first for the form, and then for the control that has the focus. You can respond to specific keys pressed in the form, regardless of which control has the focus. For example, you may want the key combination CTRL+X to always perform the same action on a form.

If you press and hold down an ANSI key, the KeyDown and KeyPress events alternate repeatedly (KeyDown, KeyPress, KeyDown, KeyPress, and so on) until you release the key, then the KeyUp event occurs.

A KeyPress event can involve any printable keyboard character, the CTRL key combined with a character from the standard alphabet or a special character, and the ENTER or BACKSPACE key. You can use the KeyDown and KeyUp event procedures to handle any keystroke not recognized by the KeyPress event, such as function keys, navigation keys, and any combinations of these with keyboard modifiers (ALT, SHIFT, or CTRL keys). Unlike the KeyDown and KeyUp events, the KeyPress event doesn't indicate the physical state of the keyboard; instead, it indicates the ANSI character that corresponds to the pressed key or key combinations.

KeyPress interprets the uppercase and lowercase of each character as separate key codes and, therefore, as two separate characters.

Note The BACKSPACE key is part of the ANSI character set, but the DEL key isn't. If you delete a character in a control by using the BACKSPACE key, you cause a KeyPress event; if you use the DEL key, you don't.

The KeyDown and KeyPress events occur when you press or send an ANSI key. The KeyUp event occurs after any event for a control caused by pressing or sending the key. If a keystroke causes the focus to move from one control to another control, the KeyDown event occurs for the first control, while the KeyPress and KeyUp events occur for the second control.

For example, if you go to a new record and type a character in the first control in the record, the following events occur:

Current (for the new record)

Я

Enter (for the first control in the new record)

Я

GotFocus (for the control)

Я

KeyDown (for the control)

Я

KeyPress (for the control)

Я

BeforeInsert (for the new record in the form)

Я

Change (for the control if it's a text box or combo box)

Я

KeyUp (for the control)

For more information, see Order of events for keystrokes and mouse clicks.


 Load, UnLoad Events

Load, Unload Events

  • The Load event occurs when a form is opened and its records are displayed.

  • The Unload event occurs after a form is closed but before it's removed from the screen. When the form is reloaded, Microsoft Access redisplays the form and reinitializes the contents of all its controls.

Remarks

To run a macro or event procedure when these events occur, set the OnLoad, or OnUnload property to the name of the macro or to [Event Procedure].

The Load event is caused by user actions such as:

  • Starting an application.

  • Opening a form by clicking Open in the Database window.

  • Running the OpenForm action in a macro.

The Unload event is caused by user actions such as:

  • Clicking a Form window's Close button or clicking Close on the File menu or a form's Control menu.

  • Running the Close action in a macro.

  • Quitting an application by right-clicking the application's taskbar button and then clicking Close.

  • Quitting Windows while an application is running.

By running a macro or an event procedure when a form's Load event occurs, you can specify default settings for controls, or display calculated data that depends on the data in the form's records.

By running a macro or an event procedure when a form's Unload event occurs, you can verify that the form should be unloaded or specify actions that should take place when the form is unloaded. You can also open another form or display a dialog box requesting the user's name to make a log entry indicating who used the form.

When you first open a form, the following events occur in this order:

Open Ю Load Ю Resize Ю Activate Ю Current

If you're trying to decide whether to use the Open or Load event for your macro or event procedure, one significant difference is that the Open event can be canceled, but the Load event can't. For example, if you're dynamically building a record source for a form in an event procedure for the form's Open event, you can cancel opening the form if there are no records to display.

When you close a form, the following events occur in this order:

Unload Ю Deactivate Ю Close

The Unload event occurs before the Close event. The Unload event can be canceled, but the Close event can't.

Note When you create macros or event procedures for events related to the Load event, such as Activate and GotFocus, be sure that they don't conflict (for example, make sure you don't cause something to happen in one macro or procedure that is canceled in another) and that they don't cause cascading events.


 MouseDown, MouseUp Events

MouseDown, MouseUp Events

  • The MouseDown event occurs when the user presses a mouse button.

  • The MouseUp event occurs when the user releases a mouse button.

Notes

  • The MouseDown and MouseUp events apply only to forms, form sections, and controls on a form, not controls on a report.

  • These events don't apply to a label attached to another control, such as the label for a text box. They apply only to "freestanding" labels. Pressing and releasing a mouse button in an attached label has the same effect as pressing and releasing the button in the associated control. The normal events for the control occur; no separate events occur for the attached label.

Remarks

To run a macro or event procedure when these events occur, set the OnMouseUp or OnMouseDown property to the name of the macro or to [Event Procedure].

You can use a MouseDown or MouseUp event to specify what happens when a particular mouse button is pressed or released. Unlike the Click and DblClick events, the MouseDown and MouseUp events enable you to distinguish between the left, right, and middle mouse buttons. You can also write code for mouse-keyboard combinations that use the SHIFT, CTRL, and ALT keys.

To cause a MouseDown or MouseUp event for a form to occur, press the mouse button in a blank area or record selector on the form. To cause a MouseDown or MouseUp event for a form section to occur, press the mouse button in a blank area of the form section.

The following apply to both MouseDown and MouseUp events:

  • If a mouse button is pressed while the pointer is over a form or control, that object receives all mouse events up to and including the last MouseUp event.

  • If mouse buttons are pressed in succession, the object that receives the mouse event after the first press receives all mouse events until all buttons are released.

To respond to an event caused by moving the mouse, you use a MouseMove event.


 MouseMove Event

MouseMove Event

The MouseMove event occurs when the user moves the mouse.

Notes

  • The MouseMove event applies only to forms, form sections, and controls on a form, not controls on a report.

  • This event doesn't apply to a label attached to another control, such as the label for a text box. It applies only to "freestanding" labels. Moving the mouse pointer over an attached label has the same effect as moving the pointer over the associated control. The normal events for the control occur; no separate events occur for the attached label.

Remarks

To run a macro or event procedure when this event occurs, set the OnMouseMove property to the name of the macro or to [Event Procedure].

The MouseMove event is generated continually as the mouse pointer moves over objects. Unless another object generates a mouse event, an object recognizes a MouseMove event whenever the mouse pointer is positioned within its borders.

To cause a MouseMove event for a form to occur, move the mouse pointer over a blank area, record selector, or scroll bar on the form. To cause a MouseMove event for a form section to occur, move the mouse pointer over a blank area of the form section.

Notes

  • Moving a form can trigger a MouseMove event even if the mouse is stationary. MouseMove events are generated when the form moves underneath the pointer. If a macro or event procedure moves a form in response to a MouseMove event, the event can cascade (that is, continually generate MouseMove events).

  • If two controls are very close together, and you move the mouse pointer quickly over the space between them, the MouseMove event may not occur for the space (for example, this might be the MouseMove event for the form section). In such cases, you may need to respond to the MouseMove event in the contiguous control, as well as in the form section.

To run a macro or event procedure in response to pressing and releasing the mouse buttons, you use the MouseDown and MouseUp events.


 NoData Event

NoData Event

The NoData event occurs after Microsoft Access formats a report for printing that has no data (the report is bound to an empty recordset), but before the report is printed. You can use this event to cancel printing of a blank report.

Remarks

To run a macro or event procedure when this event occurs, set the OnNoData property to the name of the macro or to [Event Procedure].

If the report isn't bound to a table or query (by using the report's RecordSource property), the NoData event doesn't occur.

This event occurs after the Format events for the report, but before the first Print event.

This event doesn't occur for subreports. If you want to hide controls on a subreport when the subreport has no data, so that the controls don't print in this case, you can use the HasData property in a macro or event procedure that runs when the Format or Print event occurs.

The NoData event occurs before the first Page event for the report.


 NotInList Event

NotInList Event

The NotInList event occurs when the user enters a value in the text box portion of a combo box that isn't in the combo box list.

Note The NotInList event applies only to controls on a form, not controls on a report.

Remarks

To run a macro or event procedure when this event occurs, set the OnNotInList property to the name of the macro or to [Event Procedure].

This event enables the user to add a new value to the combo box list.

The LimitToList property must be set to Yes for the NotInList event to occur.

The NotInList event doesn't trigger the Error event.

The NotInList event occurs for combo boxes whose LimitToList property is set to Yes, after you enter a value that isn't in the list and attempt to move to another control or save the record. The event occurs after all the Change events for the combo box.

When the AutoExpand property is set to Yes, Microsoft Access selects matching values in the list as the user enters characters in the text box portion of the combo box. If the characters the user types match the first characters of a value in the list (for example, the user types "Smith" and "Smithson" is a value in the list), the NotInList event will not occur when the user moves to another control or saves the record. However, the characters that Microsoft Access adds to the characters the user types (in the example, "son") are selected in the text box portion of the combo box. If the user wants the NotInList event to fire in such cases (for example, the user wants to add the new name "Smith" to the combo box list), the user can enter a SPACE, BACKSPACE, or DEL character after the last character in the new value.

When the LimitToList property is set to Yes and the combo box list is dropped down, Microsoft Access selects matching values in the list as the user enters characters in the text box portion of the combo box, even if the AutoExpand property is set to No. If the user presses ENTER or moves to another control or record, the selected value appears in the combo box. In this case, the NotInList event will not fire. To allow the NotInList event to fire, the user should not drop down the combo box list.


 Page Event

Page Event

The Page event occurs after Microsoft Access formats a page of a report for printing, but before the page is printed. You can use this event to draw a border around the page, or add other graphic elements to the page.

Remarks

To run a macro or event procedure when this event occurs, set the OnPage property to the name of the macro or to [Event Procedure].

This event occurs after all the Format events for the report, and after all the Print events for the page, but before the page is actually printed.

You normally use the Line, Circle, or PSet methods in the Page event procedure to create the desired graphics for the page.

The NoData event occurs before the first Page event for the report.


 Print Event

Print Event

The Print event occurs after data in a report section is formatted for printing, but before the section is printed.

Remarks

To run a macro or event procedure when this event occurs, set the OnPrint property to the name of the macro or to [Event Procedure].

For a report detail section, the Print event occurs for each record in the section just before Microsoft Access prints the data in the record. A Print event procedure or macro has access to the data in the current record.

For report group headers, the Print event occurs for each new group, and a Print macro or event procedure has access to the data in the group header and the data in the first record in the detail section. For report group footers, the Print event occurs for each new group, and a Print macro or event procedure has access to the data in the group footer and the data in the last record in the detail section.

You can use the Print event to run a macro or event procedure only after Microsoft Access has prepared data for printing on a page. For example, you can calculate running page totals that are printed in the page header or footer.

For changes that affect page layout, such as displaying or hiding controls, use the Format event.

The Print event occurs only for sections that are actually printed. If you need access to data from sections that aren't printed (for example, you are keeping a running sum, but are only printing certain pages), use the Format event instead.

The Page event occurs after all the Format events for the report, and after all the Print events for a page, but before the page is actually printed.


 Progress Event

Progress Event

The Progress event occurs while a snapshot file is being loaded.

Syntax

Sub controlname_Progress(ByVal amount As Long)

The Progress event has the following arguments.

Argument | Description
controlname | The name of the Snapshot control object.
amount | An Integer value between 0 and 100 representing the percentage of the snapshot file that has been loaded.

Remarks

The SnapshotPath property can point to a snapshot file with an HTTP or FTP address. Depending on the size of the file and the speed of your Internet or intranet connection, it may take some time to download the complete file.

You can use the Amount argument of the Progress event to display a progress meter showing the status of the file download operation.

You can use the ReadyState propety to determine when a snapshot file has been completely loaded into the Snapshot Viewer control.


 ReadyStateChange Event

ReadyStateChange Event

The ReadyStateChange event occurs whenever a snapshot control's ReadyState property changes.

Syntax

Sub controlname_ReadyStateChange(ByVal readystate As Long)

The ReadyStateChange event has the following arguments.

Argument | Description
controlname | The name of the Snapshot control object.
readystate | An Integer value between 0 and 4 representing the current value of the ReadyState property.

Remarks

This event can by used to capture changes to the ReadyState property.


 Resize Event

Resize Event

The Resize event occurs when a form is opened and whenever the size of a form changes.

Remarks

To run a macro or event procedure when this event occurs, set the OnResize property to the name of the macro or to [Event Procedure].

This event occurs if you change the size of the form in a macro or event procedure - for example, if you use the MoveSize action in a macro to resize the form.

By running a macro or an event procedure when a Resize event occurs, you can move or resize a control when the form it's on is resized. You can also use a Resize event to recalculate variables or reset properties that may depend on the size of the form.

When you first open a form, the following events occur in this order:

Open Ю Load Ю Resize Ю Activate Ю Current

Note You need to be careful if you use a MoveSize, Maximize, Minimize, or Restore action (or the corresponding methods of the DoCmd object) in a Resize macro or event procedure. These actions can trigger a Resize event for the form, and thus cause a cascading event.


 Retreat Event

Retreat Event

The Retreat event occurs when Microsoft Access returns to a previous report section during report formatting.

Note The Retreat event applies to all report sections except page headers and footers.

Remarks

To run a macro or event procedure when this event occurs, set the OnRetreat property to the name of the macro or to [Event Procedure].

Under certain circumstances, Microsoft Access must return to a previous report section to determine where certain controls and sections are on a report and whether they will fit in a given space. Examples include:

  • Groups (except for page headers and footers) for which the KeepTogether property is set to either Whole Group or With First Detail.

  • Subreports or subforms for which the CanGrow and/or CanShrink property is set to Yes.

  • Sections on the last page of a report.

In these situations, the Format event occurs as Microsoft Access determines how the sections will fit on the printed page (however, a Print event doesn't occur because the sections aren't being printed yet). If the sections can't be printed, Microsoft Access backs up to the necessary location so that the sections can actually be printed on the following page. The Retreat event occurs for each section past which Microsoft Access retreats. The Format event for each section then occurs again as Microsoft Access prepares to actually print the sections.

For example, whenever Microsoft Access reaches the end of the last page while formatting a report, the Retreat event occurs for each previous section until Microsoft Access reaches the first section at the top of the last page. Then the Format event occurs again for each section on the page, followed by the Print events.

You can run an event procedure or macro when the Retreat event occurs to undo any changes that you made when the Format event occurred for the section. This is useful when your Format event procedure or macro carries out actions, such as calculating page totals or controlling the size of a section, that you want to perform only once for each section.

The Retreat event is also useful for maintaining the positioning of report items. For example, the Sales By Year report in the Northwind sample database uses this event to determine if a page header is printed or not (the page header is printed on pages following a page where the group header has been printed, and the page header isn't printed on the page following a page where the group footer has been printed).


 Terminate Event (Microsoft Access)

Terminate Event

The Terminate event for a class module occurs when all references to an instance of that class are removed from memory.

Note To run code when the Terminate event occurs, you must place that code within the Terminate event procedure in a class module.

Remarks

This event occurs only when you remove a reference to an instance of a class from memory.


 Timer Event

Timer Event

The Timer event occurs for a form at regular intervals as specified by the form's TimerInterval property.

Remarks

To run a macro or event procedure when this event occurs, set the OnTimer property to the name of the macro or to [Event Procedure].

By running a macro or event procedure when a Timer event occurs, you can control what Microsoft Access does at every timer interval. For example, you might want to requery underlying records or repaint the screen at specified intervals.

The TimerInterval property setting of the form specifies the interval, in milliseconds, between Timer events. The interval can be between 0 and 65,535 milliseconds. Setting the TimerInterval property to 0 prevents the Timer event from occurring.


 Updated Event

Updated Event

The Updated event occurs when an OLE object's data has been modified.

Note The Updated event applies only to controls on a form, not controls on a report.

Remarks

To run a macro or event procedure when this event occurs, set the OnUpdated property to the name of the macro or to [Event Procedure].

You can use this event to determine if an object's data has been changed since it was last saved.

The Updated event occurs when the data in an OLE object has been modified. This update can come from the application in which the object was created or from one of the linked copies of this object. As a result, this event is asynchronous with other Microsoft Access control events.

Notes

  • The Updated event and the BeforeUpdate and AfterUpdate events for bound and unbound object frames are not related. The Updated event occurs when an OLE object's data is changed, and the BeforeUpdate and AfterUpdate events occur when data is updated. Although not related, all three events usually occur when an OLE object's data is changed. The Updated event generally occurs before the BeforeUpdate and AfterUpdate events; however, this may not happen every time.

  • The Calendar control included with Microsoft Access 97 no longer supports the Updated event. If you convert a database that includes the Calendar control from a previous version of Microsoft Access to Microsoft Access 97, you should move any code in the Updated event of the Calendar control to the AfterUpdate event.


Functions Reference

The following reference lists all the functions alphabetically.

Note Functions marked with an (*) should not be used within a data access page against a stored query.

A-C

Abs (VBA) | Cos (VBA)
Array (VBA) | Count (DAO)
Asc (VBA) | Atn (VBA)
Avg (DAO) | CBool (VBA)
CreateObject (VBA) | CByte (VBA)
CCur (VBA) | CDate (VBA)
CSng (VBA) | CDbl (VBA)
CStr (VBA) | CDec (VBA)
CurDir (VBA) | Choose (VBA)
Chr (VBA) | CInt (VBA)
CVar (VBA) | CLng (VBA)
CVDate (VBA) | CVErr (VBA)
Command* |

D-H

Date (VBA) | DVar
DateAdd (VBA) | DVarP
DateDiff (VBA) | Environ* (VBA)
DatePart (VBA) | EOF (VBA)
DateSerial (VBA) | Error (VBA)
DateValue (VBA) | EuroConvert
DAvg | Eval
Day (VBA) | Exp (VBA)
Dcount | FileAttr (VBA)
DDB (VBA) | FileDateTime* (VBA)
DDE | FileLen* (VBA)
DDEInitiate | First (DAO)
DDERequest | Fix (VBA)
DDESend | Format (VBA)
DFirst | FreeFile (VBA)
Dir* (VBA) | FV (VBA)
DLast | GetAllSettings (VBA)
DLookup | GetAttr* (VBA)
DMax | GetObject (VBA)
DMin | GetSetting* (VBA)
DoEvents (VBA) | GUIDFromString
DStDev | Hex (VBA)
DStDevP | Hour (VBA)
DSum | HyperlinkPart

I-R

IIf (VBA) | Log (VBA)
IMEStatus (VBA) | LTrim (VBA)
Input* (VBA) | Max (DAO)
InputBox (VBA) | Mid (VBA)
InStr (VBA) | Min (DAO)
Int (VBA) | Minute (VBA)
IPmt (VBA) | MIRR (VBA)
IRR (VBA) | Month (VBA)
IsArray (VBA) | MsgBox (VBA)
IsDate (VBA) | Now (VBA)
IsEmpty (VBA) | NPer (VBA)
IsError (VBA) | NPV (VBA)
IsMissing (VBA) | Nz
IsNull (VBA) | Oct (VBA)
IsNumeric (VBA) | Partition (VBA)
IsObject (VBA) | Pmt (VBA)
Last (DAO) | PPmt (VBA)
LBound (VBA) | PV (VBA)
LCase (VBA) | QBColor (VBA)
Left (VBA) | Rate (VBA)
Len (VBA) | RGB (VBA)
Right (VBA) | Loc (VBA)
Rnd (VBA) | LOF (VBA)
RTrim (VBA) |

S-Z

Second (VBA) | SYD (VBA)
Seek (VBA) | Tab (VBA)
Sgn (VBA) | Tan (VBA)
Shell* (VBA) | Time (VBA)
Sin (VBA) | Timer (VBA)
SLN (VBA) | TimeSerial (VBA)
Space (VBA) | TimeValue (VBA)
Spc (VBA) | Trim (VBA)
Sqr (VBA) | TypeName (VBA)
StDev (DAO) | UBound (VBA)
StDevP (DAO) | UCase (VBA)
Str (VBA) | Val (VBA)
StrComp (VBA) | Var (DAO)
StrConv (VBA) | VarP (DAO)
String (VBA) | VarType (VBA)
StringFromGUID | Weekday (VBA)
Sum (DAO) | Year (VBA)
Switch (VBA) |


 Command Function

Command Function

You can use the Command function to return the argument portion of the command line used to launch Microsoft Access.

Syntax

Command

Remarks

When Microsoft Access is launched from the command line, any portion of the command line that follows the /cmd option is passed to the program as the command-line argument. You can use the Command function to return the argument that has been passed.

To change a command-line argument once a database has been opened, click Options on the Tools menu. On the Advanced tab of the Options dialog box, enter a new argument in the Command Line Arguments box. The Command function will now return the new argument you have entered.

When the Command function is used anywhere other than in Visual Basic code in a module, you must include empty parentheses after the function. For example, to use the Command function in a text box on a form, you would set the ControlSource property of the text box to an expression like the following:

=Command()


 DAvg Function

DAvg Function

You can use the DAvg function to calculate the average of a set of values in a specified set of records (a domain). Use the DAvg function in Visual Basic code or in a macro, in a query expression, or in a calculated control.

For example, you could use the DAvg function in the criteria row of a select query on freight cost to restrict the results to those records where the freight cost exceeds the average. Or you could use an expression including the DAvg function in a calculated control, and display the average value of previous orders next to the value of a new order.

Syntax

DAvg(expr, domain[, criteria])

The DAvg function has the following arguments.

Argument | Description
expr | An expression that identifies the field containing the numeric data you want to average. It can be a string expression identifying a field in a table or query, or it can be an expression that performs a calculation on data in that field. In expr, you can include the name of a field in a table, a control on a form, a constant, or a function. If expr includes a function, it can be either built-in or user-defined, but not another domain aggregate or SQL aggregate function.
domain | A string expression identifying the set of records that constitutes the domain. It can be a table name or a query name.
criteria | An optional string expression used to restrict the range of data on which the DAvg function is performed. For example, criteria is often equivalent to the WHERE clause in an SQL expression, without the word WHERE. If criteria is omitted, the DAvg function evaluates expr against the entire domain. Any field that is included in criteria must also be a field in domain; otherwise the DAvg function returns a Null.

Remarks

Records containing Null values aren't included in the calculation of the average.

Whether you use the DAvg function in a macro or module, a query expression, or a calculated control, you must construct the criteria argument carefully to ensure that it will be evaluated correctly.

You can use the DAvg function to specify criteria in the Criteria row of a query. For example, suppose you want to view a list of all products ordered in quantities above the average order quantity. You could create a query on the Orders, Order Details, and Products tables, and include the Product Name field and the Quantity field, with the following expression in the Criteria row beneath the Quantity field:

>DAvg("[Quantity]", "Orders")

You can also use the DAvg function within a calculated field expression in a query, or in the Update To row of an update query.

Note You can use either the DAvg or Avg function in a calculated field expression in a totals query. If you use the DAvg function, values are averaged before the data is grouped. If you use the Avg function, the data is grouped before values in the field expression are averaged.

Use the DAvg function in a calculated control when you need to specify criteria to restrict the range of data on which the DAvg function is performed. For example, to display the average cost of freight for shipments sent to California, set the ControlSource property of a text box to the following expression:

=DAvg("[Freight]", "Orders", "[ShipRegion] = 'CA'")

If you simply want to average all records in domain, use the Avg function.

You can use the DAvg function in a module or macro or in a calculated control on a form if a field that you need to display isn't in the record source on which your form is based. For example, suppose you have a form based on the Orders table, and you want to include the Quantity field from the Order Details table in order to display the average number of items ordered by a particular customer. You can use the DAvg function to perform this calculation and display the data on your form.

Tips

  • If you use the DAvg function in a calculated control, you may want to place the control on the form header or footer so that the value for this control is not recalculated each time you move to a new record.

  • If the data type of the field from which expr is derived is a number, the DAvg function returns a Double data type. If you use the DAvg function in a calculated control, include a data type conversion function in the expression to improve performance.

  • Although you can use the DAvg function to determine the average of values in a field in a foreign table, it may be more efficient to create a query that contains all of the fields that you need, and then base your form or report on that query.

Note Unsaved changes to records in domain aren't included when you use this function. If you want the DAvg function to be based on the changed values, you must first save the changes by clicking Save Record on the File menu, moving the focus to another record, or by using the Update method.


 DCount Function

DCount Function

You can use the DCount function to determine the number of records that are in a specified set of records (a domain). Use the DCount function in Visual Basic, a macro, a query expression, or a calculated control.

For example, you could use the DCount function in a module to return the number of records in an Orders table that correspond to orders placed on a particular date.

Syntax

DCount(expr, domain[, criteria])

The DCount function has the following arguments.

Argument | Description
expr | An expression that identifies the field for which you want to count records. It can be a string expression identifying a field in a table or query, or it can be an expression that performs a calculation on data in that field. In expr, you can include the name of a field in a table, a control on a form, a constant, or a function. If expr includes a function, it can be either built-in or user-defined, but not another domain aggregate or SQL aggregate function.
domain | A string expression identifying the set of records that constitutes the domain. It can be a table name or a query name.
criteria | An optional string expression used to restrict the range of data on which the DCount function is performed. For example, criteria is often equivalent to the WHERE clause in an SQL expression, without the word WHERE. If criteria is omitted, the DCount function evaluates expr against the entire domain. Any field that is included in criteria must also be a field in domain; otherwise the DCount function returns a Null.

Remarks

Use the DCount function to count the number of records in a domain when you don't need to know their particular values. Although the expr argument can perform a calculation on a field, the DCount function simply tallies the number of records. The value of any calculation performed by expr is unavailable.

Whether you use the DCount function in a macro or module, a query expression, or a calculated control, you must construct the criteria argument carefully to ensure that it will be evaluated correctly.

Use the DCount function in a calculated control when you need to specify criteria to restrict the range of data on which the function is performed. For example, to display the number of orders to be shipped to California, set the ControlSource property of a text box to the following expression:

=DCount("[OrderID]", "Orders", "[ShipRegion] = 'CA'")

If you simply want to count all records in domain without specifying any restrictions, use the Count function.

Tip The Count function has been optimized to speed counting of records in queries. Use the Count function in a query expression instead of the DCount function, and set optional criteria to enforce any restrictions on the results. Use the DCount function when you must count records in a domain from within a code module or macro, or in a calculated control.

You can use the DCount function to count the number of records containing a particular field that isn't in the record source on which your form or report is based. For example, you could display the number of orders in the Orders table in a calculated control on a form based on the Products table.

The DCount function doesn't count records that contain Null values in the field referenced by expr, unless expr is the asterisk (*) wildcard character. If you use an asterisk, the DCount function calculates the total number of records, including those that contain Null fields. The following example calculates the number of records in an Orders table.

intX = DCount("*", "Orders")

If domain is a table with a primary key, you can also count the total number of records by setting expr to the primary key field, since there will never be a Null in the primary key field.

If expr identifies multiple fields, separate the field names with a concatenation operator, either an ampersand (&) or the addition operator (+). If you use an ampersand to separate the fields, the DCount function returns the number of records containing data in any of the listed fields. If you use the addition operator, the DCount function returns only the number of records containing data in all of the listed fields. The following example demonstrates the effects of each operator when used with a field that contains data in all records (ShipName) and a field that contains no data (ShipRegion).

intW = DCount("[ShipName]", "Orders")          ' Returns 831.
intX = DCount("[ShipRegion]", "Orders")          ' Returns 323.
intY = DCount("[ShipName] + [ShipRegion]", _
     "Orders")      ' Returns 323.
intZ = DCount("[ShipName] & [ShipRegion]", _
     "Orders")      ' Returns 831.

Note The ampersand is the preferred operator for performing string concatenation. You should avoid using the addition operator for anything other than numeric addition, unless you specifically wish to propagate Nulls through an expression.

Unsaved changes to records in domain aren't included when you use this function. If you want the DCount function to be based on the changed values, you must first save the changes by clicking Save Record on the File menu, moving the focus to another record, or by using the Update method.


 DDE Function

DDE Function

You can use the DDE function to initiate a dynamic data exchange (DDE) conversation with another application, request an item of information from that application, and display that information in a control on a form or report.

For example, you can use the DDE function in the ControlSource property of a text box to display data from a specified cell in a Microsoft Excel spreadsheet.

Syntax

DDE(application, topic, item)

The DDE function has the following arguments.

Argument | Description
application | A string expression identifying an application that can participate in a DDE conversation. Usually, application is the name of an .exe file (without the .exe extension) for a Microsoft Windows-based application, such as Microsoft Excel. For example, to initiate a DDE conversation with Microsoft Excel, type "Excel" for the application argument.
topic | A string expression that is the name of a topic recognized by application. The topic argument is often a document or data file. Check the other application's documentation for a list of possible topics.
item | A string expression that is the name of a data item recognized by application. Check the other application's documentation for a list of possible items.

Remarks

The DDE function attempts to initiate a DDE conversation with the specified application and topic, and requests the data in item. If successful, the DDE function returns a string that contains the requested information.

If you are requesting data from Microsoft Excel, item might be a row-and-column identifier, such as "R1C1" or the name of a range of cells. In the following example, the DDE function requests information from the cell at row 1, column 1 in a Microsoft Excel worksheet. You can enter this expression for a text box control in the ControlSource property box on the control's property sheet:

=DDE("Excel", "Sheet1", "R1C1")

You can use the DDE function only in the ControlSource property of a text box, option group, check box, or combo box. You can't call the DDE function from Visual Basic.

When you use the DDE function, the control becomes read-only in Form view and Print Preview. For example, if you use the DDE function in a text box, the text in the text box can't be edited. You must edit the text in the other application. Because the ControlSource property is read-only in Form view and Print Preview, changes to the control must be made in Design view.

Microsoft Windows and your computer's memory and resources determine the maximum number of DDE conversations that can be open simultaneously. If the conversation can't be initiated because application isn't running or doesn't recognize topic, or if the maximum number of conversations has already been reached, the DDE function returns a Null.

Note The other application may be configured to ignore your request for a DDE conversation. If so, the DDE function returns a Null. Similarly, you can set Microsoft Access to ignore requests from other applications: Click Options on the Tools menu, and on the Advanced tab of the Options dialog box, under DDE Operations, select Ignore DDE Requests.

Tip If you need to manipulate another application's objects from Microsoft Access, you may want to consider using Automation.

The following table illustrates how the DDE function behaves when you use it with each of the controls.

Control | Remarks
Text box | The item argument can refer to text or numbers. If item refers to more than one piece of information, such as a named range in a Microsoft Excel worksheet that contains multiple cells, the DDE function returns the first entry. You could use this function with a text box to display the data contained in a cell on the worksheet.
Combo box | The DDE function fills the combo box with the information referred to by item. You can't enter data in the text portion of the box. You might use the DDE function with a combo box to display a list of regions or countries that you maintain in a Microsoft Excel worksheet.
Option group | The OptionValue property of each option button in an option group is set to a number. Usually, the first button value is 1, the second is 2, and so on. The number returned by the DDE function determines which option button will be selected. For example, if the DDE function returns 2, the second button will be selected. If this function returns a value that doesn't match any of the OptionValue property settings, none of the buttons will be selected. If item refers to more than one piece of information, such as a named range in a Microsoft Excel worksheet that contains multiple cells, the DDE function returns the first entry.
Check box | If the DDE function returns 0, the check box will be cleared. If this function returns a nonzero number, such as 1 or -1, the box will be selected. If item refers to text or to more than one piece of information, such as a named range in a Microsoft Excel worksheet that contains multiple cells, the check box will be unavailable.


 DDEInitiate Function

DDEInitiate Function

You can use the DDEInitiate function to begin a dynamic data exchange (DDE) conversation with another application. The DDEInitiate function opens a DDE channel for transfer of data between a DDE server and client application.

For example, if you wish to transfer data from a Microsoft Excel spreadsheet to a Microsoft Access database, you can use the DDEInitiate function to open a channel between the two applications. In this example, Microsoft Access acts as the client application, and Microsoft Excel acts as the server application.

Syntax

DDEInitiate(application, topic)

The DDEInitiate function has the following arguments.

Argument | Description
application | A string expression identifying an application that can participate in a DDE conversation. Usually, the application argument is the name of an .exe file (without the .exe extension) for a Microsoft Windows-based application, such as Microsoft Excel.
topic | A string expression that is the name of a topic recognized by the application argument. Check the application's documentation for a list of topics.

Remarks

If successful, the DDEInitiate function begins a DDE conversation with the application and topic specified by the application and topic arguments, and then returns a Long integer value. This return value represents a unique channel number identifying a channel over which data transfer can take place. This channel number is subsequently used with other DDE functions and statements.

If the application isn't already running or if it's running but doesn't recognize the topic argument or doesn't support DDE, the DDEInitiate function returns a run-time error.

The value of the topic argument depends on the application specified by the application argument. For applications that use documents or data files, valid topic names often include the names of those files.

Note The maximum number of channels that can be open simultaneously is determined by Microsoft Windows and your computer's memory and resources. If you aren't using a channel, you should conserve resources by terminating it with a DDETerminate or DDETerminateAll statement.

Tip If you need to manipulate another application's objects from Microsoft Access, you may want to consider using Automation.


 DDERequest Function

DDERequest Function

You can use the DDERequest function over an open dynamic data exchange (DDE) channel to request an item of information from a DDE server application.

For example, if you have an open DDE channel between Microsoft Access and Microsoft Excel, you can use the DDERequest function to transfer text from a Microsoft Excel spreadsheet to a Microsoft Access database. In this example, Microsoft Access acts as the client application, and Microsoft Excel acts as the server application.

Syntax

DDERequest(channum, item)

The DDERequest function has the following arguments.

Argument | Description
channum | A channel number, an integer returned by the DDEInitiate function.
item | A string expression that's the name of a data item recognized by the application specified by the DDEInitiate function. Check the application's documentation for a list of possible items.

Remarks

The channum argument specifies the channel number of the desired DDE conversation, and the item argument identifies which data should be retrieved from the server application. The value of the item argument depends on the application and topic specified when the channel indicated by the channum argument is opened. For example, the item argument may be a range of cells in a Microsoft Excel spreadsheet.

The DDERequest function returns a Variant as a string containing the requested information if the request was successful.

The data is requested in alphanumeric text format. Graphics or text in any other format can't be transferred.

If the channum argument isn't an integer corresponding to an open channel, or if the data requested can't be transferred, a run-time error occurs.

Tip If you need to manipulate another application's objects from Microsoft Access, you may want to consider using Automation.


 DDESend Function

DDESend Function

You can use the DDESend function to initiate a dynamic data exchange (DDE) conversation with another application and send an item of information to that application from a control on a form or report.

For example, you can use the DDESend function in the ControlSource property of a text box to send the data displayed in that text box to a specified cell in a Microsoft Excel spreadsheet.

Syntax

DDESend(application, topic, item, data)

The DDESend function has the following arguments.

Argument | Description
application | A string expression identifying an application that can participate in a DDE conversation. Usually, application is the name of an .exe file (without the .exe extension) for a Microsoft Windows-based application, such as Microsoft Excel. For example, to initiate a DDE conversation with Microsoft Excel, type "Excel" for the application argument.
topic | A string expression that is the name of a topic recognized by application. The topic argument is often a document or data file. Check the other application's documentation for a list of possible topics.
item | A string expression that is the name of a data item recognized by application. Check the other application's documentation for a list of possible items.
data | A string or expression containing the data to send to application.

Remarks

The DDESend function initiates a DDE conversation with application and topic, and identifies item as the data item that will receive data. For example, if application is Microsoft Excel, topic might be "Sheet1", and item might be a row-and-column identifier, such as "R1C1", or the name of a range of cells.

The data argument specifies the information you want to send. It can be a literal string, such as "Report prepared by John". Or it can be an expression that includes the result of a function that creates a string, such as "Prepared on " & Date(). If item refers to more than one piece of information, such as a named range in a Microsoft Excel worksheet that contains multiple cells, the DDESend function sends data to the first entry.

In the following example, the DDESend function sends the string "Some text" to the cell at Row 1, Column 1 in a Microsoft Excel worksheet. You can enter this expression for a text box control in the ControlSource property box on the control's property sheet:

=DDESend("Excel", "Sheet1", "R1C1", "Some text")

Suppose you want to send data from a bound control on a Microsoft Access form to a cell on a Microsoft Excel spreadsheet. The ControlSource property of the bound control already contains a field name or expression. You can create another text box or combo box, and set its ControlSource property to an expression including the DDESend function, where data is the name of the bound control. For example, if you have a bound text box called Last Name, you can create another text box and set its ControlSource property to the following:

=DDESend("Excel", "Sheet1", "R1C1", [LastName])

This intermediary control must be either a text box or a combo box. You can't use the name of a bound control as the data argument for a check box or option group.

You can use the DDESend function only in the ControlSource property setting of a text box, option group, check box, or combo box on a form. You cannot call the DDESend function from Visual Basic.

When you use the DDESend function, the control becomes read-only in Form view and Print Preview. Because the ControlSource property is also read-only in Form view and Print Preview, changes to the control must be made in Design view.

Microsoft Windows and your computer's memory and resources determine the maximum number of DDE conversations that can be open simultaneously. If the conversation can't be initiated because application isn't running or doesn't recognize topic or if the maximum number of conversations has already been reached, the DDESend function returns a Null.

Note The other application may be configured to ignore your request for a DDE conversation. If so, the DDESend function returns a Null. Similarly, you can set Microsoft Access to ignore requests from other applications: Click Options on the Tools menu, and on the Advanced tab of the Options dialog box, under DDE Operations, select Ignore DDE Requests.

Tip If you need to manipulate another application's objects from Microsoft Access, you may want to consider using Automation.

The following table illustrates how the DDESend function behaves when you use it with each of the controls.

Control Remarks
Text box or Combo box Because the text box or combo box appears blank in Form view and Print Preview, you may want to set its Visible property to False.

The data argument can refer to another control. The following example shows how you can send the contents of a control called LastName to a Microsoft Excel worksheet:

=DDESend("Excel", "Sheet1", "R1C1", [LastName])
Option group None of the option buttons in the option group is selected in Form view and Print Preview. You may want to make the option group (and its buttons) invisible by setting its Visible property to False.

The data argument must contain numeric data, such as "2". If the data argument isn't numeric, the DDESend function doesn't send the information and item isn't changed.
Check box The check box is shaded in Form view and Print Preview. You may want to make it invisible by setting its Visible property to False.

The data argument must contain numeric data, such as "2". If the data argument isn't numeric, the DDESend function doesn't send the information and item isn't changed.


 DFirst, DLast Functions

DFirst, DLast Functions

You can use the DFirst and DLast functions to return a random record from a particular field in a table or query when you simply need any value from that field. Use the DFirst and DLast functions in a macro, module, query expression, or calculated control on a form or report.

Syntax

DFirst(expr, domain[, criteria])

DLast(expr, domain[, criteria])

The DFirst and DLast functions have the following arguments.

Argument | Description
expr | An expression that identifies the field from which you want to find the first or last value. It can be either a string expression identifying a field in a table or query, or an expression that performs a calculation on data in that field. In expr, you can include the name of a field in a table, a control on a form, a constant, or a function. If expr includes a function, it can be either built-in or user-defined, but not another domain aggregate or SQL aggregate function.
domain | A string expression identifying the set of records that constitutes the domain.
criteria | An optional string expression used to restrict the range of data on which the DFirst or DLast function is performed. For example, criteria is often equivalent to the WHERE clause in an SQL expression, without the word WHERE. If criteria is omitted, the DFirst and DLast functions evaluate expr against the entire domain. Any field that is included in criteria must also be a field in domain; otherwise, the DFirst and DLast functions return a Null.

Remarks

Note If you want to return the first or last record in a set of records (a domain), you should create a query sorted as either ascending or descending and set the TopValues property to 1. For more information, see the TopValues property topic. From Visual Basic, you can also create a Recordset object, and use the MoveFirst or MoveLast method to return the first or last record in a set of records.


 DLookup Function

DLookup Function

You can use the DLookup function to get the value of a particular field from a specified set of records (a domain). Use the DLookup function in Visual Basic, a macro, a query expression, or a calculated control on a form or report.

You can use the DLookup function to display the value of a field that isn't in the record source for your form or report. For example, suppose you have a form based on an Order Details table. The form displays the OrderID, ProductID, UnitPrice, Quantity, and Discount fields. However, the ProductName field is in another table, the Products table. You could use the DLookup function in a calculated control to display the ProductName on the same form.

Syntax

DLookup(expr, domain[, criteria])

The DLookup function has the following arguments.

Argument | Description
expr | An expression that identifies the field whose value you want to return. It can be a string expression identifying a field in a table or query, or it can be an expression that performs a calculation on data in that field. In expr, you can include the name of a field in a table, a control on a form, a constant, or a function. If expr includes a function, it can be either built-in or user-defined, but not another domain aggregate or SQL aggregate function.
domain | A string expression identifying the set of records that constitutes the domain. It can be a table name or a query name.
criteria | An optional string expression used to restrict the range of data on which the DLookup function is performed. For example, criteria is often equivalent to the WHERE clause in an SQL expression, without the word WHERE. If criteria is omitted, the DLookup function evaluates expr against the entire domain. Any field that is included in criteria must also be a field in domain; otherwise, the DLookup function returns a Null.

Remarks

The DLookup function returns a single field value based on the information specified in criteria. Although criteria is an optional argument, if you don't supply a value for criteria, the DLookup function returns a random value in the domain.

If no record satisfies criteria or if domain contains no records, the DLookup function returns a Null.

If more than one field meets criteria, the DLookup function returns the first occurrence. You should specify criteria that will ensure that the field value returned by the DLookup function is unique. You may want to use a primary key value for your criteria, such as [EmployeeID] in the following example, to ensure that the DLookup function returns a unique value:

Dim varX As Variant
varX = DLookup("[LastName]", "Employees", "[EmployeeID] = 1")

Whether you use the DLookup function in a macro or module, a query expression, or a calculated control, you must construct the criteria argument carefully to ensure that it will be evaluated correctly.

You can use the DLookup function to specify criteria in the Criteria row of a query, within a calculated field expression in a query, or in the Update To row in an update query.

You can also use the DLookup function in an expression in a calculated control on a form or report if the field that you need to display isn't in the record source on which your form or report is based. For example, suppose you have an Order Details form based on an Order Details table with a text box called ProductID that displays the ProductID field. To look up ProductName from a Products table based on the value in the text box, you could create another text box and set its ControlSource property to the following expression:

=DLookup("[ProductName]", "Products", "[ProductID] =" _
     & Forms![Order Details]!ProductID)

Tips

  • Although you can use the DLookup function to display a value from a field in a foreign table, it may be more efficient to create a query that contains the fields that you need from both tables and then to base your form or report on that query.

  • You can also use the Lookup Wizard to find values in a foreign table.

Note Unsaved changes to records in domain aren't included when you use this function. If you want the DLookup function to be based on the changed values, you must first save the changes by clicking Save Record on the File menu, moving the focus to another record, or by using the Update method.


 DMin, DMax Functions

DMin, DMax Functions

You can use the DMin and DMax functions to determine the minimum and maximum values in a specified set of records (a domain). Use the DMin and DMax functions in Visual Basic, a macro, a query expression, or a calculated control.

For example, you could use the DMin and DMax functions in calculated controls on a report to display the largest and smallest order amounts for a particular customer. Or you could use the DMin function in a query expression to display all orders with a discount greater than the minimum possible discount.

Syntax

DMin(expr, domain[, criteria])

DMax(expr, domain[, criteria])

The DMin and DMax functions have the following arguments.

Argument | Description
expr | An expression that identifies the field for which you want to find the minimum or maximum value. It can be a string expression identifying a field in a table or query, or it can be an expression that performs a calculation on data in that field. In expr, you can include the name of a field in a table, a control on a form, a constant, or a function. If expr includes a function, it can be either built-in or user-defined, but not another domain aggregate or SQL aggregate function.
domain | A string expression identifying the set of records that constitutes the domain. It can be a table name or a query name.
criteria | An optional string expression used to restrict the range of data on which the DMin or DMax function is performed. For example, criteria is often equivalent to the WHERE clause in an SQL expression, without the word WHERE. If criteria is omitted, the DMin and DMax functions evaluate expr against the entire domain. Any field that is included in criteria must also be a field in domain, otherwise the DMin and DMax functions returns a Null.

Remarks

The DMin and DMax functions return the minimum and maximum values that satisfy criteria. If expr identifies numeric data, the DMin and DMax functions return numeric values. If expr identifies string data, they return the string that is first or last alphabetically.

The DMin and DMax functions ignore Null values in the field referenced by expr. However, if no record satisfies criteria or if domain contains no records, the DMin and DMax functions return a Null.

Whether you use the DMin or DMax function in a macro, module, query expression, or calculated control, you must construct the criteria argument carefully to ensure that it will be evaluated correctly.

You can use the DMin and DMax function to specify criteria in the Criteria row of a query, in a calculated field expression in a query, or in the Update To row of an update query.

Note You can use the DMin and DMax functions or the Min and Max functions in a calculated field expression in a totals query. If you use the DMin or DMax function, values are evaluated before the data is grouped. If you use the Min or Max function, the data is grouped before values in the field expression are evaluated.

Use the DMin or DMax function in a calculated control when you need to specify criteria to restrict the range of data on which the function is performed. For example, to display the maximum freight charged for an order shipped to California, set the ControlSource property of a text box to the following expression:

=DMax("[Freight]", "Orders", "[ShipRegion] = 'CA'")

If you simply want to find the minimum or maximum value of all records in domain, use the Min or Max function.

You can use the DMin or DMax function in a module or macro or in a calculated control on a form if the field that you need to display is not in the record source on which your form is based.

Tip Although you can use the DMin or DMax function to find the minimum or maximum value from a field in a foreign table, it may be more efficient to create a query that contains the fields that you need from both tables, and base your form or report on that query.

Note Unsaved changes to records in domain aren't included when you use these functions. If you want the DMax or DMin function to be based on the changed values, you must first save the changes by clicking Save Record on the File menu, moving the focus to another record, or by using the Update method.


 Domain Aggregate Functions

Domain Aggregate Functions

Aggregate functions provide statistical information about sets of records (a domain). For example, you can use an aggregate function to count the number of records in a particular set of records, or to determine the average of values in a particular field.

The two types of aggregate functions, domain aggregate functions and SQL aggregate functions, provide similar functionality but are used in different situations. The SQL aggregate functions can be included in the syntax of an SQL statement, but can't be called directly from Visual Basic. Conversely, the domain aggregate functions can be called directly from Visual Basic code. They can also be included in an SQL statement, but an SQL aggregate function is generally more efficient.

If you are performing statistical calculations from within code, you must use the domain aggregate functions. You can also use the domain aggregate functions to specify criteria, update values, or create calculated fields in a query expression. You can use either the SQL aggregate or domain aggregate functions in a calculated control on a form or report.

The domain aggregate functions include:

DAvg Function

DCount Function

DLookup Function

DFirst, DLast Functions

DMin, DMax Functions

DStDev, DStDevP Functions

DSum Function

DVar, DVarP Functions


 DStDev, DStDevP Functions

DStDev, DStDevP Functions

You can use the DStDev and DStDevP functions to estimate the standard deviation across a set of values in a specified set of records (a domain). Use the DStDev and DStDevP functions in Visual Basic, a macro, a query expression, or a calculated control on a form or report.

Use the DStDevP function to evaluate a population, and the DStDev function to evaluate a population sample.

For example, you could use the DStDev function in a module to calculate the standard deviation across a set of students' test scores.

Syntax

DStDev(expr, domain[, criteria])

DStDevP(expr, domain[, criteria])

The DStDev and DStDevP functions have the following arguments.

Argument | Description
expr | An expression that identifies the numeric field on which you want to find the standard deviation. It can be a string expression identifying a field from a table or query, or it can be an expression that performs a calculations on data in that field. In expr, you can include the name of a field in a table, a control on a form, a constant, or a function. If expr includes a function, it can be either built-in or user-defined, but not another domain aggregate or SQL aggregate function.
domain | A string expression identifying the set of records that constitutes the domain. It can be a table name or a query name.
criteria | An optional string expression used to restrict the range of data on which the DStDev or DStDevP function is performed. For example, criteria is often equivalent to the WHERE clause in an SQL expression, without the word WHERE. If criteria is omitted, the DStDev and DStDevP functions evaluate expr against the entire domain. Any field that is included in criteria must also be a field in domain; otherwise, the DStDev and DStDevP functions will return a Null.

Remarks

If domain refers to fewer than two records or if fewer than two records satisfy criteria, the DStDev and DStDevP functions return a Null, indicating that a standard deviation can't be calculated.

Whether you use the DStDev or DStDevP function in a macro, module, query expression, or calculated control, you must construct the criteria argument carefully to ensure that it will be evaluated correctly.

You can use the DStDev and DStDevP functions to specify criteria in the criteria row of a select query. For example, you could create a query on an Orders table and a Products table to display all products for which the freight cost fell above the mean plus the standard deviation for freight cost. The criteria row beneath the Freight field would contain the following expression:

>(DStDev("[Freight]", "Orders") + DAvg("[Freight]", "Orders"))

You can use the DStDev and DStDevP functions within a calculated field expression in a query, or in the Update To row of an update query.

Note You can use the DStDev and DStDevP functions or the StDev and StDevP functions in a calculated field expression in a totals query. If you use the DStDev or DStDevP function, values are calculated before data is grouped. If you use the StDev or StDevP function, the data is grouped before values in the field expression are evaluated.

Use the DStDev and DStDevP function in a calculated control when you need to specify criteria to restrict the range of data on which the function is performed. For example, to display standard deviation for orders to be shipped to California, set the ControlSource property of a text box to the following expression:

=DStDev("[Freight]", "Orders", "[ShipRegion] = 'CA'")

If you simply want to find the standard deviation across all records in domain, use the StDev or StDevP function.

Tip If the data type of the field from which expr is derived is a number, the DStDev and DStDevP functions return a Double data type. If you use the DStDev or DStDevP function in a calculated control, include a data type conversion function in the expression to improve performance.

Note Unsaved changes to records in domain are not included when you use these functions. If you want the DStDev or DStDevP function to be based on the changed values, you must first save the changes by clicking Save Record on the File menu, moving the focus to another record, or by using the Update method.


 DSum Function

DSum Function

You can use the DSum functions to calculate the sum of a set of values in a specified set of records (a domain). Use the DSum function in Visual Basic, a macro, a query expression, or a calculated control.

For example, you could use the DSum function in a calculated field expression in a query to calculate the total sales made by a particular employee over a period of time. Or you could use the DSum function in a calculated control to display a running sum of sales for a particular product.

Syntax

DSum(expr, domain[, criteria])

The DSum function has the following arguments.

Argument | Description
expr | An expression that identifies the numeric field whose values you want to total. It can be a string expression identifying a field in a table or query, or it can be an expression that performs a calculation on data in that field. In expr, you can include the name of a field in a table, a control on a form, a constant, or a function. If expr includes a function, it can be either built-in or user-defined, but not another domain aggregate or SQL aggregate function.
domain | A string expression identifying the set of records that constitutes the domain. It can be a table name or a query name.
criteria | An optional string expression used to restrict the range of data on which the DSum function is performed. For example, criteria is often equivalent to the WHERE clause in an SQL expression, without the word WHERE. If criteria is omitted, the DSum function evaluates expr against the entire domain. Any field that is included in criteria must also be a field in domain; otherwise, the DSum function returns a Null.

Remarks

If no record satisfies the criteria argument or if domain contains no records, the DSum function returns a Null.

Whether you use the DSum function in a macro, module, query expression, or calculated control, you must construct the criteria argument carefully to ensure that it will be evaluated correctly.

You can use the DSum function to specify criteria in the Criteria row of a query, in a calculated field in a query expression, or in the Update To row of an update query.

Note You can use either the DSum or Sum function in a calculated field expression in a totals query. If you use the DSum function, values are calculated before data is grouped. If you use the Sum function, the data is grouped before values in the field expression are evaluated.

You may want to use the DSum function when you need to display the sum of a set of values from a field that is not in the record source for your form or report. For example, suppose you have a form that displays information about a particular product. You could use the DSum function to maintain a running total of sales of that product in a calculated control.

Tip If you need to maintain a running total in a control on a report, you can use the RunningSum property of that control if the field on which it is based is included in the record source for the report. Use the DSum function to maintain a running sum on a form.

Note Unsaved changes to records in domain aren't included when you use this function. If you want the DSum function to be based on the changed values, you must first save the changes by clicking Save Record on the File menu, moving the focus to another record, or by using the Update method.


 DVar, DVarP Functions

DVar, DVarP Functions

You can use the DVar and DVarP functions to estimate variance across a set of values in a specified set of records (a domain). Use the DVar and DVarP functions in Visual Basic, a macro, a query expression, or a calculated control on a form or report.

Use the DVarP function to evaluate variance across a population, and the DVar function to evaluate variance across a population sample.

For example, you could use the DVar function to calculate the variance across a set of students' test scores.

Syntax

DVar(expr, domain[, criteria])

DVarP(expr, domain[, criteria])

The DVar and DVarP functions have the following arguments.

Argument | Description
expr | An expression that identifies the numeric field on which you want to find the variance. It can be a string expression identifying a field from a table or query, or it can be an expression that performs a calculation on data in that field. In expr, you can include the name field in a table, a control on a form, a constant, or a function. If expr includes a function, it can be either built-in or user-defined, but not another domain aggregate or SQL aggregate function. Any field included in expr must be a numeric field.
domain | A string expression identifying the set of records that constitutes the domain. It can be a table name or a query name.
criteria | An optional string expression used to restrict the range of data on which the DVar or DVarP function is performed. For example, criteria is often equivalent to the WHERE clause in an SQL expression, without the word WHERE. If criteria is omitted, the DVar and DVarP functions evaluate expr against the entire domain. Any field that is included in criteria must also be a field in domain; otherwise the DVar and DVarP functions return a Null.

Remarks

If domain refers to fewer than two records or if fewer than two records satisfy criteria, the DVar and DVarP functions return a Null, indicating that a variance can't be calculated.

Whether you use the DVar or DVarP function in a macro, module, query expression, or calculated control, you must construct the criteria argument carefully to ensure that it will be evaluated correctly.

You can use the DVar and DVarP function to specify criteria in the Criteria row of a select query, in a calculated field expression in a query, or in the Update To row of an update query.

Note You can use the DVar and DVarP functions or the Var and VarP functions in a calculated field expression in a totals query. If you use the DVar or DVarP function, values are calculated before data is grouped. If you use the Var or VarP function, the data is grouped before values in the field expression are evaluated.

Use the DVar and DVarP functions in a calculated control when you need to specify criteria to restrict the range of data on which the function is performed. For example, to display a variance for orders to be shipped to California, set the ControlSource property of a text box to the following expression:

=DVar("[Freight]", "Orders", "[ShipRegion] = 'CA'")

If you simply want to find the standard deviation across all records in domain, use the Var or VarP function.

Note Unsaved changes to records in domain are not included when you use these functions. If you want the DVar or DVarP function to be based on the changed values, you must first save the changes by clicking Save Record on the File menu, moving the focus to another record, or by using the Update method.


 EuroConvert Function

EuroConvert Function

You can use the EuroConvert function to convert a number to euro or from euro to a participating currency. You can also use it to convert a number from one participating currency to another by using the euro as an intermediary (triangulation). The EuroConvert function uses fixed conversion rates established by the European Union.

Syntax

EuroConvert(number, sourcecurrency, targetcurrency[, fullprecision, triangulationprecision])

Argument | Description
number | The number you want to convert, or a reference to a field containing the number.
sourcecurrency | A string expression, or reference to a field containing the string, corresponding to the International Standards Organization (ISO) acronym for the currency you want to convert. Can be one of the ISO codes listed in the following table.
 | Currency | ISO Code |  | Calculation Precision | Display Precision
 | Belgian franc | BEF |  | 0 | 0
 | Luxembourg franc | LUF |  | 0 | 0
 | Deutsche mark | DEM |  | 2 | 2
 | Spanish peseta | ESP |  | 0 | 0
 | French franc | FRF |  | 2 | 2
 | Irish punt | IEP |  | 2 | 2
 | Italian lira | ITL |  | 0 | 0
 | Netherlands guilder | NLG |  | 2 | 2
 | Austrian schilling | ATS |  | 2 | 2
 | Portuguese escudo | PTE |  | 1 | 2
 | finish Markka | FIM |  | 2 | 2
 | euro | EUR |  | 2 | 2
 | In the preceding table, the calculation precision determines what currency unit to round the result to based on the conversion currency. For example, when converting to Deutsche marks, the calculation precision is 2, and the result is rounded to the nearest pfennig, 100 pfennigs to a mark. The display precision determines how many decimal places appear in the field containing the result.
 | Later versions of the EuroConvert function may support additional currencies. For information about new participating currencies and updates to the EuroConvert function, Learn about euro currency support for Microsoft Windows 95 and Windows NT 4.0.
 | Currency |  | ISO Code
 | Danish Krone |  | DKK
 | Drachma |  | GRD
 | Swedish Krona |  | SEK
 | Pound Sterling |  | GBP
targetcurrency | A string expression, or reference to a field containing the string, corresponding to the ISO code of the currency to which you want to convert the number. For a list of ISO codes, see the sourcecurrency argument description.
fullprecision | Optional. A Boolean value where True (1) ignores the currency-specific rounding rules (called display precision in sourcecurrency argument description) and uses the 6-significant-digit conversion factor with no follow-up rounding. False (0) uses the currency-specific rounding rules to display the result. If the parameter is omitted, the default value is False.
triangulationprecision | Optional. An Integer value greater than or equal to 3 that specifies the number of significant digits in the calculation precision used for the intermediate euro value when converting between two national currencies.

Remarks

Any trailing zeros are truncated and invalid parameters return #Error.

If the source ISO code is the same as the target ISO code, the original value of the number is active.

This function does not apply a format.

The EuroConvert function uses the current rates established by the European Union. If the rates change, Microsoft will update the function. To get full information about the rules and the rates currently in effect, see the European Commission publications about the euro. For information about obtaining these publications, see the Microsoft Office Euro Currency Web site, Learn about euro currency support for Microsoft Windows 95 and Windows NT 4.0.

Examples

The first example converts 1.20 Deutsche marks to a euro dollar value (answer = 0.61). The second example converts 1.47 French francs to Deutsche marks (answer = 0.44 DM). They assume conversion rates of 1 euro = 6.55858 French francs and 1.92974 Deutsche marks.

EuroConvert(1.20,"DEM","EUR")
EuroConvert(1.47,"FRF","DEM",TRUE,3)


 Eval Function

Eval Function

You can use the Eval function to evaluate an expression that results in a text string or a numeric value.

You can construct a string and then pass it to the Eval function as if the string were an actual expression. The Eval function evaluates the string expression and returns its value. For example, Eval("1 + 1") returns 2.

If you pass to the Eval function a string that contains the name of a function, the Eval function returns the return value of the function. For example, Eval("Chr$(65)") returns "A".

Syntax

Eval(stringexpr)

The stringexpr argument is an expression that evaluates to an alphanumeric text string. For example, stringexpr can be a function that returns a string or a numeric value. Or it can be a reference to a control on a form. The stringexpr argument must evaluate to a string or numeric value; it can't evaluate to a Microsoft Access object.

Note If you are passing the name of a function to the Eval function, you must include parentheses after the name of the function in the stringexpr argument. For example:

' ShowNames is user-defined function.
Debug.Print Eval("ShowNames()")
Debug.Print Eval("StrComp(""Joe"",""joe"", 1)")
Debug.Print Eval("Date()")

Remarks

You can use the Eval function in a calculated control on a form or report, or in a macro or module. The Eval function returns a Variant that is either a string or a numeric type.

The argument stringexpr must be an expression that is stored in a string. If you pass to the Eval function a string that doesn't contain a numeric expression or a function name but only a simple text string, a run-time error occurs. For example, Eval("Smith") results in an error.

You can use the Eval function to determine the value stored in the Value property of a control. The following example passes a string containing a full reference to a control to the Eval function. It then displays the current value of the control in a dialog box.

Dim ctl As Control, strCtl As String
Set ctl = Forms!Employees!LastName
strCtl = "Forms!Employees!LastName"
MsgBox ("The current value of " & ctl.Name & " is " & Eval(strCtl))

You can use the Eval function to access expression operators that aren't ordinarily available in Visual Basic. For example, you can't use the SQL operators Between...And or In directly in your code, but you can use them in an expression passed to the Eval function.

The next example determines whether the value of a ShipRegion control on an Orders form is one of several specified state abbreviations. If the field contains one of the abbreviations, intState will be True (-1). Note that you use single quotation marks (') to include a string within another string.

Dim intState As Integer
intState = Eval("Forms!Orders!ShipRegion In " _
    & "('AK', 'CA', 'ID', 'WA', 'MT', 'NM', 'OR')")


 GUIDFromString Function

GUIDFromString Function

The GUIDFromString function converts a string to a GUID, which is an array of type Byte.

Syntax

GUIDFromString(stringexpression)

The GUIDFromString function has the following argument.

Argument | Description
stringexpression | A string expression which evaluates to a GUID in string form.

Remarks

The Microsoft Jet database engine stores GUIDs as arrays of type Byte. However, Microsoft Access can't return Byte data from a control on a form or report. In order to return the value of a GUID from a control, you must convert it to a string. To convert a GUID to a string, use the StringFromGUID function. To convert a string to a GUID, use the GUIDFromString function.


 Nz Function

Nz Function

You can use the Nz function to return zero, a zero-length string (" "), or another specified value when a Variant is Null. For example, you can use this function to convert a Null value to another value and prevent it from propagating through an expression.

Syntax

Nz(variant[, valueifnull])

The Nz function has the following arguments.

Argument | Description
variant | A variable of data type Variant.
valueifnull | Optional (unless used in a query). A Variant that supplies a value to be returned if the variant argument is Null. This argument enables you to return a value other than zero or a zero-length string. Note If you use the Nz function in an expression in a query without using the valueifnull argument, the results will be a zero-length string in the fields that contain null values.

If the value of the variant argument is Null, the Nz function returns the number zero or a zero-length string (always returns a zero-length string when used in a query expression), depending on whether the context indicates the value should be a number or a string. If the optional valueifnull argument is included, then the Nz function will return the value specified by that argument if the variant argument is Null. When used in a query expression, the NZ function should always include the valueifnull argument,

If the value of variant isn't Null, then the Nz function returns the value of variant.

Remarks

The Nz function is useful for expressions that may include Null values. To force an expression to evaluate to a non-Null value even when it contains a Null value, use the Nz function to return a zero, a zero-length string, or a custom return value.

For example, the expression 2 + varX will always return a Null value when the Variant varX is Null. However, 2 + Nz(varX) returns 2.

You can often use the Nz function as an alternative to the IIf function. For example, in the following code, two expressions including the IIf function are necessary to return the desired result. The first expression including the IIf function is used to check the value of a variable and convert it to zero if it is Null.

varTemp = IIf(IsNull(varFreight), 0, varFreight)
varResult = IIf(varTemp > 50, "High", "Low")

In the next example, the Nz function provides the same functionality as the first expression, and the desired result is achieved in one step rather than two.

varResult = IIf(Nz(varFreight) > 50, "High", "Low")

If you supply a value for the optional argument valueifnull, that value will be returned when variant is Null. By including this optional argument, you may be able to avoid the use of an expression containing the IIf function. For example, the following expression uses the IIf function to return a string if the value of varFreight is Null.

varResult = IIf(IsNull(varFreight), _
    "No Freight Charge", varFreight)

In the next example, the optional argument supplied to the Nz function provides the string to be returned if varFreight is Null.

varResult = Nz(varFreight, "No Freight Charge")


 StringFromGUID Function

StringFromGUID Function

The StringFromGUID function converts a GUID, which is an array of type Byte, to a string.

Syntax

StringFromGUID(guid)

The StringFromGUID function has the following argument.

Argument | Description
guid | An array of Byte data used to uniquely identify an application, component, or item of data to the operating system.

Remarks

The Microsoft Jet database engine stores GUIDs as arrays of type Byte. However, Microsoft Access can't return Byte data from a control on a form or report. In order to return the value of a GUID from a control, you must convert it to a string. To convert a GUID to a string, use the StringFromGUID function. To convert a string back to a GUID, use the GUIDFromString function.

For example, you may need to refer to a field that contains a GUID when using database replication. To return the value of a control on a form bound to a field that contains a GUID, use the StringFromGUID function to convert the GUID to a string.

Note that in order to bind a control to the s_GUID field of a replicated table, you must click Options on the Tools menu and select the System Objects check box on the View tab of the Options dialog box.


Methods Reference

The following reference groups all methods by object or collection and lists them alphabetically. A double asterisk (**) indicates that the method was added for Microsoft Access 2000.

Grouped by Object or Collection

AccessObject | AccessObjectProperties
AccessObjectProperty | AllDataAccessPages
AllDatabaseDiagrams | AllForms
AllMacros | AllModules
AllQueries | AllReports
AllStoredProcedures | AllTables
AllViews | Application
Assistant (Office) | CodeData
CodeProject | Collection (VBA)
ComAddIns (Office) | Command (ADO)
Connection (ADO) | Connection (ADO)
Container, Containers (DAO) | Connection, Connections (DAO)
Controls | Control
CurrentProject | CurrentData
DataAccessPages | DataAccessPage
DBEngine (DAO) | Database, Databases (DAO)
DefaultWebOptions | Debug (VBA)
Document, Documents (DAO) | DoCmd
Error (ADO) | Err (VBA)
Errors (ADO) | Error, Errors (DAO)
Field, Fields (DAO) | Field (ADO)
FileSearch (Office) | Fields (ADO)
Group, Groups (DAO) | Form
Module | Index, Indexes (DAO)
Page | Modules
Pages | Page
Parameter (ADO) | Pages
Parameters (ADO) | Parameter, Parameters (DAO)
Property, Properties (DAO) | Property (ADO)
QueryDef, QueryDefs (DAO) | Properties (ADO)
Recordset, Recordsets (DAO) | Recordset (ADO)
References | Reference
Report | Relation, Relations (DAO)
TableDef, TableDefs (DAO) | Screen
VBE (VBA) | User, Users (DAO)
Workspace, Workspaces (DAO) | WebOptions

Listed Alphabetically

A-C

AccessError | Close (ADO)
Add (AccessObjectProperties Collection)** | Close (DAO)
Add (FormatConditions Collection)** | Close
Add (VBA) | CloseConnection**
Add (Pages collection) | CloseCurrentDatabase
AddFromFile (Module object) | CodeDb
AddFromFile (References collection) | CommitTrans (ADO)
AddFromGUID | CommitTrans (DAO)
AddFromString | CompactDatabase (DAO)
AddMenu** | CompareBookmarks (ADO)
AddNew (ADO) | CopyObject
AddNew (DAO) | CopyQueryDef (DAO)
AddToFavorites | CreateControl
Append (ADO) | CreateDataAccessPage**
Append (DAO) | CreateDatabase (DAO)
AppendChunk (ADO) | CreateEventProc
AppendChunk (DAO) | CreateField (DAO)
ApplyFilter | CreateForm
ApplyTheme** | CreateGroup (DAO)
Beep | CreateGroupLevel
BeginTrans (ADO) | CreateIndex (DAO)
BeginTrans (DAO) | CreateNewDocument**
BuildCriteria | CreateParameter (ADO)
Cancel (ADO) | CreateProperty (DAO)
Cancel (DAO) | CreateQueryDef (DAO)
CancelBatch (ADO) | CreateRelation (DAO)
CancelEvent | CreateReport
CancelUpdate (ADO) | CreateReportControl
CancelUpdate (DAO) | CreateTableDef (DAO)
Circle | CreateUser (DAO)
Clear (ADO) | CreateWorkspace (DAO)
Clear (VBA) | CurrentDb
Clone (ADO) | CurrentUser
Clone (DAO) |

D-F

DefaultControl | Execute (ADO Command Object)
DefaultWorkspaceClone | Execute (ADO Connection Object)
Delete (ADO Fields Collection) | Execute (DAO)
Delete (ADO Parameters Collection) | FillCache (DAO)
Delete (ADO Recordset Collection) | Find
Delete (DAO) | Find (ADO)
Delete (FormatCondition Object)** | FindFirst (DAO)
Delete (FormatConditions Collection)** | FindLast (DAO)
DeleteLines | FindNext (DAO)
DeleteObject | FindNext
DoMenuItem | FindPrevious (DAO)
Dropdown | FindRecord
Echo (DoCmd object) | Follow
Echo (Application object) | FollowHyperlink
Edit (DAO) |

G-M

GetChunk (ADO) | LoadPicture
GetChunk (DAO) | MakeReplica (DAO)
GetHiddenAttribute** | Maximize
GetOption | Minimize
GetRows (ADO) | Modify (FormatCondition Object)**
GetRows (DAO) | Move (ADO)
GoToControl | Move (DAO)
GoToPage (DoCmd object) | MoveFirst (ADO)
GoToPage (Form object) | MoveFirst (DAO)
GoToRecord | MoveLast (ADO)
GetString (ADO) | MoveLast (DAO)
Hourglass | MoveNext (ADO)
Idle (DAO) | MoveNext (DAO)
InsertLines | MovePrevious (ADO)
InsertText | MovePrevious (DAO)
Item (VBA) | MoveSize
Line |

N-Q

NewAccessProject** | OpenQuery
NewCurrentDatabase | OpenRecordset (DAO)
NewPassword (DAO) | OpenReport
NextRecordset (ADO) | OpenSchema (ADO)
NextRecordset (DAO) | OpenStoredProcedure**
Open (ADO Connection Object) | OpenTable
Open (ADO Recordset Object) | OpenView**
OpenAccessProject** | OutputTo
OpenConnection** | PopulatePartial (DAO)
OpenConnection (DAO) | Print (VBA)
OpenCurrentDatabase | Print
OpenDataAccessPage** | PrintOut
OpenDatabase (DAO) | PSet
OpenDiagram** | Quit (DoCmd object)
OpenForm | Quit(Application object)
OpenModule |

R

Raise (VBA) | RepaintObject
Recalc | RepairDatabase (DAO)
Refresh | ReplaceLine
Refresh (ADO) | Requery (ADO)
Refresh (DAO) | Requery (DAO)
RefreshDatabaseWindow | Requery (DoCmd object)
RefreshLink (DAO) | Requery (Control or Form object)
RefreshTitleBar | Restore
RegisterDatabase (DAO) | Resync (ADO)
Remove (AccessObjectProperties Collection)** | RollbackTrans (ADO)
Remove (VBA) | Rollback (DAO)
Remove (Pages collection) | Run
Remove (References collection) | RunCommand
Rename | RunMacro
Repaint | RunSQL

S-Z

Save | SizeToFit
Save (ADO) | Supports (ADO)
Scale | Synchronize (DAO)
Seek (ADO) | SysCmd
Seek (DAO) | TextHeight
SelectObject | TextWidth
SendObject | TransferDatabase
SetFocus | TransferSpreadsheet
SetHiddenAttribute** | TransferText
SetMenuItem | Undo
SetOption (DAO) | Update (ADO)
SetOption | Update (DAO)
SetWarnings | UpdateBatch (ADO)
ShowAllRecords | UseDefaultFolderSuffix**
ShowToolbar |


 New Methods (Alphabetic List)

New Methods (Alphabetic List)

Methods that were added to Microsoft Access 2000 are listed in the following table.

A-H

Add (AccessObjectProperties Collection)

Add (FormatConditions Collection)

AddMenu

ApplyTheme

CloseConnection

CreateAccessProject

 CreateDataAccessPage

CreateNewDocument

Delete (FormatCondition Object)

Delete (FormatConditions Collection)

GetHiddenAttribute

I-Q

Modify (FormatCondition Object)

NewAccessProject

OpenAccessProject

OpenConnection

 OpenDataAccessPage

OpenDiagram

OpenStoredProcedure

OpenView

R-Z

Remove (AccessObjectProperties Collection)

SetHiddenAttribute

 UseDefaultFolderSuffix

Microsoft Office methods

To see a list of the new methods available in the Microsoft Office 9.0 Object Library, open the Microsoft Office Visual Basic Reference in the Help contents.

To use the objects supplied by Microsoft Office, you must set a reference to the Microsoft Office 9.0 Object Library when the Visual Basic Editor is open by clicking References on the Tools Menu and selecting the check box next to this library.

Microsoft Visual Basic Editor methods

To see a list of the new methods available in the Microsoft Visual Basic for Applications Extensibility 5.3 Object Library, open the Microsoft Visual Basic Reference in the Help contents.

To use the objects supplied by the Microsoft Visual Basic Editor, you must set a reference to the Microsoft Visual Basic for Applications Extensibility 5.3 Object Library. To set this reference, open the Visual Basic Editor and click References on the Tools Menu and select the check box next to this library.


 AboutBox Method (Snapshot Viewer)

AboutBox Method (Snapshot Viewer)

The AboutBox method displays the About dialog box for the Microsoft Snapshot Viewer control.

Syntax

object.AboutBox

The AboutBox method has the following arguments.

Argument | Description
object | An object representing a Snapshot Viewer control.

Remarks

When you use the AboutBox method, the Microsoft Snapshot Viewer control About box is displayed.


AccessError Method

You can use the AccessError method to return the descriptive string associated with a Microsoft Access error or an ADO error.

Syntax

[application.]AccessError(errornumber)

The AccessError method has the following arguments.

Argument | Description
application | Optional. The Application object.
errornumber | The number of the error for which you wish to return a descriptive string.

Remarks

You can use the AccessError method to return the descriptive string associated with a Microsoft Access error or an ADO error when the error hasn't actually occurred.

You can use the Visual Basic Raise method to raise a Visual Basic error. Once you've raised the error, you can determine its associated descriptive string by reading the Description property of the Err object.

You can't use the Raise method to raise a Microsoft Access error or an ADO error. However, you can use the AccessError method to return the descriptive string associated with these errors, without having to generate the error.

You can use the AccessError method to return a descriptive string from within a form's Error event.

If the Microsoft Access error has occurred, you can return the descriptive string by using either the AccessError method or the Description property of the Visual Basic Err object.


 Add Method (AccessObjectProperties Collection)

Add Method (AccessObjectProperties Collection)

You can use the Add method to add a new property as an AccessObjectProperty object to the AccessObjectProperties collection of an AccessObject object.

Syntax

object.Add propertyname, value

The Add method has the following arguments.

Argument | Description
object | A string expression that evaluates to the AccessObjectProperties collection of an AccessObject object.
propertyname | A string expression that's the name of the new property.
value | A Variant value corresponding to the option setting. The setting of the value argument depends on the possible settings for a particular option. Can be a constant value or a string value.

Remarks

You can use the Remove method of the AccessObjectProperties collection to delete an existing property.


 Add Method (FormatConditions Collection)

Add Method (FormatConditions Collection)

You can use the Add method to add a conditional format as a FormatCondition object to the FormatConditions collection of a combo box or text box control.

Syntax

object.Add type [, operator][, expression1][, expression2]

The Add method has the following arguments.

Argument | Description
object | A string expression that evaluates to the FormatConditions collection of a combo box or text box control.
type | One of the following intrinsic constants: acExpression acFieldHasFocus acFieldValue
operator | One of the following intrinsic constants: acBetween (default) acEqual acGreaterThan acGreaterThanOrEqual acLessThan acLessThanOrEqual acNotBetween acNotEqual
 | If the type argument is acExpression, the operator argument is ignored. If you leave this argument blank, the default constant (acBetween) is assumed.
expression1 | A Variant value or expression associated with the first part of the conditional format. Can be a constant value or a string value.
expression2 | A Variant value or expression associated with the second part of the conditional format when the operator argument is acBetween or acNotBetween (otherwise, this argument is ignored). Can be a constant value or a string value.

Remarks

You can use the Delete method of the FormatConditions collection to delete an existing FormatConditions collection from a combo box or text box control.


 Add Method (Pages Collection)

Add Method (Pages Collection)

The Add method adds a new Page object to the Pages collection of a tab control.

Syntax

object.Add [before]

The Add method has the following arguments.

Argument | Description
object | The Pages collection of a tab control.
before | An integer that specifies the index of the Page object before which the new Page object should be added. The index of the Page object corresponds to the value of the PageIndex property for that Page object. If you omit this argument, the new Page object is added to the end of the collection.

Remarks

The first Page object in the Pages collection corresponds to the leftmost page in the tab control and has an index of 0. The second Page object is immediately to the right of the first page and has an index of 1, and so on for all the Page objects in the tab control.

If you specify 0 for the before argument, the new Page object is added before the first Page object in the Pages collection. The new Page object then becomes the first Page object in the collection, with an index of 0.

You can add a Page object to the Pages collection of a tab control only when the form is in Design view.


 AddFromFile Method (Module Object)

AddFromFile Method (Module Object)

The AddFromFile method adds the contents of a text file to a Module object. The Module object may represent a standard module or a class module.

Syntax

object.AddFromFile filename

The AddFromFile method has the following arguments.

Argument | Description
object | A Module object.
filename | The name and full path of a text (.txt) file or another file that stores text in an ANSI format.

Remarks

The AddFromFile method places the contents of the specified text file immediately after the Declarations section and before the first procedure in the module if it contains other procedures.

The AddFromFile method enables you to import code or comments stored in a text file.

In order to add the contents of a file to a form or report module, the form or report must be open in form Design view or report Design view. In order to add the contents of a file to a standard module or class module, the module must be open.


 AddFromFile Method (References Collection)

AddFromFile Method (References Collection)

The AddFromFile method creates a reference to a type library in a specified file.

Syntax

Set object = References.AddFromFile(filename)

The AddFromFile method has the following arguments.

Argument | Description
object | A Reference object.
filename | A string expression that evaluates to the full path and file name of the file containing the type library to which you wish to set a reference.

Remarks

The following table lists types of files that commonly contain type libraries.

File extension | Type of file
.olb, .tlb | Type library file
.mdb, .mda, .mde | Database
.exe, .dll | Executable file
.ocx | ActiveX control


 AddFromGUID Method

AddFromGUID Method

The AddFromGUID method creates a Reference object based on the GUID that identifies a type library.

Syntax

object.AddFromGUID(guid)

The AddFromGUID method has the following arguments.

Argument | Description
object | A Reference object.
guid | A GUID that identifies a type library.

Remarks

The GUID property returns the GUID for a specified Reference object. If you've stored the value of the GUID property, you can use it to re-create a reference that's been broken.


 AddFromString Method

AddFromString Method

The AddFromString method adds a string to a Module object. The Module object may represent a standard module or a class module.

Syntax

object.AddFromString stringexpression

The AddFromString method has the following arguments.

Argument | Description
object | A Module object.
stringexpression | A string expression.

Remarks

The AddFromString method places the contents of a string after the Declarations section and before the first existing procedure in the module if the module contains other procedures.

In order to add a string to a form or report module, the form or report must be open in form Design view or report Design view. In order to add a string to a standard module or class module, the module must be open.


 AddMenu Method

AddMenu Method

The AddMenu method carries out the AddMenu action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.AddMenu menuname, menumacroname, statusbartext

The AddMenu method has the following arguments.

Argument | Description
menuname | A string expression that's the valid name of a drop-down menu to add to the custom menu bar or global menu bar.
 | To create an access key so that you can use the keyboard to choose the menu, type an ampersand (&) before the letter you want to be the access key. This letter will be underlined in the menu name on the menu bar.
menumacroname | A string expression that's the valid name of the macro group that contains the macros for the menu's commands. This is a required argument.
statusbartext | A string expression that's the text to display in the status bar when the menu is selected.

Remarks

You must include the menuname and menumacroname arguments in the AddMenu method for custom menu bars and global menu bars. The menuname argument is not required and will be ignored for custom shortcut menus and global shortcut menus.

The statusbartext argument is optional, this argument is ignored for custom shortcut menus and global shortcut menus.


 AddToFavorites Method

AddToFavorites Method

The AddToFavorites method adds a hyperlink address to the Favorites folder.

Syntax

object.hyperlink.AddToFavorites

The AddToFavorites method has the following arguments.

Argument | Description
object | The Application object, or a Control object that contains a hyperlink. Label, command button, and image controls can contain hyperlinks.
hyperlink | The hyperlink of the Control object.

Remarks

When applied to the Application object, the AddToFavorites method adds the name of the current database to the Favorites folder. For example, if you're working in the Northwind sample database, applying the AddToFavorites method to the Application object adds the hyperlink address of the Northwind database to the Favorites folder.

When applied to a Control object, the AddToFavorites method adds the hyperlink address contained in a control to the Favorites folder. The Favorites folder is installed in the Windows folder by default.

The AddToFavorites method has the same effect as clicking AddToFavorites on the Favorites menu on the Web toolbar when the document whose address you wish to add is open.


 ApplyFilter Method

ApplyFilter Method

The ApplyFilter method carries out the ApplyFilter action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.ApplyFilter [filtername][, wherecondition][, filtertype]

The ApplyFilter method has the following arguments.

Argument | Description
filtername | A string expression that's the valid name of a filter or query in the current database.
 | Note When using this method to apply a server filter, the filtername argument must be blank.
wherecondition | A string expression that's a valid SQL WHERE clause without the word WHERE.
filtertype | One of the following intrinsic constants:
 | acFilterNormal (default) acServerFilter

The filter and WHERE condition you apply become the setting of the form's or report's Filter or ServerFilter property.

Remarks

You must include at least one of the two ApplyFilter method arguments. If you enter a value for both arguments, the wherecondition argument is applied to the filter.

The maximum length of the wherecondition argument is 32,768 characters (unlike the Where Condition action argument in the Macro window, whose maximum length is 256 characters).

If you specify the wherecondition argument and leave the filtername argument blank, you must include the filtername argument's comma.


 ApplyTheme Method

ApplyTheme Method

You can use the ApplyTheme method to specify the Microsoft Office theme for a specified data access page.

Syntax

object.ApplyTheme themename

The ApplyTheme method has the following arguments.

Argument | Description
object | Optional. A string expression that evaluates to the DataAccessPage object.
themename | A string expression that's the name of the Office theme.

Remarks

The ApplyTheme method provides a means of changing environment options from Visual Basic code.


Beep Method

The Beep method carries out the Beep action in Visual Basic. For more information on how the action works, see the action topic.

Syntax

DoCmd.Beep

This method has no arguments.

Remarks

You can also use the Visual Basic Beep statement to cause your computer to sound a tone through its speaker.


 BuildCriteria Method

BuildCriteria Method

The BuildCriteria method returns a parsed criteria string as it would appear in the query design grid, in Filter By Form or Server Filter By Form mode. For example, you may want to set a form's Filter or ServerFilter property based on varying criteria from the user. You can use the BuildCriteria method to construct the string expression argument for the Filter or ServerFilter property.

Syntax

application.BuildCriteria(field, fieldtype, expression)

The BuildCriteria method has the following arguments.

Argument | Description
application | (Optional) The Application object.
field | A string expression identifying the field for which you wish to define criteria.
fieldtype | An intrinsic constant denoting the data type of the field. For a list of possible field data types, see the ADO Type property.
expression | A string expression identifying the criteria to be parsed.

The BuildCriteria method returns a string.

Remarks

The BuildCriteria method enables you to easily construct criteria for a filter based on user input. It parses the expression argument in the same way that the expression would be parsed had it been entered in the query design grid, in Filter By Form or Server Filter By Form mode.

For example, a user creating a query on an Orders table might restrict the result set to orders placed after January 1, 1995, by setting criteria on an OrderDate field. The user might enter an expression such as the following one in the Criteria row beneath the OrderDate field:

>1-1-95

Microsoft Access automatically parses this expression and returns the following expression:

>#1/1/95#

The BuildCriteria method provides the same parsing from Visual Basic code. For example, to return the preceding correctly parsed string, you can supply the following arguments to the BuildCriteria method:

Dim strCriteria As String
strCriteria = BuildCriteria("OrderDate", dbDate, ">1-1-95")

Since you need to supply criteria for the Filter property in correctly parsed form, you can use the BuildCriteria method to construct a correctly parsed string.

You can use the BuildCriteria method to construct a string with multiple criteria if those criteria refer to the same field. For example, you can use the BuildCriteria method with the following arguments to construct a string with multiple criteria relating to the OrderDate field:

strCriteria = BuildCriteria("OrderDate", dbDate, ">1-1-95 and <5-1-95")

This example returns the following criteria string:

OrderDate>#1/1/95# And OrderDate<#5/1/95#

However, if you wish to construct a criteria string that refers to multiple fields, you must create the strings and concatenate them yourself. For example, if you wish to construct criteria for a filter to show records for orders placed after 1-1-95 and for which freight is less than $50, you would need to use the BuildCriteria method twice and concatenate the resulting strings.


 CancelEvent Method

CancelEvent Method

The CancelEvent method carries out the CancelEvent action in Visual Basic. For more information on how the action works, see the action topic.

Syntax

DoCmd.CancelEvent

This method has no arguments.

Remarks

The CancelEvent method has an effect only when it's run as the result of an event. This method cancels the event.

All events that can be canceled in Visual Basic have a Cancel argument. You can use this argument instead of the CancelEvent method to cancel the event. The KeyPress event and MouseDown event (for right-clicking only) can be canceled only in macros, not event procedures, so you must use the CancelEvent action in a macro to cancel these events.


 Circle Method

Circle Method

The Circle method draws a circle, an ellipse, or an arc on a Report object when the Print event occurs.

Syntax

object.Circle [Step](x, y), radius[, [color][, [start][, [end][, aspect]]]]

You can use this method only in an event procedure or a macro specified by the event properties for a report section, or the OnPage event property for a report.

The Circle method has the following arguments.

Argument | Description
object | The Report object on which the circle is drawn.
Step | A keyword that indicates that the center of the circle, ellipse, or arc is relative to the current coordinates given by the current settings for the CurrentX and CurrentY properties of the object argument.
x, y | Single values indicating the coordinates of the center point of the circle, ellipse, or arc. The Scale properties (ScaleMode, ScaleLeft, ScaleTop, ScaleHeight, and ScaleWidth) of the Report object specified by the object argument determine the unit of measure used.
radius | A Single value indicating the radius of the circle, ellipse, or arc. The Scale properties (ScaleMode, ScaleLeft, ScaleTop, ScaleHeight, and ScaleWidth) of the Report object specified by the object argument determine the unit of measure used. By default, distances are measured in twips.
color | A Long value indicating the RGB (red-green-blue) color of the circle outline. If this argument is omitted, the value of the ForeColor property is used. You can also use the RGB function or QBColor function to specify the color.
start, end | Single values. When a partial circle or ellipse is drawn, the start and end arguments specify (in radians) the beginning and end positions of the arc. The default value for the start argument is 0 radians; the default for the end argument is 2 pi radians. The range for both is -2 pi radians to 2 pi radians.
aspect | A Single value indicating the aspect ratio of the circle. The default value is 1.0, which yields a perfect (nonelliptical) circle on any screen.

Remarks

When drawing a partial circle or ellipse, if the start argument is negative, the Circle method draws a radius to the position specified by the start argument and treats the angle as positive. If the end argument is negative, the Circle method draws a radius to the position specified by the end argument and again treats the angle as positive. The Circle method always draws in a counterclockwise (positive) direction.

To fill a circle, set the FillColor and FillStyle properties of the report. Only a closed figure can be filled. Closed figures include circles, ellipses, and pie slices, which are arcs with radius lines drawn at both ends.

When drawing pie slices, if you need to draw a radius to angle 0 to form a horizontal line segment to the right, specify a very small negative value for the start argument rather than 0. For example, you might specify -.00000001 for the start argument.

You can omit an argument in the middle of the syntax, but you must include the argument's comma before including the next argument. If you omit a trailing argument, don't use any commas following the last argument you specify.

The width of the line used to draw the circle, ellipse, or arc depends on the DrawWidth property setting. The way the circle is drawn on the background depends on the settings of the DrawMode and DrawStyle properties.

When you apply the Circle method, the CurrentX and CurrentY properties are set to the center point specified by the x and y arguments.


 Close Method (Microsoft Access)

Close Method

The Close method carries out the Close action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.Close [objecttype, objectname], [save]

The Close method has the following arguments.

Argument | Description
objecttype | One of the following intrinsic constants:
 | acDataAccessPage acDefault (default) acDiagram acForm acMacro acModule acQuery acReport acServerView acStoredProcedure acTable
 | Note If closing a module in the Visual Basic Editor (VBE), you must use acModule in the objecttype argument.
objectname | A string expression that's the valid name of an object of the type selected by the objecttype argument.
save | One of the following intrinsic constants:
 | acSaveNo acSavePrompt (default) acSaveYes
 | If you leave this argument blank, the default constant (acSavePrompt) is assumed.

Remarks

If you leave the objecttype and objectname arguments blank (the default constant, acDefault, is assumed for objecttype), Microsoft Access closes the active window. If you specify the save argument and leave the objecttype and objectname arguments blank, you must include the objecttype and objectname arguments' commas.

Note If a form has a control bound to a field that has its Required property set to 'Yes,' and the form is closed using the Close method without entering any data for that field, an error message is not displayed. Any changes made to the record will be aborted. When the form is closed using the Windows Close button, the Close action in a macro, or selecting Close from the File menu, Microsoft Access displays an alert. The following code will display an error message when attempting to close a form with a Null field, using the Close method.

If IsNull(Me![Field1]) Then
    If MsgBox("'Field1' must contain a value." _
        & Chr(13) & Chr(10) _
    & "Press 'OK' to return and enter a value." _
    & Chr(13) & Chr(10) _
    & "Press 'Cancel' to abort the record.", _
        vbOKCancel, "A Required field is Null") = _
        vbCancel Then
        DoCmd.Close
    End If
End If


 CloseCurrentDatabase Method

CloseCurrentDatabase Method

You can use the CloseCurrentDatabase method to close the current database (either a Microsoft Access database (.mdb) or an Access project (.adp) from another application that has opened a database through Automation. For example, you might use this method from Microsoft Excel to close the database currently open in the Microsoft Access window before opening another database.

Syntax

application.CloseCurrentDatabase

The CloseCurrentDatabase method has the following argument.

Argument | Description
application | The Application object.

Remarks

The CloseCurrentDatabase method is useful when you have opened a Microsoft Access database from another application through Automation. Once you have created an instance of Microsoft Access from another application, you must also create a new database or specify an existing database to open. This database opens in the Microsoft Access window.

If you use the CloseCurrentDatabase method to close the database that is open in the current instance of Microsoft Access, you can then open a different database without having to create another instance of Microsoft Access.


 CodeDb Method

CodeDb Method

You can use the CodeDb method in a code module to determine the name of the Database object that refers to the database in which code is currently running. Use the CodeDb method to access Data Access Objects (DAO) that are part of a library database.

For example, you can use the CodeDb method in a module in a library database to create a Database object referring to the library database. You can then open a recordset based on a table in the library database.

Syntax

Set database = CodeDb

The CodeDb method has the following argument.

Argument | Description
database | A Database object variable.

Remarks

The CodeDb method returns a Database object for which the Name property is the full path and name of the database from which it is called. This method can be useful when you need to manipulate the Data Access Objects in your library database.

When you call a method in a library database, the database from which you have called the method remains the current database, even while code is running in a module in the library database. In order to refer to the Data Access Objects in the library database, you need to know the name of the Database object that represents the library database.

For example, suppose you have a table in a library database that lists error messages. To manipulate data in the table from code, you could use the CodeDb method to determine the name of the Database object that refers to the library database that contains the table.

If the CodeDb method is run from the current database, it returns the name of the current database, which is the same value returned by the CurrentDb method.


 CopyObject Method

CopyObject Method

The CopyObject method carries out the CopyObject action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.CopyObject [destinationdatabase][, newname][, sourceobjecttype][, sourceobjectname]

The CopyObject method has the following arguments.

Argument | Description
destinationdatabase | A string expression that's the valid path and file name for the database you want to copy the object into. To select the current database, leave this argument blank.
 | Note In a Microsoft Access project (.adp) you must leave the destinationdatabase argument blank.
 | If you execute Visual Basic code containing the CopyObject method in a library database and leave this argument blank, Microsoft Access copies the object into the library database.
newname | A string expression that's the new name for the object you want to copy. To use the same name if you are copying into another database, leave this argument blank.
sourceobjecttype | One of the following intrinsic constants:
 | acDataAccessPage acDefault (default) acDiagram acForm acMacro acModule acQuery acReport acServerView acStoredProcedure acTable
 | Note When using the CopyObject method with a data access page, a copy of the HTML file for the data access page is created in the Default database folder and a link to it is created in the destination database.
sourceobjectname | A string expression that's the valid name of an object of the type selected by the sourceobjecttype argument.
 | If you run Visual Basic code containing the CopyObject method in a library database, Microsoft Access looks for the object with this name first in the library database, then in the current database.

Remarks

You must include either the destinationdatabase or newname argument or both for this method.

If you leave the sourceobjecttype and sourceobjectname arguments blank (the default constant, acDefault, is assumed for sourceobjecttype), Microsoft Access copies the object selected in the Database window. To select an object in the Database window, you can use the SelectObject action or SelectObject method with the In Database Window argument set to Yes (True).

If you specify the sourceobjecttype and sourceobjectname arguments but leave either the newname argument or the destinationdatabase argument blank, you must include the newname or destinationdatabase argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.


 CreateAccessProject Method

CreateAccessProject Method

You can use the CreateAccessProject method to create a new Microsoft Access project (.adp) on disk.

Syntax

object.CreateAccessProject projname [, connection ]

The CreateAccessProject method has the following arguments.

Argument | Description
object | A string expression that evaluates to the Application object.
projname | A string expression that is the name of the new Access project, including the path name and the file name extension. If your network supports it, you can also specify a network path in the following form: \\Server\Share\Folder\Filename.adp
connection | A string expression that's the valid connection string for the Access project. See the ADO ConnectionString property for details about this string.

Remarks

The CreateAccessProject method enables you to create a new Access project from within Microsoft Access or another application through Automation, formally called OLE Automation. For example, you can use the CreateAccessProject method from Microsoft Excel to create a new Access project on disk. Once you have created an instance of Microsoft Access from another application, you must also create a new Access project.

If the Access project identified by projname already exists, an error occurs.

Notes

  • To create and open a new Access project as the current Access project in the Access window, use the NewAccessProject method of the Application object.

  • To open an existing Access project as the current Access project in the Access window, use the OpenAccessProject method of the Application object.


 CreateControl, CreateReportControl Methods

CreateControl, CreateReportControl Methods

  • The CreateControl method creates a control on a specified open form.

  • The CreateReportControl method creates a control on a specified open report.

For example, suppose you are building a custom wizard that allows users to easily construct a particular form. You can use the CreateControl method in your wizard to add the appropriate controls to the form.

Syntax

CreateControl(formname, controltype[, section[, parent[, columnname[, left[, top[, width[, height]]]]]]])

CreateReportControl(reportname, controltype[, section[, parent[, columnname[, left[, top[, width[, height]]]]]]])

The CreateControl and CreateReportControl methods have the following arguments.

Argument | Description
formname, reportname | A string expression identifying the name of the open form or report on which you want to create the control.
controltype | One of the following intrinsic constants identifying the type of control you want to create. To view these constants and paste them into your code from the Object Browser, click Object Browser [image] on the Visual Basic toolbar, then click Access in the Project/Library box, and click AcControlType in the Classes box.
 | Constant | Control
 | acLabel | Label
 | acRectangle | Rectangle
 | acLine | Line
 | acImage | Image
 | acCommandButton | Command button
 | acOptionButton | Option button
 | acCheckBox | Check box
 | acOptionGroup | Option group
 | acBoundObjectFrame | Bound object frame
 | acTextBox | Text box
 | acListBox | List box
 | acComboBox | Combo box
 | acSubform | Subform
 | acObjectFrame | Unbound object frame
 | acPage | Page
 | acPageBreak | Page break
 | acCustomControl | ActiveX control
 | acToggleButton | Toggle button
 | acTabCtl | Tab control
section | One of the following intrinsic constants identifying the section that will contain the new control. To view these constants and paste them into your code from the Object Browser, click Object Browser [image] on the Visual Basic toolbar, then click Access in the Project/Library box, and click AcSection in the Classes box.
 | Constant | Section
 | acDetail | (Default) Detail section
 | acHeader | Form or report header
 | acFooter | Form or report footer
 | acPageHeader | Page header
 | acPageFooter | Page footer
 | acGroupLevel1Header | Group-level 1 header (reports only)
 | acGroupLevel1Footer | Group-level 1 footer (reports only)
 | acGroupLevel2Header | Group-level 2 header (reports only)
 | acGroupLevel2Footer | Group-level 2 footer (reports only)
 | If a report has additional group levels, the header/footer pairs are numbered consecutively, beginning with 9.
parent | A string expression identifying the name of the parent control of an attached control. For controls that have no parent control, use a zero-length string for this argument, or omit it.
columnname | The name of the field to which the control will be bound, if it is to be a data-bound control.
 | If you are creating a control that won't be bound to a field, use a zero-length string for this argument.
left, top | Numeric expressions indicating the coordinates for the upper-left corner of the control in twips.
width, height | Numeric expressions indicating the width and height of the control in twips.

Remarks

You can use the CreateControl and CreateReportControl methods in a custom wizard to create controls on a form or report. Both methods return a Control object.

You can use the CreateControl and CreateReportControl methods only in form Design view or report Design view, respectively.

You use the parent argument to identify the relationship between a main control and a subordinate control. For example, if a text box has an attached label, the text box is the main (or parent) control and the label is the subordinate (or child) control. When you create the label control, set its parent argument to a string identifying the name of the parent control. When you create the text box, set its parent argument to a zero-length string.

You also set the parent argument when you create check boxes, option buttons, or toggle buttons. An option group is the parent control of any check boxes, option buttons, or toggle buttons that it contains. The only controls that can have a parent control are a label, check box, option button, or toggle button. All of these controls can also be created independently, without a parent control.

Set the columnname argument according to the type of control you are creating and whether or not it will be bound to a field in a table. The controls that may be bound to a field include the text box, list box, combo box, option group, and bound object frame. Additionally, the toggle button, option button, and check box controls may be bound to a field if they are not contained in an option group.

If you specify the name of a field for the columnname argument, you create a control that is bound to that field. All of the control's properties are then automatically set to the settings of any corresponding field properties. For example, the value of the control's ValidationRule property will be the same as the value of that property for the field.

Note If your wizard creates controls on a new or existing form or report, it must first open the form or report in Design view.

To remove a control from a form or report, use the DeleteControl and DeleteReportControl statements.


 CreateDataAccessPage Method

CreateDataAccessPage Method

The CreateDataAccessPage method can create a new, blank data access page or open an existing HTML page as a data access page.

Syntax

object.CreateDataAccessPage filename [, createnewfile]

The CreateDataAccessPage method has the following arguments.

Argument | Description
object | The Application object.
filename | A string expression identifying the name and path of the data access page.
createnewfile | A Boolean value where True (-1) creates a new html page and link and False creates a new link to an existing html file. The default is True.

The following table shows the four possible setting combinations for the CreateDataAccessPage method and the results of those settings.

Filename | Createnewfile | Result
blank or new name and path | True (-1) | A new, minimized data access page is created and opened in Design view. A link to that page is created in the Pages object list of the Database window.
blank or new name and path | False (0) | An error occurs.
name of existing file and path | False (0) | A new uniquely named link is created that points to the existing data access page
name of existing file and path | True (-1) | An error occurs.

Remarks

You can use the CreateDataAccessPage method when designing a wizard that creates a new data access page.

The data access page you specify for filename can be a data access page that you have created specifically to be used as a template, or any other data access page in the database identified by the filename argument, and a setting of False for the createnewfile argument.

The CreateDataAccessPage method creates a minimized data access page. If you want to display the new data access page when created, you must use the Restore method.


 CreateEventProc Method

CreateEventProc Method

The CreateEventProc method creates an event procedure in a class module. It returns a Long value that indicates the line number of the first line of the event procedure.

Syntax

object.CreateEventProc(eventname, objectname)

The CreateEventProc method has the following arguments.

Argument | Description
object | A Module object whose Type property returns acClassModule, a constant with a value of 1.
eventname | A string expression that evaluates to the name of an event.
objectname | An object that has the event specified by the eventname argument. It may be a Form, Report, or Control object, a form or report section, or a class module.

Remarks

The CreateEventProc method creates a code stub for an event procedure for the specified object. For example, you can use this method to create a Click event procedure for a command button on a form. Microsoft Access creates the Click event procedure in the module associated with the form that contains the command button.

Once you've created the event procedure code stub by using the CreateEventProc method, you can add lines of code to the procedure by using other methods of the Module object. For example, you can use the InsertLines method to insert a line of code.


 CreateForm, CreateReport Methods

CreateForm, CreateReport Methods

  • The CreateForm method creates a form and returns a Form object.

  • The CreateReport method creates a report and returns a Report object.

For example, suppose you are building a custom wizard to create a sales report. You can use the CreateReport method in your wizard to create a new report based on a specified report template.

Syntax

CreateForm([database[, formtemplate]])

CreateReport([database[, reporttemplate]])

The CreateForm and CreateReport methods have the following arguments.

Argument | Description
database | A string expression identifying the name of the database that contains the form or report template you want to use to create a form or report. If you want the current database, omit this argument. If you want to use an open library database, specify the library database with this argument.
formtemplate, reporttemplate | A string expression identifying the name of the form or report you want to use as a template to create a new form or report. If you omit this argument, Microsoft Access bases the new form or report on the template specified by the Forms/Reports tab of the Options dialog box, available by clicking Options on the Tools menu.

Remarks

You can use the CreateForm and CreateReport methods when designing a wizard that creates a new form or report.

The CreateForm and CreateReport methods open a new, minimized form or report in form Design view or report Design view, respectively.

The form or report you specify for formtemplate or reporttemplate can be a form or report that you have created specifically to be used as a template, or any other form or report in the database identified by the database argument. Note that if the database specified by the database argument is not the current database, that database must be open as a library database. For more information on library databases, see Chapter 10, "The Windows API and Other Dynamic-Link Libraries," in the Microsoft Office 2000/Visual Basic Programmer's Guide. For information about how to obtain the Microsoft Office 2000/Visual Basic Programmer's Guide, click [image] .

Note If you have created a form or report template in another database that you would like to use as a template, you can simply import it into the current database, rather than loading a library database. Then check to make sure that the proper form or report name is listed in the Form Template or Report Template box on the Forms/Reports tab of the Options dialog box. Forms and reports subsequently created with the CreateForm or CreateReport method will be based on this template.

If the name you use for the formtemplate or reporttemplate argument isn't valid, Visual Basic uses the form or report template specified by the Form Template or Report Template setting on the Forms/Reports tab of the Options dialog box.

When you create a form or report with the CreateForm or CreateReport method, the form's or report's HasModule property is set to False (0). You can set this property to True (-1) if you want the new form or report to have a class module.

The CreateForm and CreateReport methods create minimized forms and reports.


 CreateGroupLevel Method

CreateGroupLevel Method

You can use the CreateGroupLevel method to specify a field or expression on which to group or sort data in a report.

For example, suppose you are building a custom wizard that provides the user with a choice of fields on which to group data when designing a report. Call the CreateGroupLevel method from your wizard to create the appropriate groups according to the user's choice.

Syntax

CreateGroupLevel(report, expression, header, footer)

The CreateGroupLevel method has the following arguments.

Argument | Description
report | A string expression identifying the name of the report that will contain the new group level.
expression | A string expression identifying the field or expression to sort or group on.
header, footer | An Integer value that indicates whether a field or expression will have an associated group header and/or group footer. If the header or footer argument is True (-1), the field or expression will have a group header or footer. If the header or footer argument is False (0), the field or expression won't. You can create both a header and a footer by setting both arguments to True.

Remarks

You can use the CreateGroupLevel method when designing a wizard that creates a report with groups or totals. The CreateGroupLevel method groups or sorts data on the specified field or expression and creates a header and/or footer for the group level.

The CreateGroupLevel method is available only in report Design view.

Microsoft Access uses an array, the GroupLevel property array, to keep track of the group levels created for a report. The CreateGroupLevel method adds a new group level to the array, based on the expression argument. The CreateGroupLevel method then returns an index value that represents the new group level's position in the array. The first field or expression you sort or group on is level 0, the second is level 1, and so on. You can have up to ten group levels in a report (0 to 9).

When you specify that either the header or footer argument, or both, is True, the GroupHeader and GroupFooter properties in a report are set to Yes, and a header and/or footer is created for the group level.

Once a header or footer is created, you can set other GroupLevel properties: GroupOn, GroupInterval, and KeepTogether. You can set these properties in Visual Basic or in the report's Sorting And Grouping box, available by clicking Sorting And Grouping [image] on the Report Design toolbar.

Note If your wizard creates group levels in a new or existing report, it must open the report in Design view.


 CreateNewDocument Method

CreateNewDocument Method

You can use the CreateNewDocument method to create a new document associated with a specified hyperlink.

Syntax

object.CreateNewDocument filename, editnow, overwrite

The CreateNewDocument method has the following arguments.

Argument | Description
object | The Hyperlink object within a control.
filename | A string expression identifying the name and path of the document. The type of document format you want used can be determine by the extension used with the filename. to output the data. You can create HTML (*.htm), Microsoft Active Server Pages (*.asp), Microsoft Excel (*.xls), Microsoft IIS (*.htx, *.idc), MS-DOS Text (*.txt), Rich Text Format (*.rtf), or Microsoft Data Access Pages (*.html). Modules can be output only to MS-DOS text format. Data access pages can only be output in HTML format. Microsoft Internet Information Server and Microsoft Active Server formats are available only for tables, queries, and forms.
 | Note If an extension is not provided then the data access page format (.html) is assumed. If a directory is not specfied, the default database directory is used. This directory is determined by the setting in Options dialog box.
editnow | A Boolean value where True (-1) opens the document in design view and False stores the new document in the specified database directory. The default is True.
overwrite | A Boolean value where True (-1) overwrites an existing document if the filename argument identifies an existing document and False requires that the filename argument specifies a new filename. The default is False.

Remarks

The CreateNewDocument method provides a way to programatically create a document associated with a hyperlink within a control.


 CurrentDb Method

CurrentDb Method

The CurrentDb method returns an object variable of type Database that represents the database currently open in the Microsoft Access window.

Note In Microsoft Access 2000 the CurrentDb method establishes a hidden reference to the Microsoft DAO 3.6 Object Library in a Microsoft Access database (.mdb). If you want to use the CurrentDb method in an Access project (.adp) you must set a permanent reference to the DAO 3.6 Object library in the Microsoft Visual Basic Editor.

Syntax

CurrentDb

Remarks

In order to manipulate the structure of your database and its data from Visual Basic, you must use Data Access Objects (DAO). The CurrentDb method provides a way to access the current database from Visual Basic code without having to know the name of the database. Once you have a variable that points to the current database, you can also access and manipulate other objects and collections in the DAO hierarchy.

You can use the CurrentDb method to create multiple object variables that refer to the current database. In the following example, the variables dbsA and dbsB both refer to the current database:

Dim dbsA As Database, dbsB As Database
Set dbsA = CurrentDb
Set dbsB = CurrentDb

Note In previous versions of Microsoft Access, you may have used the syntax DBEngine.Workspaces(0).Databases(0) or DBEngine(0)(0) to return a pointer to the current database. In Microsoft Access 2000, you should use the CurrentDb method instead. The CurrentDb method creates another instance of the current database, while the DBEngine(0)(0) syntax refers to the open copy of the current database. The CurrentDb method enables you to create more than one variable of type Database that refers to the current database. Microsoft Access still supports the DBEngine(0)(0) syntax, but you should consider making this modification to your code in order to avoid possible conflicts in a multiuser database.

If you need to work with another database at the same time that the current database is open in the Microsoft Access window, use the OpenDatabase method of a Workspace object. The OpenDatabase method doesn't actually open the second database in the Microsoft Access window; it simply returns a Database variable representing the second database. The following example returns a pointer to the current database and to a database called Contacts.mdb:

Dim dbsCurrent As Database, dbsContacts As Database
Set dbsCurrent = CurrentDb
Set dbsContacts = DBEngine.Workspaces(0).OpenDatabase("Contacts.mdb")


 CurrentUser Method

CurrentUser Method

You can use the CurrentUser method to return the name of the current user of the database.

For example, use the CurrentUser method in a procedure that keeps track of the users who modify the database.

Syntax

CurrentUser

Remarks

The CurrentUser method returns a string that contains the name of the current user account.

If you haven't established a secure workgroup, the CurrentUser method returns the name of the default user account, Admin. The Admin user account gives the user full permissions to all database objects.

If you have enabled workgroup security, then the CurrentUser method returns the name of the current user account. For user accounts other than Admin, you can specify permissions that restrict the users' access to database objects.

The following example obtains the name of the current user and displays it in a dialog box.

MsgBox("The current user is: " & CurrentUser)


 DefaultControl Method

DefaultControl Method

The DefaultControl method returns a Control object with which you can set the default properties for a particular type of control on a particular form or report. For example, before you create a text box on a form, you might want to set the default properties for the text box. Then you can create a number of text boxes that have the same base property settings, rather than having to set properties for each text box individually once it has been created.

Syntax

Set control = object.DefaultControl(controltype)

The DefaultControl method has the following arguments.

Argument | Description
control | A Control object for which the default properties are to be set.
object | A Form or Report object on which controls are to be created. The default property settings defined for a type of control apply only to controls of the same type created on this form or report.
controltype | An intrinsic constant indicating the type of control for which default property settings are to be set.

Remarks

The DefaultControl method enables you to set a control's default properties from code. Once you have set the default properties for a particular type of control, each subsequently created control of that type will have the same default values.

For example, if you set the FontSize property of the default command button to 12, each new command button will have a font size of 12 points.

Not all of a control's properties are available as default properties. The default properties available for a control depend on the type of control.

The DefaultControl method returns a Control object of the type specified by the controltype argument. This Control object doesn't represent an actual control on a form, but rather a default control that is a template for all subsequently created controls of that type. You set the default control properties for the Control object returned by the DefaultControl method in the same manner that you would set properties for an individual control on a form.

For a list of intrinsic constants that can be passed as the controltype argument, see the CreateControl function. These constants are also listed in the Constants module of the Microsoft Access library in the Object Browser.

The DefaultControl method can be used only in form Design view or report Design view. If you try to apply this method to a form or report that is not in Design view, a run-time error will result.

If you try to set a property that can't be set as a default property with the DefaultControl method, a run-time error will result. To determine which properties can be default properties, list the Properties collection of the Control object returned by the DefaultControl method.


 DefaultWorkspaceClone Method

DefaultWorkspaceClone Method

You can use the DefaultWorkspaceClone method to create a new Workspace object without requiring the user to log on again. For example, if you need to conduct two sets of transactions simultaneously in separate workspaces, you can use the DefaultWorkspaceClone method to create a second Workspace object with the same user name and password without prompting the user for this information again.

Note In Microsoft Access 2000, the DefaultWorkspaceClone method is included in this version of Microsoft Access only for compatibility with previous versions using Data Access Object (DAO) language.

Syntax

application.DefaultWorkspaceClone

The DefaultWorkspaceClone method has the following argument.

Argument | Description
application | The Application object.

Remarks

The DefaultWorkspaceClone method creates a clone of the default Workspace object in Microsoft Access. The properties of the Workspace object clone have settings identical to those of the default Workspace object, except for the Name property setting. For the default Workspace object, the value of the Name property is always #Default Workspace#. For the cloned Workspace object, it is #CloneAccess#.

The UserName property of the default Workspace object indicates the name under which the current user logged on. The Workspace object clone is equivalent to the Workspace object that would be created if the same user logged on again with the same password.


 Delete Method (FormatCondition Object)

Delete Method (FormatCondition Object)

You can use the Delete method to remove a FormatCondition object from the FormatConditions collection of a combo box or text box control.

Syntax

object.Delete

The Delete method has the following arguments.

Argument | Description
object | A string expression that evaluates to a FormatCondition object of a combo box or text box control.

Remarks

You can use the Add to add a format condition to the FormatConditions collection of a combo box or text box.


 Delete Method (FormatConditions Collection)

Delete Method (FormatConditions Collection)

You can use the Delete method to remove all format conditions in the FormatConditions collection of a combo box or text box control.

Syntax

object.Delete

The Delete method has the following arguments.

Argument | Description
object | A string expression that evaluates to the FormatConditions collection of the combo box or text box control.

Remarks

You can use the Add method to add format conditions to the FormatConditions collection of a combo box or text box.


 DeleteControl, DeleteReportControl Methods

DeleteControl, DeleteReportControl Methods

  • The DeleteControl method deletes a specified control from a form.

  • The DeleteReportControl method deletes a specified control from a report.

For example, suppose you have a procedure that must be run the first time each user logs onto your database. You can set the OnClick property of a button on the form to this procedure. Once the user has logged on and run the procedure, you can use the DeleteControl method to dynamically remove the command button from the form.

Syntax

DeleteControl formname, controlname

DeleteReportControl reportname, controlname

The DeleteControl and DeleteReportControl methods have the following arguments.

Argument | Description
formname, reportname | A string expression identifying the name of the form or report containing the control you want to delete.
controlname | A string expression identifying the name of the control you want to delete.

Remarks

The DeleteControl and DeleteReportControl methods are available only in form Design view or report Design view, respectively.

Note If you are building a wizard that deletes a control from a form or report, your wizard must open the form or report in Design view before it can delete the control.


 DeleteLines Method

DeleteLines Method

The DeleteLines method deletes lines from a standard module or a class module.

Syntax

object.DeleteLines startline, count

The DeleteLines method has the following arguments.

Argument | Description
object | A Module object.
startline | A Long value that specifies the number of the line from which to begin deleting.
count | A Long value that specifies the number of lines to delete.

Remarks

Lines in a module are numbered beginning with one. To determine the number of lines in a module, use the CountOfLines property.

To replace one line with another line, use the ReplaceLine method.


 DeleteObject Method

DeleteObject Method

The DeleteObject method carries out the DeleteObject action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.DeleteObject [objecttype][, objectname]

The DeleteObject method has the following arguments.

Argument | Description
objecttype | One of the following intrinsic constants:
 | acDataAccessPage acDefault (default) acDiagram acForm acMacro acModule acQuery acReport acServerView acStoredProcdure acTable
objectname | A string expression that's the valid name of an object of the type selected by the objecttype argument.
 | If you run Visual Basic code containing the DeleteObject method in a library database, Microsoft Access looks for the object with this name first in the library database, then in the current database.

Remarks

If you leave the objecttype and objectname arguments blank (the default constant, acDefault, is assumed for objecttype), Microsoft Access deletes the object selected in the Database window. To select an object in the Database window, you can use the SelectObject action or SelectObject method with the In Database Window argument set to Yes (True).


 DoMenuItem Method

DoMenuItem Method

Note In Microsoft Access 97, the DoMenuItem method was replaced by the RunCommand method. The DoMenuItem method is included in this version of Microsoft Access only for compatibility with previous versions. When you run existing Visual Basic code containing a DoMenuItem method, Microsoft Access will display the appropriate menu or toolbar command for Microsoft Access 2000. However, unlike the DoMenuItem action in a macro, a DoMenuItem method in Visual Basic code isn't converted to a RunCommand method when you convert a database created in a previous version of Microsoft Access.

Some commands from previous versions of Microsoft Access aren't available in Microsoft Access 2000, and DoMenuItem methods that run these commands will cause an error when they're executed in Visual Basic. You must edit your Visual Basic code to replace or delete occurrences of such DoMenuItem methods.

Syntax

DoCmd.DoMenuItem menubar, menuname, command[, subcommand][, version]

The DoMenuItem method has the following arguments.

Argument | Description
menubar | Use the intrinsic constant acFormBar for the menu bar in Form view.
 | For other views, use the number of the view in the Menu Bar argument list, as shown in the Macro window in previous versions of Microsoft Access (count down the list, starting from 0).
menuname | You can use one of the following intrinsic constants:
 | acFile acEditMenu acRecordsMenu
 | You can use acRecordsMenu only for the Form view menu bar in Microsoft Access version 2.0 and Microsoft Access 95 databases.
 | For other menus, use the number of the menu in the Menu Name argument list, as shown in the Macro window in previous versions of Microsoft Access (count down the list, starting from 0).
command | You can use one of the following intrinsic constants:
 | acNew acSaveForm acSaveFormAs acSaveRecord acUndo acCut acCopy acPaste acDelete acSelectRecord acSelectAllRecords acObject acRefresh
 | For other commands, use the number of the command in the Command argument list, as shown in the Macro window in previous versions of Microsoft Access (count down the list, starting from 0).
subcommand | You can use one of the following intrinsic constants:
 | acObjectVerb acObjectUpdate
 | The acObjectVerb constant represents the first command on the submenu of the Object command on the Edit menu. The type of object determines the first command on the submenu. For example, this command is Edit for a Paintbrush object that can be edited.
 | For other commands on submenus, use the number of the subcommand in the Subcommand argument list, as shown in the Macro window in previous versions of Microsoft Access (count down the list, starting from 0).
version | Use the intrinsic constant acMenuVer70 for code written for Microsoft Access 95 databases, the intrinsic constant acMenuVer20 for code written for Microsoft Access version 2.0 databases, and the intrinsic constant acMenuVer1X for code written for Microsoft Access version 1.x databases. This argument is available only in Visual Basic.
 | Note The default for this argument is acMenuVer1X, so that any code written for Microsoft Access version 1.x databases will run unchanged. If you're writing code for a Microsoft Access 95 or version 2.0 database and want to use the Microsoft Access 95 or version 2.0 menu commands with the DoMenuItem method, you must set this argument to acMenuVer70 or acMenuVer20.
 | Also, when you are counting down the lists for the Menu Bar, Menu Name, Command, and Subcommand action arguments in the Macro window to get the numbers to use for the arguments in the DoMenuItem method, you must use the Microsoft Access 95 lists if the version argument is acMenuVer70, the Microsoft Access version 2.0 lists if the version argument is acMenuVer20, and the Microsoft Access version 1.x lists if version is acMenuVer1X (or blank).
 | Note There is no acMenuVer80 setting for this argument. You can't use the DoMenuItem method to display Microsoft Access 97 or Microsoft Access 2000 commands (although existing DoMenuItem methods in Visual Basic code will still work). Use the RunCommand method instead.

Remarks

The selections in the lists for the Menu Name, Command, and Subcommand action arguments in the Macro window depend on what you've selected for the previous arguments. You must use numbers or intrinsic constants that are appropriate for each menubar, menuname, command, and subcommand argument.

If you leave the subcommand argument blank but specify the version argument, you must include the subcommand argument's comma. If you leave the subcommand and version arguments blank, don't use a comma following the command argument.


 Dropdown Method

Dropdown Method

You can use the Dropdown method to force the list in the specified combo box to drop down. For example, you can use this method to cause a combo box listing vendor codes to drop down when the vendor code control receives the focus during data entry.

Syntax

combobox.Dropdown

The Dropdown method has the following argument.

Argument | Description
combobox | A combo box control on a form.

Remarks

If the specified combo box control doesn't have the focus, an error occurs. The use of this method is identical to pressing the F4 key when the control has the focus.


 Echo Method (Application Object)

Echo Method (Application Object)

The Echo method specifies whether Microsoft Access repaints the display screen.

Syntax

Application.Echo echoon[, statusbartext]

The Echo method has the following arguments.

Argument | Description
echoon | True (default) indicates that the screen is repainted; False indicates that the screen isn't repainted.
statusbartext | A string expression that specifies the text to display in the status bar when repainting is turned on or off.

Remarks

If you are running Visual Basic code that makes a number of changes to objects displayed on the screen, your code may be faster if you turn off screen repainting until the procedure has finished running. You may also want to turn repainting off if your code makes changes that the user shouldn't see or doesn't need to see.

The Echo method doesn't suppress the display of modal dialog boxes, such as error messages, or pop-up forms, such as property sheets.

If you turn screen repainting off, the screen won't show any changes, even if the user presses CTRL+BREAK or Visual Basic encounters a breakpoint, until you turn screen repainting back on. You may want to create a macro that turns repainting on and assign the macro to a key or custom menu command. You can then use the key combination or menu command to turn repainting on if it has been turned off in Visual Basic.

If you turn screen repainting off and then try to step through your code, you won't be able to see your progress through the code, or any other visual cues, until repainting is turned back on. However, your code will continue to execute.

Note Don't confuse the Echo method with the Repaint method. The Echo method turns screen repainting on or off. The Repaint method forces an immediate screen repainting.


 Echo Method (DoCmd Object)

Echo Method (DoCmd Object)

The Echo method of the DoCmd object carries out the Echo action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.Echo echoon[, statusbartext]

The Echo method has the following arguments.

Argument | Description
echoon | Use True (-1) to turn echo on and False (0) to turn it off.
statusbartext | A string expression.

Remarks

If you leave the statusbartext argument blank, don't use a comma following the echoon argument.

If you turn echo off in Visual Basic, you must turn it back on, or it will remain off, even if the user presses CTRL+BREAK or Visual Basic encounters a breakpoint. You may want to create a macro that turns echo on and then assign that macro to a key combination or a custom menu command. You could then use the key combination or menu command to turn echo on if it has been turned off in Visual Basic.

The Echo method of the DoCmd object was added to provide backward compatibility for running the Echo action in Visual Basic code in Microsoft Access for Windows 95. It's recommended that you use the existing Echo method of the Application object instead.


Exporting Report Snapshots

There are two ways to programmatically export a report snapshot object from a Microsoft Access database.

  • You can use the SendObject method to embed a report snapshot in a mail message.

  • You can use the OutputTo method to save a report snapshot to disk.

The following table contains information about the first three arguments of the SendObject method used to send a report snapshot in a mail message. Note, only the first three arguments of the SendObject method are dicussed here as they are how you specify a report as a snapshot file. For information on the other arguments to the SendObject method, see that topic in the Microsoft Access on-line help.

Argument | Description
Object Type | A constant representing the type of object you want to send. For report snapshots the constant is acSendReport.
Object Name | A string value representing the name of the report to include in the mail message as a snapshot file.
Output Format | To output a report snapshot, set this argument to the string value: "Snapshot Format".

The following table contains information about the first four arguments of the OutputTo method used to save a report snapshot to a snapshot file on disk. Note, only the first four arguments of the OutputTo method are described here because they are how you specify that a report be saved to disk as a snapshot file. For information on the other arguments to the OutputTo method, see that topic in the Microsoft Access on-line help.

Argument | Description
Object Type | A constant representing the type of object you want to save to disk. For report snapshots the constant is acOutputReport.
Object Name | A string value representing the name of the report to be saved to disk.
Output Format | To save a report snapshot, set this argument to the string value: "Snapshot Format".
Output File | A string value representing the full path and file name of the snapshot file you want to save to disk. For example: "c:\my documents\mysnapshot.snp"


 Find Method

Find Method

The Find method finds specified text in a standard module or class module.

Syntax

object.Find(target, startline, startcolumn, endline, endcolumn[, wholeword, matchcase, patternsearch])

The Find method has the following arguments.

Argument | Description
object | A Module object.
target | A string expression that evaluates to the text that you want to find.
startline | A Long value that specifies the line on which to begin searching. If a match is found, the value of the startline argument is set to the line on which the beginning character of the matching text is found.
startcolumn | A Long value that specifies the column on which to begin searching. Each character in a line is in a separate column, beginning with zero on the left side of the module. If a match is found, the value of the startcolumn argument is set to the column on which the beginning character of the matching text is found.
endline | A Long value that specifies the line on which to stop searching. If a match is found, the value of the endline argument is set to the line on which the ending character of the matching text is found.
endcolumn | A Long value that specifies the column on which to stop searching. If a match is found, the value of the endcolumn argument is set to the column on which the beginning character of the matching text is found.
wholeword | Optional. A Boolean value where True (-1) results in a search for whole words only and False (0) results in a search for portions of words. The default is False.
matchcase | Optional. A Boolean value where True results in a search for words with case matching the target argument and False results in a search for words regardless of case. The default is False.
patternsearch | Optional. A Boolean value where True results in a search in which the target argument may contain wildcard characters such as an asterisk (*) or a question mark (?), and False results in a search without considering question marks or asterisks as wildcard characters. The default is False.

Remarks

The Find method searches for the specified text string in a Module object. If the string is found, the Find method returns True; otherwise it returns False.

To determine the position in the module at which the search text was found, pass empty variables to the Find method for the startline, startcolumn, endline, and endcolumn arguments. If a match is found, these arguments will contain the line number and column position at which the search text begins (startline, startcolumn) and ends (endline, endcolumn).

For example, if the search text is found on line 5, begins on column 10, and ends at column 20, the values of these arguments will be: startline = 5, startcolumn = 10, endline = 5, endcolumn = 20.


FindNext Method

The FindNext method carries out the FindNext action in Visual Basic. For more information on how the action works, see the action topic.

Syntax

DoCmd.FindNext

This method has no arguments.


 FindRecord Method

FindRecord Method

The FindRecord method carries out the FindRecord action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.FindRecord findwhat[, match][, matchcase][, search][, searchasformatted][, onlycurrentfield][, findfirst]

The FindRecord method has the following arguments.

Argument | Description
findwhat | An expression that evaluates to text, a number, or a date. The expression contains the data to search for.
match | One of the following intrinsic constants:
 | acAnywhere acEntire (default) acStart
 | If you leave this argument blank, the default constant (acEntire) is assumed.
matchcase | Use True (-1) for a case-sensitive search and False (0) for a search that's not case-sensitive. If you leave this argument blank, the default (False) is assumed.
search | One of the following intrinsic constants:
 | acDown acSearchAll (default) acUp
 | If you leave this argument blank, the default constant (acSearchAll) is assumed.
searchasformatted | Use True to search for data as it's formatted and False to search for data as it's stored in the database. If you leave this argument blank, the default (False) is assumed.
onlycurrentfield | One of the following intrinsic constants:
 | acAll acCurrent (default)
 | If you leave this argument blank, the default constant (acCurrent) is assumed.
findfirst | Use True to start the search at the first record. Use False to start the search at the record following the current record. If you leave this argument blank, the default (True) is assumed.

Remarks

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave one or more trailing arguments blank, don't use a comma following the last argument you specify.


 FirstPage, LastPage, NextPage, PreviousPage Methods

FirstPage, LastPage, NextPage, PreviousPage Methods

The FirstPage, LastPage, NextPage, PreviousPage methods are used to navigate through the pages in a snapshot file.

Syntax

object.FirstPage

object.LastPage

object.NextPage

object.PreviousPage

These methods have the following arguments.

Argument | Description
object | An object representing a Snapshot Viewer control.

Remarks

These methods are used to move through the pages in a snapshot file. With one exception, executing these methods has the same effect as clicking the navigation buttons that are a part of the Snapshot Viewer control. The exception is that clicking the navigation buttons on the control will trigger the related FirstPage, LastPage, NextPage, or PreviousPage events, while navigating through pages programmatically does not trigger these events.

If the SnapshotPath property has no value or has an invalid value, using one of these methods will generate an error. You can use the ReadyState property to make sure the SnapshotPath is valid.

If you use the NextPage method while on the last page in a snapshot file, the last page in the file is displayed and no error occurs. If you use the PreviousPage method while on the first page in a snapshot file, the first page in the file is displayed and no error occurs.


 Follow Method

Follow Method

The Follow method opens the document or Web page specified by a hyperlink address associated with a control on a form or report.

Syntax

object.hyperlink.Follow[([newwindow], [addhistory], [extrainfo], [method], [headerinfo])]

The Follow method has the following arguments.

Argument | Description
object | A Control object that contains a hyperlink. The combo box, label, list box, text box, command button, and image controls can contain hyperlinks.
hyperlink | The hyperlink of the Control object.
newwindow | A Boolean value where True (-1) opens the document in a new window and False (0) opens the document in the current window. The default is False.
addhistory | A Boolean value where True adds the hyperlink to the History folder and False doesn't add the hyperlink to the History folder. The default is True.
extrainfo | A string or an array of Byte data that specifies additional information for navigating to a hyperlink. For example, this argument may be used to specify a search parameter for an .ASP or .IDC file. In your Web browser, the extrainfo argument may appear after the hyperlink address, separated from the address by a question mark (?). You don't need to include the question mark when you specify the extrainfo argument.
method | An Integer value that specifies how the extrainfo argument is attached. The method argument may be one of the following intrinsic constants.
 | Constant | Description
 | msoMethodGet | The extrainfo argument is appended to the hyperlink address and can only be a string. This value is passed by default.
 | msoMethodPost | The extrainfo argument is posted, either as a string or as an array of type Byte.
headerinfo | A string that specifies header information. By default the headerinfo argument is a zero-length string (" ").

Remarks

The Follow method has the same effect as clicking a hyperlink.

You can include the Follow method in an event procedure if you want to open a hyperlink in response to a user action. For example, you may want to open a web page with reference information when a user opens a particular form.

When you use the Follow method, you don't need to know the address specified by a control's HyperlinkAddress property. You only need to know the name of the control that contains the hyperlink. Conversely, when you use the FollowHyperlink method, you need to specify the address for the particular hyperlink you wish to follow.


 FollowHyperlink Method

FollowHyperlink Method

The FollowHyperlink method opens the document or Web page specified by a hyperlink address.

Syntax

[application.]FollowHyperlink address, [subaddress], [newwindow], [addhistory], [extrainfo], [method], [headerinfo]

The FollowHyperlink method has the following arguments.

Argument | Description
application | The Application object.
address | A string expression that evaluates to a valid hyperlink address.
subaddress | A string expression that evaluates to a named location in the document specified by the address argument. The default is a zero-length string (" ").
newwindow | A Boolean value where True (-1) opens the document in a new window and False (0) opens the document in the current window. The default is False.
addhistory | A Boolean value where True adds the hyperlink to the History folder and False doesn't add the hyperlink to the History folder. The default is True.
extrainfo | A string or an array of Byte data that specifies additional information for navigating to a hyperlink. For example, this argument may be used to specify a search parameter for an .asp or .idc file. In your Web browser, the extrainfo argument may appear after the hyperlink address, separated from the address by a question mark (?). You don't need to include the question mark when you specify the extrainfo argument.
method | An Integer value that specifies how the extrainfo argument is attached. The method argument may be one of the following intrinsic constants.
 | Constant | Description
 | msoMethodGet | The extrainfo argument is appended to the hyperlink address and can only be a string. This value is passed by default.
 | msoMethodPost | The extrainfo argument is posted, either as a string or as an array of type Byte.
headerinfo | A string that specifies header information. By default the headerinfo argument is a zero-length string.

Remarks

By using the FollowHyperlink method, you can follow a hyperlink that doesn't exist in a control. This hyperlink may be supplied by you or by the user. For example, you can prompt a user to enter a hyperlink address in a dialog box, then use the FollowHyperlink method to follow that hyperlink.

You can use the extrainfo and method arguments to supply additional information when navigating to a hyperlink. For example, you can supply parameters to a search engine. To search the Yahoo site for information on Microsoft, you might call the FollowHyperlink method as follows:

Application.FollowHyperlink "http://search.yahoo.com/bin/search", _
    , , , "p=Microsoft", msoMethodGet

You can use the Follow method to follow a hyperlink associated with a control.


 GetHiddenAttribute, SetHiddenAttribute Methods

GetHiddenAttribute, SetHiddenAttribute Methods

  • The GetHiddenAttribute method returns the value of hidden attribute of a Microsoft Access object in the object's Properties dialog box, available by selecting the object in the Database window and clicking Properties on the View menu.

  • The SetHiddenAttribute method sets the hidden attribute of an Access object.

Syntax

object.GetHiddenAttribute(objecttype, objectname)

object.SetHiddenAttribute objecttype, objectname, setting

The GetHiddenAttribute and SetHiddenAttribute methods have the following arguments.

Argument | Description
object | Optional. The Application object.
objecttype | One of the following intrinsic constants: acDataAccessPage acDiagram acForm acMacro acModule acQuery acReport acServerView acStoredProcedure acTable
 | You must enter a constant for the objecttype argument, acDefault is not a valid entry.
objectname | A string expression identifying the name of the Access object.
setting | A Boolean value where True (-1) sets the hidden attribute and False (0) clears the attribute.

Remarks

The GetHiddenAttribute and SetHiddenAttribute methods provide a means of changing an object's hidden attribute from Visual Basic code. With these methods, you can set or read the hidden option available in the object's Properties dialog box.

Since the hidden attributes that the user can set by selecting or clearing a check box, the GetHiddenAttribute method returns True (-1) if the option setting is Yes (the check box is selected) or False (0) if the option setting is No (the check box is cleared). To set an option of this kind by using the SetHiddenAttribute method, specify True or False for the setting argument, as in the following example:

Application.SetHiddenAttribute acTable,"Customers", True


 GetOption, SetOption Methods

GetOption, SetOption Methods

  • The GetOption method returns the current value of an option in the Options dialog box, available by clicking Options on the Tools menu.

  • The SetOption method sets the current value of an option in the Options dialog box.

Syntax

object.GetOption(optionname)

object.SetOption optionname, setting

The GetOption and SetOption methods have the following arguments.

Argument | Description
object | Optional The Application object.
optionname | The name of the option. For a list of optionname argument strings, see Set Options from Visual Basic.
setting | A Variant value corresponding to the option setting. The value of the setting argument depends on the possible settings for a particular option.

Remarks

The GetOption and SetOption methods provide a means of changing environment options from Visual Basic code. With these methods, you can set or read any option available in the Options dialog box, except for options on the Modules tab.

The available option settings depend on the type of option being set. There are three general types of options:

  • Yes/No options that can be set by selecting or clearing a check box.

  • Options that can be set by entering a string or numeric value.

  • Predefined options that can be chosen from a list box, combo box, or option group.

For options that the user sets by selecting or clearing a check box, the GetOption method returns True (-1) if the option setting is Yes (the check box is selected) or False (0) if the option setting is No (the check box is cleared). To set an option of this kind by using the SetOption method, specify True or False for the setting argument, as in the following example:

Application.SetOption "Show Status Bar", True

For options that the user sets by typing a string or numeric value, the GetOption method returns the setting as it's displayed in the dialog box. The following example returns a string containing the left margin setting:

Dim varSetting As Variant
varSetting = Application.GetOption("Left Margin")

To set this type of option by using the SetOption method, specify the string or numeric value that would be typed in the dialog box. The following example sets the default form template to OrderTemplate:

Application.SetOption "Form Template", "OrderTemplate"

For options with settings that are choices in list boxes or combo boxes, the GetOption method returns a number corresponding to the position of the setting in the list. Indexing begins with zero, so the GetOption method returns zero for the first item, 1 for the second item, and so on. For example, if the Default Field Type option on the Tables/Queries tab is set to AutoNumber, the sixth item in the list, the GetOption method returns 5.

To set this type of option, specify the option's numeric position within the list as the setting argument for the SetOption method. The following example sets the Default Field Type option to AutoNumber:

Application.SetOption "Default Field Type", 5

Other options are set by clicking on an option button in an option group in the Options dialog box. In Visual Basic, these options are also set by specifying a particular option's position within the option group. The first option in the group is numbered zero, the second, 1, and so on. For example, if the Selection Behavior option on the Forms/Reports tab is set to Partially Enclosed, the GetOption method returns zero, as in the following example:

Debug.Print Application.GetOption("Selection Behavior")

To set an option that's a member of an option group, specify the index number of the option within the group. The following example sets Selection Behavior to Fully Enclosed:

Application.SetOption "Selection Behavior", 1

Notes

  • When you use the GetOption method or the SetOption method to set an option in the Options dialog box, you don't need to specify the individual tab on which the option is found.

  • You can't use the GetOption method or the SetOption method to read or set any of the options found on the Module tab of the Options dialog box.

  • If the return value of the GetOption method is assigned to a variable, the variable must be declared as a Variant.

  • If your database may run on a version of Microsoft Access for a language other than the one in which you created it, then you must supply the arguments for the GetOption and SetOption methods in English.

When you quit Microsoft Access, you can reset all options to their original settings by using the SetOption method on all changed options. You may want to create public variables to store the values of the original settings. You might include code to reset options in the Close event procedure for a form, or in a custom exit procedure that the user must run to quit the application.


 GoToControl Method

GoToControl Method

The GoToControl method carries out the GoToControl action in Visual Basic. For more information on how the action and its argument work, see the action topic.

Syntax

DoCmd.GoToControl controlname

The GoToControl method has the following argument.

Argument | Description
controlname | A string expression that's the name of a control on the active form or datasheet.

Remarks

Use only the name of the control for the controlname argument, not the full syntax.

You can also use a variable declared as a Control data type for this argument.

Dim ctl As Control
Set ctl = Forms!Form1!Field3
DoCmd.GoToControl ctl.Name

You can also use the SetFocus method to move the focus to a control on a form or any of its subforms, or to a field in an open table, query, or form datasheet. This is the preferred method for moving the focus in Visual Basic, especially to controls on subforms and nested subforms, because you can use the full syntax to specify the control you want to move to.


 GoToPage Method (DoCmd Object)

GoToPage Method (DoCmd Object)

The GoToPage method of the DoCmd object carries out the GoToPage action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.GoToPage [pagenumber][, right, down]

The GoToPage method has the following arguments.

Argument | Description
pagenumber | A numeric expression that's a valid page number for the active form. If you leave this argument blank, the focus stays on the current page. You can use the right and down arguments to display the part of the page you want to see.
right | A numeric expression that's a valid horizontal offset for the page.
down | A numeric expression that's a valid vertical offset for the page.

Remarks

The units for the right and down arguments are expressed in twips.

If you specify the right and down arguments and leave the pagenumber argument blank, you must include the pagenumber argument's comma. If you don't specify the right and down arguments, don't use a comma following the pagenumber argument.

The GoToPage method of the DoCmd object was added to provide backwards compatibility for running the GoToPage action in Visual Basic code in Microsoft Access 95. It's recommended that you use the existing GoToPage method of the Form object instead.


 GoToPage Method (Form Object)

GoToPage Method (Form Object)

The GoToPage method moves the focus to the first control on a specified page in the active form.

Syntax

form.GoToPage pagenumber[, right, down]

The GoToPage method has the following arguments.

Argument | Description
form | A Form object that represents the active form.
pagenumber | A numeric expression that's a valid page number for the active form.
right | A numeric expression that's a valid horizontal offset (in twips) from the left side of the window to the part of the page to be viewed.
down | A numeric expression that's a valid vertical offset (in twips) from the top of the window to the part of the page to be viewed.

Remarks

When you use this method to move to a specified page of a form, the focus is set to the first control on the page, as defined by the form's tab order. To move to a particular control on the form, use the SetFocus method.

You can use the GoToPage method if you've created page breaks on a form to group related information. For example, you might have an Employees form with personal information on the first page, office information on the second page, and sales information on the third page. You can use the GoToPage method to move to the desired page.

You can use the right and down arguments for forms with pages larger than the Microsoft Access window. Use the pagenumber argument to move to the desired page, and then use the right and down arguments to display the part of the page you want to see. Microsoft Access displays the part of the page that's offset from the upper-left corner of the window by the distance specified in the right and down arguments.


 GoToRecord Method

GoToRecord Method

The GoToRecord method carries out the GoToRecord action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.GoToRecord [objecttype, objectname][, record][, offset]

The GoToRecord method has the following arguments.

Argument | Description
objecttype | One of the following intrinsic constants:
 | acActiveDataObject (default) acDataForm acDataQuery acDataTable
objectname | A string expression that's the valid name of an object of the type selected by the objecttype argument.
record | One of the following intrinsic constants:
 | acFirst acGoTo acLast acNewRec acNext (default) acPrevious
 | If you leave this argument blank, the default constant (acNext) is assumed.
offset | A numeric expression that represents the number of records to move forward or backward if you specify acNext or acPrevious for the record argument, or the record to move to if you specify acGoTo for the record argument. The expression must result in a valid record number.

Remarks

If you leave the objecttype and objectname arguments blank (the default constant, acActiveDataObject, is assumed for objecttype), the active object is assumed.

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave one or more trailing arguments blank, don't use a comma following the last argument you specify.


Hourglass Method

The Hourglass method carries out the Hourglass action in Visual Basic. For more information on how the action and its argument work, see the action topic.

Syntax

DoCmd.Hourglass hourglasson

The Hourglass method has the following argument.

Argument | Description
hourglasson | Use True (-1) to display the hourglass icon (or another icon you've chosen). Use False (0) to display the normal mouse pointer.


 hWndAccessApp Method

hWndAccessApp Method

You can use the hWndAccessApp method to determine the handle assigned by Microsoft Windows 98 to the main Microsoft Access window.

Setting

The hWndAccessApp method returns a Long Integer value set by Microsoft Access and is read-only.

Remarks

You can use this method by using Visual Basic when making calls to Windows application programming interface (API) functions or other external procedures that require a window handle as an argument.

To get the handle to a window containing a Microsoft Access object such as a Form or Report, use the hWnd property.


 HyperlinkPart Method

HyperlinkPart Method

The HyperlinkPart method returns information about data stored as a Hyperlink data type. The data in a Hyperlink field can contain up to four parts in the following format:

displaytext#address#subaddress#screentip

Syntax

object.HyperlinkPart(hyperlink As Variant [, part As Integer])

The HyperlinkPart method has the following arguments.

Argument | Description
object | Optional. The Application object.
hyperlink | A Variant representing the data stored in a Hyperlink field.
part | Optional. The value for the part argument is an intrinsic constant representing the information you want returned by the HyperlinkPart method:
 | Constant | Value | Description
 | acDisplayedValue | 0 | (Default) The underlined text displayed in a hyperlink.
 | acDisplayText | 1 | The displaytext part of a Hyperlink field.
 | acAddress | 2 | The address part of a Hyperlink field.
 | acSubAddress | 3 | The subaddress part of a Hyperlink field.
 | acScreenTip | 4 | The tooltip part of a Hyperlink field.
 | acFullAddress | 5 | The address and subaddress parts of a Hyperlink field delimited by a "#" character.

Remarks

You use the HyperlinkPart method to return one of three values from a Hyperlink field or the displayed value. The value returned depends on the setting of the part argument. The part argument is optional. If it's not used, the function returns the value Microsoft Access displays for the hyperlink (which corresponds to the acDisplayedValue setting for the part argument). The returned values can be one of the four parts of the Hyperlink field (displaytext, address, subaddress, or screentip), the full address, address#subaddress, or the value Microsoft Access displays for the hyperlink.

Note If you use the HyperlinkPart method in a query, the part argument is required and you can't use the constants listed above but must use the actual value instead.

When a value is provided in the displaytext part of a Hyperlink field, the value displayed by Microsoft Access will be the same as the displaytext setting. When there's no value in the displaytext part of a Hyperlink field, the value displayed will be the address or subaddress part of the Hyperlink field, depending on which value is first present in the field.

The following table shows the values returned by the HyperlinkPart method for data stored in a Hyperlink field.

Hyperlink field data | HyperlinkPart method returned values
#http://www.microsoft.com# | acDisplayedValue: http://www.microsoft.com acDisplayText: acAddress: http://www.microsoft.com acSubAddress: acScreenTip: acFullAddress: http://www.microsoft.com
Microsoft#http://www.microsoft.com# | acDisplayedValue: Microsoft acDisplayText: Microsoft acAddress: http://www.microsoft.com acSubAddress: acScreenTip: acFullAddress: http://www.microsoft.com
Customers#http://www.microsoft.com#Form Customers | acDisplayedValue: Customers acDisplayText: Customers acAddress: http://www.microsoft.com acSubAddress: Form Customers acScreenTip: acFullAddress: http://www.microsoft.com#Form Customer
##Form Customers#Enter Information | acDisplayedValue: Form Customers acDisplayText: acAddress: acSubAddress: Form Customers acScreenTip: Enter Information acFullAddress: #FormCustomer

When you add an address part to a Hyperlink field by using the Insert Hyperlink dialog box (available by clicking Hyperlink on the Insert menu) or by typing an address part directly into a Hyperlink field, Microsoft Access adds the two # symbols that delimit parts of the hyperlink data.

You can add or edit the displaytext part of a hyperlink field by right-clicking a hyperlink in a table, form, or report, pointing to Hyperlink on the shortcut menu, and then typing the display text in the Text to display box.

When you add data to a Hyperlink field directly, you must include the two # symbols to delimit the parts of the hyperlink data.


 InsertLines Method

InsertLines Method

The InsertLines method inserts a line or group of lines of code in a standard module or a class module.

Syntax

object.InsertLines line, string

The InsertLines method has the following arguments.

Argument | Description
object | A Module object.
line | The number of the line at which to begin inserting.
string | The text to be inserted into the module.

Remarks

When you use the InsertLines method, any existing code at the line specified by the line argument moves down.

To add multiple lines, include the intrinsic constant vbCrLf at the desired line breaks within the string that makes up the string argument. This constant forces a carriage return and line feed.

Lines in a module are numbered beginning with one. To determine the number of lines in a module, use the CountOfLines property.


 InsertText Method

InsertText Method

The InsertText method inserts a specified string of text into a standard module or a class module.

Syntax

object.InsertText text

The InsertText method has the following arguments.

Argument | Description
object | A Module object.
text | The text to be inserted into the module.

Remarks

When you insert a string by using the InsertText method, Microsoft Access places the new text at the end of the module, after all other procedures.

To add multiple lines, include the intrinsic constant vbCrLf at the desired line breaks within the string that makes up the text argument. This constant forces a carriage return and line feed.

To specify at which line the text is inserted, use the InsertLines method. To insert code into the Declarations section of the module, use the InsertLines method rather than the InsertText method.

Note In previous versions of Microsoft Access, the InsertText method was a method of the Application object. You can still use the InsertText method of the Application object, but it's recommended that you use the InsertText method of the Module object instead.


 Item Method

Item Method

The Item method returns a specific member of a collection either by position or by key.

Syntax

object.Item(index)

The Item method has the following arguments.

Argument | Description
object | The References collection.
index | An expression that specifies the position of a member of the collection referred to by the object argument. If a numeric expression, the index argument must be a number from 1 to the value of the collection's Count property. If a string expression, the index argument must be the name of a member of the collection.

Remarks

If the value provided for the index argument doesn't match any existing member of the collection, an error occurs.

The Item method is the default member of the References collection, so you don't have to specify it explicitly. For example, the following two lines of code are equivalent:

Debug.Print References(1).Name
Debug.Print References.Item(1).Name


 Line Method

Line Method

The Line method draws lines and rectangles on a Report object when the Print event occurs.

Syntax

object.Line [[Step](x1, y1)] - [Step](x2, y2)[, [color][, B[F]]]

You can use this method only in an event procedure or a macro specified by the OnPrint or OnFormat event property for a report section, or the OnPage event property for a report.

The Line method has the following arguments.

Argument | Description
object | The Report object on which the line or rectangle is to be drawn.
Step | A keyword that indicates the starting point coordinates are relative to the current graphics position given by the settings for the CurrentX and CurrentY properties of the object argument.
x1, y1 | Single values indicating the coordinates of the starting point for the line or rectangle. The Scale properties (ScaleMode, ScaleLeft, ScaleTop, ScaleHeight, and ScaleWidth) of the Report object specified by the object argument determine the unit of measure used. If this argument is omitted, the line begins at the position indicated by the CurrentX and CurrentY properties.
Step | A keyword that indicates the end-point coordinates are relative to the line's starting point.
x2, y2 | Single values indicating the coordinates of the end point for the line to draw. These arguments are required.
color | A Long value indicating the RGB (red-green-blue) color used to draw the line. If this argument is omitted, the value of the ForeColor property is used. You can also use the RGB function or QBColor function to specify the color.
B | An option that creates a rectangle by using the coordinates as opposite corners of the rectangle.
F | F cannot be used without B. If the B option is used, the F option specifies that the rectangle is filled with the same color used to draw the rectangle. If B is used without F, the rectangle is filled with the color specified by the current settings of the FillColor and BackStyle properties. The default value for the BackStyle property is Normal for rectangles and lines.

Remarks

To connect two drawing lines, make sure that one line begins at the end point of the previous line.

The width of the line drawn depends on the DrawWidth property setting. The way a line or rectangle is drawn on the background depends on the settings of the DrawMode and DrawStyle properties.

When you apply the Line method, the CurrentX and CurrentY properties are set to the end point specified by the x2 and y2 arguments.


 LoadPicture Method

LoadPicture Method

The LoadPicture method loads a graphic into an ActiveX control.

Syntax

LoadPicture(stringexpression)

The LoadPicture method has the following argument.

Argument | Description
stringexpression | The file name of the graphic to be loaded. The graphic can be a bitmap file (.bmp), icon file (.ico), run-length encoded file (.rle), or metafile (.wmf).

Remarks

Assign the return value of the LoadPicture method to the Picture property of an ActiveX control to dynamically load a graphic into the control. The following example loads a bitmap into a control called OLECustomControl on an Orders form:

Set Forms!Orders!OLECustomControl.Picture = _
    LoadPicture("Stars.bmp")

The LoadPicture method returns an object of type Picture. You can assign this value to a variable of type Object by using the Set statement.

The Picture object is not a Microsoft Access object, but it is available to procedures in Microsoft Access.

Note You can't use the LoadPicture method to set the Picture property of an image control. This method works with ActiveX controls only. To set the Picture property of an image control, simply assign to it a string specifying the file name and path of the desired graphic.


Maximize Method

The Maximize method carries out the Maximize action in Visual Basic. For more information on how the action works, see the action topic.

Note This method cannot be applied to module windows in the Visual Basic Editor (VBE). For information about how to affect module windows see the WindowState property topic.

Syntax

DoCmd.Maximize

This method has no arguments.


Minimize Method

The Minimize method carries out the Minimize action in Visual Basic. For more information on how the action works, see the action topic.

Note This method cannot be applied to module windows in the Visual Basic Editor (VBE). For information about how to affect module windows see the WindowState property topic.

Syntax

DoCmd.Minimize

This method has no arguments.


 Modify Method (FormatCondition Object)

Modify Method (FormatCondition Object)

You can use the Modify method to change the format conditions of a FormatCondition object in the FormatConditions collection of a combo box or text box control.

Syntax

object.Modify type [, operator][, expression1][, expression2]

The Modify method has the following arguments.

Argument | Description
object | A string expression that evaluates to the FormatCondition object of a combo box or text box control.
type | One of the following intrinsic constants: acExpression acFieldHasFocus acFieldValue
operator | One of the following intrinsic constants: acBetween (default) acEqual acGreaterThan acGreaterThanOrEqual acLessThan acLessThanOrEqual acNotBetween acNotEqual
 | If the type argument is acExpression, the operator argument is ignored. If you leave this argument blank, the default constant (acBetween) is assumed.
expression1 | A Variant value or expression associated with the first part of the conditional format. Can be a constant value or a string value.
expression2 | A Variant value or expression associated with the second part of the conditional format when the operator argument is acBetween or acNotBetween (otherwise, this argument is ignored). Can be a constant value or a string value.

Remarks


 MoveSize Method

MoveSize Method

The MoveSize method carries out the MoveSize action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.MoveSize [right][, down][, width][, height]

The MoveSize method has the following arguments.

Argument | Description
right | A numeric expression.
down | A numeric expression.
width | A numeric expression.
height | A numeric expression.

Remarks

You must include at least one argument for the MoveSize method. If you leave an argument blank, the current setting for the window is used.

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave one or more trailing arguments blank, don't use a comma following the last argument you specify.

The units for the arguments are twips.


 NewAccessProject Method

NewAccessProject Method

You can use the NewAccessProject method to create and open a new Microsoft Access project (.adp) as the current Access project in the Microsoft Access window.

Syntax

object.NewAccessProject projname [, connection]

The NewAccessProject method has the following arguments.

Argument | Description
object | The Application object.
projname | A string expression that is the name of the new Access project, including the path name and the file name extension. If your network supports it, you can also specify a network path in the following form: \\Server\Share\Folder\Filename.adp
connection | A string expression that's the valid connection string for the Access project. See the ADO ConnectionString property for details about this string.

Remarks

The NewAccessProject method enables you to create a new Access project from within Microsoft Access or another application through Automation, formally called OLE Automation. For example, you can use the NewAccessProject method from Microsoft Excel to create a new Access project in the Access window. Once you have created an instance of Microsoft Access from another application, you must also create a new Access project. This Access project opens in the Microsoft Access window.

If the Access project identified by projname already exists, an error occurs.

The new Access project is opened under the Admin user account.

Note To open an Access database (.mdb), use the NewCurrentDatabase method of the Application object.


 NewCurrentDatabase Method

NewCurrentDatabase Method

You can use the NewCurrentDatabase method to create a new Microsoft Access database (.mdb) in the Microsoft Access window. You can use this method to create a new database from another application that is controlling Microsoft Access through Automation, formerly called OLE Automation. For example, you can use the NewCurrentDatabase method from Microsoft Excel to create a new database in the Microsoft Access window.

Note You can use the NewAccessProject method to create a new Microsoft Access project (.adp) in the Access window.

Syntax

application.NewCurrentDatabase dbname

The NewCurrentDatabase method has the following arguments.

Argument | Description
application | The Application object.
dbname | A string expression that is the name of a new database file, including the path name and the file name extension. If your network supports it, you can also specify a network path in the following form: \\Server\Share\Folder\Filename
 | Note If you don't supply the filename extension, .mdb is appended to the filename.

Remarks

The NewCurrentDatabase method enables you to create a new Microsoft Access database from another application through Automation. Once you have created an instance of Microsoft Access from another application, you must also create a new database. This database opens in the Microsoft Access window.

If the database identified by dbname already exists, an error occurs.

The new database is opened under the Admin user account.


 OpenAccessProject Method

OpenAccessProject Method

You can use the OpenAccessProject method to open an existing Microsoft Access project (.adp) as the current Access project in the Microsoft Access window.

Syntax

object.OpenAccessProject projname

The OpenAccessProject method has the following arguments.

Argument | Description
object | The Application object.
projname | A string expression that is the name of the existing Access project, including the path name and the file name extension. If your network supports it, you can also specify a network path in the following form: \\Server\Share\Folder\Filename.adp
 | Note If you don't supply the filename extension, .adp is appended to the filename. You can use this method or the OpenCurrentDatabase method to open .adp files.

Remarks

The OpenAccessProject method enables you to open an existing project from within Microsoft Access or another application through Automation, formally called OLE Automation. For example, you can use the OpenAccessProject method from Microsoft Excel to open the Northwind.adp sample database in the Microsoft Access window. Once you have created an instance of Microsoft Access from another application, you must also create a new Access project or specify a particular Access project to open. This Access project opens in the Microsoft Access window.

If you have already opened a project and wish to open another project in the Microsoft Access window, you can use the CloseCurrentDatabase method to close the first Access project before opening another.

Note To open an Access database (.mdb), use the OpenCurrentDatabase method of the Application object.


 OpenCurrentDatabase Method

OpenCurrentDatabase Method

You can use the OpenCurrentDatabase method to open an existing Microsoft Access database (.mdb) as the current database. You can use this method to open a database from another application that is controlling Microsoft Access through Automation, formerly called OLE Automation. For example, you can use the OpenCurrentDatabase method from Microsoft Excel to open the Northwind.mdb sample database in the Microsoft Access window.

Note Use the OpenAccessProject method to open an existing Microsoft Access project (.adp) as the current database.

Syntax

application.OpenCurrentDatabase dbname[, exclusive]

The OpenCurrentDatabase method has the following arguments.

Argument | Description
application | The Application object.
dbname | A string expression that is the name of an existing database file, including the path name and the file name extension. If your network supports it, you can also specify a network path in the following form: \\Server\Share\Folder\Filename
 | Note If you don't supply the filename extension, .mdb is appended to the filename.
exclusive | Optional. A Boolean value that specifies whether you want to open the database in exclusive mode. The default value is False, which specifies that the database should be opened in shared mode.

Remarks

The OpenCurrentDatabase method enables you to open a Microsoft Access database from another application through Automation. Once you have created an instance of Microsoft Access from another application, you must also create a new database or specify a particular database to open. This database opens in the Microsoft Access window.

If you have already opened a database and wish to open another database in the Microsoft Access window, you can use the CloseCurrentDatabase method to close the first database before opening another.

Set the exclusive argument to True to open the database in exclusive mode. If you omit this argument, the database will open in shared mode.

Note Don't confuse the OpenCurrentDatabase method with the ActiveX Data Objects (ADO) Open method or the Data Access Object (DAO) OpenDatabase method. The OpenCurrentDatabase method opens a database in the Microsoft Access window. The ADO Open method returns a Connection object variable, the DAO OpenDatabase method returns a Database object variable, both of which represent a particular database, but don't actually open that database in the Microsoft Access window.


 OpenDataAccessPage Method

OpenDataAccessPage Method

The OpenDataAccessPage method carries out the OpenDataAccessPage action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.OpenDataAccessPage datapagename [, datapageview]

The OpenDataAccessPage method has the following arguments.

Argument | Description
datapagename | A string expression that's the valid name of a data access page in the current database.
 | If you execute Visual Basic code containing the OpenDataAccessPage method in a library database, Microsoft Access looks for the form with this name first in the library database, then in the current database.
datapageview | One of the following intrinsic constants:
 | acDataPageBrowse (default) acDataPageDesign
 | acDataPageBrowse opens the form in Page view.
 | If you leave this argument blank, the default constant (acDataPageBrowse) is assumed.

Remarks

If the connection password was not contained in the connection information for the data access page when it was created, the user is prompted to provide a password when the OpenDataAccessPage method is used.


 OpenDiagram Method

OpenDiagram Method

The OpenDiagram method carries out the OpenDiagram action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.OpenDiagram diagramname

The OpenDiagram method has the following argument.

Argument | Description
datapagename | A string expression that's the valid name of a database diagram in the current database.
 | If you execute Visual Basic code containing the OpenDiagram method in a library database, Microsoft Access looks for the database diagram with this name first in the library database, then in the current database.


 OpenForm Method

OpenForm Method

The OpenForm method carries out the OpenForm action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.OpenForm formname[, view][, filtername][, wherecondition][, datamode][, windowmode][, openargs]

The OpenForm method has the following arguments.

Argument | Description
formname | A string expression that's the valid name of a form in the current database.
 | If you execute Visual Basic code containing the OpenForm method in a library database, Microsoft Access looks for the form with this name first in the library database, then in the current database.
view | One of the following intrinsic constants:
 | acDesign acFormDS acNormal (default) acPreview
 | acNormal opens the form in Form view.
 | If you leave this argument blank, the default constant (acNormal) is assumed.
filtername | A string expression that's the valid name of a query in the current database.
wherecondition | A string expression that's a valid SQL WHERE clause without the word WHERE.
datamode | One of the following intrinsic constants:
 | acFormAdd acFormEdit acFormPropertySettings (default) acFormReadOnly
 | If you leave this argument blank (the default constant, acFormPropertySettings, is assumed), Microsoft Access opens the form in the data mode set by the form's AllowEdits, AllowDeletions, AllowAdditions, and DataEntry properties.
windowmode | One of the following intrinsic constants:
 | acDialog acHidden acIcon acWindowNormal (default)
 | If you leave this argument blank, the default constant (acWindowNormal) is assumed.
openargs | A string expression. This expression is used to set the form's OpenArgs property. This setting can then be used by code in a form module, such as the Open event procedure. The OpenArgs property can also be referred to in macros and expressions.
 | For example, suppose that the form you open is a continuous-form list of clients. If you want the focus to move to a specific client record when the form opens, you can specify the client name with the openargs argument, and then use the FindRecord method to move the focus to the record for the client with the specified name.
 | This argument is available only in Visual Basic.

Remarks

The maximum length of the wherecondition argument is 32,768 characters (unlike the Where Condition action argument in the Macro window, whose maximum length is 256 characters).

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.


 OpenModule Method

OpenModule Method

The OpenModule method carries out the OpenModule action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.OpenModule [modulename][, procedurename]

The OpenModule method has the following arguments.

Argument | Description
modulename | A string expression that's the valid name of the Visual Basic module you want to open. If you leave this argument blank, Microsoft Access searches all the standard modules in the database for the procedure you selected with the procedurename argument and opens the module containing the procedure to that procedure.
 | If you execute Visual Basic code containing the OpenModule method in a library database, Microsoft Access looks for the module with this name first in the library database, then in the current database.
procedurename | A string expression that's the valid name for the procedure you want to open the module to. If you leave this argument blank, the module opens to the Declarations section.

Remarks

You must include at least one of the two OpenModule action arguments. If you enter a value for both arguments, Microsoft Access opens the specified module at the specified procedure.

If you leave the procedurename argument blank, don't use a comma following the modulename argument.


 OpenQuery Method

OpenQuery Method

The OpenQuery method carries out the OpenQuery action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Note This method is only available in the Microsoft Access database environment (.mdb). See the OpenView or OpenStoredProcedure methods if using the Microsoft Access Project environment (.adp).

Syntax

DoCmd.OpenQuery queryname[, view][, datamode]

The OpenQuery method has the following arguments.

Argument | Description
queryname | A string expression that's the valid name of a query in the current database.
 | If you execute Visual Basic code containing the OpenQuery method in a library database, Microsoft Access looks for the query with this name first in the library database, then in the current database.
view | One of the following intrinsic constants:
 | acViewDesign acViewNormal (default) acViewPreview
 | If the queryname argument is the name of a select, crosstab, union, or pass-through query whose ReturnsRecords property is set to -1, acViewNormal displays the query's result set. If the queryname argument refers to an action, data-definition, or pass-through query whose ReturnsRecords property is set to 0, acViewNormal runs the query.
 | If you leave this argument blank, the default constant (acViewNormal) is assumed.
datamode | One of the following intrinsic constants:
 | acAdd acEdit (default) acReadOnly
 | If you leave this argument blank, the default constant (acEdit) is assumed.

Remarks

If you specify the datamode argument and leave the view argument blank, you must include the view argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.


 OpenReport Method

OpenReport Method

The OpenReport method carries out the OpenReport action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.OpenReport reportname[, view][, filtername][, wherecondition]

The OpenReport method has the following arguments.

Argument | Description
reportname | A string expression that's the valid name of a report in the current database.
 | If you execute Visual Basic code containing the OpenReport method in a library database, Microsoft Access looks for the report with this name first in the library database, then in the current database.
view | One of the following intrinsic constants:
 | acViewDesign acViewNormal (default) acViewPreview
 | acViewNormal prints the report immediately. If you leave this argument blank, the default constant (acViewNormal) is assumed.
filtername | A string expression that's the valid name of a query in the current database.
wherecondition | A string expression that's a valid SQL WHERE clause without the word WHERE.

Remarks

The maximum length of the wherecondition argument is 32,768 characters (unlike the Where Condition action argument in the Macro window, whose maximum length is 256 characters).

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave one or more trailing arguments blank, don't use a comma following the last argument you specify.


 OpenStoredProcedure Method

OpenStoredProcedure Method

The OpenView method carries out the OpenStoredProcedure action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.OpenStoredProcedure procedurename [, viewmode] [, datamode]

The OpenStoredProcedure method has the following arguments.

Argument | Description
procedurename | A string expression that's the valid name of a stored procedure in the current database.
 | If you execute Visual Basic code containing the OpenStoredProcedure method in a library database, Microsoft Access looks for the stored procedure with this name first in the library database, then in the current database.
viewmode | One of the following intrinsic constants:
 | acViewNormal (default) acViewDesign acViewPreview
 | If you leave this argument blank, the default constant (acViewNormal) is assumed.
datamode | One of the following intrinsic constants:
 | acAdd acEdit (default) acReadOnly
 | If you leave this argument blank, the default constant (acEdit) is assumed.


 OpenTable Method

OpenTable Method

The OpenTable method carries out the OpenTable action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.OpenTable tablename[, view][, datamode]

The OpenTable method has the following arguments.

Argument | Description
tablename | A string expression that's the valid name of a table in the current database.
 | If you execute Visual Basic code containing the OpenTable method in a library database, Microsoft Access looks for the table with this name first in the library database, then in the current database.
view | One of the following intrinsic constants:
 | acViewDesign acViewNormal (default) acViewPreview
 | acViewNormal opens the table in Datasheet view.
 | If you leave this argument blank, the default constant (acViewNormal) is assumed.
datamode | One of the following intrinsic constants:
 | acAdd acEdit (default) acReadOnly
 | If you leave this argument blank, the default constant (acEdit) is assumed.

Remarks

If you specify the datamode argument and leave the view argument blank, you must include the view argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.


 OpenView Method

OpenView Method

The OpenView method carries out the OpenView action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.OpenView viewname [, viewmode] [, datamode]

The OpenView method has the following arguments.

Argument | Description
viewname | A string expression that's the valid name of a view in the current database.
 | If you execute Visual Basic code containing the OpenView method in a library database, Microsoft Access looks for the view with this name first in the library database, then in the current database.
viewmode | One of the following intrinsic constants:
 | acViewNormal (default) acViewDesign acPreview
 | If you leave this argument blank, the default constant (acViewNormal) is assumed.
datamode | One of the following intrinsic constants.
 | acEdit (default) acAdd acReadOnly
 | If you leave this argument blank, the default constant (acEdit) is assumed.


 OutputTo Method

OutputTo Method

The OutputTo method carries out the OutputTo action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.OutputTo objecttype[, objectname][, outputformat][, outputfile][, autostart][, templatefile]

The OutputTo method has the following arguments.

Argument | Description
objecttype | One of the following intrinsic constants:
 | acOutputDataAccessPage acOutputForm acOutputModule acOutputQuery acOutputReport acOutputServerView acOutputStoredProcedure acOutputTable
objectname | A string expression that's the valid name of an object of the type selected by the objecttype argument. If you want to output the active object, specify the object's type for the objecttype argument and leave this argument blank.
 | If you run Visual Basic code containing the OutputTo method in a library database, Microsoft Access looks for the object with this name first in the library database, then in the current database.
outputformat | One of the following intrinsic constants:
 | acFormatASP acFormatDAP acFormatHTML acFormatIIS acFormatRTF acFormatSNP acFormatTXT acFormatXLS
 | If you leave this argument blank, Microsoft Access prompts you for the output format.
outputfile | A string expression that's the full name, including the path, of the file you want to output the object to.
 | If you leave this argument blank, Microsoft Access prompts you for an output file name.
autostart | Use True (-1) to start the appropriate Microsoft Windows-based application immediately, with the file specified by the outputfile argument loaded. Use False (0) if you don't want to start the application. This argument is ignored for Microsoft Internet Information Server (.htx, .idc) files and Microsoft ActiveX Server (*.asp) files.
 | If you leave this argument blank, the default (False) is assumed.
templatefile | A string expression that's the full name, including the path, of the file you want to use as a template for an HTML, HTX, or ASP file.

Remarks

Modules can be output only in MS-DOS Text format, so if you specify acOutputModule for the objecttype argument, you must specify acFormatTXT for the outputformat argument. Microsoft Internet Information Server and Microsoft ActiveX Server formats are available only for tables, queries, and forms, so if you specify acFormatIIS or acFormatASP for the outputformat argument, you must specify acOutputTable, acOutputQuery, or acOutputForm for the objecttype argument.

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.


 Print Method (Microsoft Access)

Print Method

The Print method prints text on a Report object using the current color and font.

Syntax

object.Print [{Spc(n) | Tab(n)}][expressionlist][{;|,}]

The Print method has the following arguments.

Argument | Description
object | The Report object on which the text is to be printed.
Spc(n) | The Visual Basic function used to insert n spaces into the printed output. Multiple use is permitted.
Tab(n) | The Visual Basic function used to move the insertion point to the nth print zone before the expressionlist argument is printed. Print zones begin every 14 columns. The width of each column is an average of the width of all characters in the font size for the chosen font. Multiple use is permitted.
expressionlist | The numeric or string expressions to print. If this argument is omitted, the Print method prints a blank line. Multiple expressions can be separated with a space, a semicolon (;), or a comma. A space has the same effect as a semicolon. You can also use the Spc and Tab functions to separate each pair of expressions.
{;|,} | Determines the location of the insertion point for the next character printed. A semicolon means that the insertion point is placed immediately after the last character printed; a comma means that the insertion point is placed at the start of the next print zone.

Remarks

You can use this method only in a event procedure or macro specified by a section's OnPrint event property setting.

The expressions specified by the expressionlist argument are printed on the object starting at the position indicated by the CurrentX and CurrentY property settings.

When the expressionlist argument is printed, a carriage return is usually appended so that the next Print method begins printing on the next line. When a carriage return occurs, the CurrentY property setting is increased by the height of the expressionlist argument (the same as the value returned by the TextHeight method) and the CurrentX property is set to 0.

When a semicolon follows the expressionlist argument, no carriage return is appended, and the next Print method prints on the same line that the current Print method printed on. The CurrentX and CurrentY properties are set to the point immediately after the last character printed. If the expressionlist argument itself contains carriage returns, each such embedded carriage return sets the CurrentX and CurrentY properties as described for the Print method without a semicolon.

When a comma follows the expressionlist argument, the CurrentX and CurrentY properties are set to the next print zone on the same line.

When the expressionlist argument is printed on a Report object, lines that can't fit in the specified position don't scroll. The text is clipped to fit the object.

Because the Print method usually prints with proportionally spaced characters, it's important to remember that there's no correlation between the number of characters printed and the number of fixed-width columns those characters occupy. For example, a wide letter (such as W) occupies more than one fixed-width column, whereas a narrow letter (such as I) occupies less. You should make sure that your tabular columns are positioned far enough apart to accommodate the text you wish to print. Alternately, you can print with a fixed-pitch font (such as Courier) to ensure that each character uses only one column.


 PrintOut Method

PrintOut Method

The PrintOut method carries out the PrintOut action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.PrintOut [printrange][, pagefrom, pageto][, printquality][, copies][, collatecopies]

The PrintOut method has the following arguments.

Argument | Description
printrange | One of the following intrinsic constants:
 | acPrintAll (default) acSelection acPages
 | If you leave this argument blank, the default constant (acPrintAll) is assumed.
pagefrom | A numeric expression that's a valid page number in the active form or datasheet. This argument is required if you specify acPages for the printrange argument.
pageto | A numeric expression that's a valid page number in the active form or datasheet. This argument is required if you specify acPages for the printrange argument.
printquality | One of the following intrinsic constants:
 | acDraft acHigh (default) acLow acMedium
 | If you leave this argument blank, the default constant (acHigh) is assumed.
copies | A numeric expression. If you leave this argument blank, the default (1) is assumed.
collatecopies | Use True (-1) to collate copies and False (0) to print without collating. If you leave this argument blank, the default (True) is assumed.

Remarks

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave one or more trailing arguments blank, don't use a comma following the last argument you specify.


 PrintSnapshot Method

PrintSnapshot Method

The PrintSnapshot method is used to print the current snapshot file.

Syntax

object.PrintSnapshot([ShowPrintDialog As Boolean])

The PrintSnapshot method has the following arguments.

Argument | Description
object | An object representing a Snapshot Viewer control.
ShowPrintDialog | (Optional) A Boolean value specifying whether to show the Print dialog box. The default value is True.

Remarks

If you do not specify the optional ShowPrintDialog argument, then the Print dialog box is displayed. If the user clicks the Cancel button in the Print dialog box, an error (2504) occurs. If you use the PrintSnapshot method without having a snapshot file displayed in the control, an error (2502) occurs. You can use the SnapshotPath and ReadyState properties to make sure a valid snapshot is displayed in the control.

You can print one or more pages in a snapshot file by specifying the pages to print in the Print dialog box.

The PrintSnapshot method displays an hourglass while printing the snapshot file.


 PSet Method

PSet Method

The PSet method sets a point on a Report object to a specified color when the Print event occurs.

Syntax

object.PSet [Step](x, y)[, color]

You can use this method only in an event procedure or a macro specified by the OnPrint or OnFormat event property for a report section, or the OnPage event property for a report.

The PSet method has the following arguments.

Argument | Description
object | The Report object on which the point is to be drawn.
Step | A keyword that indicates the coordinates are relative to the current graphics position given by the settings for the CurrentX and CurrentY properties of the object argument.
x, y | Single values indicating the horizontal and vertical coordinates of the point to set.
color | A Long value indicating the RGB (red-green-blue) color to set the point to. If this argument is omitted, the value of the ForeColor property is used. You can also use the RGB function or QBColor function to specify the color.

Remarks

The size of the point depends on the DrawWidth property setting. When the DrawWidth property is set to 1, the PSet method sets a single pixel to the specified color. When the DrawWidth property is greater than 1, the point is centered on the specified coordinates.

The way the point is drawn depends on the settings of the DrawMode and DrawStyle properties.

When you apply the PSet method, the CurrentX and CurrentY properties are set to the point specified by the x and y arguments.

To clear a single pixel with the PSet method, specify the coordinates of the pixel and use &HFFFFFF (white) as the color argument.

Tip It's faster to draw a line by using the Line method rather than the PSet method.


 Quit Method (Application Object)

Quit Method (Application Object)

The Quit method quits Microsoft Access. You can select one of several options for saving a database object before quitting.

Syntax

Application.Quit [option]

The Quit method has the following argument.

Argument | Description
option | An intrinsic constant that specifies what happens to unsaved objects when you quit Microsoft Access. This argument can be any of the following constants.
 | Constant | Description
 | acSaveYes | (Default) Saves all objects without displaying a dialog box.
 | acPrompt | Displays a dialog box that asks whether you want to save any database objects that have been changed but not saved.
 | acExit | Quits Microsoft Access without saving any objects.

Remarks

The Quit method has the same effect as clicking Exit on the File menu. You can create a custom menu command or a command button on a form with a procedure that includes the Quit method. For example, you can place a Quit button on a form and include a procedure in the button's Click event that uses the Quit method with the option argument set to acSaveYes.


 Quit Method (DoCmd Object)

Quit Method (DoCmd Object)

The Quit method of the DoCmd object carries out the Quit action in Visual Basic. For more information on how the action and its argument work, see the action topic.

Syntax

DoCmd.Quit [options]

The Quit method has the following argument.

Argument | Description
options | One of the following intrinsic constants:
 | acQuitPrompt acQuitSaveAll (default) acQuitSaveNone
 | If you leave this argument blank, the default constant (acQuitSaveAll) is assumed.

Remarks

The Quit method of the DoCmd object was added to provide backward compatibility for running the Quit action in Visual Basic code in Microsoft Access 95. It's recommended that you use the existing Quit method of the Application object instead.


 Recalc Method

Recalc Method

The Recalc method immediately updates all calculated controls on a form.

Syntax

form.Recalc

The Recalc method has the following argument.

Argument | Description
form | A Form object representing the form that contains the controls for which you want to recalculate the values.

Remarks

Using this method is equivalent to pressing the F9 key when a form has the focus. You can use this method to recalculate the values of controls that depend on other fields for which the contents may have changed.


 Refresh Method (Microsoft Access)

Refresh Method

The Refresh method immediately updates the records in the underlying record source for a specified form or datasheet to reflect changes made to the data by you and other users in a multiuser environment.

Syntax

form.Refresh

The Refresh method has the following argument.

Argument | Description
form | A Form object that represents the form to refresh.

Remarks

Using the Refresh method is equivalent to clicking Refresh on the Records menu.

Microsoft Access refreshes records automatically, based on the Refresh Interval setting on the Advanced tab of the Options dialog box, available by clicking Options on the Tools menu. ODBC data sources are refreshed based on the ODBC Refresh Interval setting on the Advanced tab of the Options dialog box. You can use the Refresh method to view changes that have been made to the current set of records in a form or datasheet since the record source underlying the form or datasheet was last refreshed.

The Refresh method shows only changes made to records in the current set. Since the Refresh method doesn't actually requery the database, the current set won't include records that have been added or exclude records that have been deleted since the database was last requeried. Nor will it exclude records that no longer satisfy the criteria of the query or filter. To requery the database, use the Requery method. When the record source for a form is requeried, the current set of records will accurately reflect all data in the record source.

Notes

  • It's often faster to refresh a form or datasheet than to requery it. This is especially true if the initial query was slow to run.

  • Don't confuse the Refresh method with the Repaint method, which repaints the screen with any pending visual changes.


 RefreshDatabaseWindow Method

RefreshDatabaseWindow Method

The RefreshDatabaseWindow method updates the Database window after a database object has been created, deleted, or renamed.

Syntax

[application.]RefreshDatabaseWindow

The RefreshDatabaseWindow method has the following argument.

Argument | Description
application | The Microsoft Access Application object.

Remarks

You can use the RefreshDatabaseWindow method to immediately reflect changes to objects in Microsoft Access in the Database window. For example, if you add a new form from Visual Basic and save it, you can use the RefreshDatabaseWindow method to display the name of the new form on the Forms tab of the Database window immediately after it has been saved.


 RefreshTitleBar Method

RefreshTitleBar Method

The RefreshTitleBar method refreshes the Microsoft Access title bar after the AppTitle or AppIcon property has been set in Visual Basic. For example, you can change the caption in the Microsoft Access title bar to "Contacts Database" by setting the AppTitle property.

Syntax

application.RefreshTitleBar

The RefreshTitleBar method uses the following argument.

Argument | Description
application | The Application object.

Remarks

The AppTitle and AppIcon properties enable you to customize your application by changing the title and icon that appear in the Microsoft Access title bar. The title bar is not automatically updated after you have set these properties. In order for the change to the title bar to appear, you must use the RefreshTitleBar method.

Note In a Microsoft Access database (.mdb), you can reset the AppTitle and AppIcon properties to their default value by deleting them from the Properties collection representing the current database. After you delete these properties, you must use the RefreshTitleBar method to restore the Microsoft Access defaults to the title bar.


 Remove Method (AccessObjectProperties Collection)

Remove Method (AccessObjectProperties Collection)

You can use the Remove method to remove an AccessObjectProperty object from the AccessObjectProperties collection of an AccessObject object.

Syntax

object.Remove item

The Delete method has the following arguments.

Argument | Description
object | A string expression that evaluates to the AccessObjectProperties collection of an AccessObject object.
item | An expression that specifies the position of a member of the collection referred to by the object argument. If a numeric expression, the index argument must be a number from 0 to the value of the collection's Count property minus 1. If a string expression, the index argument must be the name of a member of the collection.


 Remove Method (Pages Collection)

Remove Method (Pages Collection)

The Remove method removes a Page object from the Pages collection of a tab control.

Syntax

object.Remove [item]

The Remove method has the following arguments.

Argument | Description
object | A string expression that evaluates to the Pages collection of a tab control.
item | An integer that specifies the index of the Page object to be removed. The index of the Page object corresponds to the value of the PageIndex property for that Page object. If you omit this argument, the last Page object in the collection is removed.

Remarks

The Pages collection is indexed beginning with zero. The leftmost page in the tab control has an index of 0, the page immediately to the right of the leftmost page has an index of 1, and so on.

You can remove a Page object from the Pages collection of a tab control only when the form is in Design view.


 Remove Method (References Collection)

Remove Method (References Collection)

The Remove method removes a Reference object from the References collection.

Syntax

object.Remove reference

The Remove method has the following arguments.

Argument | Description
object | A string expression that evaluates to the References collection.
reference | The Reference object that represents the reference you wish to remove.

Remarks

To determine the name of the Reference object you wish to remove, check the Project/Library box in the Object Browser. The names of all references that are currently set appear there. These names correspond to the value of the Name property of a Reference object.


 Rename Method

Rename Method

The Rename method carries out the Rename action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.Rename newname[, objecttype, oldname]

The Rename method has the following arguments.

Argument | Description
newname | A string expression that's the new name for the object you want to rename. The name must follow the object-naming rules for Microsoft Access objects.
objecttype | One of the following intrinsic constants:
 | acDataAccessPage acDefault (default) acDiagram acForm acMacro acModule acQuery acReport acServerView acStoredProcedure acTable
oldname | A string expression that's the valid name of an object of the type specified by the objecttype argument.
 | If you execute Visual Basic code containing the Rename method in a library database, Microsoft Access looks for the object with this name first in the library database, then in the current database.

Remarks

If you leave the objecttype and oldname arguments blank (the default constant, acDefault, is assumed for objecttype), Microsoft Access renames the object selected in the Database window. To select an object in the Database window, you can use the SelectObject action or SelectObject method with the In Database Window argument set to Yes (True).

If you leave the objecttype and oldname arguments blank, don't use a comma following the newname argument.


 Repaint Method

Repaint Method

The Repaint method completes any pending screen updates for a specified form. When performed on a form, the Repaint method also completes any pending recalculations of the form's controls.

Syntax

form.Repaint

The Repaint method has the following argument.

Argument | Description
form | A Form object that represents the form to repaint.

Remarks

Microsoft Access sometimes waits to complete pending screen updates until it finishes other tasks. With the Repaint method, you can force immediate repainting of the controls on the specified form. You can use the Repaint method:

  • When you change values in a number of fields. Unless you force a repaint, Microsoft Access might not display the changes immediately, especially if other fields, such as those in an expression in a calculated control, depend on values in the changed fields.

  • When you want to make sure that a form displays data in all of its fields. For example, fields containing OLE objects often don't display their data immediately after you open a form.

This method doesn't cause a requery of the database, nor does it show new or changed records in the form's underlying record source. You can use the Requery method to requery the source of data for the form or one of its controls.

Notes

  • Don't confuse the Repaint method with the Refresh method, or with the Refresh command on the Records menu. The Refresh method and Refresh command show changes you or other users have made to the underlying record source for any of the currently displayed records in forms and datasheets. The Repaint method simply updates the screen when repainting has been delayed while Microsoft Access completes other tasks.

  • The Repaint method differs from the Echo method in that the Repaint method forces a single immediate repaint, while the Echo method turns repainting on or off.


 RepaintObject Method

RepaintObject Method

The RepaintObject method carries out the RepaintObject action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.RepaintObject [objecttype, objectname]

The RepaintObject method has the following arguments.

Argument | Description
objecttype | One of the following intrinsic constants:
 | acDataAccessPage acDefault (default) acDiagramacForm acMacro acModule acQuery acReport acServerView acStoredProcedure acTable
objectname | A string expression that's the valid name of an object of the type selected by the objecttype argument.

Remarks

Using the RepaintObject method with no arguments (the default constant, acDefault, is assumed for the objecttype argument) repaints the active window.

The RepaintObject method of the DoCmd object was added to provide backwards compatibility for running the RepaintObject method in Visual Basic code in Microsoft Access 95. If you want to repaint a form, it's recommended that you use the existing Repaint method of the Form object instead.


 ReplaceLine Method

ReplaceLine Method

The ReplaceLine method replaces a specified line in a standard module or a class module.

Syntax

object.ReplaceLine line, string

The ReplaceLine method has the following arguments.

Argument | Description
object | A Module object.
line | A Long value that specifies the number of the line to be replaced.
string | The text that is to replace the existing line.

Remarks

Lines in a module are numbered beginning with one. To determine the number of lines in a module, use the CountOfLines property.


 Requery Method (Control or Form Object)

Requery Method (Control or Form Object)

The Requery method updates the data underlying a specified form, or a control that's on the active form, by requerying the source of data for the form or control.

Syntax

[object.]Requery

The Requery method has the following argument.

Argument | Description
object | A Form or Control object representing the form or control you want to update. Omit this argument to requery the source of data for the active object.

Remarks

You can use this method to ensure that a form or control displays the most recent data.

The Requery method does one of the following:

  • Reruns the query on which the form or control is based.

  • Displays any new or changed records or removes deleted records from the table on which the form or control is based.

  • Updates records displayed based on any changes to the Filter property of the form.

Controls based on a query or table include:

  • List boxes and combo boxes.

  • Subform controls.

  • OLE objects, such as charts.

  • Controls for which the ControlSource property setting includes domain aggregate functions or SQL aggregate function.

If you specify any other type of control for the object argument, the record source for the form is requeried.

If the control specified by the object argument isn't bound to a field in a table or query, the Requery method forces a recalculation of the control.

If you omit the object argument, the Requery method requeries the underlying source of data for the form or control that has the focus. If the control that has the focus has a record source or row source, it will be requeried; otherwise the control's data will simply be refreshed.

If a subform control has the focus, this method only requeries the record source for the subform, not the parent form.

Notes

  • The Requery method updates the data underlying a form or control to reflect records that are new to or have been deleted from the record source since it was last requeried. The Refresh method shows only changes that have been made to the current set of records; it doesn't reflect new records or deleted records in the record source. The Repaint method simply repaints the specified form and its controls.

  • The Requery method doesn't pass control to the operating system to allow Windows to continue processing messages. Use the DoEvents function if you need to relinquish temporary control to the operating system.

  • The Requery method is faster than the Requery action. When you use the Requery action, Microsoft Access closes the query and reloads it from the database. When you use the Requery method, Microsoft Access reruns the query without closing and reloading it.


 Requery Method (DoCmd Object)

Requery Method (DoCmd Object)

The Requery method of the DoCmd object carries out the Requery action in Visual Basic. For more information on how the action and its argument work, see the action topic.

Syntax

DoCmd.Requery [controlname]

The Requery method has the following arguments.

Argument | Description
controlname | A string expression that's the name of a control on the active object.

Remarks

Use only the name of the control for the controlname argument, not the full syntax.

You can also use a variable declared as a Control data type for this argument:

Dim ctlLstBox As Control
Set ctlLstBox = Forms!Form1!Field3
DoCmd.Requery ctlLstBox.Name

The Requery method of the DoCmd object is different from the Requery method in Visual Basic. The Requery method of the DoCmd object was added to provide backwards compatibility for running the Requery action in Visual Basic code in Microsoft Access 95. If you want to requery a control that's not on the active object, you must use the Requery method in Visual Basic, not the Requery action or its corresponding Requery method of the DoCmd object. The Requery method of a form or control in Visual Basic is faster than the Requery action or the DoCmd.Requery method. In addition, when you use the Requery action or the DoCmd.Requery method, Microsoft Access closes the query and reloads it from the database, but when you use the Requery method, Microsoft Access reruns the query without closing and reloading it.

Note The Requery method in ActiveX Data Objects (ADO) can also be used to reun the query.


Restore Method

The Restore method carries out the Restore action in Visual Basic. For more information on how the action works, see the action topic.

Note This method cannot be applied to module windows in the Visual Basic Editor (VBE). For information about how to affect module windows see the WindowState property topic.

Syntax

DoCmd.Restore

This method has no arguments.


 Run Method

Run Method

You can use the Run method to carry out a specified Microsoft Access or user-defined Function or Sub procedure. This method is useful when you are controlling Microsoft Access from another application through Automation, formerly called OLE Automation. For example, you can use the Run method from an ActiveX component to carry out a Sub procedure that is defined within a Microsoft Access database.

Syntax

application.Run procedure[, arg1, arg2, ..., arg30]

The Run method has the following arguments.

Argument | Description
application | The Application object.
procedure | The name of the Function or Sub procedure to be run. If you are calling a procedure in another database use the project name and the procedure name separated by a dot in the form: "projectname.procedurename" If you execute Visual Basic code containing the Run method in a library database, Microsoft Access looks for the procedure first in the library database, then in the current database.
arg1, arg2, ... | Optional. The arguments for the specified Function or Sub procedure. You can supply a maximum of thirty arguments.

Remarks

You can set a reference to the Microsoft Access type library from any other ActiveX component and use the objects, methods, and properties defined in that library in your code. However, you can't set a reference to an individual Microsoft Access database from any application other than Microsoft Access. The Run method provides a way to call a procedure you have defined in a Microsoft Access database from another application.

For example, suppose you have defined a procedure named NewForm in a database with its ProjectName property set to "WizCode." The NewForm procedure takes a string argument. You can call NewForm in the following manner from Visual Basic:

Dim appAccess As New Access.Application
appAccess.OpenCurrentDatabase ("C:\My Documents\WizCode.mdb")
appAccess.Run "WizCode.NewForm", "Some String"

If another procedure with the same name may reside in a different database, qualify the procedure argument, as shown in the preceding example, with the name of the database in which the desired procedure resides.

You can also use the Run method to call a procedure in a referenced Microsoft Access database from another database.


RunCommand Method

The RunCommand method runs a built-in menu or toolbar command.

Syntax

[object.]RunCommand command

The RunCommand method has the following arguments.

Argument | Description
object | Optional. The Application object or the DoCmd object.
command | An intrinsic constant that specifies which built-in menu or toolbar command is to be run.

Remarks

Each menu and toolbar command in Microsoft Access has an associated constant that you can use with the RunCommand method to run that command from Visual Basic.

For a list of possible constants for the command argument, see RunCommand Method Constants. You can also view these constants in the Object Browser. Select Access in the Project/Library box, then select AcCommand in the Classes list. The constants appear in the Members Of list.

You can't use the RunCommand method to run a command on a custom menu or toolbar. You can only use it with built-in menus and toolbars.

The RunCommand method replaces the DoMenuItem method of the DoCmd object.


 RunMacro Method

RunMacro Method

The RunMacro method carries out the RunMacro action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.RunMacro macroname[, repeatcount][, repeatexpression]

The RunMacro method has the following arguments.

Argument | Description
macroname | A string expression that's the valid name of a macro in the current database.
 | If you run Visual Basic code containing the RunMacro method in a library database, Microsoft Access looks for the macro with this name in the library database and doesn't look for it in the current database.
repeatcount | A numeric expression that evaluates to an integer, which is the number of times the macro will run.
repeatexpression | A numeric expression that's evaluated each time the macro runs. When it evaluates to False (0), the macro stops running.

Remarks

You can use macrogroupname.macroname syntax for the macroname argument to run a particular macro in a macro group.

If you specify the repeatexpression argument and leave the repeatcount argument blank, you must include the repeatcount argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.


 RunSQL Method

RunSQL Method

The RunSQL method carries out the RunSQL action in Visual Basic in action queries. For more information on how the action and its arguments work, see the action topic.

This method only applies to Microsoft Access databases (.mdb).

Syntax

DoCmd.RunSQL sqlstatement[, usetransaction]

The RunSQL method has the following arguments.

Argument | Description
sqlstatement | A string expression that's a valid SQL statement for an action query or a data-definition query. It uses an INSERT INTO, DELETE, SELECT...INTO, UPDATE, CREATE TABLE, ALTER TABLE, DROP TABLE, CREATE INDEX, or DROP INDEX statement. Include an IN clause if you want to access another database.
usetransaction | Use True (-1) to include this query in a transaction. Use False (0) if you don't want to use a transaction. If you leave this argument blank, the default (True) is assumed.

Remarks

The maximum length of the sqlstatement argument is 32,768 characters (unlike the SQL Statement action argument in the Macro window, whose maximum length is 256 characters).

If you leave the usetransaction argument blank, don't use a comma following the sqlstatement argument.


 Save Method

Save Method

The Save method carries out the Save action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.Save [objecttype, objectname]

The Save method has the following arguments.

Argument | Description
objecttype | One of the following intrinsic constants:
 | acDataAccessPage acDefault (default) acDiagram acForm acMacro acModule acQuery acReport acServerView acStoredProcedure acTable
 | Note If closing a module in the Visual Basic Editor (VBE), you must use acModule in the objecttype argument.
objectname | A string expression that's the valid name of an object of the type selected by the objecttype argument.

Remarks

If you leave the objecttype and objectname arguments blank (the default constant, acDefault, is assumed for the objecttype argument), Microsoft Access saves the active object. If you leave the objecttype argument blank, but enter a name in the objectname argument, Microsoft Access saves the active object with the specified name. If you enter an object type in the objecttype argument, you must enter an existing object's name in the objectname argument.

If you leave the objecttype argument blank, but enter a name in the objectname argument, you must include the objecttype argument's comma.

Note You can't use the Save method to save any of the following with a new name:

  • A form in Form view or Datasheet view.

  • A report in Print Preview.

  • A module.

  • A data access page in Page view.

  • A server view in Datasheet view or Print Preview.

  • A table in Datasheet view or Print Preview.

  • A query in Datasheet view or Print Preview.

  • A stored procedure in Datasheet view or Print Preview.

The Save method, whether it's run in the current database or in a library database, always saves the specified object or the active object in the database in which the object was created.


 Scale Method

Scale Method

The Scale method defines the coordinate system for a Report object.

Syntax

object.Scale[(x1, y1) - (x2, y2)]

You can use this method only in an event procedure or a macro specified by the OnPrint or OnFormat event property for a report section, or the OnPage event property for a report.

The Scale method has the following arguments.

Argument | Description
object | The Report object to which the coordinate system is applied.
x1, y1 | Single values for the horizontal and vertical coordinates that define the position of the upper-left corner of the object.
x2, y2 | Single values for the horizontal and vertical coordinates that define the position of the lower-right corner of the object.

Remarks

You can use the Scale method to reset the coordinate system to any scale you choose. Using the Scale method with no arguments resets the coordinate system to twips. The Scale method affects the coordinate system for the Print method and the report graphics methods, which include the Circle, Line, and PSet methods.


 SelectObject Method

SelectObject Method

The SelectObject method carries out the SelectObject action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.SelectObject objecttype[, objectname][, indatabasewindow]

The SelectObject method has the following arguments.

Argument | Description
objecttype | One of the following intrinsic constants:
 | acDataAccessPage acDiagram acForm acMacro acModule acQuery acReport acServerView acStoredProcedure acTable
 | Note The constant acDefault, which appears in the Auto List Members list for this argument, is invalid for this argument. You must choose one of the constants listed above.
objectname | A string expression that's the valid name of an object of the type selected by the objecttype argument. This is a required argument, unless you specify True (-1) for the indatabasewindow argument. If you specify True for the indatabasewindow argument and leave the objectname argument blank, Microsoft Access selects the tab in the Database window that corresponds to the database object you specify in the objecttype argument.
indatabasewindow | Use True to select the object in the Database window. Use False (0) to select an object that's already open. If you leave this argument blank, the default (False) is assumed.

Remarks

If you set the indatabasewindow argument to True and leave the objectname argument blank, you must include the objectname argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.


 SendObject Method

SendObject Method

The SendObject method carries out the SendObject action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.SendObject [objecttype][, objectname][, outputformat][, to][, cc][, bcc][, subject][, messagetext][, editmessage][, templatefile]

The SendObject method has the following arguments.

Argument | Description
objecttype | One of the following intrinsic constants:
 | acSendDataAccessPage acSendForm acSendModule acSendNoObject (default) acSendQuery acSendReport acSendTable
objectname | A string expression that's the valid name of an object of the type selected by the objecttype argument. If you want to include the active object in the mail message, specify the object's type with the objecttype argument and leave this argument blank. If you leave both the objecttype and objectname arguments blank (the default constant, acSendNoObject, is assumed for the objecttype argument), Microsoft Access sends a message to the electronic mail application without an included database object.
 | If you run Visual Basic code containing the SendObject method in a library database, Microsoft Access looks for the object with this name first in the library database, then in the current database.
outputformat | One of the following intrinsic constants:
 | acFormatDAP acFormatHTML acFormatRTF acFormatTXT acFormatXLS
 | If you leave this argument blank, Microsoft Access prompts you for the output format.
to | A string expression that lists the recipients whose names you want to put on the To line in the mail message.
 | Separate the recipient names you specify in this argument and in the cc and bcc arguments with a semicolon (;) or with the list separator set on the Number tab of the Regional Settings Properties dialog box in Windows Control Panel. If the recipient names aren't recognized by the mail application, the message isn't sent and an error occurs.
 | If you leave this argument blank, Microsoft Access prompts you for the recipients.
cc | A string expression that lists the recipients whose names you want to put on the Cc line in the mail message. If you leave this argument blank, the Cc line in the mail message is blank.
bcc | A string expression that lists the recipients whose names you want to put on the Bcc line in the mail message. If you leave this argument blank, the Bcc line in the mail message is blank.
subject | A string expression containing the text you want to put on the Subject line in the mail message. If you leave this argument blank, the Subject line in the mail message is blank.
messagetext | A string expression containing the text you want to include in the body of the mail message, after the object. If you leave this argument blank, the object is all that's included in the body of the mail message.
editmessage | Use True (-1) to open the electronic mail application immediately with the message loaded, so the message can be edited. Use False (0) to send the message without editing it. If you leave this argument blank, the default (True) is assumed.
templatefile | A string expression that's the full name, including the path, of the file you want to use as a template for an HTML file.

Remarks

Modules can be sent only in MS-DOS Text format, so if you specify acSendModule for the objecttype argument, you must specify acFormatTXT for the outputformat argument.

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.


 SetFocus Method (Microsoft Access)

SetFocus Method

The SetFocus method moves the focus to the specified form, the specified control on the active form, or the specified field on the active datasheet.

Syntax

object.SetFocus

The SetFocus method has the following argument.

Argument | Description
object | A Form object that represents a form, or a Control object that represents a control on the active form or datasheet.

Remarks

You can use the SetFocus method when you want a particular field or control to have the focus so that all user input is directed to this object.

In order to read some of the properties of a control, you need to ensure that the control has the focus. For example, a text box must have the focus before you can read its Text property.

Other properties can be set only when a control doesn't have the focus. For example, you can't set a control's Visible or Enabled properties to False (0) when that control has the focus.

You can also use the SetFocus method to navigate in a form according to certain conditions. For example, if the user selects Not applicable for the first of a set of questions on a form that's a questionnaire, your Visual Basic code might then automatically skip the questions in that set and move the focus to the first control in the next set of questions.

You can move the focus only to a visible control or form. A form and controls on a form aren't visible until the form's Load event has finished. Therefore, if you use the SetFocus method in a form's Load event to move the focus to that form, you must use the Repaint method before the SetFocus method.

You can't move the focus to a control if its Enabled property is set to False. You must set a control's Enabled property to True (-1) before you can move the focus to that control. You can, however, move the focus to a control if its Locked property is set to True.

If a form contains controls for which the Enabled property is set to True, you can't move the focus to the form itself. You can only move the focus to controls on the form. In this case, if you try to use SetFocus to move the focus to a form, the focus is set to the control on the form that last received the focus.

Tip You can use the SetFocus method to move the focus to a subform, which is a type of control. You can also move the focus to a control on a subform by using the SetFocus method twice, moving the focus first to the subform and then to the control on the subform.


 SetMenuItem Method

SetMenuItem Method

The SetMenuItem method carries out the SetMenuItem action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Note The SetMenuItem method works only with custom menu bars and global menu bars created by using menu bar macros. The SetMenuItem method is included in this version of Microsoft Access only for compatibility with versions prior to Microsoft Access 97. It doesn't work with the new command bars functionality. In Microsoft Access 2000, you must use the properties and methods of the CommandBars collection object to enable or disable top level menu items.

Syntax

DoCmd.SetMenuItem menuindex[, commandindex][, subcommandindex][, flag]

The SetMenuItem method has the following arguments.

Argument | Description
menuindex | An integer, counting from 0, that's the valid index of a menu on the custom menu bar or global menu bar for the active window, as defined in the menu bar macro for the custom menu bar or global menu bar.
 | If you select a menu with this argument and leave the commandindex and subcommandindex arguments blank (or set them to -1), you can enable or disable the menu name itself. You can't, however, check or uncheck a menu name (Microsoft Access ignores the acMenuCheck and acMenuUncheck settings for the flag argument for menu names).
commandindex | An integer, counting from 0, that's the valid index of a command on the menu selected by the menuindex argument, as defined in the macro group that defines the selected menu for the custom menu bar or global menu bar for the active window.
subcommandindex | An integer, counting from 0, that's the valid index of a subcommand in the submenu selected by the commandindex argument, as defined in the macro group that defines the selected submenu for the custom menu bar or global menu bar for the active window.
flag | One of the following intrinsic constants:
 | acMenuCheck acMenuGray acMenuUncheck acMenuUngray (default)
 | If you leave this argument blank, the default constant (acMenuUngray) is assumed.

Remarks

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.


 SetWarnings Method

SetWarnings Method

The SetWarnings method carries out the SetWarnings action in Visual Basic. For more information on how the action and its argument work, see the action topic.

Syntax

DoCmd.SetWarnings warningson

The SetWarnings method has the following argument.

Argument | Description
warningson | Use True (-1) to turn on the display of system messages and False (0) to turn it off.

Remarks

If you turn the display of system messages off in Visual Basic, you must turn it back on, or it will remain off, even if the user presses CTRL+BREAK or Visual Basic encounters a breakpoint. You may want to create a macro that turns the display of system messages on and then assign that macro to a key combination or a custom menu command. You could then use the key combination or menu command to turn the display of system messages on if it has been turned off in Visual Basic.


ShowAllRecords Method

The ShowAllRecords method carries out the ShowAllRecords action in Visual Basic. For more information on how the action works, see the action topic.

Note This method only applies to tables, queries, and forms within a Microsoft database (.mdb).

Syntax

DoCmd.ShowAllRecords

This method has no arguments.


 ShowToolbar Method

ShowToolbar Method

The ShowToolbar method carries out the ShowToolbar action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Note The ShowToolbar method affects only toolbars, not menu bars or shortcut menus.

Syntax

DoCmd.ShowToolbar toolbarname[, show]

The ShowToolbar method has the following arguments.

Argument | Description
toolbarname | A string expression that's the valid name of a Microsoft Access built-in toolbar or a custom toolbar you've created.
 | If you run Visual Basic code containing the ShowToolbar method in a library database, Microsoft Access looks for the toolbar with this name first in the library database, then in the current database.
show | One of the following intrinsic constants:
 | acToolbarNo acToolbarWhereApprop acToolbarYes (default)
 | If you leave this argument blank, the default constant (acToolbarYes) is assumed.

Remarks

If you leave the show argument blank, don't use a comma following the toolbarname argument.


 SizeToFit Method

SizeToFit Method

You can use the SizeToFit method to size a control so it fits the text or image that it contains. For example, you can apply the SizeToFit method to a command button that is too small to display all the text in its Caption property.

Syntax

control.SizeToFit

The SizeToFit method has the following argument.

Argument | Description
control | A control that displays text or an image, including the label, toggle button, command button, image, unbound object frame, and subform/subreport controls.

Remarks

The use of the SizeToFit method is equivalent to selecting a control on a form or report, pointing to Size on the Format menu, and clicking To Fit. You can apply the SizeToFit method to controls only in form Design view or report Design view.

The SizeToFit method will make a control larger or smaller, depending on the size of the text or image it contains.

You can use the SizeToFit method in conjunction with the CreateControl function to size new controls that you have created in code.

Note Not all controls that contain text or an image can be sized by the SizeToFit method. Several controls are bound to data that can vary in size from one record to the next. These controls include the text box, list box, combo box, and bound object frame controls. The SizeToFit method does not apply to controls on data access pages.


 SysCmd Method

SysCmd Method

You can use the SysCmd method to perform one of the following functions:

  • Display a progress meter or optional specified text in the status bar.

  • Return information about Microsoft Access and its associated files.

  • Return the state of a specified database object to indicate whether the object is open, is a new object, or has been changed but not saved.

For example, if you are building a custom wizard that creates a new form, you can use the SysCmd method to display a progress meter indicating the progress of your wizard as it constructs the form.

Syntax

ReturnValue = SysCmd(action[, text][, value])

ObjectState = SysCmd(action[, objecttype][, objectname])

The SysCmd method has the following arguments.

Argument | Description
action | One of the following intrinsic constants identifying the type of action to take.
 | The following set of constants applies to a progress meter. The SysCmd method returns a Null if these actions are successful. Otherwise, Microsoft Access generates a run-time error.
 | acSysCmdInitMeter | Initializes the progress meter. You must specify the text and value arguments when you use this action.
 | acSysCmdUpdateMeter | Updates the progress meter with the specified value. You must specify the text argument when you use this action.
 | acSysCmdRemoveMeter | Removes the progress meter.
 | acSysCmdSetStatus | Sets the status bar text to the text argument.
 | acSysCmdClearStatus | Resets the status bar text.
 | The following set of constants provides information about Microsoft Access.
 | acSysCmdRuntime | Returns True (-1) if a run-time version of Microsoft Access is running.
 | acSysCmdAccessVer | Returns the version number of Microsoft Access.
 | acSysCmdIniFile | Returns the name of the .ini file associated with Microsoft Access.
 | acSysCmdAccessDir | Returns the name of the directory where Msaccess.exe is located.
 | acSysCmdProfile | Returns the /profile setting specified by the user when starting Microsoft Access from the command line.
 | acSysCmdGetWorkgroupFile | Returns the path to the workgroup file (System.mdw).
 | acSysCmdClearHelpTopic |
 | The following constant provides information on the state of a database object.
 | acSysCmdGetObjectState | Returns the state of the specified database object. You must specify the objecttype and objectname parts when you use this action value.
text | A string expression identifying the text to be displayed left-aligned in the status bar. This argument is required when the action argument is acSysCmdInitMeter, acSysCmdUpdateMeter, or acSysCmdSetStatus; this argument isn't valid for other action argument values.
value | A numeric expression that controls the display of the progress meter. This argument is required when the action argument is acSysCmdInitMeter; this argument isn't valid for other action argument values.
objecttype | One of the following intrinsic constants:
 | acTable acQuery acForm acReport acMacro acModule acDataAccessPage acDefault acDiagram acServerView acStoreProcedure
 | This argument is required when the action argument is acSysCmdGetObjectState; this argument isn't valid for other action argument values.
objectname | A string expression that is the valid name of a database object of the type specified by the objecttype argument. This argument is required when the action argument is acSysCmdGetObjectState; this argument isn't valid for other action argument values.

Remarks

By calling the SysCmd method with the various progress meter actions, you can display a progress meter in the status bar for an operation that has a known duration or number of steps, and update it to indicate the progress of the operation.

To display a progress meter in the status bar, you must first call the SysCmd method with the acSysCmdInitMeter action argument, and the text and value arguments. When the action argument is acSysCmdInitMeter, the value argument is the maximum value of the meter, or 100 percent.

To update the meter to show the progress of the operation, call the SysCmd method with the acSysCmdUpdateMeter action argument and the value argument. When the action argument is acSysCmdUpdateMeter, the SysCmd method uses the value argument to calculate the percentage displayed by the meter. For example, if you set the maximum value to 200 and then update the meter with a value of 100, the progress meter will be half-filled.

You can also change the text that's displayed in the status bar by calling the SysCmd method with the acSysCmdSetStatus action argument and the text argument. For example, during a sort you might change the text to "Sorting...". When the sort is complete, you would reset the status bar by removing the text. The text argument can contain approximately 80 characters. Because the status bar text is displayed by using a proportional font, the actual number of characters you can display is determined by the total width of all the characters specified by the text argument.

As you increase the width of the status bar text, you decrease the length of the meter. If the text is longer than the status bar and the action argument is acSysCmdInitMeter, the SysCmd method ignores the text and doesn't display anything in the status bar. If the text is longer than the status bar and the action argument is acSysCmdSetStatus, the SysCmd method truncates the text to fit the status bar.

You can't set the status bar text to a zero-length string (" "). If you want to remove the existing text from the status bar, set the text argument to a single space. The following examples illustrate ways to remove the text from the status bar:

varReturn = SysCmd(acSysCmdInitMeter, " ", 100)
varReturn = SysCmd(acSysCmdSetStatus, " ")

If the progress meter is already displayed when you set the text by calling the SysCmd method with the acSysCmdSetStatus action argument, the SysCmd method automatically removes the meter.

Call the SysCmd method with other actions to determine system information about Microsoft Access, including which version number of Microsoft Access is running, whether it is a run-time version, the location of the Microsoft Access executable file, the setting for the /profile argument specified in the command line, and the name of an .ini file associated with Microsoft Access.

Note Both general and customized settings for Microsoft Access are now stored in the Windows Registry, so you probably won't need an .ini file with your Microsoft Access application. The acSysCmdIniFile action argument exists for compatibility with earlier versions of Microsoft Access.

Call the SysCmd method with the acSysCmdGetObjectState action argument and the objecttype and objectname arguments to return the state of a specified database object. An object can be in one of four possible states: not open or nonexistent, open, new, or changed but not saved.

For example, if you are designing a wizard that inserts a new field in a table, you need to determine whether the structure of the table has been changed but not yet saved, so that you can save it before modifying its structure. You can check the value returned by the SysCmd method to determine the state of the table.

The SysCmd method with the acSysCmdGetObjectState action argument can return any combination of the following constants.

Constant | State of database object | Value
acObjStateOpen | Open | 1
acObjStateDirty | Changed but not saved | 2
acObjStateNew | New | 4

Note If the object referred to by the objectname argument is either not open or doesn't exist, the SysCmd method returns a value of zero.


 TextHeight Method

TextHeight Method

The TextHeight method returns the height of a text string as it would be printed in the current font of a Report object.

Syntax

object.TextHeight(strexpr)

The TextHeight method has the following arguments.

Argument | Description
object | The Report object that determines the font and font point size.
strexpr | The text string for which the text height will be determined.

Remarks

You can use the TextHeight method to determine the amount of vertical space a text string will require in the current font when the report is formatted and printed. For example, a text string formatted in 9-point Arial will require a different amount of space than one formatted in 12-point Courier. To determine the current font and font size for text in a report, check the settings for the report's FontName and FontSize properties.

The value returned by the TextHeight method is expressed in terms of the coordinate system in effect for the report, as defined by the Scale method. You can use the ScaleMode property to determine the coordinate system currently in effect for the report.

If the strexpr argument contains embedded carriage returns, the TextHeight method returns the cumulative height of the lines, including the leading space above and below each line. You can use the value returned by the TextHeight method to calculate the necessary space and positioning for multiple lines of text within a report.


 TextWidth Method

TextWidth Method

The TextWidth method returns the width of a text string as it would be printed in the current font of a Report object.

Syntax

object.TextWidth(strexpr)

The TextWidth method has the following arguments.

Argument | Description
object | The Report object that determines the font and font point size.
strexpr | The text string for which the text width will be determined.

Remarks

You can use the TextWidth method to determine the amount of horizontal space a text string will require in the current font when the report is formatted and printed. For example, a text string formatted in 9-point Arial will require a different amount of space than one formatted in 12-point Courier. To determine the current font and font size for text in a report, check the settings for the report's FontName and FontSize properties.

The value returned by the TextWidth method is expressed in terms of the coordinate system in effect for the report, as defined by the Scale method. You can use the ScaleMode property to determine the coordinate system currently in effect for the report.

If the strexpr argument contains embedded carriage returns, the TextWidth method returns the width of the longest line, from the beginning of the line to the carriage return. You can use the value returned by the TextWidth method to calculate the necessary space and positioning for multiple lines of text within a report.


 TransferDatabase Method

TransferDatabase Method

The TransferDatabase method carries out the TransferDatabase action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.TransferDatabase [transfertype], databasetype, databasename[, objecttype], source, destination[, structureonly][, saveloginid]

The TransferDatabase method has the following arguments.

Argument | Description
transfertype | One of the following intrinsic constants:
 | acExport acImport (default) acLink
 | If you leave this argument blank, the default constant (acImport) is assumed.
 | Note The acLink transfer type is not supported for Microsoft Access projects (.adp).
databasetype | A string expression that's the name of one of the types of databases you can use to import, export, or link data. Microsoft Access (default) Jet 2.x Jet 3.x dBase III dBbase IV dBase 5 Paradox 3.x Paradox 4.x Paradox 5.x Paradox 7.x ODBC Databases
 | In the Macro window, you can view the database types in the list for the Database Type action argument of the TransferDatabase action.
databasename | A string expression that's the full name, including the path, of the database you want to use to import, export, or link data.
objecttype | One of the following intrinsic constants:
 | acTable (default) acQuery acForm acReport acMacro acModule acDataAccessPage acServerView acDiagram acStoredProcedure
 | This is the type of object whose data you want to import, export, or link. You can specify an object other than acTable only if you are importing or exporting data between two Microsoft Access databases. If you are exporting the results of a Microsoft Access select query to another type of database, specify acTable for this argument.
 | If you leave this argument blank, the default constant (acTable) is assumed.
 | Note The constant acDefault, which appears in the Auto List Members list for this argument, is invalid for this argument. You must choose one of the constants listed above.
source | A string expression that's the name of the object whose data you want to import, export, or link.
destination | A string expression that's the name of the imported, exported, or linked object in the destination database.
structureonly | Use True (-1) to import or export only the structure of a database table. Use False (0) to import or export the structure of the table and its data.
 | If you leave this argument blank, the default (False) is assumed.
saveloginid | Use True to store the login identification (ID) and password for an ODBC database in the connection string for a linked table from the database. If you do this, you don't have to log in each time you open the table. Use False if you don't want to store the login ID and password.
 | If you leave this argument blank, the default (False) is assumed.
 | This argument is available only in Visual Basic.

Remarks

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.

The administrator of an ODBC database can disable the feature provided by the saveloginid argument, requiring all users to enter the login ID and password each time they connect to the ODBC database.

Note You can also use ActiveX Data Objects (ADO) to create a link by using the ActiveConnection property for the Recordset object.


 TransferSpreadsheet Method

TransferSpreadsheet Method

The TransferSpreadsheet method carries out the TransferSpreadsheet action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.TransferSpreadsheet [transfertype][, spreadsheettype], tablename, filename[, hasfieldnames][, range]

The TransferSpreadsheet method has the following arguments.

Argument | Description
transfertype | One of the following intrinsic constants:
 | acImport (default) acExport acLink
 | If you leave this argument blank, the default constant (acImport) is assumed.
spreadsheettype | One of the following intrinsic constants, or equivalent numeric settings:
 | 0 acSpreadsheetTypeExcel3 (default) 6 acSpreadsheetTypeExcel4 5 acSpreadsheetTypeExcel5 5 acSpreadsheetTypeExcel7 8 acSpreadsheetTypeExcel8 8 acSpreadsheetTypeExcel9 2 acSpreadsheetTypeLotusWK1 3 acSpreadsheetTypeLotusWK3 7 acSpreadsheetTypeLotusWK4 4 acSpreadsheetTypeLotusWJ2 - Japanese version only
 | Note You can link to data in a Lotus 1-2-3 spreadsheet file, but this data is read-only in Microsoft Access. You can import from and link (read-only) to Lotus .WK4 files, but you can't export Microsoft Access data to this spreadsheet format. Microsoft Access also no longer supports importing, exporting, or linking data from Lotus .WKS or Microsoft Excel version 2.0 spreadsheets by using this method.
 | If you leave this argument blank, the default constant (acSpreadsheetTypeExcel8) is assumed.
tablename | A string expression that's the name of the Microsoft Access table you want to import spreadsheet data into, export spreadsheet data from, or link spreadsheet data to, or the Microsoft Access select query whose results you want to export to a spreadsheet.
filename | A string expression that's the file name and path of the spreadsheet you want to import from, export to, or link to.
hasfieldnames | Use True (-1) to use the first row of the spreadsheet as field names when importing or linking. Use False (0) to treat the first row of the spreadsheet as normal data. If you leave this argument blank, the default (False) is assumed.
 | When you export Microsoft Access table or select query data to a spreadsheet, the field names are inserted into the first row of the spreadsheet no matter what you enter for this argument.
range | A string expression that's a valid range of cells or the name of a range in the spreadsheet. This argument applies only to importing. Leave this argument blank to import the entire spreadsheet.
 | When you export to a spreadsheet, you must leave this argument blank. If you enter a range, the export will fail.

Remarks

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.

Note You can also use ActiveX Data Objects (ADO) to create a link by using the ActiveConnection property for the Recordset object.


 TransferText Method

TransferText Method

The TransferText method carries out the TransferText action in Visual Basic. For more information on how the action and its arguments work, see the action topic.

Syntax

DoCmd.TransferText [transfertype][, specificationname], tablename, filename[, hasfieldnames][, HTMLtablename][, codepage]

The TransferText method has the following arguments.

Argument | Description
transfertype | One of the following intrinsic constants:
 | acExportDelim acExportFixed acExportHTML acExportMerge acImportDelim (default) acImportFixed acImportHTML acLinkDelim acLinkFixed acLinkHTML
 | If you leave this argument blank, the default constant (acImportDelim) is assumed.
 | Notes You can link to data in a text file or HTML file, but this data is read-only in Microsoft Access. Only acImportDelim, acImportFixed, acExportDelim, acExportFixed, or acExportMerge transfer types are supported in a Microsoft Access project (.adp).
specificationname | A string expression that's the name of an import or export specification you've created and saved in the current database.
 | For a fixed-width text file, you must either specify an argument or use a schema.ini file, which must be stored in the same folder as the imported, linked, or exported text file. To create a schema file, you can use the text import/export wizard to create the file. For delimited text files and Microsoft Word mail merge data files, you can leave this argument blank to select the default import/export specifications.
tablename | A string expression that's the name of the Microsoft Access table you want to import text data to, export text data from, or link text data to, or the Microsoft Access query whose results you want to export to a text file.
filename | A string expression that's the full name, including the path, of the text file you want to import from, export to, or link to.
hasfieldnames | Use True (-1) to use the first row of the text file as field names when importing, exporting, or linking. Use False (0) to treat the first row of the text file as normal data. If you leave this argument blank, the default (False) is assumed.
 | This argument is ignored for Microsoft Word mail merge data files, which must always contain the field names in the first row.
HTMLtablename | A string expression that's the name of the table or list in the HTML file that you want to import or link. This argument is ignored unless the transfertype argument is set to acImportHTML or acLinkHTML. If you leave this argument blank, the first table or list in the HTML file is imported or linked.
 | The name of the table or list in the HTML file is determined by the text specified by the <CAPTION> tag, if there's a <CAPTION> tag. If there's no <CAPTION> tag, the name is determined by the text specified by the <TITLE> tag. If more than one table or list has the same name, Microsoft Access distinguishes them by adding a number to the end of each table or list name; for example, Employees1 and Employees2.
codepage | A Long value indicating the character set of the code page.

Remarks

You can leave an optional argument blank in the middle of the syntax, but you must include the argument's comma. If you leave a trailing argument blank, don't use a comma following the last argument you specify.

Note You can also use ActiveX Data Objects (ADO) to create a link by using ActiveConnection property for the Recordset object.


 Undo Method

Undo Method

You can use the Undo method to reset a control or form when its value has been changed. For example, you can use the Undo method to clear a change to a record that contains an invalid entry.

Syntax

object.Undo

The Undo method has the following argument.

Argument | Description
object | A Form object or a Control object.

Remarks

If the Undo method is applied to a form, all changes to the current record are lost. If the Undo method is applied to a control, only the control itself is affected.

This method must be applied before the form or control is updated. You may want to include this method in a form's BeforeUpdate event or in a control's Change event.

The Undo method offers an alternative to using the SendKeys statement to send the value of the ESC key in an event procedure.


 UseDefaultFolderSuffix Method

UseDefaultFolderSuffix Method

You can use the UseDefaultFolderSuffix method to set the folder suffix for the specified data access page to the default suffix for the language support you have selected or installed.

Syntax

object.UseDefaultFolderSuffix

The UseDefaultFolderSuffix method has the following arguments.

Argument | Description
object | A string expression that evaluates to a specific data access page and it's WebOptions object.

Remarks

Microsoft Access uses the folder suffix when you save a document as a Web page, use long file names, and choose to save supporting files in a separate folder (that is, if the UseLongFileNames and OrganizeInFolder properties are set to True).

The suffix appears in the folder name after the data access page name. For example, if the data access page is called "Book1" and the language is English, the folder name is Book1_files. The available folder suffixes are listed in the FolderSuffix property topic.


 New Objects

New Objects

Objects that were added to Visual Basic in Microsoft Access 2000 are listed in the following table.

Objects | Description
AccessObject | New object representing all database objects within the CodeData, CodeProject, CurrentData, and CurrentProject object functionality.
AccessObjectProperty, AccessObjectProperties | New collections and properties of the AccessObject object within the CodeData, CodeProject, CurrentData, and CurrentProject object functionality.
AllDataAccessPages, AllForms, AllMacros, AllModules, AllReports | New collections of the new CurrentData and CurrentProject object functionality
AllDatabaseDiagrams, AllQueries, AllStoredProcedures, AllTables, AllViews | New collections of the new CodeData and CodeProject object functionality
CodeData, CodeProject | New objects for code database functionality
ComAddIns | New COM add-ins functionality
CurrentData, CurrentProject | New objects for current data functionality
DataAccessPage, DataAccessPages | New data access page feature
DefaultWebOptions | Default web options for the application
FileSearch | New File Search functionality
FormatCondition, FormatConditions | New conditional format feature
VBE | New Visual Basic Editor functionality
WebOptions | Web options for data access pages

ADO objects

To see a list of the new objects available in the Microsoft ActiveX Data Objects 2.0 Library, open the Microsoft ActiveX Data Objects Reference in the Help contents.

You can use the objects supplied by Microsoft ActiveX Data Objects 2.0, a reference to the Microsoft Office 9.0 Object Library is automatically set when the Visual Basic Editor is open.

Microsoft Office objects

To see a list of the new objects available in the Microsoft Office 9.0 Object Library, open the Microsoft Office Visual Basic Reference in the Help contents.

To use the objects supplied by Microsoft Office, you must set a reference to the Microsoft Office 9.0 Object Library when the Visual Basic Editor is open by clicking References on the Tools Menu and selecting the check box next to this library.

Microsoft Visual Basic Editor objects

To see a list of the new objects available in the Microsoft Visual Basic for Applications Extensibility 5.3 Object Library, open the Microsoft Visual Basic Reference in the Help contents.

To use the objects supplied by the Microsoft Visual Basic Editor, you must set a reference to the Microsoft Visual Basic for Applications Extensibility 5.3 Object Library. To set this reference, open the Visual Basic Editor and click References on the Tools Menu and select the check box next to this library.


 AccessObject Object

AccessObject Object

An AccessObject object refers to a particular Microsoft Access object within the following collections.

AllForms | AllTables
AllReports | AllQueries
AllMacros | AllViews
AllModules | AllStoredProcedures
AllDataAccessPages | AllDatabaseDiagrams

Remarks

An AccessObject object includes information about one instance of an object. The following table list the types of objects each AccessObject describes, the name of its collection, and what type of information AccessObject contains.

AccessObject | Collection | Contains information about
Form | AllForms | Saved forms
Report | AllReports | Saved reports
Macro | AllMacros | Saved macros
Module | AllModules | Saved modules
Data access page | AllDataAccessPages | Saved data access pages
Table | AllTables | Saved tables
Query | AllQueries | Saved queries
View | AllViews | Saved views
Stored procedure | AllStoredProcedures | Saved stored procedures
Database diagram | AllDatabaseDiagrams | Saved database diagrams

Because an AccessObject object corresponds to an existing object, you can't create new AccessObject objects or delete existing ones. To refer to an AccessObject object in a collection by its ordinal number or by its Name property setting, use any of the following syntax forms:

AllForms(0)
AllForms("name")
AllForms![name]


 AccessObjectProperty Object

AccessObjectProperty Object

AccessObjectProperties collection (AccessObjectProperty object)

AccessObjectProperties collection (AccessObjectProperty object)

AccessObjectProperties collection (AccessObjectProperty object)

An AccessObjectProperty object represents a built-in or user-defined characteristic of an AccessObject object.

Remarks

Every AccessObject object contains an AccessObjectProperties collection that has AccessObjectProperty objects corresponding to the properties of that AccessObject object. The user can also define AccessObjectProperty objects and append them to the AccessObjectProperties collection of some AccessObject objects.

You can create user-defined properties for the following objects:

  • CodeData, CodeProject, CurrentProject, and CurrentData objects

  • AccessObject objects in the following collections.

    CurrentProject and CodeProject object collections Code data and CodeProject object collections
    AllForms AllTables
    AllReports AllQueries
    AllDataAccessPages AllViews
    AllMacros AllStoredProcedures
    AllModules AllDatabaseDiagrams

To add a user-defined property, use the Add method to create and add an AccessObjectProperty object with a unique Name property setting and Value property of the new AccessObjectProperty object to the AccessObjectProperties collection of the appropriate object. The object to which you are adding the user-defined property must already be appended to a collection. Referencing a user-defined AccessObjectProperty object that has not yet been appended to an AccessObjectProperties collection will cause an error, as will appending a user-defined AccessObjectProperty object to an AccessObjectProperties collection containing an AccessObjectProperty object of the same name.

You can delete user-defined properties from the AccessObjectProperties collection.

Note A user-defined AccessObjectProperty object is associated only with the specific instance of an object. The property isn't defined for all instances of objects of the selected type.

The AccessObjectProperty object has two built-in properties:

  • The Name property, a String that uniquely identifies the property.

  • The Value property, a Variant that contains the property setting.

To refer to a built-in or user-defined AccessObjectProperty object in a collection by its ordinal number or by its Name property setting, use any of the following syntax forms:

CurrentProject.AllForms("Form1").Properties(0)
CurrentProject.AllForms("Form1").Properties("name")
CurrentProject.AllForms("Form1").Properties![name]

With the same syntax forms, you can also refer to the Value property of a AccessObjectProperty object. The context of the reference will determine whether you are referring to the AccessObjectProperty object itself or the Value property of the AccessObjectProperty object.

Note Properties in the AccessObjectProperties collection are not stored and can be lost when when the object they are associated with is checked in or out using the Source Code Control add-in.


 AccessObjectProperties Collection

AccessObjectProperties Collection

AccessObjectProperties collection (AccessObjectProperty object)

AccessObjectProperties collection (AccessObjectProperty object)

AccessObjectProperties collection (AccessObjectProperty object)

The AccessObjectProperties collection contains all of the custom AccessObjectProperty objects of a specific instance of an object. These AccessObjectProperty objects (which are often just called properties) uniquely characterize that instance of the object.

Remarks

Use the AccessObjectProperties collection in Visual Basic or in an expression to refer to properties of the CurrentProject, CodeProject, or AccessObject object. For example, you can enumerate the AccessObjectProperties collection to set or return the values of properties of an individual report.

To add a user-defined property to an existing instance of an object, first define its characteristics and add it to the collection with the Add method. Referencing a user-defined AccessObjectProperty object that has not yet been appended to an AccessObjectProperties collection will cause an error, as will appending a user-defined AccessObjectProperty object to an AccessObjectProperties collection containing an AccessObjectProperty object of the same name.

You can use the Remove method to remove user-defined properties from the AccessObjectProperties collection.

Note A built-in or user-defined AccessObjectProperty object is associated only with the specific instance of an object. The property isn't defined for all instances of objects of the selected type.

To refer to a built-in or user-defined AccessObjectProperty object in a collection by its ordinal number or by its Name property setting, use any of the following syntax forms:

CurrentProject.AllForms("Form1").Properties(0)
CurrentProject.AllForms("Form1").Properties("name")
CurrentProject.AllForms("Form1").Properties![name]

With the same syntax forms, you can also refer to the Value property of a AccessObjectProperty object. The context of the reference will determine whether you are referring to the AccessObjectProperty object itself or the Value property of the AccessObjectProperty object.

Note Properties in the AccessObjectProperties collection are not stored and can be lost when when the object they are associated with is checked in or out using the Source Code Control add-in.


 AllDataAccessPages Collection

AllDataAccessPages Collection
AllDataAccessPages collection (AccessObject object)

The AllDataAccessPages collection contains an AccessObject object for each data access page in the CurrentProject or CodeProject object.

NoteAlthough a Microsoft Access project (.adp) or Microsoft Access database (.mdb) can appear to contain data access pages, these pages are actually stored in files that are external to the project or database.

Remarks

The CurrentProject or CodeProject object has an AllDataAccessPages collection containing AccessObject objects that describe instances of all data access pages. For example, you can enumerate the AllDataAccessPages collection in Visual Basic to set or return the values of properties of individual AccessObject objects in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual AccessObject object in the AllDataAccessPages collection either by referring to the item by name, or by referring to its index within the collection. If you want to refer to a specific data access page in the AllDataAccessPages collection, it's better to refer to the item by name because the index may change.

The AllDataAccessPages collection is indexed beginning with zero. If you refer to a data access page by its index, the first data access page is AllDataAccessPages(0), the second data access page is AllDataAccessPages(1), and so on.

Note To list all open data access pages in the database, use the IsLoaded property of each AccessObject object in the AllDataAccessPages collection. You can then use the Name property of each individual AccessObject object to return the name of a data access page.

You can't add or delete an AccessObject object from the AllDataAccessPages collection.


 AllDatabaseDiagrams Collection

AllDatabaseDiagrams Collection
AllDatabaseDiagrams collection (AccessObject object)

The AllDatabaseDiagrams collection contains an AccessObject for each database diagram in the CurrentData or CodeData object.

Remarks

The CurrentData or CodeData object has an AllDatabaseDiagrams collection containing AccessObject objects that describe instances of all database diagrams specified by CurrentData or CodeData. For example, you can enumerate the AllDatabaseDiagrams collection in Visual Basic to set or return the values of properties of individual AccessObject objects in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual AccessObject object in the AllDatabaseDiagrams collection either by referring to the object by name, or by referring to its index within the collection. If you want to refer to a specific object in the AllDatabaseDiagrams collection, it's better to refer to the database diagram by name because a database diagram's collection index may change.

The AllDatabaseDiagrams collection is indexed beginning with zero. If you refer to a database diagram by its index, the first database diagram is AllDatabaseDiagrams(0), the second database diagram is AllDatabaseDiagrams(1), and so on.

Notes

  • The AllDatabaseDiagrams collection only contains AccessObject objects within a Microsoft Access project (.adp). A Microsoft Access database (.mdb) does not contain any database diagrams.

  • To list all open database diagrams in the project, use the IsLoaded property of each AccessObject object in the AllDatabaseDiagrams collection. You can then use the Name property of each individual AccessObject object to return the name of a database diagram.

You can't add or delete an AccessObject object from the AllDatabaseDiagrams collection.


 AllForms Collection

AllForms Collection
AllForms collection (AccessObject object)

The AllForms collection contains an AccessObject object for each form in the CurrentProject or CodeProject object.

Remarks

The CurrentProject and CodeProject object has an AllForms collection containing AccessObject objects that describe instances of all the forms in the database. For example, you can enumerate the AllForms collection in Visual Basic to set or return the values of properties of individual AccessObject objects in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual AccessObject object in the AllForms collection either by referring to the object by name, or by referring to its index within the collection. If you want to refer to a specific object in the AllForms collection, it's better to refer to the form by name because a form's collection index may change.

The AllForms collection is indexed beginning with zero. If you refer to a form by its index, the first form is AllForms(0), the second form is AllForms(1), and so on.

Note To list all open forms in the database, use the IsLoaded property of each AccessObject object in the AllForms collection. You can then use the Name property of each individual AccessObject object to return the name of a form.

You can't add or delete an AccessObject object from the AllForms collection.


 AllMacros Collection

AllMacros Collection
AllMacros collection (AccessObject object)

The AllMacros collection contains an AccessObject for each macro in the CurrentProject or CodeProject object

Remarks

The CurrentProject or CodeProject object has an AllMacros collection containing AccessObject objects that describe instances of all the macros specified by CurrentProject or CodeProject. For example, you can enumerate the AllMacros collection in Visual Basic to set or return the values of properties of individual AccessObject objects in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual AccessObject object in the AllMacros collection either by referring to the object by name, or by referring to its index within the collection. If you want to refer to a specific object in the AllMacros collection, it's better to refer to the macro by name because a macro's collection index may change.

The AllMacros collection is indexed beginning with zero. If you refer to a macro by its index, the first macro is AllMacros(0), the second macro is AllMacros(1), and so on.

Note To list all open macros in the database, use the IsLoaded property of each AccessObject object in the AllMacros collection. You can then use the Name property of each individual AccessObject object to return the name of a macro.

You can't add or delete an AccessObject object from the AllMacros collection.


 AllModules Collection

AllModules Collection
AllModules collection (AccessObject object)

The AllModules collection contains an AccessObject of each module in the CurrentProject or CodeProject object.

Remarks

The CurrentProject or CodeProject object has an AllModules collection containing AccessObject objects that describe instances of all the Module objects specified by CurrentProject or CodeProject. For example, you can enumerate the AllModules collection in Visual Basic to set or return the values of properties of individual AccessObject objects in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual AccessObject object in the AllModules collection either by referring to the object by name, or by referring to its index within the collection. If you want to refer to a specific object in the AllModules collection, it's better to refer to the module by name because a module's collection index may change.

The AllModules collection is indexed beginning with zero. If you refer to a module by its index, the first module is AllModules(0), the second module is AllModules(1), and so on.

Note To list all open modules in the database, use the IsLoaded property of each AccessObject object in the AllModules collection. You can then use the Name property of each individual AccessObject object to return the name of a module.

You can't add or delete an AccessObject object from the AllModules collection.


 AllQueries Collection

AllQueries Collection
AllQueries collection (AccessObject object)

The AllQueries collection contains an AccessObject for each query in the CurrentData or CodeData object.

Remarks

The CurrentData or CodeData object has an AllQueries collection containing AccessObject objects that describe instances of all queries specified by CurrentData or CodeData. For example, you can enumerate the AllQueries collection in Visual Basic to set or return the values of properties of individual AccessObject objects in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual AccessObject object in the AllQueries collection either by referring to the object by name, or by referring to its index within the collection. If you want to refer to a specific object in the AllQueries collection, it's better to refer to the query by name because a query's collection index may change.

The AllQueries collection is indexed beginning with zero. If you refer to a query by its index, the first query is AllQueries(0), the second query is AllQueries(1), and so on.

Notes

  • The AllQueries collection only contains AccessObject objects within a Microsoft Access database (.mdb). A Microsoft Access project (.adp) does not contain any macros, see the AllViews collection.

  • To list all open queries in the database, use the IsLoaded property of each AccessObject object in the AllQueries collection. You can then use the Name property of each individual AccessObject object to return the name of a query.

  • You can't add or delete an AccessObject object from the AllQueries collection.


 AllReports Collection

AllReports Collection
AllReports collection (AccessObject object)

The AllReports collection contains an AccessObject for each report in the CurrentProject or CodeProject object.

Remarks

The CurrentProject or CodeProject object has an AllReports collection containing AccessObject objects that describe instances of all the reports in the database. For example, you can enumerate the AllReports collection in Visual Basic to set or return the values of properties of individual AccessObject objects in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual AccessObject object in the AllReports collection either by referring to the item by name, or by referring to its index within the collection. If you want to refer to a specific report in the AllReports collection, it's better to refer to the item by name because the index may change.

The AllReports collection is indexed beginning with zero. If you refer to a report by its index, the first report is AllReports(0), the second report is AllReports(1), and so on.

Note To list all open reports in the database, use the IsLoaded property of each AccessObject object in the AllReports collection. You can then use the Name property of each individual AccessObject object to return the name of a report.

You can't add or delete an AccessObject object from the AllReports collection.


 AllStoredProcedures Collection

AllStoredProcedures Collection
AllStoredProcedures collection (AccessObject object)

The AllStoredProcedures collection contains an AccessObject for each stored procedure in the CurrentData or CodeData object.

Remarks

The CurrentData or CodeData object has an AllStoredProcedures collection containing AccessObject objects that describe instances of all stored procedures specified by CurrentData or CodeData. For example, you can enumerate the AllStoredProcedures collection in Visual Basic to set or return the values of properties of individual AccessObject objects in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual AccessObject object in the AllStoredProcedures collection either by referring to the object by name, or by referring to its index within the collection. If you want to refer to a specific object in the AllStoredProcedures collection, it's better to refer to the stored procedures by name because a stored procedure's collection index may change.

The AllStoredProcedures collection is indexed beginning with zero. If you refer to a stored procedure by its index, the first stored procedure is AllStoredProcedures(0), the second stored procedure is AllStoredProcedures(1), and so on.

Notes

  • The AllStoredProcedures collection only contains AccessObject objects within a Microsoft Access project (.adp). A Microsoft Access database (.mdb) does not contain any stored procedures, see the AllMacros collection.

  • To list all open stored procedures in the project, use the IsLoaded property of each AccessObject object in the AllStoredProcedures collection. You can then use the Name property of each individual AccessObject object to return the name of a stored procedure.

  • You can't add or delete an AccessObject object from the AllStoredProcedures collection.


 AllTables Collection

AllTables Collection
AllTables collection (AccessObject object)

The AllTables collection contains an AccessObject for each tables in the CurrentData or CodeData object.

Remarks

The CurrentData or CodeData object has an AllTables collection containing AccessObject objects that describe instances of all tables specified by CurrentData or CodeData. For example, you can enumerate the AllTables collection in Visual Basic to set or return the values of properties of individual AccessObject objects in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual AccessObject object in the AllTables collection either by referring to the object by name, or by referring to its index within the collection. If you want to refer to a specific object in the AllTables collection, it's better to refer to the table by name because a table's collection index may change.

The AllTables collection is indexed beginning with zero. If you refer to a table by its index, the first table is AllTables(0), the second table is AllTables(1), and so on.

Note To list all open tables in the database, use the IsLoaded property of each AccessObject object in the AllTables collection. You can then use the Name property of each individual AccessObject object to return the name of a table.

You can't add or delete an AccessObject object from the AllTables collection.


 AllViews Collection

AllViews Collection
AllViews collection (AccessObject object)

The AllViews collection contains an AccessObject for each view in the CurrentData or CodeData object.

Remarks

The CurrentData or CodeData object has an AllViews collection containing AccessObject objects that describe instances of all views specified by CurrentData or CodeData. For example, you can enumerate the AllViews collection in Visual Basic to set or return the values of properties of individual AccessObject objects in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual AccessObject object in the AllViews collection either by referring to the object by name, or by referring to its index within the collection. If you want to refer to a specific object in the AllViews collection, it's better to refer to the view by name because a view's collection index may change.

The AllViews collection is indexed beginning with zero. If you refer to a view by its index, the first view is AllViews(0), the second table is AllViews(1), and so on.

Notes

  • The AllViews collection only contains AccessObject objects within a Microsoft Access project (.adp). A Microsoft Access database (.mdb) does not contain any views, see the AllQueries collection.

  • To list all open views in the project, use the IsLoaded property of each AccessObject object in the AllViews collection. You can then use the Name property of each individual AccessObject object to return the name of a view.

  • You can't add or delete an AccessObject object from the AllViews collection.


 Application Object

Application Object

The Application object refers to the active Microsoft Access application.

Remarks

The Application object contains all Microsoft Access objects and collections.

You can use the Application object to apply methods or property settings to the entire Microsoft Access application. For example, you can use the SetOption method of the Application object to set database options from Visual Basic. The following example shows how you can set the Status Bar check box under Show on the View tab of the Options dialog box.

Application.SetOption "Show Status Bar", True

Microsoft Access is a COM component that supports Automation, formerly called OLE Automation. You can manipulate Microsoft Access objects from another application that also supports Automation. To do this, you use the Application object.

For example, Microsoft Visual Basic is a COM component. You can open a Microsoft Access database from Visual Basic and work with its objects. From Visual Basic, first create a reference to the Microsoft Access 9.0 object library. Then create a new instance of the Application class and point an object variable to it, as in the following example:

Dim appAccess As New Access.Application

From applications that don't support the New keyword, you can create a new instance of the Application class by using the CreateObject function:

Dim appAccess As Object
Set appAccess = CreateObject("Access.Application.9")

Once you've created a new instance of the Application class, you can open a database or create a new database, by using either the OpenCurrentDatabase method or the NewCurrentDatabase method. You can then set the properties of the Application object and call its methods. When you return a reference to the CommandBars object by using the CommandBars property of the Application object, you can access all OFF9TBD command bar objects and collections by using this reference.

You can also manipulate other Microsoft Access objects through the Application object. For example, by using the OpenForm method of the Microsoft Access DoCmd object, you can open a Microsoft Access form from Microsoft Excel:

appAccess.DoCmd.OpenForm "Orders"

For more information on creating a reference and controlling objects by using Automation, see the documentation for the application that's acting as the COM component.


 CodeData Object

CodeData Object

The CodeData object refers to objects stored within the code database by the source (server) application (Jet or SQL).

Remarks

The CodeData object has several collections that contain specific object types within the code database. The following table lists the name of each collection defined by the database and the types of objects it contains.

Collections | Object type
AllTables | All tables
AllQueries | All queries (the count of queries in a Microsoft Access project (.adp) will be zero).
AllViews | All views (the count of views in an Access database (.mdb) database will be zero).
AllStoredProcedures | All stored procedures (the count of stored procedures in a .mdb database will be zero).
AllDatabaseDiagrams | All database diagrams (the count of database diagrams in a .mdb database will be zero).

NoteThe collections in the preceding table contain all of the respective objects in the database regardless if they are opened or closed.

For example, an AccessObject representing a table is a member of the AllTables collection, which is a collection of AccessObject objects within the current database. Within the AllTables collection, individual tables are indexed beginning with zero. You can refer to an individual AccessObject object in the AllTables collection either by referring to the table by name, or by referring to its index within the collection. If you want to refer to a specific item in the AllTables collection, it's better to refer to it by name because the item's index may change. If the object name includes a space, the name must be surrounded by brackets ([ ]).

Syntax | Example
AllTables!tablename | AllTables!OrderTable
AllTables![table name] | AllTables![Order Table]
AllTables("tablename") | AllTables("OrderTable")
AllTables(index) | AllTables(0)


 Control Object

Control Object
Controls collection (Control object)

The Control object represents a control on a form, report, or section, within another control, or attached to another control. The following diagram shows the Control object in relation to a Form or Report object.

Remarks

All controls on a form or report belong to the Controls collection for that Form or Report object. Controls within a particular section belong to the Controls collection for that section. Controls within a tab control or option group control belong to the Controls collection for that control. A label control that is attached to another control belongs to the Controls collection for that control.

When you refer to an individual Control object in the Controls collection, you can refer to the Controls collection either implicitly or explicitly.

' Implicitly refer to NewData control in Controls
' collection.
Me!NewData
' Use if control name contains space.
Me![New Data]
' Performance slightly slower.
Me("NewData")
' Refer to a control by its index in the controls
' collection.
Me(0)
' Refer to a NewData control by using the subform
' Controls collection.
Me.ctlSubForm.Controls!NewData
' Explicitly refer to the NewData control in the
' Controls collection.
Me.Controls!NewData
Me.Controls("NewData")
Me.Controls(0)

Note You can use the Me keyword to represent a Form or Report object within code only if you're referring to the form or report from code within the class module. If you're referring to a form or report from a standard module or a different form's or report's module, you must use the full reference to the form or report.

Each Control object is denoted by a particular intrinsic constant. For example, the intrinsic constant acTextBox is associated with a text box control, and acCommandButton is associated with a command button. The constants for the various Microsoft Access controls are set forth in the control's ControlType property.

To determine the type of an existing control, you can use the ControlType property. However, you don't need to know the specific type of a control in order to use it in code. You can simply represent it with a variable of data type Control.

If you do know the data type of the control to which you are referring, and the control is a built-in Microsoft Access control, you should represent it with a variable of a specific type. For example, if you know that a particular control is a text box, declare a variable of type TextBox to represent it, as shown in the following code.

Dim txt As TextBox
Set txt = Forms!Employees!LastName

Note If a control is an ActiveX control, then you must declare a variable of type Control to represent it; you cannot use a specific type. If you're not certain what type of control a variable will point to, declare the variable as type Control.

The option group control can contain other controls within its Controls collection, including option button, check box, toggle button, and label controls.

The tab control contains a Pages collection, which is a special type of Controls collection. The Pages collection contains Page objects, which are controls. Each Page object in turn contains a Controls collection, which contains all of the controls on that page.

Other Control objects have a Controls collection that can contain an attached label. These controls include the text box, option group, option button, toggle button, check box, combo box, list box, command button, bound object frame, and unbound object frame controls.


 Controls Collection

Controls Collection
Controls collection (Control object)

The Controls collection contains all of the controls on a form, report, or section, within another control, or attached to another control. The Controls collection is a member of a Form, Report, Section, or Control object. The following diagram illustrates the relationship between the Controls collection and a Form or Report object.

Remarks

You can enumerate individual controls, count them, and set their properties in the Controls collection. For example, you can enumerate the Controls collection of a particular form and set the Height property of each control to a specified value.

Tip The For Each...Next statement is useful for enumerating a collection.

It is faster to refer to the Controls collection implicitly, as in the following examples, which refer to a control called NewData on a form named OrderForm. Of the following syntax examples, Me!NewData is the fastest way to refer to the control.

Me!NewData                ' Or Forms!OrderForm!NewData.
Me![New Data]            ' Use if control name contains space.
Me("NewData")            ' Performance is slightly slower.

You can also refer to an individual control by referring explicitly to the Controls collection.

Me.Controls!NewData    ' Or Forms!OrderForm.Controls!NewData.
Me.Controls![New Data]
Me.Controls("NewData")

Additionally, you can refer to a control by its index in the collection. The Controls collection is indexed beginning with zero.

Me(0)                        ' Refer to first item in collection.
Me.Controls(0)

Note You can use the Me keyword to represent a form or report within code only if you're referring to the form or report from code within the form module or report module. If you're referring to a form or report from a standard module or a different form's or report's module, you must use the full reference to the form or report.

To work with the controls on a section of a form or report, use the Section property to return a reference to a Section object. Then refer to the Controls collection of the Section object.

Two types of Control objects, the tab control and option group control, have Controls collections that can contain multiple controls. The Controls collection belonging to the option group control contains any option button, check box, toggle button, or label controls in the option group.

The tab control contains a Pages collection, which is a special type of Controls collection. The Pages collection contains Page objects. Page objects are also controls. The ControlType property constant for a Page control is acPage. A Page object, in turn, has its own Controls collection, which contains all the controls on an individual page.

Other Control objects have a Controls collection that can contain an attached label. These controls include the text box, option group, option button, toggle button, check box, combo box, list box, command button, bound object frame, and unbound object frame controls.


 CurrentData Object

CurrentData Object

The CurrentData object refers to the objects stored in the current database by the source (server) application (Jet or SQL).

Remarks

The CurrentData object has several collections that contain specific AccessObject objects within the current database. The following table lists the name of each collection defined by the database and the types of objects it contains.

Collections | Object type
AllTables | All tables
AllQueries | All queries (the count of queries in a Microsoft Access project (.adp) will be zero).
AllViews | All views (the count of views in an Access database (.mdb) database will be zero).
AllStoredProcedures | All stored procedures (the count of stored procedures in a .mdb database will be zero).
AllDatabaseDiagrams | All database diagrams (the count of database diagrams in a .mdb database will be zero).

NoteThe collections in the preceding table contain all of the respective objects in the database regardless if they are opened or closed.

For example, an AccessObject representing a table is a member of the AllTables collection, which is a collection of AccessObject objects within the current database. Within the AllTables collection, individual tables are indexed beginning with zero. You can refer to an individual AccessObject object in the AllTables collection either by referring to the table by name, or by referring to its index within the collection. If you want to refer to a specific item in the AllTables collection, it's better to refer to it by name because the item's index may change. If the object name includes a space, the name must be surrounded by brackets ([ ]).

Syntax | Example
AllTables!tablename | AllTables!OrderTable
AllTables![table name] | AllTables![Order Table]
AllTables("tablename") | AllTables("OrderTable")
AllTables(index) | AllTables(5)


 CurrentProject Object

CurrentProject Object

The CurrentProject object refers to the project for the current Microsoft Access project (.adp) or Access database (.mdb).

Remarks

The CurrentProject object has several collections that contain specific AccessObject objects within the current database. The following table lists the name of each collection and the types of objects it contains.

Collections | Object type
AllForms | All forms
AllReports | All reports
AllMacros | All macros
AllModules | All modules
AllDataAccessPages | All data access pages

NoteThe collections in the preceding table contain all of the respective objects in the database regardless if they are opened or closed.

For example, an AccessObject object representing a form is a member of the AllForms collection, which is a collection of AccessObject objects within the current database. Within the AllForms collection, individual members of the collection are indexed beginning with zero. You can refer to an individual AccessObject object in the AllForms collection either by referring to the form by name, or by referring to its index within the collection. If you want to refer to a specific object in the AllForms collection, it's better to refer to it by name because a item's collection index may change. If the object name includes a space, the name must be surrounded by brackets ([ ]).

Syntax | Example
AllForms!formname | AllForms!OrderForm
AllForms![form name] | AllForms![Order Form]
AllForms("formname") | AllForms("OrderForm")
AllForms(index) | AllForms(0)


DefaultWebOptions Object

The DefaultWebOptions object contains global application-level attributes used by Microsoft Access when you save a data access page as a Web page or open a Web page. You can return or set attributes either at the application (global) level or at the data access page level. (Note that attribute values can be different from one data access page to another, depending on the attribute value at the time the data access page was saved.) Data access page-level attributes override application-level attributes. Data access page attributes are contained in the WebOptions object.

Remarks

Use the DefaultWebOptions property to return the DefaultWebOptions object.


 DoCmd Object

DoCmd Object

You can use the methods of the DoCmd object to run Microsoft Access actions from Visual Basic. An action performs tasks such as closing windows, opening forms, and setting the value of controls. For example, you can use the OpenForm method of the DoCmd object to open a form, or use the Hourglass method to change the mouse pointer to an hourglass icon.

Syntax

[application.]DoCmd.method [arg1, arg2, ...]

The DoCmd object has the following arguments.

Argument | Description
application | Optional. The Application object.
method | One of the methods supported by this object.
arg1, arg2, ... | The arguments for the selected method. These arguments are the same as the action arguments for the corresponding action.

Remarks

Most of the methods of the DoCmd object have arguments - some are required, while others are optional. If you omit optional arguments, the arguments assume the default values for the particular method. For example, the OpenForm method uses seven arguments, but only the first argument, formname, is required. The following example shows how you can open the Employees form in the current database. Only employees with the title Sales Representative are included.

DoCmd.OpenForm "Employees", , ,"[Title] = 'Sales Representative'"

The DoCmd object doesn't support methods corresponding to the following actions:

  • AddMenu.

  • MsgBox. Use the MsgBox function.

  • RunApp. Use the Shell function to run another application.

  • RunCode. Run the function directly in Visual Basic.

  • SendKeys. Use the SendKeys statement.

  • SetValue. Set the value directly in Visual Basic.

  • StopAllMacros.

  • StopMacro.

For more information on the Microsoft Access action corresponding to a DoCmd method, search the Help index for the name of the action.


 Hyperlink Object

Hyperlink Object

The Hyperlink object represents a hyperlink associated with a control on a form, report, or data access page.

Remarks

Use the Hyperlink property to return a reference to a hyperlink object.


 FormatCondition Object

FormatCondition Object

The FormatCondition object represents a conditional format of a combo box or text box control and is a member of the FormatConditions collection.

Remarks

You can use the FormatConditions(index), where index is the index number of the conditional format, to return a FormatCondition object.

Use the Add method to create a new conditional format. You can use the Modify method to change one of the formats, or the Delete method to delete a format.

Conditional formatting can also be set on a combo box or text box from the Conditional Formatting dialog box. The Conditional Formatting dialog box is available by clicking Conditional Formatting on the Format menu when a form is in Design view.

Use the BackColor, Enabled, FontBold, FontItalic, FontUnderline, and ForeColor properties of the FormatCondition object to control the appearance of formatted combo box and text box controls.


 FormatConditions Collection

FormatConditions Collection

The FormatConditions collection represents the collection of conditional formats for a combo box or text box control. Each format is represented by a FormatCondition object.

Remarks

Use the FormatConditions property of a combo box or text box in Visual Basic or in an expression to return a FormatConditions collection. Use the Add method to create a new conditional format, and use the Modify method to change an existing conditional format.

You can use the Modify method to change one of the formats, or the Delete method to delete a format.

Conditional formatting can also be set on a combo box or text box from the Conditional Formatting dialog box. The Conditional Formatting dialog box is available by clicking Conditional Formatting on the Format menu when a form is in Design view.


 Form Object

Form Object

 Forms collection (Form object)

A Form object refers to a particular Microsoft Access form.

Remarks

A Form object is a member of the Forms collection, which is a collection of all currently open forms. Within the Forms collection, individual forms are indexed beginning with zero. You can refer to an individual Form object in the Forms collection either by referring to the form by name, or by referring to its index within the collection. If you want to refer to a specific form in the Forms collection, it's better to refer to the form by name because a form's collection index may change. If the form name includes a space, the name must be surrounded by brackets ([ ]).

Syntax | Example
Forms!formname | Forms!OrderForm
Forms![form name] | Forms![Order Form]
Forms("formname") | Forms("OrderForm")
Forms(index) | Forms(0)

Each Form object has a Controls collection, which contains all controls on the form. You can refer to a control on a form either by implicitly or explicitly referring to the Controls collection. Your code will be faster if you refer to the Controls collection implicitly. The following examples show two of the ways you might refer to a control named NewData on the form called OrderForm:

' Implicit reference.
Forms!OrderForm!NewData
' Explicit reference.
Forms!OrderForm.Controls!NewData

The next two examples show how you might refer to a control named NewData on a subform ctlSubForm contained in the form called OrderForm:

Forms!OrderForm.ctlSubForm.Form!Controls.NewData
Forms!OrderForm.ctlSubForm!NewData

Each Form object has a Controls collection, which contains all controls on the form. You can refer to a control on a form either by implicitly or explicitly referring to the Controls collection. Your code will be faster if you refer to the Controls collection implicitly. The following examples show two of the ways you might refer to a control named NewData on the form called OrderForm:

' Implicit reference.
Forms!OrderForm!NewData
' Explicit reference.
Forms!OrderForm.Controls!NewData

The next two examples show how you might refer to a control named NewData on a subform ctlSubForm contained in the form called OrderForm:

Forms!OrderForm.ctlSubForm.Form!Controls.NewData
Forms!OrderForm.ctlSubForm!NewData


 Forms Collection

Forms Collection

 Forms collection (Form object)

The Forms collection contains all of the currently open forms in a Microsoft Access database.

Remarks

Use the Forms collection in Visual Basic or in an expression to refer to forms that are currently open. For example, you can enumerate the Forms collection to set or return the values of properties of individual forms in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual Form object in the Forms collection either by referring to the form by name, or by referring to its index within the collection. If you want to refer to a specific form in the Forms collection, it's better to refer to the form by name because a form's collection index may change.

The Forms collection is indexed beginning with zero. If you refer to a form by its index, the first form opened is Forms(0), the second form opened is Forms(1), and so on. If you opened Form1 and then opened Form2, Form2 would be referenced in the Forms collection by its index as Forms(1). If you then closed Form1, Form2 would be referenced in the Forms collection by its index as Forms(0).

Note To list all forms in the database, whether open or closed, enumerate the AllForms collection of the CurrentProject object. You can then use the Name property of each individual AccessObject object to return the name of a form.

You can't add or delete a Form object from the Forms collection.


 Module Object

Module Object

A Module object refers to a standard module or a class module.

Remarks

Microsoft Access includes class modules that are not associated with any object, and form modules and report modules, which are associated with a form or report.

To determine whether a Module object represents a standard module or a class module from code, check the Module object's Type property.

The Modules collection contains all open Module objects, regardless of their type. Modules in the Modules collection can be compiled or uncompiled.

To return a reference to a particular standard or class Module object in the Modules collection, use any of the following syntax forms.

Syntax | Description
Modules!modulename | The modulename argument is the name of the Module object.
Modules("modulename") | The modulename argument is the name of the Module object.
Modules(index) | The index argument is the numeric position of the object within the collection.

The following example returns a reference to a standard Module object and assigns it to an object variable:

Dim mdl As Module
Set mdl = Modules![Utility Functions]

Note that the brackets enclosing the name of the Module object are necessary only if the name of the Module includes spaces.

The next example returns a reference to a form Module object and assigns it to an object variable:

Dim mdl As Module
Set mdl = Modules!Form_Employees

To refer to a specific form or report module, you can also use the Form or Report object's Module property:

Forms!formname.Module

The following example also returns a reference to the Module object associated with an Employees form and assigns it to an object variable:

Dim mdl As Module
Set mdl = Forms!Employees.Module

Once you've returned a reference to a Module object, you can set or read its properties and apply its methods.


 Modules Collection

Modules Collection

Modules collection (Module object)

The Modules collection contains all open standard modules and class modules in a Microsoft Access database.

Remarks

You can enumerate through the Modules collection by using the For Each...Next statement. To determine whether an individual Module object represents a standard module or a class module, check the Module object's Type property.

All open modules are included in the Modules collection, whether they are uncompiled, are compiled, are in break mode, or contain the code that's running.

The Modules collection belongs to the Microsoft Access Application object.

Individual Module objects in the Modules collection are indexed beginning with zero.


 Page Object

Page Object

A Page object corresponds to an individual page on a tab control.

Remarks

A Page object is a member of a tab control's Pages collection.

To return a reference to a particular Page object in the Pages collection, use any of the following syntax forms.

Syntax | Description
Pages!pagename | The pagename argument is the name of the Page object.
Pages("pagename") | The pagename argument is the name of the Page object.
Pages(index) | The index argument is the numeric position of the object within the collection.

You can create, move, or delete Page objects and set their properties either in Visual Basic or in form Design view. To create a new Page object in Visual Basic, use the Add method of the Pages collection. To delete a Page object, use the Remove method of the Pages collection.

To create a new Page object in form Design view, right-click the tab control and then click Insert Page on the shortcut menu. You can also copy an existing page and paste it. You can set the properties of the new Page object in form Design view by using the property sheet.

Each Page object has a PageIndex property that indicates its position within the Pages collection. The Value property of the tab control is equal to the PageIndex property of the current page. You can use these properties to determine which page is currently selected after the user has switched from one page to another, or to change the order in which the pages appear in the control.

A Page object is also a type of Control object. The ControlType property constant for a Page object is acPage. Although it is a control, a Page object belongs to a Pages collection, rather than a Controls collection. A tab control's Pages collection is a special type of Controls collection.

Each Page object can also contain one or more controls. Controls on a Page object belong to that Page object's Controls collection. In order to work with a control on a Page object, you must refer to that control within the Page object's Controls collection.


 Pages Collection

Pages Collection

The Pages collection contains all Page objects in a tab control.

Remarks

The Pages collection is a special kind of Controls collection belonging to the tab control. It contains Page objects, which are controls. The Pages collection differs from a typical Controls collection in that you can add and remove Page objects by using methods of the Pages collection.

To add a new Page object to the Pages collection from Visual Basic, use the Add method of the Pages collection. To remove an existing Page object, use the Remove method of the Pages collection. To count the number of Page objects in the Pages collection, use the Count property of the Pages collection.

You can also use the CreateControl method to add a Page object to the Pages collection of a tab control. To do this, you must specify the name of the tab control for the parent argument of the CreateControl function. The ControlType property constant for a Page object is acPage.

You can enumerate through the Pages collection by using the For Each...Next statement.

Individual Page objects in the Pages collection are indexed beginning with zero.


 Properties Collection (Microsoft Access)

Properties Collection
Properties collection (Control object)
Properties collection (Form object)
Properties collection (Report object)

The Properties collection contains all of the built-in properties in an instance of an open Form, Report, or Control object. These properties uniquely characterize that instance of the object.

Remarks

Use the Properties collection in Visual Basic or in an expression to refer to form, report, or control properties on forms or reports that are currently open.

Tip The For Each...Next statement is useful for enumerating a collection.

You can use the Properties collection of an object to enumerate the object's built-in properties. You don't need to know beforehand exactly which properties exist or what their characteristics (Name and Value properties) are to manipulate them.

Note In addition to the built-in properties, you can also create and add your own user-defined properties. To add a user-defined property to an existing instance of an object, see the AccessObjectProperties collection and Add method topics.


 Reference Object

Reference Object

References collection (Reference object)

The Reference object refers to a reference set to another application's or project's type library.

Remarks

When you create a Reference object, you set a reference dynamically from Visual Basic.

The Reference object is a member of the References collection. To refer to a particular Reference object in the References collection, use any of the following syntax forms.

Syntax | Description
References!referencename | The referencename argument is the name of the Reference object.
References("referencename") | The referencename argument is the name of the Reference object.
References(index) | The index argument is the object's numerical position within the collection.

The following example refers to the Reference object that represents the reference to the Microsoft Access type library:

Dim ref As Reference
Set ref = References!Access


References Collection

References collection (Reference object)

The References collection contains Reference objects representing each reference that's currently set.

Remarks

The Reference objects in the References collection correspond to the list of references in the References dialog box, available by clicking References on the Tools menu. Each Reference object represents one selected reference in the list. References that appear in the References dialog box but haven't been selected aren't in the References collection.

You can enumerate through the References collection by using the For Each...Next statement.

The References collection belongs to the Microsoft Access Application object.

Individual Reference objects in the References collection are indexed beginning with 1.


 Report Object

Report Object

 Reports collection (Report object)

A Report object refers to a particular Microsoft Access report.

Remarks

A Report object is a member of the Reports collection, which is a collection of all currently open reports. Within the Reports collection, individual reports are indexed beginning with zero. You can refer to an individual Report object in the Reports collection either by referring to the report by name, or by referring to its index within the collection. If the report name includes a space, the name must be surrounded by brackets ([ ]).

Syntax | Example
Reports!reportname | Reports!OrderReport
Reports![report name] | Reports![Order Report]
Reports("reportname") | Reports("OrderReport")
Reports(index) | Reports(0)

Each Report object has a Controls collection, which contains all controls on the report. You can refer to a control on a report either by implicitly or explicitly referring to the Controls collection. Your code will be faster if you refer to the Controls collection implicitly. The following examples show two of the ways you might refer to a control named NewData on a report called OrderReport.

' Implicit reference.
Reports!OrderReport!NewData
' Explicit reference.
Reports!OrderReport.Controls!NewData


 Reports Collection

Reports Collection

 Reports collection (Report object)

The Reports collection contains all of the currently open reports in a Microsoft Access database.

Remarks

You can use the Reports collection in Visual Basic or in an expression to refer to reports that are currently open. For example, you can enumerate the Reports collection to set or return the values of properties of individual reports in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual Report object in the Reports collection either by referring to the report by name, or by referring to its index within the collection.

The Reports collection is indexed beginning with zero. If you refer to a report by its index, the first report is Reports(0), the second report is Reports(1), and so on. If you opened Report1 and then opened Report2, Report2 would be referenced in the Reports collection by its index as Reports(1). If you then closed Report1, Report2 would be referenced in the Reports collection by its index as Reports(0).

Note To list all reports in the database, whether open or closed, enumerate the AllReports collection of the CurrentProject object. You can then use the Name property of each individual AccessObject object to return the name of a report.

You can't add or delete a Report object from the Reports collection.


 Screen Object

Screen Object

The Screen object refers to the particular form, report, or control that currently has the focus.

Remarks

You can use the Screen object together with its properties to refer to a particular form, report, or control that has the focus. For example, you can use the Screen object with the ActiveForm property to refer to the form in the active window without knowing the form's name. The following example displays the name of the form in the active window:

MsgBox Screen.ActiveForm.Name

Referring to the Screen object doesn't make a form, report, or control active. To make a form, report, or control active, you must use the SelectObject method of the DoCmd object.

If you refer to the Screen object when there's no active form, report, or control, Microsoft Access returns a run-time error. For example, if a standard module is in the active window, the code in the preceding example would return an error.


 WebOptions Object

WebOptions Object

 DataAccessPages collection (DataAccessPage object)

A WebOptions object refers to a specific Microsoft Access data access page's web option properties.

Remarks

Contains data access page attributes used by Microsoft Access when you save a data access page as a Web page or open a Web page. You can return or set attributes either at the application (global) level or at the data access page level. (Note that attribute values can be different from one data access page to another, depending on the attribute value at the time the data access page was saved.) Data access page-level attributes override application-level attributes. Application-level attributes are contained in the DefaultWebOptions object.

Remarks

Use the WebOptions property to return the WebOptions object.

Remember that if you change the value of a data access page-level attribute, the corresponding application-level attribute is automatically set to the same value. Therefore, you should restore and save the application-level values for a given data access page during each session in that data access page.


Properties Reference

The following reference groups all properties by object or collection and lists them alphabetically. An asterisk (*) indicates that the property was added for Microsoft Access 2000.

Grouped by Object or Collection

AccessObject* | Err (VBA)
AccessObjectProperties* | Error (ADO)
AccessObjectProperty* | Errors (ADO)
AllDataAccessPages* | Error, Errors (DAO)
AllDatabaseDiagrams* | Field (ADO)
AllForms* | Field, Fields (DAO)
AllMacros* | Fields (ADO)
AllModules* | FileSearch*
AllQueries* | Form
AllReports* | Forms
AllStoredProcedures* | Group, Groups (DAO)
AllTables* | Index
AllViews* | Index, Indexes (DAO)
AnswerWizard | LanguageSettings*
Application | Module
Assistant | Modules
CodeData* | Parameter, Parameters (DAO)
CodeProject* | Parameters (ADO)
Collection (VBA) | Properties
ComAddIns* | Property, Properties (DAO)
Command (ADO) | Query
CommandBars | QueryDef, QueryDefs (DAO)
Connection (ADO) | Recordset (ADO)
Connection, Connections (DAO) | Recordset, Recordsets (DAO)
Container, Containers (DAO) | Reference
Control | References
Controls | Relation, Relations (DAO)
CurrentData* | Report
CurrentProject* | Reports
DataAccessPages* | Screen
DataAccessPage* | Table
Database, Databases (DAO) | TableDef, TableDefs (DAO)
DBEngine (DAO) | User, Users (DAO)
Debug (VBA) | VBE * (VBA)
DefaultWebOptions* | WebOptions*
DoCmd | Workspace, Workspaces (DAO)
Document, Documents (DAO) |

Listed Alphabetically

A

AbsolutePage (ADO) | AllowEdits
AbsolutePosition (ADO) | AllowFilters
AbsolutePosition (DAO) | AllowFullMenus
Action | AllowShortcutMenus
ActiveCommand (ADO) | AllowSpecialKeys
ActiveConnection (ADO) | AllowToolbarChanges
ActiveControl | AllowZeroLength (DAO)
ActiveDatasheet | AllowZeroLength
ActiveForm | AllPermissions (DAO)
ActiveReport | AppIcon
ActualSize (ADO) | Application
AddColon | AppTitle
AfterDelConfirm | Assistant
AfterInsert | Attributes (ADO)
AfterUpdate | Attributes (DAO)
Alias | AutoActivate
AllowAdditions | AutoCenter
AllowAutoCorrect | AutoExpand
AllowBreakIntoCode | AutoLabel
AllowBuiltInToolbars | AutoRepeat
AllowBypassKey | AutoResize
AllowDeletions | AutoTab

B

BackColor | Bookmark
BackStyle | Bookmark (ADO)
BatchCollisionCount (DAO) | Bookmark (DAO)
BatchCollisions (DAO) | Bookmarkable (DAO)
BatchSize (DAO) | BorderColor
BeforeDelConfirm | BorderStyle
BeforeInsert | BorderWidth
BeforeUpdate | BoundColumn
BOF (ADO) | BuiltIn
BOF (DAO) |

C

CacheSize (ADO) | Connection (DAO)
CacheSize (DAO) | ConnectionString (ADO)
CacheStart (DAO) | ConnectionTimeout (ADO)
Cancel | Container (DAO)
CanGrow | ControlBox
CanShrink | ControlSource
Caption | ControlTipText
Class | ControlType
CloseButton | Count (ADO)
Clustered (DAO) | Count (DAO)
CodeContextObject | Count (VBA)
CollatingOrder (DAO) | Count
Column | CountOfDeclarationLines
ColumnCount | CountOfLines
ColumnHeadings | CurrentObjectName
ColumnHeads | CurrentObjectType
ColumnHidden | CurrentRecord
ColumnOrder | CurrentSectionLeft
ColumnWidth | CurrentSectionTop
ColumnWidths | CurrentView
CommandBars | CurrentX
CommandText (ADO) | CurrentY
CommandTimeout (ADO) | CursorLocation (ADO)
CommandType (ADO) | CursorType (ADO)
ConflictTable (DAO) | Cycle
Connect (DAO) |

D

Database Properties | DefaultUser (DAO)
Database (DAO) | DefaultValue (DAO)
DataEntry | DefaultValue
DataMember (ADO) | DefaultView
DatasheetBackColor | DefinedSize (ADO)
DatasheetCellsEffect | Description
DatasheetFontHeight | Description (ADO)
DatasheetFontItalic | Description (DAO)
DatasheetFontName | Description (VBA)
DatasheetFontUnderline | DesignMasterID (DAO)
DatasheetFontWeight | DestConnectStr
DatasheetForeColor | DestinationDB
DatasheetGridLinesBehavior | DestinationTable
DatasheetGridLinesColor | Direction (ADO)
DataSource (ADO) | Direction (DAO)
DataType | Dirty
DataUpdatable (DAO) | DisplayControl
DateCreated (DAO) | DisplayType
DateGrouping | DisplayWhen
DBEngine | DistinctCount (DAO)
DecimalPlaces | DividingLines
Default | DrawMode
DefaultCursorDriver (DAO) | DrawStyle
DefaultDatabase (ADO) | DrawWidth
DefaultType (DAO) |

E-F

EditMode (ADO) | FontItalic
EditMode (DAO) | FontName
Enabled | FontSize
EnterKeyBehavior | FontUnderline
EOF (ADO) | FontWeight
EOF (DAO) | ForceNewPage
EventProcPrefix | ForeColor
FailOnError | Foreign (DAO)
FastLaserPrinting | ForeignName (DAO)
FieldName | ForeignTable (DAO)
FieldSize (DAO) | Form
FieldSize | Format
FillColor | Format - Date/Time Data Type
FillStyle | Format - Number and Currency Data Types
Filter (ADO) | Format - Text and Memo Data Types
Filter (DAO) | Format - Yes/No Data Type
Filter | FormatCount
FilterLookup | FrozenColumns
FilterOn | FullPath
FontBold |

G-H

GridX | HelpContext (ADO)
GridY | HelpContext (DAO)
GroupFooter | HelpContext (VBA)
GroupHeader | HelpContextID
GroupInterval | HelpFile (ADO)
GroupLevel | HelpFile (DAO)
GroupOn | HelpFile
GrpKeepTogether | HideDuplicates
GUID | HWnd
HasContinued | Hyperlink
HasData | HyperlinkAddress
HasModule | HyperlinkSubAddress
Height |

I-K

IgnoreNulls (DAO) | IsBroken
IgnoreNulls | IsolateODBCTrans (DAO)
ImageHeight | IsolationLevel (ADO)
ImageWidth | IsVisible
Index (ADO) | Item (ObjectFrame Control)
Index (DAO) | Item (Collections)
Indexed | ItemData
Inherit (DAO) | KeepLocal (DAO)
Inherited (DAO) | KeepTogether - Groups
IniPath (DAO) | KeepTogether - Sections
InputMask | KeyPreview
InSelection | Kind
InsideHeight |
InsideWidth |

L

LabelAlign | LinkMasterFields
LabelX | ListCount
LabelY | ListIndex
LastDLLError (VBA) | ListRows
LastModified (DAO) | ListWidth
LastUpdated (DAO) | Locked
LayoutForPrint | LockEdits (DAO)
Left | LockType (ADO)
LimitToList | LoginTimeout (DAO)
Lines | LogMessages (DAO)
LineSlant | LogMessages
LinkChildFields | LpOLEObject

M-N

Major | MultiRow
MarshalOptions (ADO) | MultiSelect
MaxRecords | Name (ADO)
MaxRecords (ADO) | Name (DAO)
MaxRecords (DAO) | Name
MDE | NativeError (ADO)
Me | NavigationButtons
MenuBar | NewRecord
MinMaxButtons | NewRowOrCol
Minor | NewValues
Modal | NoMatch (DAO)
Mode (ADO) | Number (ADO)
Module | Number (DAO)
MousePointer | Number (VBA)
MoveLayout | NumericScale (ADO)

O

Object Properties | OnFormat
Object | OnLostFocus
ObjectPalette | OnMouseDown
ObjectVerbs | OnMouseMove
ObjectVerbsCount | OnMouseUp
ODBCConnectStr | OnNoData
ODBCTimeout (DAO) | OnNotInList
ODBCTimeout | OnOpen
OldValue | OnPage
OLEClass | OnPrint
OLEData | OnResize
OLEType | OnRetreat
OLETypeAllowed | OnTimer
OnActivate | OnUnload
OnChange | OnUpdated
OnClick | OpenArgs
OnClose | OptionValue
OnCurrent | OrderBy
OnDblClick | OrderByOn
OnDeactivate | OrdinalPosition (DAO)
OnDelete | OriginalValue (ADO)
OnEnter | OriginalValue (DAO)
OnError | OutputAllFields
OnExit | Owner (DAO)

P

Page | PictureType
PageCount (ADO) | PID (DAO)
PageFooter | PopUp
PageHeader | Precision (ADO)
PageIndex | Prepare (DAO)
Pages | Prepared (ADO)
PageSize (ADO) | PreviousControl
Painting | Primary (DAO)
PaintPalette | Primary
PaletteSource | PrintCount
Parent | PrintSection
PartialReplica (DAO) | ProcBodyLine
Password (DAO) | ProcCountLines
PercentPosition (DAO) | ProcOfLine
Permissions (DAO) | ProcStartLine
Picture | ProjectName
PictureAlignment | Properties
PictureData | Provider (ADO)
PicturePages | PrtDevMode
PictureSizeMode | PrtDevNames
PictureTiling | PrtMip

Q-R

QueryTimeout (DAO) | ReplicationConflictFunction
RecordCount (ADO) | Report
RecordCount (DAO) | Required (DAO)
RecordLocks | Required
RecordsAffected (DAO) | Restartable (DAO)
RecordSelectors | ReturnsRecords (DAO)
RecordsetClone | ReturnsRecords
RecordsetType | RowHeight
RecordSource | RowSource
RepeatSection | RowSourceType
Replicable (DAO) | RunningSum
ReplicaFilter (DAO) | RunPermissions
ReplicaID (DAO) |

S

ScaleHeight | Source
ScaleLeft | SourceConnectStr
ScaleMode | SourceDatabase
ScaleTop | SourceDoc
ScaleWidth | SourceField (DAO)
ScrollBars | SourceItem
Section | SourceObject
Selected | SourceTable (DAO)
SelHeight | SourceTableName (DAO)
SelLeft | SpecialEffect
SelLength | SQL (DAO)
SelStart | SQLState (ADO)
SelText | StartupForm
SelTop | StartupMenuBar
SelWidth | StartupShortcutMenuBar
ShortcutMenu | StartupShowDBWindow
ShortcutMenuBar | StartupShowStatusBar
Size (DAO) | State (ADO)
SizeMode | Status (ADO)
Sort (ADO) | StatusBarText
Sort (DAO) | StayInSync (ADO)
SortOrder | StillExecuting (DAO)
Source (ADO Error Object) | Style
Source (ADO Recordset Object) | SystemDB (DAO)
Source (DAO) |
Source (VBA) |

T-U

TabFixedHeight | Type (ADO)
TabFixedWidth | Type (DAO)
TabIndex | Type
Table (DAO) | UnderlyingValue (ADO)
TabStop | Unique (DAO)
Tag | Unique
Text | UniqueRecords
TextAlign | UniqueValues
TimerInterval | Updatable (DAO)
Toolbar | UpdateOptions (DAO)
Top | UpdateOptions
TopValues | UserControl
Transactions (DAO) | UserName (DAO)
Transparent | UseTransaction
TripleState |

V-Z

V1xNullBehavior (DAO) | Version (DAO)
ValidateOnSet (DAO) | ViewsAllowed
ValidationRule (DAO) | Visible
ValidationRule | Visible (Application object)
ValidationText (DAO) | VisibleValue (DAO)
ValidationText | WhatsThisButton (VBA)
Value (ADO) | WhatsThisButton
Value (DAO) | Width
Value | WillContinue
Verb | WindowHeight
Version (ADO) | WindowWidth


 New Properties (Alphabetic List)

New Properties (Alphabetic List)

Properties that were added to existing objects in Microsoft Access 2000 are listed in the following table (sorted alphabetically).

A-G

ActiveDataAccessPage

Address

AllDataAccessPages

AllDatabaseDiagrams

AllForms

AllMacros

AllModules

AllowDesignChanges

AllQueries

AllReports

AllStoredProcedures

AllTables

AllViews

AlwaysSaveInDefaultEncoding

AnswerWizard

BaseConnectionString

BottomMargin

CheckIfOfficeHTMLEditor

CodeData

CodeProject

 COMAddIns

Connection

ConnectionString

CurrentData

CurrentProject

DataAccessPages

DefaultWebOptions

Document

DownloadComponents

EmailSubject

Enabled (FormatCondition Object)

Encoding

Expression1

Expression2

FeatureInstall

FolderSuffix

FileSearch

FollowedHyperlinkColor

FormatConditions

FullName

H-P

HyperlinkColor

InputParameters

IsConnected

IsHyperlink

IsLoaded

ItemsSelected

LanguageSettings

LeftMargin

LineSpacing

LocationOfComponents

 MaxRecButton

Operator (FormatCondition Object)

OrganizeInFolder

Path

ProductCode

ProjectType

Properties Property (AccessObjectProperties Collection)

Properties Property (Properties Collection)

Q-Z

Recordset

ResyncCommand

RightMargin

ScreenTip

ServerFilter

ServerFilterByForm

SubAddress

SubdatasheetExpanded

SubdatasheetHeight

SubdatasheetName

 TextToDisplay

TopMargin

Type (AccessObject Object)

Type (FormatCondition Object)

UnderlineHyperlinks

UniqueTable

UseLongFileNames

VBE

Vertical

WebOptions

Microsoft Office properties

To see a list of the new properties available in the Microsoft Office 9.0 Object Library, open the Microsoft Office Visual Basic Reference in the Help contents.

To use the objects supplied by Microsoft Office, you must set a reference to the Microsoft Office 9.0 Object Library when the Visual Basic Editor is open by clicking References on the Tools Menu and selecting the check box next to this library.

Microsoft Visual Basic Editor properties

To see a list of the new properties available in the Microsoft Visual Basic for Applications Extensibility 5.3 Object Library, open the Microsoft Visual Basic Reference in the Help contents.

To use the objects supplied by the Microsoft Visual Basic Editor, you must set a reference to the Microsoft Visual Basic for Applications Extensibility 5.3 Object Library. To set this reference, open the Visual Basic Editor and click References on the Tools Menu and select the check box next to this library.


ActiveX Control Properties

The following list identifies the properties you can set for an ActiveX control.

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

BorderColor | Object
BorderStyle | OLEClass
BorderWidth | OnEnter (forms)
Class | OnExit (forms)
ControlSource | OnGotFocus (forms)
ControlTipText | OnLostFocus (forms)
ControlType | OnUpdated (forms)
Custom | SpecialEffect
DisplayWhen (forms) | TabIndex (forms)
Enabled (forms) | TabStop (forms)
Height | Tag
HelpContextID (forms) | Top
InSelection (forms) | Verb
Left | Visible
Locked (forms) | Width
Name |


Toggle Button Control Properties

The following list identifies the properties you can set for a toggle button control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

AddColon | OnClick (forms)
AfterUpdate (forms) | OnDblClick (forms)
AutoLabel | OnEnter (forms)
BeforeUpdate (forms) | OnExit (forms)
Caption | OnGotFocus (forms)
ControlSource | OnKeyDown (forms)
ControlTipText (forms) | OnKeyPress (forms)
ControlType | OnKeyUp (forms)
DefaultValue (forms) | OnLostFocus (forms)
DisplayWhen (forms) | OnMouseDown (forms)
Enabled (forms) | OnMouseMove (forms)
FontItalic | OnMouseUp (forms)
FontName | Picture
FontSize | PictureType
FontUnderline | ShortcutMenuBar
FontWeight | StatusBarText (forms)
ForeColor | TabIndex (forms)
Height | TabStop (forms)
HelpContextID (forms) | Tag
InSelection (forms) | Top
LabelAlign | TripleState
LabelX | ValidationRule (forms)
LabelY | ValidationText (forms)
Left | Visible
Locked (forms) | Width
Name |


Option Group Control Properties

The following list identifies the properties you can set for an option group control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

AddColon Left
AfterUpdate (forms) | Locked (forms)
AutoLabel Name
BackColor | OnClick (forms)
BackStyle | OnDblClick (forms)
BeforeUpdate (forms) | OnEnter (forms)
BorderColor | OnExit (forms)
BorderStyle | OnMouseDown (forms)
BorderWidth | OnMouseMove (forms)
ControlSource | OnMouseUp (forms)
ControlTipText (forms) | ShortcutMenuBar
ControlType SpecialEffect
DefaultValue (forms) | StatusBarText (forms)
DisplayWhen (forms) | TabIndex (forms)
Enabled (forms) | TabStop (forms)
Height Tag
HelpContextID (forms) | Top
InSelection | ValidationRule (forms)
LabelAlign | ValidationText (forms)


Chart Control Properties (Forms and Reports)

The following list identifies the properties you can set for a chart control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

AddColon | OnClick (forms)
AfterUpdate (forms) | OnDblClick (forms)
AutoActivate (forms) | OnEnter (forms)
AutoLabel | OnExit (forms)
BackColor | OnGotFocus (forms)
BackStyle | OnKeyDown (forms)
BeforeUpdate (forms) | OnKeyPress (forms)
BorderColor | OnKeyUp (forms)
BorderStyle | OnLostFocus (forms)
BorderWidth | OnMouseDown (forms)
Class | OnMouseMove (forms)
ColumnCount | OnMouseUp (forms)
ColumnHeads | OnUpdated (forms)
ControlSource | RowSource
ControlTipText | RowSourceType
ControlType | ShortcutMenuBar
DisplayType | SizeMode
DisplayWhen (forms) | SourceDoc
Enabled (forms) | SourceItem
Height | SpecialEffect
HelpContextID (forms) | StatusBarText (forms)
InSelection (forms) | TabIndex (forms)
LabelAlign | TabStop (forms)
LabelX | Tag
LabelY | Top
Left | UpdateOptions
LinkChildFields | Verb
LinkMasterFields | Visible
Locked (forms) | Width
Name |
OLETypeAllowed |


Query Properties Reference

Each query has property settings that you can change to alter the way the query behaves and how the query results look.

For more information on a query property, click a property name below. An asterisk (*) indicates that the property applies to query fields or field lists. A property listed with no asterisk applies to queries as a whole.

Alias* | ODBCTimeout
Caption* | OrderBy
ColumnHeadings | OrderByOn
Description | OutputAllFields
DestConnectStr | RecordLocks
DestinationDB | RecordsetType
DestinationTable | ReturnsRecords
DisplayControl* | RunPermissions
FailOnError | Source*
Filter | SourceConnectStr
Format* | SourceDatabase
FrozenColumns | SubdatasheetExpanded
InputMask* | SubdatasheetHeight
LinkChildFields | SubdatasheetName
LinkMasterFields | TopValues
LogMessages | UniqueRecords
MaxRecords | UniqueValues
ODBCConnectStr | UseTransaction


Command Button Control Properties

The following list identifies the properties you can set for a command button control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

AddColon | Name
AutoLabel | OnClick (forms)
AutoRepeat (forms) | OnDblClick (forms)
Cancel (forms) | OnEnter (forms)
Caption | OnExit (forms)
ControlTipText (forms) | OnGotFocus (forms)
ControlType | OnKeyDown (forms)
Default | OnKeyPress (forms)
DisplayWhen (forms) | OnKeyUp (forms)
Enabled (forms) | OnLostFocus (forms)
FontItalic | OnMouseDown (forms)
FontName | OnMouseMove (forms)
FontSize | OnMouseUp (forms)
FontUnderline | Picture
FontWeight | PictureType
ForeColor | ShortcutMenuBar
Height | StatusBarText (forms)
HelpContextID (forms) | TabIndex (forms)
HyperlinkAddress | TabStop (forms)
HyperlinkSubAddress | Tag
InSelection (forms) | Top
LabelAlign | Transparent
LabelX | Visible
LabelY | Width
Left |


Line Control Properties

The following list identifies the properties you can set for a line control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

BorderColor | LineSlant
BorderStyle | Name
BorderWidth | SpecialEffect
ControlType | Tag
DisplayWhen (forms) | Top
Height | Visible
InSelection (forms) | Width
Left |


Tab Control Properties

The following list identifies the properties you can set for a tab control.

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

BackStyle | OnKeyDown (forms)
ControlType | OnKeyPress (forms)
DisplayWhen | OnKeyUp (forms)
Enabled | OnMouseDown
FontItalic | OnMouseMove
FontName | OnMouseUp
FontSize | ShortcutMenuBar
FontUnderline | StatusBarText
FontWeight | Style
Height | TabFixedHeight
HelpContextID | TabFixedWidth
InSelection | TabIndex
Left | TabStop
MultiRow | Tag
Name | Top
OnChange | Visible
OnClick | Width
OnDblClick |


Label Control Properties

The following list identifies the properties you can set for a label control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

BackColor | InSelection (forms)
BackStyle | Left
BorderColor | LeftMargin
BorderStyle | LineSpacing
BorderWidth | Name
BottomMargin | OnClick (forms)
Caption | OnDblClick (forms)
ControlTipText (forms) | OnMouseDown (forms)
ControlType | OnMouseMove (forms)
DisplayWhen (forms) | OnMouseUp (forms)
FontItalic | RightMargin
FontName | ShortcutMenuBar
FontSize | SpecialEffect
FontUnderline | Tag
FontWeight | TextAlign
ForeColor | Top
Height | TopMargin
HelpContextID | Vertical
HyperlinkAddress | Visible
HyperlinkSubAddress | Width


Option Button Control Properties

The following list identifies the properties you can set for an option button control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

AddColon | OnDblClick (forms)
AfterUpdate (forms) | OnEnter (forms)
AutoLabel | OnExit (forms)
BeforeUpdate (forms) | OnGotFocus (forms)
BorderColor | OnKeyDown (forms)
BorderStyle | OnKeyPress (forms)
BorderWidth | OnKeyUp (forms)
ControlSource | OnLostFocus (forms)
ControlTipText (forms) | OnMouseDown (forms)
ControlType | OnMouseMove (forms)
DefaultValue (forms) | OnMouseUp (forms)
DisplayWhen (forms) | ShortcutMenuBar
Enabled (forms) | SpecialEffect
Height | StatusBarText (forms)
HelpContextID (forms) | TabIndex (forms)
InSelection (forms) | TabStop (forms)
LabelAlign | Tag
LabelX | Top
LabelY | TripleState
Left | ValidationRule (forms)
Locked (forms) | ValidationText (forms)
Name | Visible
OnClick (forms) | Width


Subform/Subreport Control Properties

The following list identifies the properties you can set for a subform/subreport control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

AddColon | LinkChildFields
AutoLabel | LinkMasterFields
BorderColor | Locked (forms)
BorderStyle | Name
BorderWidth | OnEnter (forms)
CanGrow | OnExit (forms)
CanShrink | SourceObject
ControlType | SpecialEffect
DisplayWhen (forms) | StatusBarText (forms)
Enabled (forms) | TabIndex (forms)
Height | TabStop (forms)
InSelection (forms) | Tag
LabelAlign | Top
LabelX | Visible
LabelY | Width
Left |


Field Properties Reference

Each field has property settings that you can change to alter the way the field looks and behaves. The properties available for a field are dependent on the field data type.

For more information on a field property, click a property name below.

AllowZeroLength | FrozenColumns
BorderColor | IgnoreNulls
BorderStyle | Indexed
BorderWidth | InputMask
BoundColumn | LimitToList
Caption | ListRows
ColumnCount | ListWidth
ColumnHeads | NewValues
ColumnHidden | Primary
ColumnOrder | PrtDevModes
ColumnWidth | PrtDevNames
ColumnWidths | PrtMip
DatasheetCellsEffect | Required
DatasheetGridlinesBehavior | RowSource
DataType | RowSourceType
DecimalPlaces | SelHeight
DefaultValue | SelTop
Description | SortOrder
DisplayControl | SpecialEffect
FieldName | Unique
FieldSize | ValidationRule
ForeColor | ValidationText
Format |


Combo Box Control Properties

The following list identifies the properties you can set for a combo box control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

A-M

AddColon | Enabled (forms)
AfterUpdate (forms) | FontItalic
AllowAutoCorrect | FontName
AutoExpand | FontSize
AutoLabel | FontUnderline
BackColor | FontWeight
BackStyle | ForeColor
BeforeUpdate (forms) | Format
BorderColor | Height
BorderStyle | HelpContextID (forms)
BorderWidth | InputMask
BoundColumn | InSelection (forms)
Column | IsHyperlink
ColumnCount | ItemData
ColumnHeads | LabelAlign
ColumnWidths | LabelX
ControlSource | LabelY
ControlTipText (forms) | Left
ControlType | LimitToList
DecimalPlaces | ListRows
DefaultValue (forms) | ListWidth
DisplayWhen (forms) | Locked (forms)

N-Z

Name | RowSource
OnChange (forms) | RowSourceType
OnClick (forms) | ShortcutMenuBar
OnDblClick (forms) | SpecialEffect
OnEnter (forms) | StatusBarText (forms)
OnExit (forms) | TabIndex (forms)
OnGotFocus (forms) | TabStop (forms)
OnKeyDown (forms) | Tag
OnKeyPress (forms) | TextAlign
OnKeyUp (forms) | Top
OnLostFocus (forms) | ValidationRule (forms)
OnMouseDown (forms) | ValidationText (forms)
OnMouseMove (forms) | Visible
OnMouseUp (forms) | Width
OnNotInList (forms) |


Bound Object Frame Control Properties

The following list identifies the properties you can set for a bound object frame control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

A-O

AddColon | LabelAlign
AfterUpdate (forms) | LabelX
AutoActivate (forms) | LabelY
AutoLabel | Left
BackColor | Locked (forms)
BackStyle | Name
BeforeUpdate (forms) | OLETypeAllowed
BorderColor | OnClick (forms)
BorderStyle | OnDblClick (forms)
BorderWidth | OnEnter (forms)
Class | OnExit (forms)
ControlSource | OnGotFocus (forms)
ControlTipText | OnKeyDown (forms)
ControlType | OnKeyPress (forms)
DisplayType | OnKeyUp (forms)
DisplayWhen (forms) | OnLostFocus (forms)
Enabled (forms) | OnMouseDown (forms)
Height | OnMouseMove (forms)
HelpContextID (forms) | OnMouseUp (forms)
InSelection (forms) | OnUpdated (forms)

P-Z

ShortcutMenuBar | TabStop (forms)
SizeMode | Tag
SourceDoc | Top
SourceItem | UpdateOptions
SpecialEffect | Verb
StatusBarText (forms) | Visible
TabIndex (forms) | Width


Rectangle Control Properties

The following list identifies the properties you can set for a rectangle control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

BackColor | OnClick (forms)
BackStyle | OnDblClick (forms)
BorderColor | OnMouseDown (forms)
BorderStyle | OnMouseMove (forms)
BorderWidth | OnMouseUp (forms)
ControlType | SpecialEffect
DisplayWhen (forms) | Tag
Height | Top
InSelection (forms) | Visible
Left | Width
Name |


Page Break Control Properties

The following list identifies the properties you can set for a page break control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

ControlType Name
InSelection (forms) Tag


Image Control Properties

The following list identifies the properties you can set for an image control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

BackColor | OnDblClick (forms)
BackStyle | OnMouseDown (forms)
BorderColor | OnMouseMove (forms)
BorderStyle | OnMouseUp (forms)
BorderWidth | Picture
ControlTipText (forms) | PictureAlignment
ControlType | PictureTiling (forms)
DisplayWhen (forms) | PictureType
Height | ShortcutMenuBar
HelpContextID | SizeMode
HyperlinkAddress | SpecialEffect
HyperlinkSubAddress | Tag
InSelection (forms) | Top
Left | Visible
Name | Width
OnClick (forms) |


List Box Control Properties

The following list identifies the properties you can set for a list box control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

A-M

AddColon | Enabled (forms)
AfterUpdate (forms) | FontItalic
AutoLabel | FontName
BackColor | FontSize
BeforeUpdate (forms) | FontUnderline
BorderColor | FontWeight
BorderStyle | ForeColor
BorderWidth | Height
BoundColumn | HelpContextID (forms)
Column (forms) | InSelection (forms)
ColumnCount | ItemData
ColumnHeads | LabelAlign
ColumnWidths | LabelX
ControlSource | LabelY
ControlTipText (forms) | Left
ControlType | Locked (forms)
DefaultValue (forms) | MultiSelect
DisplayWhen (forms) |

N-Z

Name | RowSourceType
OnClick (forms) | ShortcutMenuBar
OnDblClick (forms) | SpecialEffect
OnEnter (forms) | StatusBarText (forms)
OnExit (forms) | TabIndex (forms)
OnGotFocus (forms) | TabStop (forms)
OnKeyDown (forms) | Tag
OnKeyPress (forms) | TextAlign
OnKeyUp (forms) | Top
OnLostFocus (forms) | ValidationRule (forms)
OnMouseDown (forms) | ValidationText (forms)
OnMouseMove (forms) | Visible
OnMouseUp (forms) | Width
RowSource |


 Data Access Page Control Properties

Data Access Page Control Properties

The following list identifies the Dynamic HTML properties, Microsoft Access properties, Access element extension properties, and Web properties you can set for a control when used on a data access page.

Click any name below to display additional information about that property. These properties can be set in the property sheet or in the Microsoft Script Editor.

AccessKey | DisplayGridlines | Overflow
Align | DisplayHorizontalScrollBox | Port
AlinkColor | DisplayPropertyToolbox | Position
AllowDetails | DisplayRowHeaders | ProviderType
AllowFiltering | DisplayTitleBar | ReadOnly
AllowGrouping | DisplayToolbar | RecordsetLabel
AllowPropertyToolbox | DisplayVerticalScrollBar | RecordSource
Alt | Dynsrc | ResyncCommand
AlternateDataSource | ElementID | RightMargin
AltHtml | EnableAutoCalculate | RightToLeft
AutoFit | EnableEvents | ScreenUpdating
BackColor | FgColor | Scroll
BackgroundColor | FileModifiedDate | ScrollAmount
BackgroundImage | FileUpdatedDate | ScrollDelay
BackgroundPositionX | FontFamily | SelectionType
BackgroundPositionY | FontSize | ShowDelButton
BackgroundRepeat | FontStyle | ShowFilterBySelectionButton
Behavior | FontVariant | ShowFirstButton
BGProperties | FontWeight | ShowLastButton
BorderColor | GridX | ShowNewButton
BorderStyle | GridY | ShowNextButton
BorderWidth | HasChartspaceLegend | ShowPrevButton
BottomMargin | HasChartspaceTitle | ShowSaveButton
BuildNumber | HasDetails | ShowSortAscendingButton
CanUndo | Height | ShowSortDescendingButton
Caption | Host | ShowToggleFilterButton
ChartLayout | Href | ShowUndoButton
ChartWrapCount | Hspace | Size
Checked | HTMLURL | Src
ChildLabel | Id | Start
ClassName | Indeterminate | Status
Code | IsExpanded | TabIndex
CodeBase | IsMap | TagName
CodeType | Lang | Target
Color | Left | TextAlign
CommandText | Length | Title
ConnectionString | LinkColor | Top
ConsumesRecordset | ListBoundField | TotalType
ControlSource | ListDisplayField | TrueSpeed
DataFormatAs | ListRowSource | Type
DataMember | Loop | UniqueTable
DataSourceType | Lowsrc | UseMap
Datatype | MajorVersion | UseRemoteProvider
DefaultChecked | MaxHeight | Value
DefaultValue | MaxWidth | Version
Dir | MemberExpand | ViewableRange
Direction | MinorVersion | Visibility
Disabled | MoveAfterReturn | VlinkColor
Display | MoveAfterReturnDirection | Vspace
DisplayColHeaders | Multiple | Width
DisplayExpandIndicator | NoShade | Zindex
DisplayFieldList | NoWrap |


Table Properties Reference

Each table has property settings that you can change to alter the way the table looks and behaves.

For more information on a table property, click a property name below.

Description | SubdatasheetExpanded
Filter | SubdatasheetHeight
LinkChildFields | SubdatasheetName
LinkMasterFields | ValidationRule
OrderBy | ValidationText


Text Box Control Properties

The following list identifies the properties you can set for a text box control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

A-N

AddColon | FilterLookup
AfterUpdate (forms) | FontBold
AllowAutoCorrect | FontItalic
AutoLabel | FontName
AutoTab (forms) | FontSize
BackColor | FontUnderline
BackStyle | FontWeight
BeforeUpdate (forms) | ForeColor
BorderColor | Format
BorderStyle | Height
BorderWidth | HelpContextID (forms)
BottomMargin | InputMask
CanGrow | InSelection (forms)
CanShrink | IsHyperlink
ControlSource | LabelAlign
ControlTipText (forms) | LabelX
ControlType | LabelY
DecimalPlaces | Left
DefaultValue (forms) | LeftMargin
DisplayWhen (forms) | LineSpacing
Enabled (forms) | Locked (forms)
EnterKeyBehavior (forms) | Name

O-P

OnChange (forms) | ShortcutMenuBar
OnClick (forms) | SpecialEffect
OnDblClick (forms) | StatusBarText (forms)
OnEnter (forms) | TabIndex (forms)
OnExit (forms) | TabStop (forms)
OnGotFocus (forms) | Tag
OnKeyDown (forms) | TextAlign
OnKeyPress (forms) | Top
OnKeyUp (forms) | TopMargin
OnLostFocus (forms) | ValidationRule (forms)
OnMouseDown (forms) | ValidationText (forms)
OnMouseMove (forms) | Vertical
OnMouseUp (forms) | Visible
RightMargin | Width
ScrollBars (forms) |


Unbound Object Frame Control Properties

The following list identifies the properties you can set for an unbound object frame control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

AutoActivate (forms) | OnDblClick (forms)
BackColor | OnEnter (forms)
BackStyle | OnExit (forms)
BorderColor | OnGotFocus (forms)
BorderStyle | OnLostFocus (forms)
BorderWidth | OnMouseDown (forms)
Class | OnMouseMove (forms)
ColumnCount | OnMouseUp (forms)
ColumnHeads | OnUpdated (forms)
ControlTipText (forms) | RowSource
ControlType | RowSourceType
DisplayType | ShortcutMenuBar
DisplayWhen (forms) | SizeMode
Enabled (forms) | SourceDoc
Height | SourceItem
HelpContextID (forms) | SpecialEffect
InSelection (forms) | StatusBarText
Left | TabIndex (forms)
LinkChildFields | TabStop (forms)
LinkMasterFields | Tag
Locked (forms) | Top
Name | UpdateOptions
OLEClass | Verb
OLEType | Visible
OLETypeAllowed | Width
OnClick (forms) |


Check Box Control Properties

The following list identifies the properties you can set for a check box control. Those properties that apply only when the control is on a form are followed by (forms) for "Forms Only."

Click any name below to display additional information about that property, such as other restrictions concerning when the property is available, and whether you can set it in the property sheet, in a macro, or by using Visual Basic.

AddColon | OnDblClick (forms)
AfterUpdate (forms) | OnEnter (forms)
AutoLabel | OnExit (forms)
BeforeUpdate (forms) | OnGotFocus (forms)
BorderColor | OnKeyDown (forms)
BorderStyle | OnKeyPress (forms)
BorderWidth | OnKeyUp (forms)
ControlSource | OnLostFocus (forms)
ControlTipText | OnMouseDown (forms)
ControlType | OnMouseMove (forms)
DefaultValue (forms) | OnMouseUp (forms)
DisplayWhen (forms) | ShortcutMenuBar
Enabled (forms) | SpecialEffect
Height | StatusBarText (forms)
HelpContextID (forms) | TabIndex (forms)
InSelection (forms) | TabStop (forms)
LabelAlign | Tag
LabelX | Top
LabelY | TripleState
Left | ValidationRule (forms)
Locked (forms) | ValidationText (forms)
Name | Visible
OnClick (forms) | Width


DDE Functions and Statements

DDE Function

DDEExecute Statement

DDEInitiate Function

DDEPoke Statement

DDERequest Function

DDESend Function

DDETerminate Statement

DDETerminateAll Statement


 Control Properties Reference

Control Properties Reference

Each control has property settings that you can change to alter the way the control looks and behaves.

You can change the default property settings before you add a control to a form or report, or you can change property settings for a control that has already been placed on a form or report.

For more information on a control property, click a control name below.

ActiveX | Option Button
Bound Object Frame | Option Group
Chart | Page Break
Check Box | Rectangle
Combo Box | Subform/Subreport
Command Button | Tab
Image | Text Box
Label | Toggle Button
Line | Unbound Object Frame
List Box |


 Action Property

Action Property

You can use the Action property in Visual Basic to specify the operation to perform on an OLE object.

Setting

The Action property uses the following settings.

Constant | Description
acOLECreateEmbed (0) | Creates an embedded object. To use this setting, you must first set the control's OLETypeAllowed property to acOLEEmbedded or acOLEEither. Set the Class property to the type of OLE object you want to create. You can use the SourceDoc property to use an existing file as a template.
acOLECreateLink (1) | Creates a linked OLE object from the contents of a file. To use this setting, you must first set the control's OLETypeAllowed and SourceDoc properties. Set the OLETypeAllowed property to acOLELinked or acOLEEither. The SourceDoc property specifies the file used to create the OLE object. You can also set the control's SourceItem property (for example, to specify a row-and-column range if the object you're creating is a Microsoft Excel worksheet). When you create an OLE object by using this setting, the control displays a metafile graphic image of the file specified by the control's SourceDoc property. If you save the OLE object, only the link information, such as the name of the application that supplied the object and the name of the linked file, is saved because the control contains an image of the data but no source data.
acOLECopy (4) | Copies the object to the Clipboard. When you copy an OLE object to the Clipboard, all the data and link information associated with the object is placed on the Clipboard as well. You can copy both linked and embedded objects onto the Clipboard. Using this setting is equivalent to clicking Copy on the Edit menu.
acOLEPaste (5) | Pastes data from the Clipboard to the control. If the paste operation is successful, the control's OLEType property is set to acOLELinked or acOLEEmbedded. If the paste operation isn't successful, the OLEType property is set to acOLENone. Using the acOLEPaste setting is equivalent to clicking Paste on the Edit menu.
acOLEUpdate (6) | Retrieves the current data from the application that supplied the object and displays that data as a metafile graphic in the control.
acOLEActivate (7) | Opens an OLE object for an operation, such as editing. To use this setting, you must first set the control's Verb property. The Verb property specifies the operation to perform when the OLE object is activated.
acOLEClose (9) | Closes an OLE object and ends the connection with the application that supplied the object. This setting applies to embedded objects only. Using this setting is equivalent to clicking Close on the object's Control menu.
acOLEDelete (10) | Deletes the specified OLE object and frees the associated memory. This setting enables you to explicitly delete an OLE object. Objects are automatically deleted when a form is closed or when the object is updated to a new object. You can't use the Action property to delete a bound OLE object from its underlying table or query.
acOLEInsertObjDlg (14) | Displays the Insert Object dialog box. In Form view or Datasheet view, you display this dialog box to enable the user to create a new object or to link or embed an existing object. You can use the control's OLETypeAllowed property to determine the type of object the user can create (with the constant acOLELinked, acOLEEmbedded, or acOLEEither) by using this dialog box.
acOLEPasteSpecialDlg (15) | Displays the Paste Special dialog box. In Form view or Datasheet view, you display this dialog box to enable the user to paste an object from the Clipboard. The dialog box provides several options, including pasting either a linked or embedded object. You can use the control's OLETypeAllowed property to determine the type of object that can be pasted (with the constant acOLELinked, acOLEEmbedded, or acOLEEither) by using this dialog box.
acOLEFetchVerbs (17) | Updates the list of verbs an OLE object supports. To display the list of verbs, use the ObjectVerbs and ObjectVerbsCount properties.

You can set the Action property only by using Visual Basic. The Action property setting is an Integer data type value.

The Action property isn't available in Design view but can be read or set in other views.

Remarks

When a control's Enabled property is set to No or its Locked property is set to Yes, you can't use some Action property settings. The following table indicates which settings are allowed or not allowed under these conditions.

Setting | Enabled = No | Locked = Yes
acOLECreateEmbed (0) | Not allowed | Not allowed
acOLECreateLink (1) | Not allowed | Not allowed
acOLECopy (4) | Allowed | Allowed
acOLEPaste (5) | Not allowed | Not allowed
acOLEUpdate (6) | Not allowed | Not allowed
acOLEActivate (7) | Allowed | Allowed
acOLEClose (9) | Not allowed | Allowed
acOLEDelete (10) | Not allowed | Not allowed
acOLEInsertObjDlg (14) | Not allowed | Not allowed
acOLEPasteSpecialDlg (15) | Not allowed | Not allowed
acOLEFetchVerbs (17) | Not allowed | Allowed


 ActiveControl Property

ActiveControl Property

You can use the ActiveControl property together with the Screen object to identify or refer to the control that has the focus.

Setting

This property setting contains a reference to the Control object that has the focus at run time.

This property is available by using a macro or Visual Basic and is read-only in all views.

Remarks

You can use the ActiveControl property to refer to the control that has the focus at run time together with one of its properties or methods. The following example assigns the name of the control with the focus to the strControlName variable:

Dim ctlCurrentControl As Control
Dim strControlName As String
Set ctlCurrentControl = Screen.ActiveControl
strControlName = ctlCurrentControl.Name

If no control has the focus when you use the ActiveControl property, or if all of the active form's controls are hidden or disabled, an error occurs.


 ActiveDatasheet Property

ActiveDatasheet Property

You can use the ActiveDatasheet property together with the Screen object to identify or refer to the datasheet that has the focus.

Setting

The ActiveDatasheet property setting contains the datasheet object that has the focus at run time.

This property is available by using a macro or Visual Basic and is read-only in all views.

Remarks

You can use this property to refer to an active datasheet together with one of its properties or methods. For example, the following code uses the ActiveDatasheet property to reference the top row of the selection in the active datasheet.

TopRow = Screen.ActiveDatasheet.SelTop


 ActiveForm Property

ActiveForm Property

You can use the ActiveForm property together with the Screen object to identify or refer to the form that has the focus.

Setting

This property setting contains a reference to the Form object that has the focus at run time.

This property is available by using a macro or Visual Basic and is read-only in all views.

Remarks

You can use the ActiveForm property to refer to an active form together with one of its properties or methods. The following example displays the Name property setting of the active form:

Dim frmCurrentForm As Form
Set frmCurrentForm = Screen.ActiveForm
MsgBox "Current form is " & frmCurrentForm.Name

If a subform has the focus, ActiveForm refers to the main form. If no form or subform has the focus when you use the ActiveForm property, an error occurs.


 ActiveReport Property

ActiveReport Property

You can use the ActiveReport property together with the Screen object to identify or refer to the report that has the focus.

Setting

This property setting contains a reference to the Report object that has the focus at run time.

This property is available only by using a macro or Visual Basic and is read-only in all views.

Remarks

You can use the ActiveReport property to refer to an active report together with one of its properties or methods. The following example displays the Name property setting of the active report:

Dim rptCurrentReport As Report
Set rptCurrentReport = Screen.ActiveReport
MsgBox "Current report is " & rptCurrentReport.Name

If no report has the focus when you use the ActiveReport property, an error occurs.


 AddColon, AutoLabel Properties

AddColon, AutoLabel Properties

  • The AddColon property specifies whether a colon follows the text in labels for new controls.

  • The AutoLabel property specifies whether labels are automatically created and attached to new controls.

Setting

The AddColon property uses the following settings.

Setting | Description
Yes | A colon follows the text in labels for new controls.
No | A colon doesn't follow the text in labels for new controls.

The AutoLabel property uses the following settings.

Setting | Description
Yes | A label is attached to new controls.
No | A label isn't attached to new controls.

You can set these properties only by using a control's default control style or the DefaultControl method in Visual Basic.

Remarks

Changes to the default control style setting affect only controls created on the current form or report. To change the default control style for all new forms or reports that you create without using a Microsoft Access wizard, see Specify a new template for forms and reports.


 Address Property

Address Property

You can use the Address property to specify or determine the path to an object, document, Web page or other destination for a Hyperlink object associated with a command button, image control, or label control.

Setting

The Address property is a string expression representing the HyperlinkAddress property's path to a file (UNC path) or Web page (URL).

The Address property is only available by using Visual Basic. When you set the Address property, you automatically specify the HyperlinkAddress property for the control associated with the hyperlink.

Remarks

For more information about hyperlink addresses and their format, see the HyperlinkAddress and HyperlinkSubAddress property topics.


 Alias Property

Alias Property

You can use the Alias property to specify a custom name for a source table or query when you use the same table or query more than once in the same query.

Note The Alias property applies only to tables or queries when they are used as the source of data in a query.

Setting

You can use a string expression to set the Alias property to any name not currently being used in the database. You set this property in query Design view by right-clicking the field list in the query design grid and clicking Properties.

You can set the Alias property in SQL view of the Query window by using an AS clause in the SQL statement.

Remarks

You must use an alias when creating a self-join in an SQL statement.

When you add a table or query to a query, Microsoft Access automatically sets the Alias property to the name of the table or query. If a second instance of the same table or query is added, Microsoft Access sets the Alias property to the object name plus an underscore and a 1 ("_1").

Creating an alias doesn't change the name of the table or query - it only specifies another name that can also be used to refer to the table or query. For example, in a query containing a self-join that shows employees and their managers, you would use two copies of the Employees table. Microsoft Access automatically calls the duplicate table Employees_1. To give this table a more meaningful name, you could set its Alias property to Managers.


AllDataAccessPages Property

You can use the AllDataAccessPages property to reference the AllDataAccessPages collection and its related properties.

Setting

The AllDataAccessPage property is available only by using Visual Basic and is read-only.


AllDatabaseDiagrams Property

You can use the AllDatabaseDiagrams property to reference the AllDatabaseDiagrams collection and its related properties.

Setting

The AllDatabaseDiagrams property is available only by using Visual Basic and is read-only.


AllForms Property

You can use the AllForms property to reference the AllForms collection and its related properties.

Setting

The AllForms property is available only by using Visual Basic and is read-only.


AllMacros Property

You can use the AllMacros property to reference the AllMacros collection and its related properties.

Setting

The AllMacros property is available only by using Visual Basic and is read-only.


AllModules Property

You can use the AllModules property to reference the AllModules collection and its related properties.

Setting

The AllModules property is available only by using Visual Basic and is read-only.


 AllowAdditions Property

AllowAdditions Property

You can use the AllowAdditions property to specify whether a user can add a record when using a form.

Setting

The AllowAdditions property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The user can add new records.
No | False (0) | The user can't add new records.

You can set the AllowAdditions property by using the form's property sheet, a macro, or Visual Basic.

Remarks

Set the AllowAdditions property to No to allow users to view or edit existing records but not add new records.

If you want to prevent changes to existing records (make a form read-only), set the AllowAdditions, AllowDeletions, and AllowEdits properties to No. You can also make records read-only by setting the RecordsetType property to Snapshot.

If you want to open a form for data entry only, set the form's DataEntry property to Yes.

When the AllowAdditions property is set to No, the Data Entry command on the Records menu isn't available.

Note When the Data Mode argument of the OpenForm action is used, Microsoft Access will override a number of form property settings. If the Data Mode argument of the OpenForm action is set to Edit, Microsoft Access will open the form with the following property settings:

  • AllowEdits - Yes

  • AllowDeletions - Yes

  • AllowAdditions - Yes

  • DataEntry - No

To prevent the OpenForm action from overriding any of these existing property settings, omit the Data Mode argument setting so that Microsoft Access will use the property settings defined by the form.


 AllowAutoCorrect Property

AllowAutoCorrect Property

You can use the AllowAutoCorrect property to specify whether a text box or a combo box control will automatically correct entries made by the user.

Setting

The AllowAutoCorrect property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) Entries are automatically corrected according to the settings in the AutoCorrect dialog box.
No | False (0) | Entries aren't corrected.

You can set the AllowAutoCorrect property by using a control's property sheet, a macro, or Visual Basic. You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

Remarks

The AutoCorrect dialog box is available by clicking AutoCorrect on the Tools menu.


 AllowBreakIntoCode Property

AllowBreakIntoCode Property

You can use the AllowBreakIntoCode property to specify whether or not the user can view Visual Basic code after a run-time error occurs in a module.

Setting

The AllowBreakIntoCode property uses the following settings.

Setting | Description
True (-1) | Enable the Debug button on the dialog box that appears when a run-time error occurs.
False (0) | Disable the Debug button.

The easiest way to set this property is by using the Allow Viewing Code After Error option in the Advanced section of the Startup dialog box, available by clicking Startup on the Tools menu. You can also set this property by using a macro or Visual Basic.

To set the AllowBreakIntoCode property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

You should make sure the AllowBreakIntoCode property is set to True when debugging an application.

If the AllowSpecialKeys property is set to True, you can still press CTRL+BREAK to pause execution of Visual Basic code, even if the AllowBreakIntoCode property is set to False.

This property's setting doesn't take effect until the next time the application database opens.


 AllowBuiltInToolbars Property

AllowBuiltInToolbars Property

You can use the AllowBuiltInToolbars property to specify whether or not the user can display Microsoft Access built-in toolbars. For example, you can use the AllowBuiltInToolbars property to prevent a user from seeing a Microsoft Access built-in toolbar within a database application.

Setting

The AllowBuiltInToolbars property uses the following settings.

Setting | Description
True (-1) | Allow built-in toolbars to be displayed.
False (0) | Don't allow built-in toolbars to be displayed.

The easiest way to set this property is by using the Allow Built-in Toolbars option in the Startup dialog box, available by clicking Startup on the Tools menu. You can also set this property by using a macro or Visual Basic.

To set the AllowBuiltInToolbars property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

You can show and hide specific toolbars by using the Customize dialog box, available by pointing to Toolbars on the View menu and clicking Customize.

If you click Toolbars on the View menu when the AllowBuiltInToolbars property is set to False, Microsoft Access will show only custom toolbars in the Toolbars submenu. If you click Customize in this submenu, the Customize dialog box shows the built-in toolbars, but you can't select them or customize them.

The user can modify built-in toolbars only when the AllowToolbarChanges property is set to True and the AllowBuiltInToolbars property is set to True.

If the AllowBuiltInToolbars property is set to False, you can't use the ShowToolbar action to display a built-in toolbar.

This property's setting doesn't take effect until the next time the application database opens.


 AllowBypassKey Property

AllowBypassKey Property

You can use the AllowBypassKey property to specify whether or not the SHIFT key is enabled for bypassing the startup properties and the AutoExec macro. For example, you can set the AllowBypassKey property to False to prevent a user from bypassing the startup properties and the AutoExec macro.

Setting

The AllowBypassKey property uses the following settings.

Setting | Description
True (-1) | Enable the SHIFT key to allow the user to bypass the startup properties and the AutoExec macro.
False (0) | Disable the SHIFT key to prevent the user from bypassing the startup properties and the AutoExec macro.

You can set this property by using a macro or Visual Basic.

To set the AllowBypassKey property by using a macro or Visual Basic, you must create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

You should make sure the AllowBypassKey property is set to True when debugging an application.

This property's setting doesn't take effect until the next time the application database opens.


 AllowContextMenu Property

AllowContextMenu Property

You can use the AllowContextMenu property to specify or determine whether the Snapshot Viewer control pop-up menu appears when you right-click the control or when you press the context menu on a Microsoft Windows keyboard.

Setting

The AllowContextMenu property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The control's pop-up menu is displayed when you right-click the control.
No | False (0) | The control's right-click menu is not displayed.

You can set the AllowContextMenu property by using the control's property sheet or Visual Basic.

Remarks

When this property is set to Yes, the pop-up menu that is displayed when you right-click a Snapshot Viewer control contains commands to specify the control's Zoom property setting or navigate between pages in the snapshot. The pop-up menu also includes choices to print one or more pages of the current snapshot.

When this property is set to No, the pop-up menu will not appear when you right-click the control. You can still toggle between the Fill and Full Zoom property settings by clicking directly on the snapshot displayed in the control. You can navigate to other pages in the snapshot or print the snapshot by using the buttons at the bottom of the snapshot control. In addition, you can print a snapshot by using the Print button to the right of the navigation controls.

The Snapshot Viewer control does not support the ShortcutMenuBar property.


 AllowDeletions Property

AllowDeletions Property

You can use the AllowDeletions property to specify whether a user can delete a record when using a form.

Setting

The AllowDeletions property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The user can delete records.
No | False (0) | The user can't delete records.

You can set the AllowDeletions property by using the form's property sheet, a macro, or Visual Basic.

Remarks

You can set this property to No to allow users to view and edit existing records but not to delete them. When AllowDeletions is set to Yes, records may be deleted so long as existing referential integrity rules aren't broken.

If you want to prevent changes to existing records (make a form read-only), set the AllowAdditions, AllowDeletions, and AllowEdits properties to No. You can also make records read-only by setting the RecordsetType property to Snapshot.

When the AllowDeletions property is set to No, the Delete Record command on the Edit menu isn't available.

Note When the Data Mode argument of the OpenForm action is set, Microsoft Access will override a number of form property settings. If the Data Mode argument of the OpenForm action is set to Edit, Microsoft Access will open the form with the following property settings:

  • AllowEdits - Yes

  • AllowDeletions - Yes

  • AllowAdditions - Yes

  • DataEntry - No

To prevent the OpenForm action from overriding any of these existing property settings, omit the Data Mode argument setting so that Microsoft Access will use the property settings defined by the form.


 AllowDesignChanges Property

AllowDesignChanges Property

You can use the AllowDesignChanges property to specify or determine if design changes can be made to a form in all views or Design view only.

Setting

The AllowDesignChanges property uses the following settings.

Setting | Visual Basic | Description
All Views | True (-1) | (Default) Design changes can be made in all form views.
Design View Only | False (0) | Design changes can be made in Design view only.

The AllowDesignChanges property can be set by using the form's property sheet or Visual Basic.


 AllowEdits Property

AllowEdits Property

You can use the AllowEdits property to specify whether a user can edit saved records when using a form.

Setting

The AllowEdits property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The user can edit saved records.
No | False (0) | The user can't edit saved records.

You can set the AllowEdits property by using the form's property sheet, a macro, or Visual Basic.

Remarks

You can use the AllowEdits property to prevent changes to all data displayed by a form. If you want to prevent changes to data in a specific control, use the Enabled or Locked property.

If you want to prevent changes to existing records (make a form read-only), set the AllowAdditions, AllowDeletions, and AllowEdits properties to No. You can also make records read-only by setting the RecordsetType property to Snapshot.

When the AllowEdits property is set to No, the Delete Record command on the Edit menu and the Data Entry command on the Records menu aren't available.

Note When the Data Mode argument of the OpenForm action is set, Microsoft Access will override a number of form property settings. If the Data Mode argument of the OpenForm action is set to Edit, Microsoft Access will open the form with the following property settings:

  • AllowEdits - Yes

  • AllowDeletions - Yes

  • AllowAdditions - Yes

  • DataEntry - No

To prevent the OpenForm action from overriding any of these existing property settings, omit the Data Mode argument setting so that Microsoft Access will use the property settings defined by the form.


 AllowFilters Property

AllowFilters Property

You can use the AllowFilters property to specify whether records in a form can be filtered.

Settings

The AllowFilters property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) Records can be filtered.
No | False (0) | Records can't be filtered.

You can set this property by using the form's property sheet, a macro, or Visual Basic.

Remarks

Filters are commonly used to view a temporary subset of the records in a database. When you use a filter, you apply criteria to display only records that meet specific conditions. In an Employees form, for example, you can use a filter to display only records of employees with over 5 years of service. You can also use a filter to restrict access to records containing sensitive information, such as financial or medical data.

When the AllowFilters property is set to No, all of the filter options on the Records menu, the form's shortcut menu, and the Formatting (Form/Report) toolbar are disabled. The commands and buttons include:

  • The Filter, Apply Filter/Sort, and Remove Filter/Sort commands.

  • The Filter By Form, Apply Filter/Sort, Remove Filter/Sort, Server Filter By Form, and Apply Server Filter commands on the form's shortcut menu.

  • The corresponding Filter By Selection [image] , Filter By Form [image] , Apply Filter / Remove Filter Filter object , and ServerFilterByForm [image] buttons.

Note Setting the AllowFilters property to No does not affect the Filter, FilterOn, ServerFilter, or ServerFilterByForm properties. You can still use these properties to set and remove filters. You can also still use the following actions or methods to apply and remove filters.

Actions Methods


 AllowFullMenus Property

AllowFullMenus Property

You can use the AllowFullMenus property to specify whether or not full Microsoft Access built-in menus will be available when the application database opens. For example, you can use the AllowFullMenus property to disable menu items that give users the ability to modify table, form, query, or report structures.

Setting

The AllowFullMenus property uses the following settings.

Setting | Description
True (-1) | Display the full built-in menus at startup.
False (0) | Don't display full built-in menus at startup.

The easiest way to set this property is by using the Allow Full Menus option in the Startup dialog box, available by clicking Startup on the Tools menu. You can also set this property by using a macro or Visual Basic.

To set the AllowFullMenus property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

If you set this property to False, a predefined subset of the full built-in menus is displayed in your database. This set of menus doesn't include menus and commands that enable users to change the design of database objects.

Setting this property to False also disables the toolbar buttons that correspond to the disabled menu items. However, shortcut menus aren't affected (you can still change some design features by using shortcut menu commands). If you don't want users to have access to the commands on the shortcut menus, you can set the AllowShortcutMenus property to False.

This property's setting doesn't take effect until the next time the database opens.


 AllowShortcutMenus Property

AllowShortcutMenus Property

You can use the AllowShortcutMenus property to specify whether or not your application allows Microsoft Access to display built-in shortcut menus. For example, you can use the AllowShortcutMenus property in conjunction with the AllowFullMenus property in your application to prevent users from using any built-in menu bar, toolbars, or shortcut menu commands that enable users to change the design of database objects.

Setting

The AllowShortcutMenus property uses the following settings.

Setting | Description
True (-1) | Allow Microsoft Access built-in shortcut menus to be displayed.
False (0) | Don't allow Microsoft Access built-in shortcut menus to be displayed.

The easiest way to set this property is by using the Allow Default Shortcut Menus option in the Startup dialog box, available by clicking Startup on the Tools menu. You can also set this property by using a macro or Visual Basic.

To set the AllowShortcutMenus property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

The setting of this property doesn't affect custom shortcut menus and global shortcut menus. You can use the ShortcutMenuBar property to display custom shortcut menus for forms, form controls, and reports, and the StartupShortcutMenuBar property or the ShortcutMenuBar property of the Application object to display a global shortcut menu.

If you want to display built-in shortcut menus in your application, but don't want the user to be able to change them, set the AllowShortcutMenus property to True and set the AllowToolbarChanges property to False.

This property's setting doesn't take effect until the next time the database opens.


 AllowSpecialKeys Property

AllowSpecialKeys Property

You can use the AllowSpecialKeys property to specify whether or not special key sequences (ALT+F1 (F11), CTRL+F11, CTRL+BREAK, and CTRL+G) are disabled or enabled. For example, you can use the AllowSpecialKeys property to prevent a user from displaying the Database window by pressing F11, entering break mode within a Visual Basic module by pressing CTRL+BREAK, or displaying the Immediate window by pressing CTRL+G.

Setting

The AllowSpecialKeys property uses the following settings.

Setting | Description
True (-1) | Enable the special key sequences.
False (0) | Disable the special key sequences.

The easiest way to set this property is by using the Use Access Special Keys option in the Advanced section of the Startup dialog box, available by clicking Startup on the Tools menu. In a Microsoft Access database (.mdb), yYou can also set this property by using a macro or Visual Basic.

To set the AllowSpecialKeys property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

You should make sure the AllowSpecialKeys property is set to True when debugging an application.

The AllowSpecialKeys property affects the following key sequences.

Key sequences | Effect
ALT+F1 (F11) | Bring the Database window to the front.
CTRL+G | Display the Immediate window.
CTRL+F11 | Toggle between the custom menu bar and the built-in menu bar.
CTRL+BREAK | Enter break mode and display the current module in the Code window.

If you set the UseSpecialKeys property to False, and specify a global menu bar by using the StartupMenuBar property or the MenuBar property of the Application object, the built-in menu bar isn't accessible.

This property's setting doesn't take effect until the next time the application database opens.


 AllowToolbarChanges Property

AllowToolbarChanges Property

You can use the AllowToolbarChanges property to specify whether or not your database allows users to customize toolbars, menu bars, and shortcut menus. For example, you can use the AllowToolbarChanges property to prevent users from deleting a toolbar button or an entire toolbar from your application.

Setting

The AllowToolbarChanges property uses the following settings.

Setting | Description
True (-1) | Allow changes to toolbars, menu bars, and shortcut menus.
False (0) | Don't allow changes to toolbars, menu bars, and shortcut menus.

The easiest way to set this property is by using the Allow Toolbar/Menu Changes option in the Startup dialog box, available by clicking Startup on the Tools menu. You can also set this property by using a macro or Visual Basic.

To set the AllowToolbarChanges property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

Setting the AllowToolbarChanges property to False prevents users from modifying any toolbars, menu bars, and shortcut menus. It disables the Customize subcommand of the Toolbars command on the View menu and the Customize command that's displayed when you right-click a toolbar or the menu bar.

If you set this property to False, the user can still move, size, and dock toolbars and the menu bar.

The user can modify built-in toolbars only when the AllowToolbarChanges property is True and the AllowBuiltInToolbars property is True.

This property's setting doesn't take effect until the next time the database opens.


 AllowZeroLength Property (Microsoft Access)

AllowZeroLength Property

You can use the AllowZeroLength property to specify whether a zero-length string (" ") is a valid entry in a table field.

Note The AllowZeroLength property applies only to Text, Memo, and Hyperlink table fields.

Setting

The AllowZeroLength property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | A zero-length string is a valid entry.
No | False (0) | (Default) A zero-length string is an invalid entry.

You can set this property by using the table's property sheet or Visual Basic.

Note To access a field's AllowZeroLength property by using Visual Basic, use the DAO AllowZeroLength property or the ADO Column.Properties("Set OLEDB:Allow Zero Length") property.

Remarks

If you want Microsoft Access to store a zero-length string instead of a Null value when you leave a field blank, set both the AllowZeroLength and Required properties to Yes.

The following table shows the results of combining the settings of the AllowZeroLength and Required properties.

AllowZeroLength | Required | User's action | Value stored
No | No | Presses ENTER Presses SPACEBAR Enters a zero-length string | Null Null (not allowed)
Yes | No | Presses ENTER Presses SPACEBAR Enters a zero-length string | Null Null Zero-length string
No | Yes | Presses ENTER Presses SPACEBAR Enters a zero-length string | (not allowed) (not allowed) (not allowed)
Yes | Yes | Presses ENTER Presses SPACEBAR Enters a zero-length string | (not allowed) Zero-length string Zero-length string

Tip You can use the Format property to distinguish between the display of a Null value and a zero-length string. For example, the string "None" can be displayed when a zero-length string is entered.

The AllowZeroLength property works independently of the Required property. The Required property determines only whether a Null value is valid for the field. If the AllowZeroLength property is set to Yes, a zero-length string will be a valid value for the field regardless of the setting of the Required property.


AllQueries Property

You can use the AllQueries property to reference the AllQueries collection and its related properties.

Setting

The AllQueries property is available only by using Visual Basic and is read-only.


AllReports Property

You can use the AllReports property to reference the AllReports collection and its related properties.

Setting

The AllReports property is available only by using Visual Basic and is read-only.


AllStoredProcedures Property

You can use the AllStoredProcedures property to reference the AllStoredProcedures collection and its related properties.

Setting

The AllStoredProcedures property is available only by using Visual Basic and is read-only.


AllTables Property

You can use the AllTables property to reference the AllTables collection and its related properties.

Setting

The AllTables property is available only by using Visual Basic and is read-only.


AllViews Property

You can use the AllViews property to reference the AllViews collection and its related properties.

Setting

The AllViews property is available only by using Visual Basic and is read-only.


AlwaysSaveInDefaultEncoding Property

You can use the AlwaysSaveInDefaultEncoding property to specify or determine whether the Web browser opens a data access page with its default or original encoding (character set).

Setting

The AlwaysSaveInDefaultEncoding property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | Use the default encoding specified by the Encoding when saving a data access page.
No | False (0) | (Default) Use the original encoding of the data access page.

The AlwaysSaveInDefaultEncoding property is available only by using Visual Basic.

Remarks

The Encoding property can be used to set the default encoding.


 AnswerWizard Property (Microsoft Access)

AnswerWizard Property

You can use the AnswerWizard property to return a reference to the current AnswerWizard object and its related properties.

Setting

[application.]AnswerWizard[.method or property]

The AnswerWizard property uses the following settings.

Setting | Description
application | Optional. The Application object.
AnswerWizard | Required. When used without specifying a method or property, returns the AnswerWizard object.
method or property | A method or property of the AnswerWizard object.

The AnswerWizard property is available only by using Visual Basic.

Remarks

Once you establish a reference to the AnswerWizard object, you can access all the properties and methods of the object. You can set a reference to the AnswerWizard object by clicking References on the Tools menu while in module Design view. Then set a reference to the Microsoft Office 9.0 Object Library in the References dialog box by selecting the appropriate check box. Microsoft Access can set this reference for you if you use a Microsoft Office 9.0 Object Library constant to set an AnswerWizard object's property or as an argument to an AnswerWizard object's method.


 AppIcon Property

AppIcon Property

You can use the AppIcon property to specify the name of the bitmap (.bmp) or icon (.ico) file that contains the application's icon. For example, you can use the AppIcon property to specify a .bmp file that contains a picture of an automobile to represent an automotive parts application.

Setting

The AppIcon property is a string expression that's a valid bitmap or icon file name (including the path).

The easiest way to set this property is by using the Application Icon option in the Startup dialog box, available by clicking Startup on the Tools menu. You can also set this property by using a macro or Visual Basic.

To set the AppIcon property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

You must also use the RefreshTitleBar method to make any changes visible immediately.

Remarks

If you are distributing your application, it's recommended that the .bmp or .ico file containing the icon reside in the same directory as your Microsoft Access application.

If the AppIcon property isn't set or is invalid, the Microsoft Access icon is displayed.

This property setting takes effect immediately after it's set in code (as long as the code includes the RefreshTitleBar method) or the Startup dialog box is closed.


Application Property (Microsoft Access)

Application Property

You can use the Application property in Visual Basic to access the active Microsoft Access Application object and its related properties.

Setting

The Application property is set by Microsoft Access and is read-only in all views.

Remarks

Each Microsoft Access object has an Application property that returns the current Application object. You can use this property to access any of the object's properties. For example, you could refer to the menu bar for the Application object from the current form by using the following syntax:

Me.Application.MenuBar


 AppTitle Property

AppTitle Property

You can use the AppTitle property to specify the text that appears in the application database's title bar. For example, you can use the AppTitle property to specify that the string "Inventory Control" appear in the title bar of your Inventory Control database application.

Setting

The AppTitle property is a string expression containing the text to appear in the title bar.

The easiest way to set this property is by using the Application Title option in the Startup dialog box, available by clicking Startup on the Tools menu. You can also set this property by using a macro or Visual Basic.

To set the AppTitle property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

You must also use the RefreshTitleBar method to make any changes visible immediately.

Remarks

If this property isn't set, the string "Microsoft Access" appears in the title bar.

This property's setting takes effect immediately after setting the property in code (as long as the code includes the RefreshTitleBar method) or closing the Startup dialog box.


 Assistant Property

Assistant Property

You can use the Assistant property to return a reference to the Assistant object.

Setting

[application.]Assistant[.method or property]

The Assistant property uses the following settings.

Setting | Description
application | Optional. The Application object.
Assistant | Required. When used without specifying a method or property, returns the Assistant object's Item property.
method or property | A method or property of the Assistant object.

The Assistant property is available only by using Visual Basic.

Remarks

Once you establish a reference to the Assistant object, you can access all the properties and methods of the object. You can set a reference to the Assistant object by clicking References on the Tools menu while in module Design view. Then set a reference to the Microsoft Office 9.0 Object Library in the References dialog box by selecting the appropriate check box. Microsoft Access can set this reference for you if you use a Microsoft Office 9.0 Object Library constant to set an Assistant object's property or as an argument to an Assistant object's method.


 AutoActivate Property

AutoActivate Property

You can use the AutoActivate property to specify how the user can activate an OLE object.

Setting

The AutoActivate property uses the following settings.

Setting | Constant | Description
Manual | acOLEActivateManual (0) | The OLE object isn't activated when it receives the focus or when the user double-clicks the control. You can activate an OLE object only by using Visual Basic to set the control's Action property to acOLEActivate.
GetFocus | acOLEActivateGetFocus (1) | (For unbound object frame and chart controls only) If the control contains an OLE object, the application that supplied the object is activated when the control receives the focus.
Double-Click | acOLEActivateDoubleClick (2) | (Default) If the control contains an OLE object, the application that supplied the object is activated when the user double-clicks the control or presses CTRL+ENTER when the control has the focus.

You can set this property by using the control's property sheet, a macro, or Visual Basic.

The AutoActivate property can be set only in Design view.

Remarks

Some OLE objects can be activated from within the control. When such an object is activated, the object can be edited (or some other operation can be performed) from inside the boundaries of the control. This feature is called in-place activation. If an object supports in-place activation, see the documentation for the application that was used to create the object for information about using this feature.

With Visual Basic, you can determine if a control contains an object by checking the setting of its OLEType property.

Note If you set a control's AutoActivate property to Double-Click and specify a DblClick event for the control, the DblClick event occurs before the object is activated.


 AutoCenter Property

AutoCenter Property

You can use the AutoCenter property to specify whether a form will be centered automatically in the application window when the form is opened.

Setting

The AutoCenter property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The form will be centered automatically on opening.
No | False (0) | (Default) The form's upper-left corner will be in the same location as when the form was last saved.

You can set this property by using the form's property sheet, a macro, or Visual Basic.

You can set this property only in Design view.

Remarks

Depending on the size and placement of the application window, forms can appear off to one side of the application window, hiding part of the form. Centering the form automatically when it's opened makes it easier to view and use.

If you make any changes in Design view to a form whose AutoResize property is set to No and whose AutoCenter property is set to Yes, you should switch to Form view before saving the form. If you don't, Microsoft Access clips the form on the right and bottom edges the next time you open the form.


 AutoExpand Property

AutoExpand Property

You can use the AutoExpand property to specify whether Microsoft Access automatically fills the text box portion of a combo box with a value from the combo box list that matches the characters you enter as you type in the combo box. This lets you quickly enter an existing value in a combo box without displaying the list box portion of the combo box.

Setting

The AutoExpand property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) Microsoft Access fills in the combo box from the list with the first value matching the first character that you type. As you type additional characters, Microsoft Access changes the value displayed to match all the characters typed.
No | False (0) | You must select a value from the list or type the entire value.

You can set the AutoExpand property by using the combo box's property sheet, a macro, or Visual Basic.

Remarks

When you enter characters in the text box portion of a combo box, Microsoft Access searches the values in the list to find those that match the characters you have typed. If the AutoExpand property is set to Yes, Microsoft Access automatically displays the first underlying value that matches the characters entered so far.

When the LimitToList property is set to Yes and the combo box list is dropped down, Microsoft Access selects matching values in the list as the user enters characters in the text box portion of the combo box, even if the AutoExpand property is set to No. If the user presses ENTER or moves to another control or record, the selected value appears in the combo box.


 AutoRepeat Property

AutoRepeat Property

You can use the AutoRepeat property to specify whether an event procedure or macro runs repeatedly while a command button on a form remains pressed in.

Setting

The AutoRepeat property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The macro or event procedure in the Click event runs repeatedly while the command button remains pressed in.
No | False (0) | (Default) The macro or event procedure runs once.

You can set this property by using the command button's property sheet, a macro, or Visual Basic.

Remarks

The initial repeat of the event procedure or macro occurs 0.5 second after it first runs. Subsequent repeats occur either 0.25 second apart or the duration of the event procedure or macro, whichever is longer.

If the code attached to the command button causes the current record to change, the AutoRepeat property has no effect.

If the code attached to the command button causes changes to another control on a form, use the DoEvents function to ensure proper screen updating.


 AutoResize Property

AutoResize Property

You can use the AutoResize property to specify whether a Form window opens automatically sized to display complete records.

Setting

The AutoResize property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The Form window is automatically sized to display a complete record.
No | False (0) | When opened, the Form window has the last saved size. To save a Form window's size, open the form, size the window, save the form by clicking Save on the File menu, and close the form. When you next open the form, it will be the saved window size.

You can set this property by using the form's property sheet, a macro, or Visual Basic.

This property can be set only in Design view.

Remarks

The Form window resizes only if opened in Form view. If you open the form first in Design view or Datasheet view and then change to Form view, the Form window won't resize.

If you make any changes in Design view to a form whose AutoResize property is set to No and whose AutoCenter property is set to Yes, you should switch to Form view before saving the form. If you don't, Microsoft Access clips the form on the right and bottom edges the next time you open the form.

If the AutoCenter property is set to No, a Form window opens with its upper-left corner in the same location as when it was closed.


 AutoTab Property

AutoTab Property

You can use the AutoTab property to specify whether an automatic tab occurs when the last character permitted by a text box control's input mask is entered. An automatic tab moves the focus to the next control in the form's tab order.

Setting

The AutoTab property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | Generates a tab when the last allowable character in a text box is entered.
No | False (0) | (Default) Doesn't generate a tab when the last allowable character in a text box is entered.

You can set this property by using a form's property sheet, a macro, or Visual Basic.

You can set the default for this property by using the control's default control style or the DefaultControl method in Visual Basic.

The AutoTab property affects tab behavior in both Form view and Datasheet view.

Remarks

You create an input mask for a control by using the InputMask property.

You can also create an input mask for a text box control bound to a field by setting the InputMask property for the field in the form's underlying table or query. If the field is dragged to a form from the field list, the field's input mask is inherited by the text box control.

You could use the AutoTab property if you have a text box on a form for which you usually enter the maximum number of characters for each record. After you have entered the maximum number of characters, focus automatically moves to the next control in the tab order. For example, you could use this property for a CategoryType field that must always be five characters long.


 BackColor Property

BackColor Property

You can use the BackColor property to specify the color for the interior of a control or section.

Setting

The BackColor property contains a numeric expression that corresponds to the color used to fill a control's or section's interior.

You can use the Color Builder to set this property by clicking the Build button [image] to the right of the property box in the property sheet. Using the Color Builder enables you to define custom back colors for controls or sections.

You can also set this property by using Fill/Back Color [image] on the Formatting (Form/Report) toolbar, a control's or section's property sheet, a macro, or Visual Basic.

In Visual Basic, use a numeric expression to set this property. This property setting has a data type of Long.

You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

For Table objects you can set this property using Fill/Back Color [image] on the Formatting (Datasheet) toolbar, or in Visual Basic by using the DatasheetBackColor property.

Remarks

To use the BackColor property, the BackStyle property, if available, must be set to Normal.


 BackStyle Property

BackStyle Property

You can use the BackStyle property to specify whether a control will be transparent.

Setting

The BackStyle property uses the following settings.

Setting | Visual Basic | Description
Normal | 1 | (Default for all controls except option group) The control has its interior color set by the BackColor property.
Transparent | 0 | (Default for option group) The control is transparent. The color of the form or report behind the control is visible.

You can set this property by using Fill/Back Color [image] on the Formatting (Form/Report) toolbar, a control's property sheet, a macro, or Visual Basic.

You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

Remarks

If the Transparent button on the Back Color button palette is selected, the BackStyle property is set to Transparent; otherwise the BackStyle property is set to Normal.

Tip To make a command button invisible, set its Transparent property to Yes.


 BaseConnectionString Property

BaseConnectionString Property

You can use the BaseConnectionString property returns the base connection string for the CurrentProject or CodeProject object.

Setting

The BaseConnectionString property is available only by using Visual Basic and is read-only.

Remarks

The BaseConnectionString property returns the connection string that was set through the OpenConnection method or by clicking Connection on the File menu. When making a connection, Microsoft Access project modifies the BaseConnectionString property for use with the ADO environment.


 Bookmark Property (Microsoft Access)

Bookmark Property

You can use the Bookmark property with forms to set a bookmark that uniquely identifies a particular record in the form's underlying table, query, or SQL statement.

Setting

The Bookmark property contains a string expression created by Microsoft Access.

You can set this property by using a macro or Visual Basic.

Note You get or set the form's Bookmark property separately from the ADO Bookmark or DAO Bookmark property of the underlying table or query.

Remarks

When a bound form is opened in Form view, each record is assigned a unique bookmark. In Visual Basic, you can save the bookmark for the current record by assigning the value of the form's Bookmark property to a string variable. To return to a saved record after moving to a different record, set the form's Bookmark property to the value of the saved string variable. You can use the StrComp function to compare a Variant or string variable to a bookmark, or when comparing a bookmark against a bookmark. The third argument for the StrComp function must be set to a value of zero.

Note Bookmarks are not saved with the records they represent and are only valid while the form is open. They are re-created by Microsoft Access each time a bound form is opened.

There is no limit to the number of bookmarks you can save if each is saved with a unique string variable.

The Bookmark property is only available for the form's current record. To save a bookmark for a record other than the current record, move to the desired record and assign the value of the Bookmark property to a string variable that identifies this record.

You can use bookmarks in any form that is based entirely on Microsoft Access tables. However, other database products may not support bookmarks. For example, you can't use bookmarks in a form based on a linked table that has no primary index.

Requerying a form invalidates any bookmarks set on records in the form. However, clicking Refresh on the Records menu doesn't affect bookmarks.

Since Microsoft Access creates a unique bookmark for each record in a form's recordset when a form is opened, a form's bookmark will not work on another recordset, even when the two recordsets are based on the same table, query, or SQL statement. For example, suppose you open a form bound to the Customers table. If you then open the Customers table by using Visual Basic and use the ADO Seek or DAO Seek method to locate a specific record in the table, you can't set the form's Bookmark property to the current table record. To perform this kind of operation you can use the ADO Find method or DAO Find methods with the form's RecordsetClone property.

An error occurs if you set the Bookmark property to a string variable and then try to return to that record after the record has been deleted.

The value of the Bookmark property isn't the same as a record number.


 BorderColor Property

BorderColor Property

You can use the BorderColor property to specify the color of a control's border.

Setting

The BorderColor property setting is a numeric expression that corresponds to the color you want to use for a control's border.

You can use the Color Builder to set this property by clicking the Build button [image] to the right of the property box in the property sheet. Using the Color Builder enables you to define custom border colors for controls.

You can also set this property by using Line/Border Color [image] on the Formatting (Form/Report) toolbar, a macro, or Visual Basic.

You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

Remarks

A control's border color is visible only when its SpecialEffect property is set to Flat or Shadowed. If the SpecialEffect property is set to something other than Flat or Shadowed, setting the BorderColor property changes the SpecialEffect property setting to Flat.


 BorderStyle Property

BorderStyle Property

  • Forms. You can use the BorderStyle property to specify the type of border and border elements (title bar, Control menu, Minimize and Maximize buttons, or Close button) to use for the form. You typically use different border styles for normal forms, pop-up forms, and custom dialog boxes.

  • Controls. You can use the BorderStyle property to specify how a control's border appears.

Setting

For forms, the BorderStyle property uses the following settings.

Setting | Visual Basic | Description
None | 0 | The form has no border or related border elements. The form isn't resizable.
Thin | 1 | The form has a thin border and can include any of the border elements. The form isn't resizable (the Size command on the Control menu isn't available). You often use this setting for pop-up forms. (If you want a form to remain on top of all Microsoft Access windows, you must also set its PopUp property to Yes.)
Sizable | 2 | (Default) The form has the default border for Microsoft Access forms, can include any of the border elements, and can be resized. You often use this setting for normal Microsoft Access forms.
Dialog | 3 | The form has a thick (double) border and can include only a title bar, a Close button, and a Control menu. The form can't be maximized, minimized, or resized (the Maximize, Minimize, and Size commands aren't available on the Control menu). You often use this setting for custom dialog boxes. (If you want a form to be modal, however, you must also set its Modal property to Yes. If you want it to be a modal pop-up form, which dialog boxes typically are, you must set both its PopUp and Modal properties to Yes.)

You can set the BorderStyle property for a form only in form Design view by using the form's property sheet, a macro, or Visual Basic.

For controls, the BorderStyle property uses the following settings.

Setting | Visual Basic | Description
Transparent | 0 | (Default only for label, chart, and subreport) Transparent
Solid | 1 | (Default) Solid line
Dashes | 2 | Dashed line
Short dashes | 3 | Dashed line with short dashes
Dots | 4 | Dotted line
Sparse dots | 5 | Dotted line with dots spaced far apart
Dash dot | 6 | Line with a dash-dot combination
Dash dot dot | 7 | Line with a dash-dot-dot combination
Double solid | 8 | Double solid lines

You can set the BorderStyle property for a control by using the control's property sheet, a macro, or Visual Basic.

You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

Remarks

A control's border style is visible only when its SpecialEffect property is set to Flat or Shadowed. If the SpecialEffect property is set to something other than Flat or Shadowed, setting the BorderStyle property changes the SpecialEffect property setting to Flat.

For a form, the BorderStyle property establishes the characteristics that visually identify the form as a normal form, a pop-up form, or a custom dialog box. You may also set the Modal and PopUp properties to further define the form's characteristics.

You may also want to set the form's ControlBox, CloseButton, MinMaxButtons, ScrollBars, NavigationButtons, and RecordSelectors properties. These properties interact in the following ways:

  • If the BorderStyle property is set to None or Dialog, the form doesn't have Maximize or Minimize buttons, regardless of its MinMaxButtons property setting.

  • If the BorderStyle property is set to None, the form doesn't have a Control menu, regardless of its ControlBox property setting.

  • The BorderStyle property setting doesn't affect the display of the scroll bars, navigation buttons, the record number box, or record selectors.

The BorderStyle property takes effect only in Form view. The property setting is ignored in form Design view.

If you set the BorderStyle property of a pop-up form to None, you won't be able to close the form unless you put a Close button on it that runs a macro containing the Close action or an event procedure in Visual Basic that uses the Close method.

Pop-up forms are typically fixed in size, but you can make a pop-up form sizable by setting its PopUp property to Yes and its BorderStyle property to Sizable.

You can also use the Dialog setting of the Window Mode action argument of the OpenForm action to open a form with its Modal and PopUp properties set to Yes.


 BorderWidth Property

BorderWidth Property

You can use the BorderWidth property to specify the width of a control's border.

Setting

The BorderWidth property uses the following settings.

Setting | Visual Basic | Description
Hairline | 0 | (Default) The narrowest border possible on your system.
1 pt to 6 pt | 1 to 6 | The width as indicated in points.

You can set this property by using Line/Border Width [image] on the Formatting (Form/Report) toolbar, the control's property sheet, a macro, or Visual Basic.

You can set the default for this property by using the control's default control style or the DefaultControl method in Visual Basic.

Remarks

To use the BorderWidth property, the SpecialEffect property must be set to Flat or Shadowed and the BorderStyle property must not be set to Transparent. If the SpecialEffect property is set to any other value and/or the BorderStyle property is set to Transparent, and you set the BorderWidth property, the SpecialEffect property is automatically reset to Flat and the BorderStyle property is automatically reset to Solid.

The exact border width depends on your computer and printer. On some systems, the hairline and 1-point widths appear the same.


 LeftMargin, TopMargin, RightMargin, BottomMargin Properties

LeftMargin, TopMargin, RightMargin, BottomMargin Properties

You can use the LeftMargin, TopMargin, RightMargin, and BottomMargin property to specify or determine the location of information displayed within a label or text box control. For example, you might want display information in a text box control starting 0.25 inches from the left and top margins.

Setting

A control's displayed information location is the distance measured from the control's left, top, right, or bottom border to the left, top, right, or bottom edge of the displayed information. Setting the LeftMargin or TopMargin property to 0 places the displayed information's edge at the very left or top of the control. To use a unit of measurement different from the setting in the Regional Settings Properties dialog box in Windows Control Panel, specify the unit, such as cm or in (for example, 3 cm or 2 in).

In Visual Basic, use a numeric expression to set the value of this property. Values are expressed in twips.

You can set these properties by using the property sheet, a macro, or Visual Basic.


 BoundColumn Property

BoundColumn Property

When you make a selection from a list box or combo box, the BoundColumn property tells Microsoft Access which column's values to use as the value of the control. If the control is bound to a field, the value in the column specified by the BoundColumn property is stored in the field named in the ControlSource property.

Setting

The BoundColumn property uses the following settings.

Setting | Description
0 | The ListIndex property value, rather than the column value, is stored in the current record. The ListIndex property value of the first row is 0, the second row is 1, and so on. Microsoft Access sets the ListIndex property when an item is selected from a list box or the list box portion of a combo box. Setting the BoundColumn property to 0 and using the ListIndex property value of the control might be useful if, for example, you are only interested in storing a sequence of numbers.
1 or greater | (Default is 1) The value in the specified column becomes the control's value. If the control is bound to a field, then this setting is stored in that field in the current record. The BoundColumn property can't be set to a value larger than the setting of the ColumnCount property.

You can set the BoundColumn property by using the control's property sheet, a macro, or Visual Basic.

For table fields, you can set this property on the Lookup tab in the Field Properties section of table Design view for fields with the DisplayControl property set to Combo Box or List Box.

Tip Microsoft Access sets the BoundColumn property automatically when you select Lookup Wizard as the data type for a field in table Design view.

In Visual Basic, set the BoundColumn property by using a number or a numeric expression equal to a value from 0 to the setting of the ColumnCount property.

Remarks

The leftmost visible column in a combo box (the leftmost column whose setting in the combo box's ColumnWidths property is not 0) contains the data that appears in the text box part of the combo box in Form view or in a report. The BoundColumn property determines which column's value in the text box or combo box list will be stored when you make a selection. This allows you to display different data than you store as the value of the control.

Note If the bound column is not the same as the leftmost visible column in the control (or if you set the BoundColumn property to 0), the LimitToList property is set to Yes.

Microsoft Access uses zero-based numbers to refer to columns in the Column property. That is, the first column is referenced by using the expression Column(0); the second column is referenced by using the expression Column(1); and so on. However, the BoundColumn property uses 1-based numbers to refer to the columns. This means that if the BoundColumn property is set to 1, you could access the value stored in that column by using the expression Column(0).

If the AutoExpand property is set to Yes, Microsoft Access automatically fills in a value in the text box portion of the combo box that matches a value in the combo box list as you type.


 BuiltIn Property (Microsoft Access)

BuiltIn Property

The BuiltIn property returns a Boolean value indicating whether a Reference object points to a default reference that's necessary for Microsoft Access to function properly.

Setting

The BuiltIn property is available only by using Visual Basic and is read-only.

The BuiltIn property returns the following values.

Value | Description
True (-1) | The Reference object refers to a default reference that can't be removed.
False (0) | The Reference object refers to a nondefault reference that isn't necessary for Microsoft Access to function properly.

Remarks

The default references in Microsoft Access include the Microsoft Access 9.0 object library, the Visual Basic For Applications library, OLE Automation library, and Microsoft ActiveX Data Objects 2.0 library.


 Callback Property

Callback Property

You set the Callback property when you're working with a modeless balloon. A modeless balloon is one that allows the user to switch back to the application in which they're working without first closing the balloon. A modeless balloon may be useful if you're creating help that the user will want to leave open while performing several steps in the application. To make a balloon modeless, set the Mode property of the Balloon object to msoModeModeless.

The Callback property specifies a function or a macro to run when the user clicks a button on a balloon. If you write a function to be called by the Callback property, you can use that function to determine which button was clicked.

You set the Callback property to the name of a function or macro. For example, the following line of code sets the Callback property:

Assistant.NewBalloon.Callback = "EvaluateCheckboxes"

Note that you must set the Callback property to the name of a Function procedure; you can't set it to the name of a Sub procedure. The Function procedure must be public.


 Cancel Property

Cancel Property

You can use the Cancel property to specify whether a command button is also the Cancel button on a form.

Setting

The Cancel property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The command button is the Cancel button.
No | False (0) | (Default) The command button isn't the Cancel button.

You can set this property by using the command button's property sheet, a macro, or Visual Basic.

Remarks

Setting the Cancel property to Yes makes the command button the Cancel button in the form. However, you must still write the macro or Visual Basic event procedure that performs whatever action or actions you want the Cancel button to carry out (for example, closing the form without saving any changes to it). Set the command button's OnClick event property to the name of the macro or event procedure.

When a command button's Cancel property setting is Yes and the Form window is active, the user can choose the command button by pressing ESC, by pressing ENTER when the command button has the focus, or by clicking the command button.

Note If a text box has the focus when the user presses ESC, any changes made to the data in the text box will be lost, and the original data will be restored.

When the Cancel property is set to Yes for one command button on a form, it is automatically set to No for all other command buttons on the form.

Tip For a form that supports irreversible operations, such as deletions, it's a good idea to make the Cancel button the default command button. To do this, set both the Cancel property and the Default property to Yes.


 CanGrow, CanShrink Properties

CanGrow, CanShrink Properties

You can use the CanGrow and CanShrink properties to control the appearance of sections or controls on forms and reports that are printed or previewed. For example, if you set both properties to Yes, a section or control automatically adjusts vertically to print or preview all the data the section or control contains.

Notes

  • The CanGrow and CanShrink properties don't apply to form or report page header and page footer sections, although they do apply to controls in such sections.

  • These properties affect the display of form sections and controls only when the form is printed or previewed, not when the form is displayed in Form view, Datasheet view, or Design view.

Setting

The CanGrow property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The section or control grows vertically so that all data it contains can be printed or previewed.
No | False (0) | (Default) The section or control doesn't grow. Data that doesn't fit within the fixed size of the section or control won't be printed or previewed.

The CanShrink property uses the following settings.

Setting | Visual Basic | Description
Yes | True | The section or control shrinks vertically so that the data it contains can be printed or previewed without leaving blank lines.
No | False | (Default) The section or control doesn't shrink.

You can set these properties only by using the section or control's property sheet.

For controls, you can set the default for these properties by using the default control style or the DefaultControl method in Visual Basic.

These property settings are read-only in a macro or Visual Basic in any view but Design view.

Remarks

You can use these properties to control the appearance of printed forms and reports. When you set both properties to Yes, the object automatically adjusts so any amount of data can be printed. When a control grows or shrinks, the controls below it move down or up the page.

If you set a control's CanGrow property to Yes, Microsoft Access automatically sets the CanGrow property of the section containing the control to Yes. (However, if you set a control's CanShrink property to Yes, Microsoft Access doesn't set the section's CanShrink property to Yes.)

Sections grow and shrink vertically across their entire width. For example, suppose a form has two text boxes side by side in a section, and each control has its CanShrink property set to Yes. If one text box contains one line of data and the other text box contains two lines of data, both text boxes will be two lines long because the section is sized across its entire width. To grow and shrink the data independently, you can place two subform or subreport controls side by side, and set their CanGrow and CanShrink properties to Yes.

When you use the CanGrow and CanShrink properties, remember that:

  • The property settings don't affect the horizontal spacing between controls; they affect only the vertical space the controls occupy.

  • Overlapping controls can't grow or shrink.

  • The height of a large control can prevent controls beside it from shrinking. For example, if several short controls are on the left side of a report's detail section and one tall control, such as an unbound object frame, is on the right side, the controls on the left won't shrink, even if they contain no data.


 Caption Property

Caption Property

You can use the Caption property to provide helpful information to the user through captions on objects in various views:

  • Field captions specify the text for labels attached to controls created by dragging a field from the field list and serves as the column heading for the field in table or query Datasheet view.

  • Form captions specify the text that appears in the title bar in Form view.

  • Report captions specify the title of the report in Print Preview.

  • Button and label captions specify the text that appears in the control.

Setting

The Caption property is a string expression that can contain up to 2,048 characters. Captions for forms and reports that are too long to display in the title bar are truncated.

For controls, you can set this property by using the property sheet. For fields, you can set this property by using the property sheet in table Design view or in the Query window (in the Field Properties property sheet). You can also set this property by using a macro or Visual Basic.

Remarks

If you don't specify a caption for a table field, the field's FieldName property setting will be used as the caption of a label attached to a control or as the column heading in Datasheet view. If you don't specify the caption for a query field, the caption for the underlying table field will be used. If you don't set a caption for a form, button, or label, Microsoft Access will assign the object a unique name based on the object, such as "Form1".

If you create a control by dragging a field from the field list and haven't specified a Caption property setting for the field, the field's FieldName property setting will be copied to the control's Name property box and will also appear in the label of the control created.

Note The text of the Caption property for a label or command button control is the hyperlink display text when the HyperlinkAddress or HyperlinkSubAddress property is set for the control.

You can use the Caption property to assign an access key to a label or command button. In the caption, include an ampersand (&) immediately preceding the character you want to use as an access key. The character will be underlined. You can press ALT plus the underlined character to move the focus to that control on a form.

Tip Include two ampersands (&&) in the setting for a caption if you want to display an ampersand itself in the caption text. For example, to display "Save & Exit", you should type Save && Exit in the Caption property box.


CheckIfOfficeIsHTMLEditor Property

You can use the CheckIfOfficeIsHTMLEditor property to specify or determine if the default system HTML editor is used when editing a Web page.

Setting

The CheckIfOfficeIsHTMLEditor property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) Check to see whether an Office application is the default HTML editor when starting Microsoft Access.
No | False (0) | Check is not performed..

The CheckIfOfficeIsHTMLEditor property is available only by using Visual Basic.

Remarks

The CheckIfOfficeIsHTMLEditor property is used only if the Web browser you are using supports HTML editing and HTML editors.

To use a different HTML editor, you must set this property to False and then register the editor as the default system HTML editor.


 Class Property

Class Property

You can use the Class property to specify or determine the class name of an embedded OLE object.

Setting

The Class property setting is a string expression supplied by you or Microsoft Access when you create or paste an OLE object.

You can set the Class property by using the control's property sheet, a macro, or Visual Basic.

Remarks

A class name defines the type of OLE object. For example, Microsoft Excel supports several types of OLE objects, including worksheets and charts. Their class names are "Excel.Sheet" and "Excel.Chart" respectively. When you create an OLE object in Design view by clicking Paste Special on the Edit menu or Object on the Insert menu, Microsoft Access enters the class name of the new object in the property sheet.

Note To determine the class name of an OLE object, see the documentation for the application supplying the object.

The Class property setting is updated when you copy an object from the Clipboard. For example, if you paste a Microsoft Excel chart from the Clipboard into an OLE object that previously contained a Microsoft Excel worksheet, the Class property setting changes from "Excel.Sheet" to "Excel.Chart". You can paste an object from the Clipboard by using Visual Basic to set the control's Action property to acOLEPaste or acOLEPasteSpecialDlg.

Note The OLEClass property and the Class property are similar but not identical. The OLEClass property setting is a general description of the OLE object whereas the Class property setting is the name used to refer to the OLE object in Visual Basic. Examples of OLEClass property settings are Microsoft Excel Chart, Microsoft Word Document, and Paintbrush Picture.


 CloseButton Property

CloseButton Property

You can use the CloseButton property to specify whether the Close button [image] on a form is enabled.

Setting

The CloseButton property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The Close button is enabled.
No | False (0) | The Close button is disabled and the Close command isn't available on the Control menu.

You can set the CloseButton property by using the form's property sheet, a macro, or Visual Basic.

You can set the CloseButton property only in form Design view.

Remarks

If you set the CloseButton property to No, the Close button remains visible but appears dimmed (grayed), and you must provide some other way to close the form - for example, a command button or custom menu command that runs a macro or event procedure that closes the form.

Tip You can also close the form by pressing ALT+F4.


 CodeContextObject Property

CodeContextObject Property

You can use the CodeContextObject property to determine the object in which a macro or Visual Basic code is executing.

Setting

The CodeContextObject property is set by Microsoft Access and is read-only in all views.

Remarks

The ActiveControl, ActiveDataAccessPage, ActiveDatasheet, ActiveForm, and ActiveReport properties of the Screen object always return the object that currently has the focus. The object with the focus may or may not be the object where a macro or Visual Basic code is currently running, for example, when Visual Basic code runs in the Timer event on a hidden form.


CodeData Property

You can use the CodeData property to access the CodeData object and its related collections.

Setting

The CodeData property is available only by using Visual Basic and is read-only.

Remarks

Use the CodeData property to refer to one of the following code database collections together with one of its properties or methods.

AllTables | AllQueries
AllViews | AllStoredProcedures
AllDatabaseDiagrams |


CodeProject Property

You can use the CodeProject property to access the CodeProject object and its related collections, properties, and methods.

Setting

The CodeProject property is available only by using Visual Basic and is read-only.

Remarks

Use the CodeProject property to refer to one of the following code database collections together with one of its properties or methods.


Collection Property (Microsoft Access)

Collection Property

The Collection property returns a reference to the collection that contains an object.

Setting

The Collection property is available only by using Visual Basic and is read-only.

Remarks

You can use the Collection property to access the collection to which an object belongs. For example, the Collection property of a Reference object returns an object reference to the References collection.

The Collection property is similar to the Parent property.


 Column Property

Column Property

You can use the Column property to refer to a specific column, or column and row combination, in a multiple-column combo box or list box. Use 0 to refer to the first column, 1 to refer to the second column, and so on. Use 0 to refer to the first row, 1 to refer to the second row, and so on. For example, in a list box containing a column of customer IDs and a column of customer names, you could refer to the customer name in the second column and fifth row as:

Forms!Contacts!Customers.Column(1, 4)

Setting

control.Column(column, row)

The Column property uses the following settings.

Setting | Description
control | A Control object that represents the active combo box or list box control.
column | An integer that can range from 0 to the setting of the ColumnCount property minus one.
row | Optional. An integer that can range from 0 to the setting of the ListCount property minus 1.

This property setting is only available by using a macro or Visual Basic. This property setting isn't available in Design view and is read-only in other views.

Remarks

You can use the Column property to assign the contents of a combo box or list box to another control, such as a text box. For example, to set the ControlSource property of a text box to the value in the second column of a list box, you could use the following expression:

=Forms!Customers!CompanyName.Column(1)

If the user has made no selection when you refer to a column in a combo box or list box, the Column property setting will be Null. You can use the IsNull function to determine if a selection has been made, as in the following example:

If IsNull(Forms!Customers!Country)
    Then MsgBox "No selection."
End If

Note To determine how many columns a combo box or list box has, you can inspect the ColumnCount property setting.


 ColumnCount Property

ColumnCount Property

You can use the ColumnCount property to specify the number of columns displayed in a list box or in the list box portion of a combo box, or sent to OLE objects in a chart control or unbound object frame. For example, if you set the ColumnCount property for a list box on an Employees form to 3, one column can list last names, another can list first names, and the third can list employee ID numbers.

Setting

The ColumnCount property holds an integer between 1 and the maximum number of fields in the table, query, or SQL statement, or the maximum number of values in the value list, specified in the RowSource property of the control.

You can set the ColumnCount property by using the control's property sheet, a macro, or Visual Basic.

For table fields, you can set this property on the Lookup tab in the Field Properties section of table Design view for fields with the DisplayControl property set to Combo Box or List Box.

Tip Microsoft Access sets the ColumnCount property automatically when you select Lookup Wizard as the data type for a field in table Design view.

Remarks

A combo box or list box can have multiple columns. If the control's RowSource property contains the name of a table, query, or SQL statement, a combo box or list box will display the fields from that source, from left to right, up to the number specified by the ColumnCount property.

To display a different combination of fields, create either a new query or a new SQL statement for the RowSource property, specifying the fields and the order you want.

If the RowSource property contains a list of values (the RowSourceType property is set to Value List), the values are put into the rows and columns of the combo box or list box in the order they are listed in the RowSource property. For example, if the RowSource property contains the list "Red; Green; Blue; Yellow" and the ColumnCount property is set to 2, the first row of the combo box or list box list will contain "Red" in the first column and "Green" in the second column. The second row will contain "Blue" in the first column and "Yellow" in the second column.

You can use the ColumnWidths property to set the width of the columns displayed in the control, or to hide columns.


 ColumnHeadings Property

ColumnHeadings Property

You can use the ColumnHeadings property to specify the order or to limit the number of columns displayed in a crosstab query. For example, in a query that displays the names of countries, you may want to show them in a specific order, such as United States first, Canada second, and the United Kingdom third.

Setting

Enter the data values from the Column Heading field of the crosstab query as a string expression in the order you want the headings displayed in the datasheet for the crosstab query, separated by a comma (or the list separator set in the Regional Settings Properties dialog box in Windows Control Panel). The following table shows sample ColumnHeadings property settings and the result in the crosstab query's datasheet.

Sample setting | Result
"Qtr 1", "Qtr 2", "Qtr 3", "Qtr 4" | Displays column headings for each quarter.
"Mexico", "Canada", "USA" | Displays column headings for each country.

You can set this property by using the query's property sheet. You can also set it in SQL view of the Query window or in Visual Basic by using a PIVOT clause in the SQL statement.

Note The column headings you specify for the ColumnHeadings property must exactly match the data values in the Column Heading field in the query design grid. Otherwise, the data won't appear in the columns.

Remarks

You use the ColumnHeadings property to obtain more control over the appearance of column headings in a crosstab query. By default, Microsoft Access displays all data values as column headings in ascending order. For example, if your Column Heading field name is Month, the default column headings displayed will be April, August, December, February, and so on. You can use the ColumnHeadings property to display the data in the correct order with the appropriate setting: "January", "February", "March", and so on.

If you include a column heading in the ColumnHeadings property setting, the column is always displayed in query Datasheet view, even if the column contains no data. This is useful for a report based on a crosstab query, for example, when you always want to display the same column headings in the report.

Tip You can use the ColumnHeadings property to improve the speed of some crosstab queries by limiting the number of columns displayed.


 ColumnHeads Property

ColumnHeads Property

You can use the ColumnHeads property to display a single row of column headings for list boxes, combo boxes, and OLE objects that accept column headings. You can also use this property to create a label for each entry in a chart control. What is actually displayed as the first-row column heading depends on the object's RowSourceType property setting.

Setting

The ColumnHeads property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | Column headings are enabled and either field captions, field names, or the first row of data items are used as column headings or chart labels.
No | False (0) | (Default) Column headings are not enabled.

You can set the ColumnHeads property by using the control's property sheet, a macro, or Visual Basic.

For table fields, you can set this property on the Lookup tab of the Field Properties section of table Design view for fields with the DisplayControl property set to Combo Box or List Box.

Tip Microsoft Access sets the ColumnHeads property automatically when you select Lookup Wizard as the data type for a field in table Design view.

Remarks

The RowSourceType property specifies whether field names or the first row of data items are used to create column headings. If the RowSourceType property is set to Table/Query, the field names are used as column headings. If the field has a caption, then the caption is displayed. For example, if a list box has three columns (the ColumnCount property is set to 3) and the RowSourceType property is set to Table/Query, the first three field names (or captions) are used as headings.

If the RowSourceType property is set to Value List, the first row of data items entered in the value list (as the setting of the RowSource property) will be column headings. For example, if a list box has three columns and the RowSourceType property is set to Value List, the first three items in the RowSource property setting are used as column headings.

Tip If you can't select the first row of a list box or combo box in Form view, check to see if the ColumnHeads property is set to Yes.

Headings in combo boxes appear only when displaying the list in the control.


 ColumnHidden Property

ColumnHidden Property

You can use the ColumnHidden property to show or hide a specified column in Datasheet view. For example, you might want to hide a CustomerAddress field that's too wide so you can view the CustomerName and PhoneNumber fields.

Note The ColumnHidden property applies to all fields in Datasheet view and to form controls when the form is in Datasheet view.

Setting

You can set the ColumnHidden property by clicking Hide Columns or Unhide Columns on the Format menu in Datasheet view.

You can also set this property in a Microsoft Access database (.mdb) by using a Long Integer value in Visual Basic to specify the following settings.

Setting | Description
True (-1) | The column is hidden.
False (0) | (Default) The column is visible.

To set or change this property for a table or query by using Visual Basic, you must use a column's Properties collection. For details on using the Properties collection, see Properties.

Note The ColumnHidden property is not available in Design view.

Remarks

Hiding a column with the ColumnHidden property in Datasheet view doesn't hide fields from the same column in Form view. Similarly, setting a control's Visible property to False in Form view doesn't hide the corresponding column in Datasheet view.

You can display a field in a query even though the column for the field is hidden in table Datasheet view.

You can use values from a hidden column as the criteria for a filter even though the column remains hidden after the filter is applied.

You can't use the Copy, Paste, Find, and Replace commands on the Edit menu to affect hidden columns.

Setting a field's ColumnWidth property to 0, or resizing the field to a zero width in Datasheet view, causes Microsoft Access to set the corresponding ColumnHidden property to True. Unhiding a column restores the ColumnWidth property to the value it had before the field was hidden.


 ColumnOrder Property

ColumnOrder Property

You can use the ColumnOrder property to specify the order of the columns in Datasheet view.

Note The ColumnOrder property applies to all fields in Datasheet view and to form controls when the form is in Datasheet view.

Setting

You can set this property by selecting a column in Datasheet view and dragging it to a new position.

You can also set this property in a Microsoft Access database (.mdb) by using a Long Integer value in Visual Basic.

To set or change this property for a table or query by using Visual Basic, you must use a column's Properties collection. For details on using the Properties collection, see Properties.

Note The ColumnOrder property isn't available in Design view.

Remarks

In Datasheet view, a field's ColumnOrder property setting is determined by the field's position. For example, the field in the leftmost column in Datasheet view has a ColumnOrder property setting of 1, the next field has a setting of 2, and so on. Changing a field's ColumnOrder property resets the property for that field and every field to the left of its original position in Datasheet view.

In other views, the property setting is 0 unless you explicitly change the order of one or more fields in Datasheet view (either by dragging the fields to new positions or by changing their ColumnOrder property settings). Fields to the right of the moved field's new position will have a property setting of 0 in views other than Datasheet view.

The order of the fields in Datasheet view doesn't affect the order of the fields in table Design view or Form view.


 ColumnWidth Property

ColumnWidth Property

You can use the ColumnWidth property to specify the width of a column in Datasheet view.

Note The ColumnWidth property applies to all fields in Datasheet view and to form controls when the form is in Datasheet view.

Setting

You can set this property by dragging the right border of the column selector or by clicking Column Width on the Format menu in Datasheet view and entering the desired value. When you set the ColumnWidth property by using the ColumnWidth command, the value is expressed in points.

In Visual Basic, the ColumnWidth property setting is an Integer value that represents the column width in twips. You can specify a width or use one of the following predefined settings.

Setting | Description
0 | Hides the column.
-1 | (Default) Sizes the column to the default width.

Remarks

Setting this property to 0, or resizing the field to a zero width in Datasheet view, sets the field's ColumnHidden property to True (-1) and hides the field in Datasheet view.

Setting a field's ColumnHidden property to False (0) restores the field's ColumnWidth property to the value it had before the field was hidden. For example, if the ColumnWidth property was -1 prior to the field being hidden by setting the property to 0, changing the field's ColumnHidden property to False resets the ColumnWidth to -1.

The ColumnWidth property for a field isn't available when the field's ColumnHidden property is set to True.


 ColumnWidths Property

ColumnWidths Property

You can use the ColumnWidths property to specify the width of each column in a multiple-column combo box or list box. You can also use this property to hide one or more columns.

Setting

The ColumnWidths property holds a value specifying the width of each column in inches or centimeters, depending on the measurement system (U.S. or Metric) selected in the Measurement System box on the Number tab of the Regional Settings Properties dialog box of Windows Control Panel. The default setting is 1 inch or 2.54 centimeters. The ColumnWidths property setting must be a value from 0 to 22 inches (55.87 cm) for each column in the list box or combo box.

To separate your column entries, use semicolons (;) as list separators (or the list separator selected in the List Separator box on the Number tab of the Regional Settings Properties dialog box).

A width of 0 hides a column. Any or all of the ColumnWidths property settings can be blank. You create a blank setting by typing a list separator without a preceding value. Blank values result in Microsoft Access automatically setting a default column width that varies depending on the number of columns and the width of the combo box or list box.

Note In a combo box, the first visible column is displayed in the text box portion of the control.

You can set the ColumnWidths property by using the control's property sheet, a macro, or Visual Basic.

For table fields, you can set this property on the Lookup tab of the Field Properties section of table Design view for fields with the DisplayControl property set to Combo Box or List Box.

Tip Microsoft Access sets the ColumnWidths property automatically when you select Lookup Wizard as the data type for a field in table Design view.

In Visual Basic, use a string expression to set the column width values in twips. Column widths are separated by semicolons. To specify a different unit of measurement, include the unit of measure (cm or in). For example, the following string expression specifies three column widths in centimeters.

"6 cm;0;6 cm"

Remarks

If you leave the ColumnWidths property setting blank, Microsoft Access sets the width of each column as the overall width of the list box or combo box divided by the number of columns.

If the column widths you set are too wide to be fully displayed within the combo box or list box, the rightmost columns are hidden and a horizontal scroll bar appears.

If you specify the width for some columns but leave the setting for others blank, Microsoft Access divides the remaining width by the number of columns for which you haven't specified a width. The minimum calculated column width is 1,440 twips (1 inch).

For example, the following settings are applied to a 4-inch list box with three columns.

Setting | Description
1.5 in;0;2.5 in | The first column is 1.5 inches, the second column is hidden, and the third column is 2.5 inches.
2 in;;2 in | The first column is 2 inches, the second column is 1 inch (default), and the third column is 2 inches. Because only half of the third column is visible, a horizontal scroll bar appears.
(Blank) | The three columns are the same width (1.33 inches).

Note This property is different than the ColumnWidth property, which specifies the width of a specified column in a datasheet.


 COMAddIns Property

COMAddIns Property

You can use the COMAddIns property to return a reference to the current COMAddIns collection object and its related properties.

Setting

[application.]COMAddIns[.method or property]

The COMAddIns property uses the following settings.

Setting | Description
application | The Application object.
COMAddIns | Required. When used without specifying a method or property, returns the COMAddIns collection object.
method or property | A method or property of the COMAddIns collection object.

The COMAddIns property is available only by using Visual Basic and is read-only

Remarks

The COMAddIns collection object is the collection of all currently registered COM add-ins of an application. You can refer to individual members of the collection by using the member object's index or a string expression that is the name of the member object. The first member object in the collection has an index value of 1 and the total number of member objects in the collection is the value of the COMAddIns collection's Count property.

Once you establish a reference to the COMAddIns collection object, you can access all the properties and methods of the object. You can set a reference to the COMAddIns collection object by clicking References on the Tools menu while in module Design view. Then set a reference to the Microsoft Office 9.0 Object Library in the References dialog box by selecting the appropriate check box. Microsoft Access can set this reference for you if you use a Microsoft Office 9.0 Object Library constant to set a COMAddIns collection object's property or as an argument to a COMAddIns collection object's method.


 CommandBars Property (Microsoft Access)

CommandBars Property

You can use the CommandBars property to return a reference to the CommandBars collection object.

Setting

[application.]CommandBars[.method or property]

The CommandBars property uses the following settings.

Setting | Description
application | Optional. The Application object.
CommandBars | Required. When used without specifying a method or property, returns the CommandBars collection object.
method or property | A method or property of the CommandBars collection object. The Item property is the default property for the CommandBars collection object.

The CommandBars property is available only by using Visual Basic.

Remarks

The CommandBars collection object is the collection of all built-in and custom command bars in an application. You can refer to individual members of the collection by using the member object's index or a string expression that is the name of the member object. The first member object in the collection has an index value of 1 and the total number of member objects in the collection is the value of the CommandBars collection's Count property.

Once you establish a reference to the CommandBars collection object, you can access all the properties and methods of the object. You can set a reference to the CommandBars collection object by clicking References on the Tools menu while in module Design view. Set a reference to the Microsoft Office 9.0 Object Library in the References dialog box by selecting the appropriate check box.


 Connection Property

Connection Property

You can use the Connection property to return a reference to the current ActiveX Data Objects (ADO) Connection object and its related properties.

Setting

[object.]Connection[.method or property]

The Connection property uses the following settings.

Setting | Description
object | The CurrentProject or CodeProject object.
Connection | Required. When used without specifying a method or property, returns the Connection object's ConnectionString property.
method or property | A method or property of the Connection object.

The Connection property is available only by using Visual Basic and is read-only.

Remarks

Use the Connection property of the CurrentProject object to refer to the Connection object of the current Microsoft Access project (.adp) or Access database (.mdb) object. Use the Connection property of the CodeProject object to refer to the Connection object of the Access project or Access database code database object. You can use the Connection property to call methods on the Connection object such as BeginTrans and CommitTrans.

Notes The Connection property actually returns a reference to a copy of the ActiveX Data Object (ADO) connection for the active database. Thus, applying the Close method or in anyway attempting to alter the connection through the Connection object's methods or properties will have no affect on the actual connection object used by Microsoft Access to hold a live connection to the current database. Since the Connection property is the main Shape provider connection, the following information is necessary when using this property.

  1. MSDataShape uses Recordset.CursorLocation = adUseClient. Do not set CursorLocation prior to assigning a recordset to CurrentProject.Connect.

  2. MSDataShape uses Recordset.CursorType = adOpenStatic. Do not set CursorType prior to assinging a recordset to CurrentProject.Connection.

  3. MSDataShape accepts Recordset.LockType = adLockOptimistic, adLockBatchOptimistic, or adLockReadOnly (default). If set to adLockPessimistic, it is changed to adLockOptimistic.

  4. The shape connection does not support the all ADOX operation, specifically the Columns.Properties collection is not supported.

  5. In order to ensure that a shape connection will work correctly, the Command.CommandType must be set to adCmdTable.


 ConnectionString Property

ConnectionString Property

You can use the ConnectionString property returns the base connection string for the DataAccessPage object.

Setting

The ConnectionString property is available only by using Visual Basic and is read-only.

Remarks

The ConnectionString property returns the connection string that was set through the OpenConnection method or by clicking Connection on the File menu. When making a connection, Microsoft Access project modifies the ConnectionString property for use with the ADO environment. The Microsoft Office Data Source Control (MSODSC) likewise modifies the ConnectionString.


 ControlBox Property

ControlBox Property

You can use the ControlBox property to specify whether a form has a Control menu in Form view and Datasheet view.

Setting

The ControlBox property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The form has a Control menu in Form view and Datasheet view.
No | False (0) | The form doesn't have a Control menu in Form view and Datasheet view.

Note Setting the ControlBox property to No also removes the Minimize, Maximize, and Close buttons on a form.

You can set this property by using the form's property sheet, a macro, or Visual Basic.

You can set this property only in form Design view.

Remarks

To display a Control menu on a form, the ControlBox property must be set to Yes and the form's BorderStyle property must be set to Thin, Sizable, or Dialog.

Even when a form's ControlBox property is set to No, the form always has a Control menu when opened in Design view.

Setting the ControlBox property to No suppresses the Control menu when you:

  • Open the form in Form view from the Database window.

  • Open the form from a macro.

  • Open the form from Visual Basic.

  • Open the form in Datasheet view.

  • Switch to Form view or Datasheet view from Design view.


 Controls Property (Form, SubForm, Report Object)

Controls Property (Form, SubForm, Report Object)

You can use the Controls property to reference the Controls collection of a form, subform, report or section.

Setting

The Controls property is available only by using Visual Basic and is read-only.

Remarks

Use the Controls property to refer to one of the controls on a form, subform, report, or section, within another control, or attached to another control. For example, the first code syntax would return the number of controls located on Form1. The second would reference the name of a property within a control.

Forms("Form1").Controls.Count

Forms("Form1").Controls("Textbox1").Properties(5).Name


 ControlSource Property

ControlSource Property

You can use the ControlSource property to specify what data appears in a control. You can display and edit data bound to a field in a table, query, or SQL statement. You can also display the result of an expression. For a report group level, the ControlSource property determines the field or expression to group on.

Note The ControlSource property doesn't apply to check box, option button, or toggle button controls in an option group. It applies only to the option group itself.

For reports, the ControlSource property applies only to report group levels.

Setting

The ControlSource property uses the following settings.

Setting | Description
A field name | The control is bound to a field in a table, query, or SQL statement. Data from the field is displayed in the control. Changes to the data inside the control change the corresponding data in the field. (To make the control read-only, set the Locked property to Yes.) If you click a control bound to a field that has a Hyperlink data type, you jump to the destination specified in the hyperlink address.
An expression | The control displays data generated by an expression. This data can be changed by the user but isn't saved in the database.

You can set the ControlSource property for a control by using the control's property sheet, a macro, or Visual Basic.

You can also set the ControlSource property for a text box by typing a field name or expression directly in the text box in form Design view or report Design view.

For a report, you can set this property by selecting a field or typing an expression in the Field/Expression column of the Sorting And Grouping box. For details, see the GroupLevel property.

In Visual Basic, use a string expression to set the value of this property.

Remarks

Forms and reports act as "windows" into your database. You specify the primary source of data for a form or report by setting its RecordSource property to a table, query, or SQL statement. You can then set the ControlSource property to a field in the source of data or to an expression. If the ControlSource property setting is an expression, the value displayed is read-only and not saved in the database. For example, you can use the following settings.

Sample setting | Description
LastName | For a control, data from the LastName field is displayed in the control. For a report group level, Microsoft Access groups the data on last name.
=Date( ) + 7 | For a control, this expression displays a date seven days from today in the control.
=DatePart("q",ShippedDate) | For a control, this expression displays the quarter of the shipped date. For a report group level, Microsoft Access groups the data on the quarter of the shipped date.


 ControlTipText Property

ControlTipText Property

You can use the ControlTipText property to specify the text that appears in a ScreenTip when you hold the mouse pointer over a control.

Setting

You set the ControlTipText property by using a string expression up to 255 characters long.

You can set the ControlTipText property by using the control's property sheet, a macro, or Visual Basic.

For controls on forms, you can set the default for this property by using the default control style or the DefaultControl method in Visual Basic.

You can set the ControlTipText property in any view.

Remarks

The ControlTipText property provides an easy way to provide helpful information about controls on a form.

There are other ways to provide information about a form or a control on a form. You can use the StatusBarText property to display information in the status bar about a control. To provide more extensive help for a form or control, use the HelpFile and HelpContextID properties.


 ControlType Property

ControlType Property

You can use the ControlType property in Visual Basic to determine the type of a control on a form or report.

Setting

The ControlType property setting is an intrinsic constant that specifies the control type.

Constant | Control
acBoundObjectFrame | Bound object frame
acCheckBox | Check box
acComboBox | Combo box
acCommandButton | Command button
acCustomControl | ActiveX (custom) control
acImage | Image
acLabel | Label
acLine | Line
acListBox | List box
acObjectFrame | Unbound object frame or chart
acOptionButton | Option button
acOptionGroup | Option group
acPage | Page
acPageBreak | Page break
acRectangle | Rectangle
acSubform | Subform/subreport
acTabCtl | Tab
acTextBox | Text box
acToggleButton | Toggle button

The ControlType property can only be set by using Visual Basic in form Design view or report Design view, but it can be read in all views.

Remarks

The ControlType property is useful not only for checking for a specific control type in code, but also for changing the type of control to another type. For example, you can change a text box to a combo box by setting the ControlType property for the text box to acComboBox while in form Design view.

You can use the ControlType property to change characteristics of similar controls on a form according to certain conditions. For example, if you don't want users to edit existing data in text boxes, you can set the SpecialEffect property for all text boxes to Flat and set the form's AllowEdits property to No. (The SpecialEffect property doesn't affect whether data can be edited; it's used here to provide a visual cue that the control behavior has changed.)

The ControlType property is also used to specify the type of control to create when you are using the CreateControl method.


 Count Property (Microsoft Access)

Count Property

You can use the Count property to determine the number of items in a specified collection.

Setting

The Count property setting is an Integer value and is read-only in all views.

You can determine the Count property for an object by using a macro or Visual Basic.

Remarks

For example, if you want to determine the number of forms currently open or exisiting on the database, you would use the following code strings:

'Determine the number of open forms.

forms.count

'Determine the number of forms (open or closed)
'in the current database.

currentproject.allforms.count


 CountOfDeclarationLines Property

CountOfDeclarationLines Property

The CountOfDeclarationLines property returns a Long value indicating the number of lines of code in the Declarations section in a standard module or class module.

Setting

The CountOfDeclarationLines property is available only by using Visual Basic and is read-only.

Remarks

Lines in a module are numbered beginning with 1.

The value of the CountOfDeclarationLines property is equal to the line number of the last line of the Declarations section. You can use this property to determine where the Declarations section ends and the body of the module begins.


 CountOfLines Property

CountOfLines Property

The CountOfLines property returns a Long value indicating the number of lines of code in a standard module or class module.

Setting

The CountOfLines property is available only by using Visual Basic and is read-only.

Remarks

Lines in a module are numbered beginning with 1.

The line number of the last line in a module is the value of the CountOfLines property.


CurrentData Property

You can use the CurrentData property to access the CurrentData object and its related collections.

Setting

This property is available only by using Visual Basic and is read-only.

Remarks

Use the CurrentData property to refer to one of the following current database collections together with one of its properties or methods.

AllTables | AllQueries
AllViews | AllStoredProcedures
AllDatabaseDiagrams |


 CurrentObjectType, CurrentObjectName Properties

CurrentObjectType, CurrentObjectName Properties

You can use the CurrentObjectType and CurrentObjectName properties together with the Application object to determine the type of the active database object (table, query, form, report, macro, module, data access page, server view, database diagram, or stored procedure) and the name of the active database object. The active database object is the object that has the focus or in which code is running.

Setting

The CurrentObjectType property is set by Microsoft Access to one of the following Microsoft Access intrinsic constants.

Setting | Description
acTable (0) | The active object is a table.
acQuery (1) | The active object is a query.
acForm (2) | The active object is a form.
acReport (3) | The active object is a report.
acMacro (4) | The active object is a macro.
acModule (5) | The active object is a module.
acDataAccessPage (6) | The active object is a data access page.
acServerView (7) | The active object is a server view.
acDiagram (8) | The active object is a database diagram.
acStoredProcedure (9) | The active object is a stored procedure.

The CurrentObjectName property is set by Microsoft Access to a string expression containing the name of the active object.

These properties are available only by using Visual Basic and are read-only in all views.

Remarks

The following conditions determine which object is considered the active object:

  • If the active object is a property sheet, command bar, menu, palette, or field list of an object, the CurrentObjectType and CurrentObjectName properties return the type and name of the underlying object.

  • If the active object is a pop-up form, the CurrentObjectType and CurrentObjectName properties refer to the pop-up form itself, not the form from which it was opened.

  • If the active object is the Database window, the CurrentObjectType and CurrentObjectName properties return the item selected in the Database window.

  • If no object is selected, the CurrentObjectType property returns True (-1), and the CurrentObjectName property returns a zero-length string (" ").

  • If the current state is ambiguous (the active object isn't a table, query, form, report, macro, or module) - for example, if a dialog box has the focus - the CurrentObjectType property returns True, and the CurrentObjectName property returns the dialog box name.

You can use these properties with the SysCmd method to determine the active object and its state (for example, if the object is open, new, or has been changed but not saved).


 CurrentPage Property

CurrentPage Property

You can use the CurrentPage property to specify or determine the page number of the page displayed in the Snapshot Viewer control.

Setting

The CurrentPage property setting is a Long value representing a page number in a snapshot.

This property is available only by using Visual Basic..

Remarks

If you set this property to an invalid page number, load an invalid file type, or try to access it while the ReadyState property is less than 4, then an error will occur.


CurrentProject Property

You can use the CurrentProject property to access the CurrentProject object and its related collections, properties, and methods.

Setting

The CurrentProject property setting contains a reference to the CurrentProject for the current code database.

This property is available only by using Visual Basic and is read-only.

Remarks

Use the CurrentProject property to refer to one of the following current database collections together with one of its properties or methods.


 CurrentRecord Property

CurrentRecord Property

You can use the CurrentRecord property to identify the current record in the recordset being viewed on a form.

Setting

Microsoft Access sets this property to a Long Integer value that represents the current record number displayed on a form.

The CurrentRecord property is read-only in Form view and Datasheet view. It's not available in Design view. This property is available only by using a macro or Visual Basic.

Remarks

The value specified by this property corresponds to the value shown in the record number box found in the lower-left corner of the form.


 CurrentSectionLeft, CurrentSectionTop Properties

CurrentSectionLeft, CurrentSectionTop Properties

You can use these properties to determine the distance in twips from the top edge and left side of the current section to the top edge and left side of the form.

Setting

  • The CurrentSectionLeft property. An Integer value that represents the distance from the left edge of the current section to the left edge of the form.

  • The CurrentSectionTop property. An Integer value that represents the distance from the top edge of the current section to the top edge of the form.

These property settings are read-only and are available only by using a macro or Visual Basic.

Remarks

The CurrentSectionLeft and CurrentSectionTop property settings change whenever a user scrolls through a form.

For forms whose DefaultView property is set to Single Form, if the user scrolls above the upper-left corner of the section or to the right of the left edge of the form, the property settings are negative values.

For forms whose DefaultView property is set to Continuous Forms, if a section isn't visible, the CurrentSectionTop property is equal to the InsideHeight property of the form.

The CurrentSectionLeft and CurrentSectionTop properties are useful for finding the positions of detail sections displayed in Form view as continuous forms or in Datasheet view. Each detail section has a different CurrentSectionTop property setting, depending on the section's position on the form.


 CurrentView Property

CurrentView Property

You can use the CurrentView property to determine how a form or data access page is currently displayed. For example, you might need to know whether a form is in Form view or Datasheet view before you attempt to place controls on the form by using Visual Basic.

Settings

The CurrentView property uses the following settings.

Setting | Form Displayed In: | Data Access Page Displayed In:
0 | Design view | Design view
1 | Form view | Page view
2 | Datasheet view | Not applicable

This property is available only by using a macro or Visual Basic and is read-only in all views.

Remarks

You can also use this property to perform different tasks depending on the current view. For example, an event procedure could determine which view the form is displayed in and perform one task if the form is displayed in Form view or another task if it's displayed in Datasheet view.


 CurrentX, CurrentY Properties

CurrentX, CurrentY Properties

You can use the CurrentX and CurrentY properties to specify the horizontal and vertical coordinates for the starting position of the next printing and drawing method on a report. For example, you can use these properties to determine where the center point of a circle is drawn on a report section.

Setting

  • The CurrentX property specifies a Single value used in a numeric expression to set the horizontal coordinate of the next printing drawing method.

  • The CurrentY property specifies a Single value used in a numeric expression to set the vertical coordinate of the next printing drawing method.

The coordinates are measured from the upper-left corner of the report section that contains the reference to the CurrentX or CurrentY property. The CurrentX property setting is 0 at the section's left edge, and the CurrentY property setting is 0 at its top edge.

You can set the CurrentX and CurrentY properties by using a macro or a Visual Basic event procedure specified by the OnPrint property setting of a report section.

Remarks

Use the ScaleMode property to define the unit of measure, such as points, pixels, characters, inches, millimeters, or centimeters, that the coordinates will be based on.

When you use the following graphics methods, the CurrentX and CurrentY property settings are changed as indicated.

Method | Sets CurrentX, CurrentY properties to
Circle | The center of the object.
Line | The end point of the line (the x2, y2 coordinates).
Print | The next print position.


 Cycle Property

Cycle Property

You can use the Cycle property to specify what happens when you press the TAB key and the focus is in the last control on a bound form.

Setting

The Cycle property uses the following settings.

Setting | Visual Basic | Description
All Records | 0 | (Default) Pressing the TAB key from the last control on a form moves the focus to the first control in the tab order in the next record.
Current Record | 1 | Pressing the TAB key from the last control on a record moves the focus to the first control in the tab order in the same record.
Current Page | 2 | Pressing the TAB key from the last control on a page moves the focus back to the first control in the tab order on the page.

You can set the Cycle property by using the form's property sheet, a macro, or Visual Basic.

You can set the Cycle property in any view.

Remarks

When you press the TAB key on a form, the focus moves through the controls on the form according to each control's place in the tab order.

You can set the Cycle property to All Records for forms designed for data entry. This allows the user to move to a new record by pressing the TAB key.

Note The Cycle property only controls the TAB key behavior on the form where the property is set. If a subform control is in the tab order, once the subform control receives the focus, the Cycle property setting for the subform determines what happens when you press the TAB key.

To move the focus outside a subform control, press CTRL+TAB.


DataAccessPages Property

You can use the DataAccessPages property to reference the DataAccessPages collection and its related properties.

Setting

The DataAccessPage property is available only by using Visual Basic and is read-only.


 Database Properties

Database Properties

The Database properties allow you to provide additional information about your database. To view the Database properties, click Database Properties on the File menu.

Setting

You can set these properties by entering information in the Summary or Custom tabs in the DatabaseName Properties dialog box or in a Microsoft Access database (.mdb), by using Visual Basic.

Note The Database properties of a Microsoft Access project (.adp) are not available using Visual Basic.

In Visual Basic, if a Database property hasn't already been set in the DatabaseName Properties dialog box, you must create the property by using the CreateProperty method and append it to the Properties collection of a Document object. With Visual Basic, you can set the properties that appear on the Summary tab by using the SummaryInfo Document object in the Documents collection. You set properties in the Custom tab by using the UserDefined Document object in the Documents collection. You must supply a name, data type, and default value for a custom Database property before you can add it to your database. For more information, click Specifics in the Documents collection topic.

Note You can only enter or edit the properties that appear on the Summary or Custom tabs. The other Database properties are read-only.

Remarks

The Database properties appear in the DatabaseName Properties dialog box on the following tabs.

Tab | Description
General | This is the same information that is displayed when you right-click the name of a file in Windows Explorer and then click Properties on the shortcut menu. The only difference is that when these properties are viewed in Microsoft Access, the Attributes settings are read-only.
Summary | This information is similar to the summary information you can provide in other Microsoft Office applications. Summary information allows the user to better identify a database both from within Microsoft Access and from other programs such as the Windows Find Files program. In Microsoft Access databases (.mdb), the information you enter on this tab is added to the SummaryInfo Document object in the Documents collection for Microsoft Access databases. The Hyperlink Base setting on the Summary tab is used to create the base hyperlink path that is appended to the beginning of relative HyperlinkAddress property settings.
Statistics | This information includes the date and time the active database was created, and the last date and time it was modified, accessed, and printed.
Contents | This information includes the names of the objects contained in your database.
Custom | In Microsoft Access databases (.mdb), the custom properties you enter become properties of the UserDefined Document object in the Documents collection.


 DataEntry Property

DataEntry Property

You can use the DataEntry property to specify whether a bound form opens to allow data entry only. The Data Entry property doesn't determine whether records can be added; it only determines whether existing records are displayed.

Setting

The DataEntry property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The form opens showing only a blank record.
No | False (0) | (Default) The form opens showing existing records.

You can set the DataEntry property by using a form's property sheet, a macro, or Visual Basic.

This property can be set in any view.

Remarks

The DataEntry property has an effect only when the AllowAdditions property is set to Yes.

Setting the DataEntry property to Yes by using Visual Basic has the same effect as clicking Data Entry on the Records menu. Setting it to No by using Visual Basic is equivalent to clicking Remove Filter/Sort on the Records menu.

Note When the Data Mode argument of the OpenForm action is set, Microsoft Access will override a number of form property settings. If the Data Mode argument of the OpenForm action is set to Edit, Microsoft Access will open the form with the following property settings:

  • AllowEdits - Yes

  • AllowDeletions - Yes

  • AllowAdditions - Yes

  • DataEntry - No

To prevent the OpenForm action from overriding any of these existing property settings, omit the Data Mode argument setting so that Microsoft Access will use the property settings defined by the form.


 DatasheetBackColor, DatasheetForeColor Properties

DatasheetBackColor, DatasheetForeColor Properties

  • You can use the DatasheetBackColor property in Visual Basic to specify or determine the background color of an entire table, query, or form in Datasheet view within a Microsoft Access database (.mdb).

  • You can use the DatasheetForeColor property in Visual Basic to specify or determine the color of all text in a table, query, or form in Datasheet view within an Access database (.mdb).

Setting

The DatasheetBackColor and DatasheetForeColor properties are a Long Integer value representing the background color and font color setting for a datasheet.

The following setting information applies to both Microsoft Access database and Access projects (.adp):

  • You can also set these properties by clicking Fill/BackColor [image] or Font/ForeColor [image] on the Formatting (Datasheet) toolbar and clicking the desired color displayed on the color palette.

  • You can also set the default DatasheetBackColor and DatasheetForeColor properties by using the Datasheet tab of the Options dialog box, available by clicking Options on the Tools menu.

Remarks

Setting the DatasheetBackColor or DatasheetForeColor properties for a table or query won't affect these property settings for a form that uses the table or query as its source of data.

The following table contains the properties that don't exist in the DAO Properties collection of until you set them by using the Formatting (Datasheet) toolbar or you can add them in an Access database (.mdb) by using the CreateProperty method and append it to the DAO Properties collection.

DatasheetBackColor | DatasheetFontUnderline*
DatasheetCellsEffect | DatasheetFontWeight*
DatasheetFontHeight* | DatasheetForeColor*
DatasheetFontItalic* | DatasheetGridlinesBehavior
DatasheetFontName* | DatasheetGridlinesColor

Note When you add or set any property listed with an asterisk, Microsoft Access automatically adds it to the Properties collection.


 DatasheetCellsEffect Property

DatasheetCellsEffect Property

You can use the DatasheetCellsEffect property to specify whether special effects are applied to cells in a datasheet.

Notes The DatasheetCellsEffect property applies only to objects in Datasheet view.

This property is only available in Visual Basic within a Microsoft Access database (.mdb)

Setting

The DatasheetCellsEffect property uses the following settings.

Setting | Visual Basic | Description
Flat | acEffectNormal (0) | (Default) No special effects are applied to the cells in the datasheet.
Raised | acEffectRaised (1) | Cells in the datasheet appear raised.
Sunken | acEffectSunken (2) | Cells in the datasheet appear sunken.

You can set this property by using Special Effect button on the Formatting (Datasheet) toolbar, and in an Access database (.mdb), by using a macro, or by using Visual Basic.

The following setting information applies to both Access databases (.mdb) and Access projects (.adp):

You can also set this property by selecting the type of cell effect under Cell Effect in the Cells Effects dialog box, available by clicking Cells on the Format menu.

You can set the default DatasheetCellsEffect property by using the settings under Default Cell Effect on the Datasheet tab of the Options dialog box, available by clicking Options on the Tools menu.

Remarks

This property applies the selected effect to the entire datasheet.

When this property is set to Raised or Sunken, gridlines will be visible on the datasheet regardless of the DatasheetGridlinesBehavior property setting.

The following table contains the properties that don't exist in the DAO Properties collection of until you set them by using the Formatting (Datasheet) toolbar or you can add them in an Access database (.mdb) by using the CreateProperty method and append it to the DAO Properties collection.

DatasheetFontItalic* | DatasheetForeColor*
DatasheetFontHeight* | DatasheetBackColor
DatasheetFontName* | DatasheetGridlinesColor
DatasheetFontUnderline* | DatasheetGridlinesBehavior
DatasheetFontWeight* | DatasheetCellsEffect

Note When you add or set any property listed with an asterisk, Microsoft Access automatically adds all the properties listed with an asterisk to the Properties collection in the database.


 DatasheetFontName, DatasheetFontHeight Properties

DatasheetFontName, DatasheetFontHeight Properties

You can use the DatasheetFontName and DatasheetFontHeight properties to specify the font and the font point size used to display and print field names and data in Datasheet view.

Notes The DatasheetFontName and DatasheetFontHeight properties apply to all fields in Datasheet view and to form controls when the form is in Datasheet view.

These properties are only available in Visual Basic within a Microsoft Access database (.mdb)

Setting

  • The DatasheetFontName property. In Visual Basic, a string expression equal to the name of the font.

  • The DatasheetFontHeight property. In Visual Basic, an Integer value between 1 and 127 representing the font size in points.

The following setting information applies to both Access databases (.mdb) and Access projects (.adp):

  • You can set these properties by selecting the font name from the Font box FontNames object or font size from the Font Size box [image] on the Formatting (Datasheet) toolbar.

  • You can also set these properties with the Font and Size boxes in the Font dialog box, available by clicking Font on the Format menu in Datasheet view.

Remarks

For the DatasheetFontName property, the font names you can specify depend on the fonts installed on your system and for your printer. If you specify a font that your system can't display or that isn't installed, Microsoft Windows will substitute a similar font.

For the DatasheetFontHeight property, the font size you specify must be valid for the font specified by the DatasheetFontName property. For example, MS Sans Serif is available only in sizes 8, 10, 12, 14, 18, and 24 points.

You can set the default DatasheetFontName and DatasheetFontHeight properties by using the settings under Default Font on the Datasheet tab of the Options dialog box, available by clicking Options on the Tools menu.

The following table contains the properties that don't exist in the DAO Properties collection of until you set them by using the Formatting (Datasheet) toolbar or you can add them in an Access database (.mdb) by using the CreateProperty method and append it to the DAO Properties collection.

DatasheetFontItalic* | DatasheetForeColor*
DatasheetFontHeight* | DatasheetBackColor
DatasheetFontName* | DatasheetGridlinesColor
DatasheetFontUnderline* | DatasheetGridlinesBehavior
DatasheetFontWeight* | DatasheetCellsEffect

Note When you add or set any property listed with an asterisk, Microsoft Access automatically adds all the properties listed with an asterisk to the Properties collection of the database.


 DatasheetFontItalic, DatasheetFontUnderline Properties

DatasheetFontItalic, DatasheetFontUnderline Properties

You can use the DatasheetFontItalic and DatasheetFontUnderline properties to specify an italic or underlined appearance for field names and data in Datasheet view.

Notes The DatasheetFontItalic and DatasheetFontUnderline properties apply to all fields in Datasheet view and to form controls when the form is in Datasheet view.

These properties are only available in Visual Basic within a Microsoft Access database (.mdb).

Setting

In Visual Basic, the DatasheetFontItalic property uses the following settings.

Setting | Description
True (-1) | The text is italic.
False (0) | (Default) The text isn't italic.

In Visual Basic, the DatasheetFontUnderline property uses the following settings.

Setting | Description
True | The text is underlined.
False | (Default) The text isn't underlined.

In Visual Basic, these property settings are Boolean values.

The following setting information applies to both Access databases (.mdb) and Access projects (.adp):

You can set these properties by clicking Italic [image] or Underline [image] on the Formatting (Datasheet) toolbar.

You can also set these properties in the Font dialog box, available by clicking Font on the Format menu in Datasheet view.

Remarks

The following table contains the properties that don't exist in the DAO Properties collection of until you set them by using the Formatting (Datasheet) toolbar or you can add them in an Access database (.mdb) by using the CreateProperty method and append it to the DAO Properties collection.

DatasheetFontItalic* | DatasheetForeColor*
DatasheetFontHeight* | DatasheetBackColor
DatasheetFontName* | DatasheetGridlinesColor
DatasheetFontUnderline* | DatasheetGridlinesBehavior
DatasheetFontWeight* | DatasheetCellsEffect

Note When you add or set any property listed with an asterisk, Microsoft Access automatically adds all the properties listed with an asterisk to the Properties collection of the database.


 DatasheetFontWeight Property

DatasheetFontWeight Property

You can use the DatasheetFontWeight property to specify the line width of the font used to display and print characters for field names and data in Datasheet view.

Notes The DatasheetFontWeight property applies to all fields in Datasheet view and to form controls when the form is in Datasheet view.

These properties are only available in Visual Basic within a Microsoft Access database (.mdb)

Setting

In Visual Basic, the DatasheetFontWeight property setting uses the following Integer values.

Setting | Description
100 | Thin
200 | Extra Light
300 | Light
400 | (Default) Normal
500 | Medium
600 | Semi-bold
700 | Bold
800 | Extra Bold
900 | Heavy

The following setting information applies to both Access databases (.mdb) and Access projects (.adp):

  • You can also set Normal and Bold for this property in the Font dialog box, available by clicking Font on the Format menu in Datasheet view. In the Font dialog box's Font Style box, the only available font weight settings are Regular (identical to Normal) and Bold.

  • Another method of setting only the Regular and Bold settings is to click Bold [image] on the Formatting (Datasheet) toolbar.

  • You can set the default DatasheetFontWeight property by using the settings under Default Font on the Datasheet tab of the Options dialog box, available by clicking Options on the Tools menu.

Remarks

The following table contains the properties that don't exist in the DAO Properties collection of until you set them by using the Formatting (Datasheet) toolbar or you can add them in an Access database (.mdb) by using the CreateProperty method and append it to the DAO Properties collection.

DatasheetFontItalic* | DatasheetForeColor*
DatasheetFontHeight* | DatasheetBackColor
DatasheetFontName* | DatasheetGridlinesColor
DatasheetFontUnderline* | DatasheetGridlinesBehavior
DatasheetFontWeight* | DatasheetCellsEffect

Note When you add or set any property listed with an asterisk, Microsoft Access automatically adds all the properties listed with an asterisk to the Properties collection of the database.


 DatasheetGridlinesBehavior Property

DatasheetGridlinesBehavior Property

You can use the DatasheetGridlinesBehavior property to specify which gridlines will appear in Datasheet view.

Notes This DatasheetGridlinesBehavior property applies only to objects in Datasheet view.

This property is only available in Visual Basic within a Microsoft Access database (.mdb).

Setting

The DatasheetGridlinesBehavior property uses the following settings.

Setting | Visual Basic | Description
None | acGridlinesNone (0) | No gridlines are displayed.
Horizontal | acGridlinesHoriz (1) | Only horizontal gridlines are displayed.
Vertical | acGridlinesVert (2) | Only vertical gridlines are displayed.
Both | acGridlinesBoth (3) | (Default) Horizontal and vertical gridlines are displayed.

You can set this property by using the Gridlines button on the Formatting (Datasheet) toolbar, and in an Access database (.mdb), by using a macro, or by using Visual Basic.

The following setting information applies to both Access databases (.mdb) and Access projects (.adp):

You can also set this property by selecting the settings displayed under Gridlines Shown in the Cells Effects dialog box, available by clicking Cells on the Format menu.

You can set the default DatasheetGridlinesBehavior property by using the settings under Default Gridlines Showing on the Datasheet tab of the Options dialog box, available by clicking Options on the Tools menu.

Remarks

Changes to this property will be visible only if the DatasheetCellsEffect property is set to Flat.

The following table contains the properties that don't exist in the DAO Properties collection of until you set them by using the Formatting (Datasheet) toolbar or you can add them in an Access database (.mdb) by using the CreateProperty method and append it to the DAO Properties collection.

DatasheetFontItalic* | DatasheetForeColor*
DatasheetFontHeight* | DatasheetBackColor
DatasheetFontName* | DatasheetGridlinesColor
DatasheetFontUnderline* | DatasheetGridlinesBehavior
DatasheetFontWeight* | DatasheetCellsEffect

Note When you add or set any property listed with an asterisk, Microsoft Access automatically adds all the properties listed with an asterisk to the Properties collection in the database.


 DatasheetGridlinesColor Property

DatasheetGridlinesColor Property

You can use the DatasheetGridlinesColor property to specify the color of gridlines in a datasheet.

Notes The DatasheetGridlinesColor property applies only to objects in Datasheet view.

This property is only available in Visual Basic within a Microsoft Access database (.mdb).

Setting

The DatasheetGridlinesColor property setting is a Long Integer value. In Visual Basic, you can also use the RGB or QBColor functions to set this property.

You can set this property by using Line Color [image] on the Formatting (Datasheet) toolbar, in an Access database (.mdb), you can add the property by using a macro, or by using Visual Basic.

The following setting information applies to both Access databases (.mdb) and Access projects (.adp):

You can also set this property by clicking Cells on the Format menu and displaying the Cells Effects dialog box. You can then select an available color from the drop-down list under Gridline color.

You can set the default DatasheetGridlinesColor property by using the settings under Default Colors on the Datasheet tab of the Options dialog box, available by clicking Options on the Tools menu.

Remarks

This property setting affects the gridline color for the entire datasheet. It's not possible to set the gridline color of individual cells in Datasheet view.

The following table contains the properties that don't exist in the DAO Properties collection of until you set them by using the Formatting (Datasheet) toolbar or you can add them in an Access database (.mdb) by using the CreateProperty method and append it to the DAO Properties collection.

DatasheetFontItalic* | DatasheetForeColor*
DatasheetFontHeight* | DatasheetBackColor
DatasheetFontName* | DatasheetGridlinesColor
DatasheetFontUnderline* | DatasheetGridlinesBehavior
DatasheetFontWeight* | DatasheetCellsEffect

Note When you add or set any property listed with an asterisk, Microsoft Access automatically adds all the properties listed with an asterisk to the Properties collection in the database.


 DataType Property

DataType Property

You can use the DataType property to specify the type of data stored in a table field. Each field can store data consisting of only a single data type.

Setting

The DataType property uses the following settings.

Setting | Type of data | Size
Text | (Default) Text or combinations of text and numbers, as well as numbers that don't require calculations, such as phone numbers. | Up to 255 characters or the length set by the FieldSize property, whichever is less. Microsoft Access does not reserve space for unused portions of a text field.
Memo | Lengthy text or combinations of text and numbers. | Up to 65,535 characters. (If the Memo field is manipulated through DAO and only text and numbers [not binary data] will be stored in it, then the size of the Memo field is limited by the size of the database.)
Number | Numeric data used in mathematical calculations. For more information on how to set the specific Number type, see the FieldSize property topic. | 1, 2, 4, or 8 bytes (16 bytes if the FieldSize property is set to Replication ID).
Date/Time | Date and time values for the years 100 through 9999. | 8 bytes.
Currency | Currency values and numeric data used in mathematical calculations involving data with one to four decimal places. Accurate to 15 digits on the left side of the decimal separator and to 4 digits on the right side. | 8 bytes.
AutoNumber | A unique sequential (incremented by 1) number or random number assigned by Microsoft Access whenever a new record is added to a table. AutoNumber fields can't be updated. For more information, see the NewValues property topic. | 4 bytes (16 bytes if the FieldSize property is set to Replication ID).
Yes/No | Yes and No values and fields that contain only one of two values (Yes/No, True/False, or On/Off). | 1 bit.
OLE Object | An object (such as a Microsoft Excel spreadsheet, a Microsoft Word document, graphics, sounds, or other binary data) linked to or embedded in a Microsoft Access table. | Up to 1 gigabyte (limited by available disk space)
Hyperlink | Text or combinations of text and numbers stored as text and used as a hyperlink address. A hyperlink address can have up to three parts: text to display - the text that appears in a field or control. address - the path to a file (UNC path) or page (URL). subaddress - a location within the file or page. screentip - the text displayed as a tooltip. The easiest way to insert a hyperlink address in a field or control is to click Hyperlink on the Insert menu. For more information, see Type a hyperlink address in Form view or Datasheet view. | Each part of the three parts of a Hyperlink data type can contain up to 2048 characters.
Lookup Wizard | Creates a field that allows you to choose a value from another table or from a list of values by using a list box or combo box. Clicking this option starts the Lookup Wizard, which creates a Lookup field. After you complete the wizard, Microsoft Access sets the data type based on the values selected in the wizard. | The same size as the primary key field used to perform the lookup, typically 4 bytes.

You can set this property only in the upper portion of table Design view.

In Visual Basic, you can use the ADO Type property to set a field's data type before appending it to the Fields collection.

Remarks

Memo, Hyperlink, and OLE Object fields can't be indexed.

Tip Use the Currency data type for a field requiring many calculations involving data with one to four decimal places. Single and Double data type fields require floating-point calculation. The Currency data type uses a faster fixed-point calculation.

Caution Changing a field's data type after you enter data in a table causes a potentially lengthy process of data conversion when you save the table. If the data type in a field conflicts with a changed DataType property setting, you may lose some data.

Set the Format property to specify a predefined display format for Number, Date/Time, Currency, and Yes/No data types.

For more information about choosing a field data type, see Chapter 3, "Writing Solid Code," in the Microsoft Office 2000/Visual Basic Programmer's Guide. For information about how to obtain the Microsoft Office 2000/Visual Basic Programmer's Guide, click [image] .


 DateGrouping Property

DateGrouping Property

You can use the DateGrouping property to specify how you want to group dates in a report. For example, using the US Defaults setting will cause the week to begin on Sunday. If you set a Date/Time field's GroupOn property to Week, the report will group dates from Sunday to Saturday.

Note The DateGrouping property setting applies to the entire report, not to a particular group in the report.

Setting

The DateGrouping property uses the following settings.

Setting | Visual Basic | Description
US Defaults | 0 | Microsoft Access uses the U.S. settings for the first day of the week (Sunday) and the first week of the year (starts on January 1).
Use System Settings | 1 | (Default) Microsoft Access uses settings based on the locale selected in the Regional Settings Properties dialog box in Windows Control Panel.

You can set this property by using the report's property sheet, a macro, or Visual Basic.

You can set the DateGrouping property only in report Design view or in the Open event procedure of a report.

Remarks

The sort order used in a report isn't affected by the DateGrouping property setting.


DBEngine Property

You can use the DBEngine property in Visual Basic to access the current DBEngine object and its related properties.

Setting

The DBEngine property is set by Microsoft Access and is read-only in all views.

Remarks

The DBEngine property of the Application object represents the Microsoft Jet database engine. The DBEngine object is the top-level object in the Data Access Objects model and it contains and controls all other objects in the hierarchy of Data Access Objects.


 DecimalPlaces Property

DecimalPlaces Property

You can use the DecimalPlaces property to specify the number of decimal places Microsoft Access uses to display numbers.

Setting

The DecimalPlaces property uses the following settings.

Setting | Visual Basic | Description
Auto | 255 | (Default) Numbers appear as specified by the Format property setting.
0 to 15 | 0 to 15 | Digits to the right of the decimal separator appear with the specified number of decimal places; digits to the left of the decimal separator appear as specified by the Format property setting.

You can set this property for text boxes and combo boxes by using the control's property sheet and for table fields by using the table's property sheet. You can also set this property in the Field Properties property sheet in query Design view.

Tip You should set the DecimalPlaces property in the table's property sheet. A bound control you create on a form or report inherits the DecimalPlaces property set in the field in the underlying table or query, so you won't have to specify the property individually for every bound control you create.

For controls, you can also set this property by using a macro or Visual Basic.

Note The DecimalPlaces property setting has no effect if the Format property is blank or is set to General Number.

Remarks

The DecimalPlaces property affects only the number of decimal places that display, not how many decimal places are stored. To change the way a number is stored you must change the FieldSize property in table Design view.

You can use the DecimalPlaces property to display numbers differently from the Format property setting or from the way they are stored. For example, the Currency setting of the Format property displays only two decimal places ($5.35). To display Currency numbers with four decimal places (for example, $5.3523), set the DecimalPlaces property to 4.


 Default Property

Default Property

You can use the Default property to specify whether a command button is the default button on a form.

Setting

The Default property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The command button is the default button.
No | False (0) | (Default) The command button isn't the default button.

You can set this property by using the command button's property sheet, a macro, or Visual Basic.

Remarks

When the command button's Default property setting is Yes and the Form window is active, the user can choose the command button by pressing ENTER (if no other command button has the focus) as well as by clicking the command button.

Only one command button on a form can be the default button. When the Default property is set to Yes for one command button, it is automatically set to No for all other command buttons on the form.

Tip For a form that supports irreversible operations, such as deletions, it's a good idea to make the Cancel button the default command button. To do this, set both the Default property and the Cancel property to Yes.


 DefaultValue Property (Microsoft Access)

DefaultValue Property

You can use the DefaultValue property to specify a value that is automatically entered in a field when a new record is created. For example, in an Addresses table you can set the default value for the City field to New York. When users add a record to the table, they can either accept this value or enter the name of a different city.

Notes

  • The DefaultValue property doesn't apply to check box, option button, or toggle button controls when they are in an option group. It does apply to the option group itself.

  • The DefaultValue property applies to all table fields except those fields with the data type of AutoNumber or OLE Object.

Setting

The DefaultValue property specifies text or an expression that's automatically entered in a control or field when a new record is created. For example, if you set the DefaultValue property for a text box control to =Now(), the control displays the current date and time. The maximum length for a DefaultValue property setting is 255 characters.

For a control, you can set this property in the control's property sheet. For a field, you can set this property in table Design view (in the Field Properties section), in a macro, or by using Visual Basic.

In Visual Basic, use a string expression to set the value of this property. For example, the following sets the DefaultValue property for a text box control named PaymentMethod to "Cash":

Forms!frmInvoice!PaymentMethod.DefaultValue = """Cash"""

Note To set this property for a field by using Visual Basic, use the ADO DefaultValue or use the DAO DefaultValue property.

Remarks

The DefaultValue property is applied only when you add a new record. If you change the DefaultValue property, the change isn't automatically applied to existing records.

If you set the DefaultValue property for a form control that's bound to a field that also has a DefaultValue property setting defined in the table, the control setting overrides the table setting.

If you create a control by dragging a field from the field list, the field's DefaultValue property setting, as defined in the table, is applied to the control on the form although the control's DefaultValue property setting will remain blank.

One control can provide the default value for another control. For example, if you set the DefaultValue property for a control to the following expression, the control's default value is set to the DefaultValue property setting for the txtShipTo control.

=Forms!frmInvoice!txtShipTo

If the controls are on the same form, the control that's the source of the default value must appear earlier in the tab order than the control containing the expression.


 DefaultView, ViewsAllowed Properties

DefaultView, ViewsAllowed Properties

  • You can use the DefaultView property to specify the opening view of a form.

  • You can use the ViewsAllowed property to specify whether users can switch between Datasheet view and Form view by clicking the Form View or Datasheet View command on the View menu or by clicking the arrow next to the View button and clicking Form View or Datasheet View.

Setting

The DefaultView property uses the following settings.

Setting | Visual Basic | Description
Single Form | 0 | (Default) Displays one record at a time.
Continuous Forms | 1 | Displays multiple records (as many as will fit in the current window), each in its own copy of the form's detail section.
Datasheet | 2 | Displays the form fields arranged in rows and columns like a spreadsheet.

The ViewsAllowed property uses the following settings.

Setting | Visual Basic | Description
Both | 0 | (Default) Users can switch between Form view and Datasheet view.
Form | 1 | Users can't switch to Datasheet view from Form view.
Datasheet | 2 | Users can't switch to Form view from Datasheet view.

Design view is always available (unless permissions are set otherwise).

You can set these properties by using the form's property sheet, a macro, or Visual Basic.

Remarks

The views displayed in the View button list and on the View menu depend on the setting of the ViewsAllowed property. For example, if the ViewsAllowed property is set to Datasheet, Form View is disabled in the View button list and on the View menu.

The combination of these properties creates the following conditions.

DefaultView | ViewsAllowed | Description
Single, Continuous Forms, or Datasheet | Both | Users can switch between Form view and Datasheet view.
Single or Continuous Forms | Form | Users can't switch from Form view to Datasheet view.
Single or Continuous Forms | Datasheet | Users can switch from Form view to Datasheet view but not back again.
Datasheet | Form | Users can switch from Datasheet view to Form view but not back again.
Datasheet | Datasheet | Users can't switch from Datasheet view to Form view.


DefaultWebOptions Property (Microsoft Access)

DefaultWebOptions Property

You can use the DefaultWebOptions property to reference the DefaultWebOptions object and its related properties.

Setting

The DefaultWebOptions property is available by using Visual Basic.

Remarks

DefaultWebOptions property to identify or set the Application object's DefaultWebOptions object properties. These properties can be used to set or change the default web page settings available in the Web Options dialog box. To display this dialog box, click Options on the Tools menu. Click the General tab and click the Web Pages button.


 Description Property (Microsoft Access)

Description Property

You can use the Description property to provide information about objects contained in the Database window as well as about individual table or query fields.

Setting

For a database object, click Properties on the View menu and enter the description text in the Description box. For tables or queries, you can also enter the description in the table's or query's property sheet. An object's description appears next to the object's name in the Database window when you click Details on the View menu.

For individual table or query fields, enter the field description in the upper portion of table Design view or in the Field Properties property sheet in the Query window. The maximum length is 255 characters.

In Visual Basic, to set this property for the first time in a Microsoft Access project (.adp), you must create an application-defined property by using the Add method. In a Microsoft Access database (.mdb), you must use the DAO CreateProperty method.

Remarks

An object's description is displayed in the Description column in the Details view of the Database window.

If you create controls by dragging a field from the field list, Microsoft Access copies the field's Description property to the control's StatusBarText property.

Note For a linked table, Microsoft Access displays the connection information in the Description property.


 DestConnectStr, DestinationDB, DestinationTable Properties

DestConnectStr, DestinationDB, DestinationTable Properties

  • The DestinationDB property specifies the type of application used to create an external database.

  • The DestConnectStr property specifies the connection string for the name of the database that will contain the new table (for make-table queries) or the name of the database that contains the table to which data will be appended (for append queries).

  • The DestinationTable property specifies the name of the table that will hold the results of the make-table or append query.

Note The DestConnectStr, DestinationDB, and DestinationTable properties apply only to make-table and append queries.

Setting

You set the DestConnectStr, DestinationDB, and DestinationTable properties by using a string expression.

The default setting for DestinationDB property is "(current)", which refers to the currently active database.

You can set these properties in the query's property sheet, or in SQL view of the Query window.

In the SQL statement for an append query, the table name in the INSERT INTO statement corresponds to the DestinationTable property setting. The IN clause corresponds to the DestinationDB and DestConnectStr property settings.

In the SQL statement for a make-table query, the table name in the INTO clause corresponds to the DestinationTable property setting. The IN clause corresponds to the DestinationDB and DestConnectStr property settings.

Note Microsoft Access sets these properties automatically based on the information you enter in the query's property sheet or in SQL view of the Query window.

Remarks

When you click Make Table or Append on the Query menu, Microsoft Access prompts you for the information needed to set these properties. Microsoft Access uses the value you enter in the Table Name box to set the DestinationTable property, and it uses the information you type in the File Name box to set the DestConnectStr and DestinationDB properties.

To use the query's property sheet to specify a table in a Microsoft Access database, enter the name of the table in the DestinationTable property box (for example, Clients). In the DestinationDB property box, enter the path and database name without the file name extension (for example, C:\Accounts\Customers). Microsoft Access adds the extension automatically. You don't need to set the DestConnectStr property.

To specify a table in a database created by a different product, such as Paradox, enter the name of the table in the DestinationTable property box. In the DestinationDB property box, enter the path (for example, C:\Pdoxdata). In the DestConnectStr property box, enter the specifier for the database type (for example, Paradox 3.x). For a list of specifiers, see the ADO Connect property.

To specify an Open Database Connectivity (ODBC) database, enter the name of the database in the DestConnectStr property box along with additional information, such as a logon identification (ID) and password, as required by the product. For example, you might use the following setting for a Microsoft SQL Server database:

ODBC;DSN=salessrv;UID=jace;PWD=password;DATABASE=sales;

For more information about ODBC drivers, such as Microsoft SQL Server, see the Help provided with the driver.

You don't need to set the DestinationDB property for ODBC databases.

For more information about accessing data in ODBC databases, see Chapter 15, "Retrieving and Analyzing Data," in the Microsoft Office 2000/Visual Basic Programer's Guide. For information about how to obtain the Microsoft Office 2000/Visual Basic Programer's Guide, click [image] .


Dir Property (Data Access Page)

Language-specific information

You can use the Dir property to specify or determine the view orientation for information within a control for language-specific displays.

Setting

The Dir property uses the following settings.

Setting | Description
ltr | Sets the control's text direction to left to right.
rtl | Sets the control's text direction to right to left.

Remarks

The Dir property directly influences how information in controls is displayed.


 Dirty Property

Dirty Property

You can use the Dirty property to determine whether the current record has been modified since it was last saved. For example, you may want to ask the user whether changes to a record were intended and, if not, allow the user to move to the next record without saving the changes.

Setting

The Dirty property uses the following settings.

Setting | Visual Basic | Description
True | True (-1) | The current record has been changed.
False | False (0) | The current record has not been changed.

This property is available in Form view and Datasheet view.

This property set or read using a macro or Visual Basic.

Remarks

When a record is saved, Microsoft Access sets the Dirty property to False. When a user makes changes to a record, the property is set to True.


 DisplayControl Property

DisplayControl Property

You can use the DisplayControl property in table Design view to specify the default control you want to use for displaying a field.

Setting

You can set the DisplayControl property in the table's property sheet in table Design view by clicking the Lookup tab in the Field Properties section.

This property contains a drop-down list of the available controls for the selected field. For fields with a Text or Number data type, this property can be set to Text Box, List Box, or Combo Box. For fields with a Yes/No data type, this property can be set to Check Box, Text Box, or Combo Box.

Remarks

When you select a control for this property, any additional properties needed to configure the control are also displayed on the Lookup tab.

Tip You can let Microsoft Access set the DisplayControl property and any related properties for you when you select the Lookup Wizard as the data type for a field.

Setting this property and any related control type properties will affect the field display in both Datasheet view and Form view. The field is displayed by using the control and control property settings set in table Design view. If a field had its DisplayControl property set in table Design view and you drag it from the field list in form Design view, Microsoft Access copies the appropriate properties to the control's property sheet.


 DisplayType Property

DisplayType Property

You can use the DisplayType property to specify whether Microsoft Access displays an OLE object's content or an icon. For example, if the OLE object is a Microsoft Word document and you set this property to Content, the control displays the Word document; if you set this property to Icon, the control displays the Microsoft Word icon.

Setting

The DisplayType property uses the following settings.

Setting | Visual Basic | Description
Content | acOLEDisplayContent (0) | (Default) When the control contains an OLE object, the control displays the object's data, such as a document or spreadsheet.
Icon | acOLEDisplayIcon (1) | When the control contains an OLE object, the control displays the object's icon.

You can set the DisplayType property in a property sheet, in a macro, or by using Visual Basic. You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

For a bound object frame, the DisplayType property can be set only in Design view but can be read in all views. For an unbound object frame or chart, the property can be set in the Insert Object dialog box when the object is created (the default setting is Content or, if you select the Display As Icon check box, the setting is Icon).

Remarks

The DisplayType property determines the default setting of the Display As Icon check box in the Paste Special dialog box, available by clicking Paste Special on the Edit menu, and the Insert Object dialog box, displayed when inserting an unbound object frame. When you display these dialog boxes in Form view, Datasheet view, or Design view, the Display As Icon check box is automatically selected if the DisplayType property is set to Icon. For example, you will see these boxes selected when using Visual Basic to set the control's Action property to acOLEInsertObjDlg or acOLEPasteSpecialDlg.

The DisplayType property setting has no effect on the state of the Display As Icon check box in the Object dialog box when you insert an object into an unbound object frame. When you paste an object from the Clipboard, the Display As Icon check box reflects the state of the object on the Clipboard.

Changing the DisplayType property of a bound object frame doesn't affect the display of existing objects in the control. However, it will affect new objects that you add to the control by using the Object command on the Insert menu.


 DisplayWhen Property

DisplayWhen Property

You can use the DisplayWhen property to specify which of a form's sections or controls you want displayed on screen and in print.

Note The DisplayWhen property applies only to the following form sections: detail, form header, and form footer. It also applies to all controls (except page breaks) on a form.

Setting

The DisplayWhen property uses the following settings.

Setting | Visual Basic | Description
Always | 0 | (Default) The object appears in Form view and when printed.
Print Only | 1 | The object is hidden in Form view but appears when printed.
Screen Only | 2 | The object appears in Form view but not when printed.

You can set this property by using the object's property sheet, a macro, or Visual Basic.

For controls, you can set the default for this property by using the default control style or the DefaultControl method in Visual Basic.

Remarks

In many cases, certain controls are useful only in Form view. To prevent Microsoft Access from printing these controls, you can set their DisplayWhen property to Screen Only. For example, you might have a command button or instructions on a form that you don't want printed. Or you might have form header and form footer sections that you don't want displayed on screen but that you do want printed. In this case, you should set the DisplayWhen property to Print Only.

Tip For reports, use the Format and Retreat events to specify an event procedure or macro that sets the Visible property of controls you don't want printed. You can also cancel the Format or Print event for a report section to prevent the section from being printed.


 DividingLines Property

DividingLines Property

You can use the DividingLines property to specify whether dividing lines will separate sections on a form or records displayed on a continuous form.

Setting

The DividingLines property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) Dividing lines will separate sections and records on continuous forms.
No | False (0) | There are no dividing lines.

You can set the DividingLines property by using the form's property sheet, a macro, or Visual Basic.

This property can be set in any view.


DoCmd Property

You can use the DoCmd property to access the DoCmd object and its related methods.

Setting

This property is available only by using Visual Basic.


Document Property

You can use the Document property to access the Microsoft Internet Explorer 5.0 Dynamic HTML Document object for HTML pages.

Setting

This property is available only by using Visual Basic.

Remarks

For more information about the DHTML and the Document object model, see the following topics:

DHTML Tutorials

Document Object Model

Document Object References


 DownloadComponents Property

DownloadComponents Property

You can use the DownloadComponents property to specify or determine if the Microsoft Office tools are automatically downloaded with the Web page.

Setting

The DownloadComponents property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | Use the the necessary Office controls are downloaded when you view the saved document in a Web browser.
No | False (0) | (Default) Do not download the controls.

The DownloadComponents property is available only by using Visual Basic.

Remarks

You can set the LocationOfComponents property to a central URL where the controls can be downloaded by authorized users viewing your saved data access page. The path must be valid and must point to a location that contains the necessary components, and the user must have a valid Microsoft Office 2000 license.

Office Web components add interactivity to data access pages that you save as Web pages. If you view a Web page in a browser on a computer that does not have the components installed, the interactive portions of the page will be static.


 DrawMode Property

DrawMode Property

You can use the DrawMode property to specify how the pen (the color used in drawing) interacts with existing background colors on a report when the Line, Circle, or Pset method is used to draw on a report when printing.

Setting

The DrawMode property uses the following settings.

Setting | Description
1 | Black pen color.
2 | The inverse of setting 15 (NotMergePen).
3 | The combination of the colors common to the background color and the inverse of the pen (MaskNotPen).
4 | The inverse of setting 13 (NotCopyPen).
5 | The combination of the colors common to both the pen and the inverse of the display (MaskPenNot).
6 | The inverse of the display color (Invert).
7 | The combination of the colors in the pen and in the display color, but not in both (XorPen).
8 | The inverse of setting 9 (NotMaskPen).
9 | The combination of the colors common to both the pen and the display (MaskPen).
10 | The inverse of setting 7 (NotXorPen).
11 | No operation - the output remains unchanged. In effect, this setting turns drawing off (Nop).
12 | The combination of the display color and the inverse of the pen color (MergeNotPen).
13 | (Default) The color specified by the ForeColor property (CopyPen).
14 | The combination of the pen color and the inverse of the display color (MergePenNot).
15 | The combination of the pen color and the display color (MergePen).
16 | White pen color.

The DrawMode property setting is an Integer value.

You can set the DrawMode property by using a macro or a Visual Basic event procedure specified by a section's OnPrint property setting.

Remarks

Use this property to produce visual effects when drawing on a report. Microsoft Access compares each pixel in the draw pattern to the corresponding pixel in the existing background to determine how the drawing appears on the report. For example, setting 7 uses the Xor operator to combine a draw-pattern pixel with a background pixel.


 DrawStyle Property

DrawStyle Property

You can use the DrawStyle property to specify the line style when using the Line and Circle methods to print lines on reports.

Setting

The DrawStyle property uses the following settings.

Setting | Description
0 | (Default) Solid line, transparent interior
1 | Dash, transparent interior
2 | Dot, transparent interior
3 | Dash-dot, transparent interior
4 | Dash-dot-dot, transparent interior
5 | Invisible line, transparent interior
6 | Invisible line, solid interior

The DrawStyle property setting has an Integer value.

You can set this property by using a macro or a Visual Basic event procedure specified by a section's OnPrint property setting.

Remarks

The DrawStyle property produces the results described in the preceding table if the DrawWidth property is set to 1. If the DrawWidth property setting is greater than 3, the DrawStyle property settings 1 through 4 produce a solid line (the DrawStyle property value isn't changed).


 DrawWidth Property

DrawWidth Property

You can use the DrawWidth property to specify the line width for the Line, Circle, and Pset methods to print lines on reports.

Setting

You can set the DrawWidth property to an Integer value of 1 through 32,767. This value represents the width of the line in pixels. The default is 1, or 1 pixel wide.

You can set this property by using a macro or a Visual Basic event procedure specified by a section's OnPrint property setting.

Remarks

Increase the value of this property to increase the width of the line. If the DrawWidth property setting is greater than 3, DrawStyle property settings 1 through 4 produce a solid line (the DrawStyle property setting isn't changed). Setting the DrawWidth property to 1 enables the DrawStyle property to produce the results shown in the setting table of the DrawStyle property.


 EmailSubject Property

EmailSubject Property

You can use the EmailSubject property to specify or determine return the email subject line of a hyperlink to an object, document, Web page or other destination for a command button, image control, or label control.

Setting

The EmailSubject property is a string expression representing the subject line within a file (UNC path) or Web page (URL).

You can set the EmailSubject property by using a macro or Visual Basic.

You can also use the Insert Hyperlink dialog box to set this property by clicking the Build button [image] to the right of the property box in the property sheet.

Note When you create a hyperlink by using the Insert Hyperlink dialog box, Microsoft Access automatically sets the EmailSubject property to the location specified in the Subject box of the E-Mail Address tab.

Remarks

When you move the cursor over a command button, image control, or label control whose HyperlinkAddress property is set, the cursor changes to an upward-pointing hand. Clicking the control displays the object or Web page specified by the link.

To open objects in the current database, leave the HyperlinkAddress property blank and specify the object type and object name you want to open in the HyperlinkSubAddress property by using the syntax "objecttype objectname". If you want to open an object contained in another Microsoft Access database, enter the database path and file name in the HyperlinkAddress property and specify the database object to open by using the HyperlinkSubAddress property.

The HyperlinkAddress property can contain an absolute or a relative path to a target document. An absolute path is a fully qualified URL or UNC path to a document. A relative path is a path related to the base path specified in the Hyperlink Base setting in the DatabaseName Properties dialog box (available by clicking Database Properties on the File menu) or to the current database path. If Microsoft Access can't resolve the HyperlinkAddress property setting to a valid URL or UNC path, it will assume you've specified a path relative to the base path contained in the Hyperlink Base setting or the current database path.

Note When you follow a hyperlink to another Microsoft Access database object, the database Startup properties are applied. For example, if the destination database has a Display form set, that form is displayed when the database opens.


 Enabled, Locked Properties (Microsoft Access)

Enabled, Locked Properties

  • The Enabled property specifies whether a control can have the focus in Form view.

  • The Locked property specifies whether you can edit data in a control in Form view.

Setting

The Enabled property uses the following settings.

Setting | Visual Basic | Description
Yes | (True (-1) | Default for all controls except unbound object frames) The control can have the focus. If the control is an unbound object frame, double-clicking it executes the control's primary verb. For example, an unbound object frame could play an embedded sound object.
No | False (0) | (Default for unbound object frames) The control can't have the focus and appears dimmed. If the control is an option group, neither the option group nor the controls inside the option group can have the focus.

The Locked property uses the following settings.

Setting | Visual Basic | Description
Yes | True | (Default for unbound object frames) The control functions normally but doesn't allow editing, adding, or deleting data.
No | False | (Default for all controls except unbound object frames) The control functions normally and allows editing, adding, and deleting data.

You can set these properties by using a form's property sheet, a macro, or Visual Basic.

Remarks

Use the Enabled property to enable and disable controls. For example, in Form view you can disable a command button until you have changed data in a text box control. You can then use the control's AfterUpdate event to call an event procedure or macro to enable the command button.

Use the Locked property to protect data in a field by making it read-only. For example, you might want a control to only display information without allowing editing, or you might want to lock a control until a specific condition is met.

You can combine the Enabled and Locked property settings to achieve the following effects.

Enabled | Locked | Effect
Yes | Yes | The control can have the focus. Data is displayed normally and can be copied but not edited.
Yes | No | The control can have the focus. Data is displayed normally and can be copied and edited.
No | Yes | The control can't have the focus. Data is displayed normally but can't be copied or edited.
No | No | The control can't have the focus. Control and data are disabled (dimmed).

The TabStop property can be combined with the Enabled property to prevent the use of the TAB key to select a command button, while still allowing use of the button by clicking it. Setting the TabStop property to No means that the command button won't be in the tab order. However, if the Enabled property is set to Yes, then you can still click the command button.

To allow edits to an embedded or linked object in an unbound object frame, you must set the Enabled property for the unbound object frame to Yes and the Locked property to No.


 Encoding Property

Encoding Property

You can use the Encoding property to specify or determine the data access page encoding (code page or character set) to be used by the Web browser when you view the saved data access page.

Setting

The Encoding property is a Long value representing one the MsoEncoding constants. For a list of valid MsoEncoding constants, see the Object Browser in the Microsoft Visual Basic Editor.


 EnterKeyBehavior Property

EnterKeyBehavior Property

You can use the EnterKeyBehavior property to specify what happens when you press ENTER in a text box control in Form view or Datasheet view. For example, you can use this property if you have a control bound to a Memo field in a table to make entering multiple-line text easier. If you don't set this property to New Line In Field, you must press CTRL+ENTER to enter a new line in the text box.

Setting

The EnterKeyBehavior property uses the following settings.

Setting | Visual Basic | Description
Default | False (0) | (Default) Microsoft Access uses the result specified under Move After Enter on the Keyboard tab of the Options dialog box, available by clicking Options on the Tools menu. For details, see the Remarks section.
New Line In Field | True (-1) | Pressing ENTER in the control creates a new line in the control so you can enter additional text.

You can set this property by using a form's property sheet, a macro, or Visual Basic.

You can set the default for this property by using the control's default control style or the DefaultControl method in Visual Basic.

Remarks

The following options are available under Move After Enter on the Keyboard tab of the Options dialog box.

Option | Description
Don't Move | Pressing ENTER has no effect.
Next Field | Pressing ENTER moves the insertion point to the next control or field in the form or datasheet in the tab order.
Next Record | Pressing ENTER moves the insertion point to the first control or field in the next record on the form or datasheet.


 Error Property

Error Property

You can use the Error property to determine if an error occurred while loading or printing a snapshot.

Setting

The Error property setting is a Long value representing the error that occurred while trying to load a snapshot file.

This property is available only by using Visual Basic and is read-only.

Remarks

When you finish loading a snapshot, you can check this property to determine if any errors occurred. If the Error property is 0, then no error occurred.

The following table contains a description of the errors that may occur while opening a snapshot file.

Error | Description
2500 | Invalid value.
2501 | Invalid page.
2502 | Missing or invalid snapshot file.
2503 | Property is read-only.
2504 | Operation canceled by user.
2505 | You need a newer version of the Snapshot Viewer control to view this snapshot file.
2506 | An error occurred while printing.
2507 | An error occurred while opening a snapshot file.
2508 | Out of memory.
2509 | An error occurred writing to a temporary file while opening a snapshot file.
2510 | You have no printer installed, or no printer has been selected as the default.


 Event Properties

Event Properties

Event properties cause a macro or the associated Visual Basic event procedure to run when a particular event occurs. For example, if you enter the name of a macro in a command button's OnClick property, that macro runs when the command button is clicked. For a complete list of event properties, see Events and Event Properties Reference.

Setting

To run a macro, enter the name of the macro. You can choose an existing macro in the list. If the macro is in a macro group, it will be listed under the macro group name, as macrogroupname.macroname.

To run the event procedure associated with the event, select [Event Procedure] in the list.

Note Although using an event procedure is the recommended method for running Visual Basic code in response to an event, you can also run a user-defined function when an event occurs. To run a user-defined function, place an equal sign (=) before the function name and parentheses after it, as in =functionname( ).

You can set event properties in the property sheet for an object, in a macro, or by using Visual Basic. Note that you can't set any event properties while you're formatting or printing a form or report.

Tip You can use builders to help you set an event property. To use them, click the Build button [image] to the right of the property box, or right-click the property box and then click Build on the shortcut menu. In the Choose Builder dialog box, select:

  • The Macro Builder to create and specify a macro for this event property. You can also use the Macro Builder to edit a macro already specified by the property.

  • The Code Builder to create and specify an event procedure for this event property. You can also use the Code Builder to edit an event procedure already specified by the property.

  • In a Microsoft Access database (.mdb), the Expression Builder to choose and specify a user-defined function for this event property.

In Visual Basic, set the property to a string expression.

To run this Use this syntax Example
Macro "macroname"
Button1.OnClick = "MyMacro"
Event procedure "[Event Procedure]"
Button1.OnClick = "[Event Procedure]"
User-defined function "=functionname( )"
Button1.OnClick = "=MyFunction()"


 EventProcPrefix Property

EventProcPrefix Property

You can use the EventProcPrefix property to get the prefix portion of an event procedure name. For example, if you have a command button with an event procedure named Details_Click, the EventProcPrefix property returns the string "Details".

Setting

The EventProcPrefix property setting is a string expression.

This property is available only by using a macro or Visual Basic and is read-only in all views.

Remarks

Microsoft Access adds the prefix portion of an event procedure name to the event name with an underscore character (_).


 Expression1, Expression2 Properties (FormatCondition Object)

Expression1, Expression2 Properties (FormatCondition Object)

You can use the Expression1 and Expression2 properties to return the values of a conditional format within a FormatCondition object.

Setting

  • The Expression1 property returns a Variant value or expression associated with the first part of the conditional format.

  • The Expression2 property returns a Variant value or expression associated with the second part of the conditional format when the Operator property of the FormatCondition object is acBetween or acNotBetween, otherwise, the Expression2 property is NULL.

The Expression1 and Expression2 properties are available only by using Visual Basicand are read-only.

Conditional formatting can also be set on a combo box or text box from the Conditional Formatting dialog box. The Conditional Formatting dialog box is available by clicking Conditional Formatting on the Format menu when a form is in Design view.


 FailOnError Property

FailOnError Property

You can use the FailOnError property to specify whether an update or delete query that is run against an ODBC data source will terminate if an error occurs. The FailOnError property lets you optimize bulk update queries run against ODBC data sources so that they are executed on the server if the partial-failure behavior of the Microsoft Jet database engine isn't desired.

Note The FailOnError property applies only to update and delete queries.

Setting

The FailOnError property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | Errors terminate the query.
No | False (0) | (Default) Errors don't terminate the query.

You can set the FailOnError property by using the query's property sheet or Visual Basic. To set this property in a Microsoft Access database (.mdb) with Visual Basic, you must first add it to a QueryDef object's Properties collection by using the CreateProperty method.

Remarks

When the FailOnError property is set to Yes and the query executes against a single table on an ODBC database and doesn't contain expressions that can't be evaluated on the server, the query will be sent to the server to be executed. When the FailOnError property is set to Yes, if an error occurs during a delete or update, the query stops executing and the table is rolled back to its original state. In all other cases, the FailOnError property will be treated as if it were set to No. When the FailOnError property is set to No and an error occurs, you can accept the query results or roll back any changes.

When the FailOnError property is set to No and the query executes against local data, update or delete queries operate just as they did in previous versions of Microsoft Access; when the query affects multiple rows, some rows may be updated and others may fail due to errors. If an error occurs, you are notified of the reason for the error and the number of records affected, and you can accept the query results or roll back any changes.

Setting this property to Yes is the same as using the dbFailOnError intrinsic constant of the DAO Execute method.


 FastLaserPrinting Property

FastLaserPrinting Property

You can use the FastLaserPrinting property to specify whether lines and rectangles are replaced by text character lines - similar to the underscore (_) and vertical bar (|) characters - when you print a form or report using most laser printers. Replacing lines and rectangles with text character lines can make printing much faster.

Setting

The FastLaserPrinting property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) Lines and rectangles are replaced by text character lines.
No | False (0) | Lines and rectangles aren't replaced by text character lines.

You can set this property by using a form's or report's property sheet, a macro, or Visual Basic.

Remarks

The FastLaserPrinting property affects any line or rectangle on a form or report, including controls that have these shapes (for example, a border around a text box).

Note This property has no effect on PostScript printers, dot-matrix printers, or earlier versions of laser printers that don't support text character lines.

When this property is set to Yes and the form or report being printed has overlapping rectangles or lines, the rectangles or lines on top don't erase the rectangles or lines they overlap. If you require overlapping graphics on your report, set the FastLaserPrinting property to No.


FeatureInstall Property

You can use the FeatureInstall property to specify or determine how Microsoft Access handles calls to methods and properties that require features not yet installed.

Setting

The FeatureInstall property uses one of the following msoFeatureInstall constants.

Constant | Value | Description
msoFeatureInstallNone | 0 | (Default) An Automation error occurs at run time when uninstalled features are called.
msoFeatureInstallOnDemand | 1 | The user is prompted to install new features.
msoFeatureInstallOnDemandWithUI | 2 | The feature is installed automatically and a progress meter is displayed during installation. The user isn't prompted to install new features.

Remarks

When VBA code references an object that is not installed the Microsoft Installer technology will attempt to install the required feature. You use the FeatureInstall property to control what happens when an uninstalled object is referenced. When this property is set to the default, any attempt to use an uninstalled object causes the Installer technology to try to install the requested feature. In some circumstances this may take some time, and the user may believe that the machine has stopped responding to additional commands.

You can set the FeatureInstall property to msoFeatureInstallOnDemandWithUI so users can see that something is happening as the feature is being installed. You can set the FeatureInstall property to msoFeatureInstallNone if you want to trap the error that is returned and display your own dialog box to the user or take some other custom action.

If you have the UserControl property set to False, users will not be prompted to install new features even if the FeatureInstall property is set to msoFeatureInstallOnDemand. If the UserControl property is set to True, an installation progress meter will appear if the FeatureInstall property is set to msoFeatureInstallOnDemand.


FELineBreak Property

Language-specific information

You can use the FELineBreak property to control line breaks at the beginning and end of lines in the form control (text box).

Settings

The FELineBreak property uses the following settings.

Setting | Description | Visual Basic
Yes | Controls line breaks. | True (-1)
No | Does control line breaks (default). | False (0)

You can set this property by using the property sheet, a macro, or Visual Basic.

Remarks

Setting the FELineBreak property to Yes moves any punctuation marks and closing parentheses at the beginning of a line to the end of the previous line, and opening parentheses at the end of a line to the beginning of the next line.


 FieldName Property

FieldName Property

You can use the FieldName property to specify the name of a field within a table. For example, you can specify "Last Name" for a field that stores employees' last names within the Employees table.

Setting

Enter a field name, following Microsoft Access object naming rules. The name can't duplicate any other field name in the table.

Note Avoid specifying a name for a field that could cause a conflict with built-in Microsoft Access function or property names, such as the Name property.

You can set this property in the upper portion of table Design view or by using Visual Basic.

In Visual Basic, use the ADO Name property to read and set a table's field name.

Remarks

Microsoft Access identifies a field by its field name. Once you have specified a field name in table Design view, you can use that name in expressions, Visual Basic procedures, and SQL statements.


 FieldSize Property (Microsoft Access)

FieldSize Property

You can use the FieldSize property to set the maximum size for data stored in a field set to the Text, Number, or AutoNumber data type.

Setting

If the DataType property is set to Text, enter a number from 0 to 255. The default setting is 50.

If the DataType property is set to AutoNumber, the FieldSize property can be set to Long Integer or Replication ID.

If the DataType property is set to Number, the FieldSize property settings and their values are related in the following way.

Setting | Description | Decimal precision | Storage size
Byte | Stores numbers from 0 to 255 (no fractions). | None | 1 byte
Decimal | Stores numbers from -10^38 -1 through 10^38 -1 (.adp) Stores numbers from-10^28 -1 through 10^28 -1 (.mdb) | 28 | 12bytes
Integer | Stores numbers from -32,768 to 32,767 (no fractions). | None | 2 bytes
Long Integer | (Default) Stores numbers from -2,147,483,648 to 2,147,483,647 (no fractions). | None | 4 bytes
Single | Stores numbers from -3.402823E38 to -1.401298E-45 for negative values and from 1.401298E-45 to 3.402823E38 for positive values. | 7 | 4 bytes
Double | Stores numbers from -1.79769313486231E308 to -4.94065645841247E-324 for negative values and from 1.79769313486231E308 to 4.94065645841247E-324 for positive values. | 15 | 8 bytes
Replication ID | Globally unique identifier (GUID) | N/A | 16 bytes

You can set this property only from the table's property sheet.

To set the size of a field from Visual Basic, use the DAO Size property to read and set the maximum size of Text fields (for data types other than Text, the ADO Type property setting automatically determines the Size property setting).

Note You can specify the default field sizes for Text and Number fields by changing the values under Default Field Sizes on the Tables/Queries tab, available by clicking Options on the Tools menu.

Remarks

You should use the smallest possible FieldSize property setting because smaller data sizes can be processed faster and require less memory.

Caution If you convert a large FieldSize setting to a smaller one in a field that already contains data, you might lose data. For example, if you change the FieldSize setting for a Text data type field from 255 to 50, data beyond the new 50-character setting will be discarded.

If the data in a Number data type field doesn't fit in a new FieldSize setting, fractional numbers may be rounded or you might get a Null value. For example, if you change from a Single to an Integer field size, fractional values will be rounded to the nearest whole number and values greater than 32,767 or less than -32,768 will result in null fields.

You can't undo changes to data that result from a change to the FieldSize property after saving those changes in table Design view.

Tip You can use the Currency data type if you plan to perform many calculations on a field that contains data with one to four decimal places. Single and Double data type fields require floating-point calculation. Currency data type fields use a faster fixed-point calculation.


 FileSearch Property (Microsoft Access)

FileSearch Property

You can use the FileSearch property to return a reference to the current FileSearch object and its related properties and methods.

Setting

[application.]FileSearch[.method or property]

The FileSearch property uses the following settings.

Setting | Description
application | The Application object.
FileSearch | Required. When used without specifying a method or property, returns the FileSearch object.
method or property | A method or property of the FileSearch object.

The FileSearch property is available only by using Visual Basic.

Remarks

Once you establish a reference to the FileSearch object, you can access all the properties and methods of the object. You can set a reference to the FileSearch object by clicking References on the Tools menu while in module Design view. Then set a reference to the Microsoft Office 9.0 Object Library in the References dialog box by selecting the appropriate check box. Microsoft Access can set this reference for you if you use a Microsoft Office 9.0 Object Library constant to set a FileSearch object's property or as an argument to a FileSearch object's method.


 FillColor Property

FillColor Property

You use the FillColor property to specify the color that fills in boxes and circles drawn on reports with the Line and Circle methods. You can also use this property with Visual Basic to create special visual effects on custom reports when you print using a color printer or preview the reports on a color monitor.

Setting

The FillColor property contains a numeric expression that specifies the fill color for all boxes and circles.

You can set this property only by using a macro or a Visual Basic event procedure specified by a section's OnPrint event property.

You can use the RGB or QBColor functions to set this property. The FillColor property setting has a data type of Long.


 FillStyle Property

FillStyle Property

You can use the FillStyle property to specify whether a circle or line drawn by the Circle or Line method on a report is transparent, opaque, or filled with a pattern.

Setting

The FillStyle property uses the following settings.

Setting | Description
0 | Opaque
1 | (Default) Transparent
2 | Horizontal Line
3 | Vertical Line
4 | Upward Diagonal
5 | Downward Diagonal
6 | Cross
7 | Diagonal Cross

You can set the FillStyle property by using a macro or a Visual Basic event procedure specified by a section's OnPrint property setting.

Remarks

When the FillStyle property is set to 0, a circle or line has the color set by the FillColor property. When the FillStyle property is set to 1, the interior of the circle or line is transparent and has the color of the report behind it.

To use the FillStyle property, the SpecialEffect property must be set to Normal.


 Filter Property (Microsoft Access)

Filter Property

You can use the Filter property to specify a subset of records to be displayed when a filter is applied to a form, report query, or table.

Note If you want to specify a server filter within a Microsoft Access project (.adp) for data located on a server, use the ServerFilter property.

Setting

The Filter property is a string expression consisting of a WHERE clause without the WHERE keyword. For example, the following Visual Basic code defines and applies a filter to show only customers from the USA:

Me.Filter = "Country = 'USA'"
Me.FilterOn = True

You can set this property by using a table's or form's property sheet, a macro, or Visual Basic.

You can also set this property in Form view or Datasheet view by pointing to Filter on the Records menu and clicking one of the commands on the submenu.

Note Setting the Filter property has no effect on the ADO Filter property.

Remarks

You can use the Filter property to save a filter and apply it at a later time. Filters are saved with the objects in which they are created. They are automatically loaded when the object is opened, but they aren't automatically applied.

When a new object is created, it inherits the RecordSource, Filter, OrderBy, and OrderByOn properties of the table or query it was created from.

To apply a saved filter to a form, query, or table, you can click Apply Filter Filter object on the toolbar, click Apply Filter/Sort on the Records menu, or use a macro or Visual Basic to set the FilterOn property to True (-1). For reports, you can apply a filter by setting the FilterOn property to Yes in the report's property sheet.

The Apply Filter button indicates the state of the Filter and FilterOn properties. The button remains disabled until there is a filter to apply. If an existing filter is currently applied, the Apply Filter button appears pressed in.

To apply a filter automatically when a form is opened, specify in the OnOpen event property setting of the form either a macro that uses the ApplyFilter action or an event procedure that uses the ApplyFilter method of the DoCmd object.

You can remove a filter by clicking the pressed-in Apply Filter button, clicking Remove Filter/Sort on the Records menu, or using Visual Basic to set the FilterOn property to False (0).

Note You can save a filter as a query by clicking Save As Query on the File menu while in the Filter By Form window or the Advanced Filter/Sort window.

When the Filter property is set in form Design view, Microsoft Access does not attempt to validate the SQL expression. If the SQL expression is invalid, an error occurs when the filter is applied.


 FilterLookup Property

FilterLookup Property

You can use the FilterLookup property to specify whether values appear in a bound text box control when using the Filter By Form or Server Filter By Form window.

Setting

The FilterLookup property uses the following settings.

Setting | Visual Basic | Description
Never | 0 | The field values aren't displayed. You can specify whether the filtered records can contain Null values.
Database Default | 1 | (Default) The field values are displayed according to the settings under Filter By Form Defaults on the Edit/Find tab of the Option dialog box, available by clicking Options on the Tools menu.
Always | 2 | The field values are always displayed.

You can set the FilterLookup property by using the text box's property sheet, a macro, or Visual Basic.

You can set the default for this property by using the text box control's default control style or the DefaultControl method in Visual Basic.

Remarks

If you want to limit the types of fields to display, clear the appropriate check box under Filter By Form Defaults on the Edit/Find tab of the Option dialog box, available by clicking Options on the Tools menu. If field lists aren't displayed, you should increase the number in the Don't Display Lists Where More than This Number of Records Read box so the setting is greater than or equal to the maximum number of records in any field in the underlying source of records.


 FilterOn Property

FilterOn Property

You can use the FilterOn property to specify or determine whether the Filter property for a form or report is applied.

Note If you have specified a server filter within a Microsoft Access project (.adp), use the ServerFilterByForm property.

Setting

The FilterOn property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The object's Filter property is applied.
No | False (0) | (Default) The object's Filter property isn't applied.

For reports, you can set the FilterOn property by using the report's property sheet or Visual Basic.

For forms, you can set the FilterOn property in a macro or by using Visual Basic. You can also set this property by clicking Apply Filter Filter object on the Form View toolbar or the Filter/Sort toolbar.

Remarks

To apply a saved filter, press the Apply Filter button for forms, or apply the filter by using a macro or Visual Basic by setting the FilterOn property to True for forms or reports. For reports, you can set the FilterOn property to Yes in the report's property sheet.

The Apply Filter button indicates the state of the Filter and FilterOn properties. The button remains disabled until there is a filter to apply. If an existing filter is currently applied, the Apply Filter button appears pressed in. To apply a filter automatically when a form or report is opened, specify in the OnOpen event property setting of the form either a macro that uses the ApplyFilter action or an event procedure that uses the ApplyFilter method of the DoCmd object.

You can remove a filter by clicking the pressed-in Apply Filter button, clicking Remove Filter/Sort on the Records menu, or by using Visual Basic to set the FilterOn property to False. For reports, you can remove a filter by setting the FilterOn property to No in the report's property sheet.

Note When a new object is created, it inherits the RecordSource, Filter, ServerFilter. OrderBy, and OrderByOn properties of the table or query it was created from. For forms and reports, inherited filters aren't automatically applied when an object is opened.


 FolderSuffix Property

FolderSuffix Property

You can use the FolderSuffix property to determine the folder suffix that Microsoft Access uses when you save a data access page as a Web page, use long file names, and choose to save supporting files in a separate folder (that is, if the UseLongFileNames and OrganizeInFolder properties are set to True)

Setting

The FolderSuffix property is a string expression representing the text displayed as a hyperlink.

This property is available only by using Visual Basic.

Remarks

Newly created data access pages use the suffix returned by the FolderSuffix property of the DefaultWebOptions object. The value of the FolderSuffix property of the WebOptions object may differ from that of the DefaultWebOptions object if the data access page was previously edited in a different language version of Microsoft Access. You can use the UseDefaultFolderSuffix method to change the suffix to the language you are currently using in Microsoft Office 2000.

By default, the name of the supporting folder is the name of the Web page plus an underscore (_), a period (.), or a hyphen (-) and the word "files" (appearing in the language of the version of Microsoft Access 2000 in which the file was saved as a Web page). For example, suppose that you use the Dutch language version of Access 2000 to save a file called "Page1" as a Web page. The default name of the supporting folder would be Page1_bestanden.

The following table lists each language version of Office 2000, and gives its corresponding LanguageID property value and folder suffix. For the languages that are not listed in the table, the suffix ".files" is used.

Language

Language | LanguageID | Folder suffix
Arabic | 1025 | .files
Basque | 1069 | _fitxategiak
Brazilian | 1046 | _arquivos
Bulgarian | 1026 | .files
Catalan | 1027 | _fitxers
Chinese - Simplified | 2052 | .files
Chinese - Traditional | 1028 | .files
Croatian | 1050 | _datoteke
Czech | 1029 | _soubory
Danish | 1030 | -filer
Dutch | 1043 | _bestanden
English | 1033 | _files
Estonian | 1061 | _failid
Finnish | 1035 | _tiedostot
French | 1036 | _fichiers
German | 1031 | -Dateien
Greek | 1032 | .files
Hebrew | 1037 | .files
Hungarian | 1038 | _elemei
Italian | 1040 | -file
Japanese | 1041 | .files
Korean | 1042 | .files
Latvian | 1062 | _fails
Lithuanian | 1063 | _bylos
Norwegian | 1044 | -filer
Polish | 1045 | _pliki
Portuguese | 2070 | _ficheiros
Romanian | 1048 | .files
Russian | 1049 | .files
Serbian (Cyrillic) | 3098 | .files
Serbian (Latin) | 2074 | _fajlovi
Slovakian | 1051 | .files
Slovenian | 1060 | _datoteke
Spanish | 3082 | _archivos
Swedish | 1053 | -filer
Thai | 1054 | .files
Turkish | 1055 | _dosyalar
Ukranian | 1058 | .files
Vietnamese | 1066 | .files


 FollowHyperlinkColor Property

FollowedHyperlinkColor Property

You can use the FollowedHyperlinkColor property to specify or determine the default color of all followed hyperlinks within the Application object.

Setting

The FollowedHyperlinkColor property uses the following settings.

Setting | Visual Basic
Black | acColorIndexBlack (0)
Maroon | acColorIndexMaroon (1)
Green | acColorIndexGreen (2)
Olive | acColorIndexOlive (3)
Dark Blue | acColorIndexDarkBlue (4)
Violet (default) | acColorIndexViolet (5)
Teal | acColorIndexTeal (6)
Gray | acColorIndexGray (7)
Silver | acColorIndexSilver (8)
Red | acColorIndexRed (9)
Bright Green | acColorIndexBrightGreen (10)
Yellow | acColorIndexYellow (11)
Blue | acColorIndexBlue (12)
Fushia | acColorIndexFushia (13)
Aqua | acColorIndexAqua (14)
White | acColorIndexWhite (15)

You can set the FollowedHyperlinkColor property through the DefaultWebOptions property or the SetOption method by using Visual Basic.

You can to set or change the default followed hyperlink color available in the Web Options dialog box. To display this dialog box, click Options on the Tools menu. Click the General tab and click the Web Pages button.

Remarks

The default color of a hyperlink is changed to the followed hyperlink color when a hyperlink control has been pressed.

Use the DefaultWebOptions property to identify or set the Application object's DefaultWebOptions object properties.


 FontBold Property

FontBold Property

You can use the FontBold property to specify whether a font appears in a bold style in the following situations:

  • When displaying or printing controls on forms and reports.

  • When using the Print method on a report.

Setting

The FontBold property uses the following settings.

Setting | Description
True (-1) | The text is bold.
False (0) | (Default) The text isn't bold.

You can set the FontBold property only by using a macro or Visual Basic.

Remarks

To use the FontBold property on a report, first create a Print event procedure that prints the desired text.

A font's appearance on screen and in print may differ, depending on your computer and printer.

The FontWeight property, which is available in the property sheet for controls, can also be used to set the line width for a control's text. The FontBold property gives you a quick way to make text bold; the FontWeight property gives you finer control over the line width setting for text. The following table shows the relationship between these properties' settings.

If | Then
FontBold = False | FontWeight = Normal (400)
FontBold = True | FontWeight = Bold (700)
FontWeight < 700 | FontBold = False
FontWeight > = 700 | FontBold = True


 FontItalic, FontUnderline Properties

FontItalic, FontUnderline Properties

You can use the FontItalic and FontUnderline properties to specify whether text is italic or underlined respectively in the following situations:

  • When displaying or printing controls on forms and reports.

  • When using the Print method on a report.

Setting

The FontItalic property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The text is italic.
No | False (0) | (Default) The text isn't italic.

The FontUnderline property uses the following settings.

Setting | Visual Basic | Description
Yes | True | The text is underlined.
No | False | (Default) The text isn't underlined.

For controls on forms and reports, you can set these properties by using the control's property sheet, a macro, or Visual Basic.

For reports, you can use these properties only in an event procedure or in a macro specified by the OnPrint event property setting.

You can also set these properties by clicking Italic [image] and Underline [image] on the Formatting (Form/Report) toolbar.

You can set the defaults for these properties by using the default control style or the DefaultControl method in Visual Basic.

Remarks

For a text box, combo box, label, or command button that contains a hyperlink, Microsoft Access automatically sets the FontUnderline property to Yes if the Underline Hyperlinks box is checked on the Hyperlinks/HTML tab of the Options dialog box, available by clicking Options on the Tools menu. If you remove the hyperlink from the control (for example, by changing the ControlSource property of a bound text box to a source that isn't a Hyperlink field), Microsoft Access sets the FontUnderline property back to the default control style. For command buttons, the FontUnderline property setting takes effect only if the command button contains a caption rather than a picture.


 FontName, FontSize Properties

FontName, FontSize Properties

You can use the FontName and FontSize properties to specify the font and point size respectively for text in the following situations:

  • When displaying or printing controls on forms and reports.

  • When using the Print method on a report.

Setting

The FontName property setting is the name of the font that the text is displayed in.

The FontSize property uses the following settings.

Setting | Description
8 | (Default for all reports and controls except command buttons) The text is 8-point type.
10 | (Default for command buttons) The text is 10-point type.
Other sizes | The text is the indicated size.

For controls on forms and reports, you can set these properties by using the property sheet, a macro, or Visual Basic.

You can also set these properties by clicking the Font box [image] and the Font Size box [image] on the Formatting (Form/Report) toolbar.

You can set the default for these properties by using a control's default control style or the DefaultControl method in Visual Basic.

For reports, you can set these properties only in an event procedure or in a macro specified by the OnPrint event property setting.

In Visual Basic, you set the FontName property by using a string expression that is the name of the desired font and you set the FontSize property by using a numeric expression equal to the desired size of the font. The setting for the FontSize property can be between 1 and 127, inclusive.

Remarks

Font availability depends on your system and printer. If you select a font that your system can't display or that isn't installed, Windows substitutes a similar font.


 FontWeight Property

FontWeight Property

You use the FontWeight property to specify the line width that Windows uses to display and print characters in a control.

Setting

The FontWeight property uses the following settings.

Setting | Visual Basic
Thin | 100
Extra Light | 200
Light | 300
Normal | 400
Medium | 500
Semi-bold | 600
Bold | 700
Extra Bold | 800
Heavy | 900

You can set this property by using the control's property sheet, a macro, or Visual Basic. You can also click Bold [image] on the Formatting (Form/Report) toolbar. This sets the FontWeight property to Bold (700).

You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

Remarks

A font's appearance on screen and in print may differ, depending on your computer and printer. For example, a FontWeight property setting of Thin may look identical to Normal on screen but appear lighter when printed.

The FontBold property, which is available only in Visual Basic and macros, can also be used to set the line width for a control's or report's text to bold. The FontBold property gives you a quick way to make text bold; the FontWeight property gives you finer control over the line width setting for text. The following table shows the relationship between these properties' settings.

If | Then
FontBold = False (0) | FontWeight = Normal (400)
FontBold = True (-1) | FontWeight = Bold (700)
FontWeight < 700 | FontBold = False
FontWeight > = 700 | FontBold = True


 ForceNewPage Property

ForceNewPage Property

You can use the ForceNewPage property to specify whether form sections (header, detail, footer) or report sections (header, detail, footer) print on a separate page, rather than on the current page. For example, you may have designed the last page of a report as an order form. If the report footer's ForceNewPage property is set to Before Section, the order form is always printed on a new page.

Note The ForceNewPage property does not apply to page headers or page footers.

Setting

The ForceNewPage property uses the following settings.

Setting | Visual Basic | Description
None | 0 | (Default) The current section (the section for which you're setting the property) is printed on the current page.
Before Section | 1 | The current section is printed at the top of a new page.
After Section | 2 | The section immediately following the current section is printed at the top of a new page.
Before & After | 3 | The current section is printed at the top of a new page, and the next section is printed at the top of a new page.

You can set this property by using the section's property sheet, a macro, or Visual Basic.

Remarks

Here are some examples of the ForceNewPage property setting.

Section | Sample setting | Description
A group header displaying the year | Before Section | The group header is printed at the top of the page, followed by the detail section, group footer, and page footer.
A report detail section | After Section | The group footer is printed at the top of a new page.
A report header containing the report title and company logo. | After Section | The report title and logo are printed on a separate page at the beginning of the report.


 ForeColor Property

ForeColor Property

You can use the ForeColor property to specify the color for text in a control. You can use this property for controls on forms or reports to make them easy to read or to convey a special meaning. For example, you can change the color of the text in the UnitsInStock control when its value falls below the reorder level.

You can also use this property on reports to create special visual effects when you print with a color printer. When used on a report, this property specifies the printing and drawing color for the Print, Line, and Circle methods.

Setting

The ForeColor property contains a numeric expression that represents the value of the text color in the control.

You can use the Color Builder to set this property by clicking the Build button [image] to the right of the property box in the property sheet. Using the Color Builder enables you to define custom colors for text in controls.

For controls, you can set this property by using Font/Fore Color [image] on the Formatting (Form/Report) toolbar, the control's property sheet, a macro, or Visual Basic.

You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

For reports, you can set the ForeColor property only by using a macro or a Visual Basic event procedure specified in a section's OnPrint event property setting.

For Table objects, you can set this property using Font/Fore Color [image] on the Formatting (Datasheet) toolbar, or in Visual Basic by using the DatasheetForeColor property.

Remarks

For a text box, combo box, label, or command button that contains a hyperlink, Microsoft Access automatically sets the ForeColor property to the color specified in the Followed Hyperlink Color or Hyperlink Color box on the Hyperlinks/HTML tab of the Options dialog box, available by clicking Options on the Tools menu. If you remove the hyperlink from the control (for example, by changing the ControlSource property of a bound text box to a source that isn't a Hyperlink field), Microsoft Access sets the ForeColor property back to the default control style. For command buttons, the ForeColor property setting takes effect only if the command button contains a caption rather than a picture.


 Form, Report Properties

Form, Report Properties

You can use the Form and Report properties to refer to a form or report or to refer to the form or report associated with a subform control or subreport control.

Setting

These properties refer to a form or report object. They are read-only in all views.

You can use these properties by using a macro or Visual Basic.

Remarks

These properties are typically used to refer to the form or report contained in a subform or subreport control. For example, the following code uses the Form property to access the OrderID control on a subform contained in the OrderDetails subform control.

Dim intOrderID As Integer
intOrderID = Forms!Orders!OrderDetails.Form!OrderID

The next example calls a function from a property sheet by using the Form property to refer to the active form that contains the control named CustomerID.

=MyFunction(Form!CustomerID)

When you use the Form property in this manner, you are referring to the active form, and the name of the form isn't necessary.

The next example is the Visual Basic equivalent of the preceding example.

X = MyFunction(Forms!Customers!CustomerID)

Note When you use the Forms or Reports collection, you must specify the name of the form or report.


 Format Property

Format Property

You can use the Format property to customize the way numbers, dates, times, and text are displayed and printed. For example, if you've created a Price text box, you can set its Format property to Currency and its DecimalPlaces property to 2 or Auto. If you enter 4321.678 in the control, the number would be displayed as $4,321.68.

You can use one of the predefined formats or you can create a custom format by using formatting symbols.

Setting

The Format property uses different settings for different data types. For information about settings for a specific data type, see one of the following topics:

  • Date/Time Data Type

  • Number and Currency Data Types

  • Text and Memo Data Types

  • Yes/No Data Type

For a control, you can set this property in the control's property sheet. For a field, you can set this property in table Design view (in the Field Properties section) or in Design view of the Query window (in the Field Properties property sheet). You can also use a macro or Visual Basic.

Note In Visual Basic, enter a string expression that corresponds to one of the predefined formats or enter a custom format.

Remarks

The Format property affects only how data is displayed. It doesn't affect how data is stored.

Microsoft Access provides predefined formats for Date/Time, Number and Currency, Text and Memo, and Yes/No data types. The predefined formats depend on the country specified by double-clicking Regional Settings in Windows Control Panel. Microsoft Access displays formats appropriate for the country selected. For example, with English (United States) selected on the Regional Settings tab, 1234.56 in the Currency format appears as $1,234.56, but when English (British) is selected on the Regional Settings tab, the number appears as Ј1,234.56.

If you set a field's Format property in table Design view, Microsoft Access uses that format to display data in datasheets. It also applies the field's Format property to new controls on forms and reports.

You can use the following symbols in custom formats for any data type.

Symbol | Meaning
(space) | Display spaces as literal characters.
"ABC" | Display anything inside quotation marks as literal characters.
! | Force left alignment instead of right alignment.
* | Fill available space with the next character.
\ | Display the next character as a literal character. You can also display literal characters by placing quotation marks around them.
[color] | Display the formatted data in the color specified between the brackets. Available colors: Black, Blue, Green, Cyan, Red, Magenta, Yellow, White.

You can't mix custom formatting symbols for the Number and Currency data types with Date/Time, Yes/No, or Text and Memo formatting symbols.

When you have defined an input mask and set the Format property for the same data, the Format property takes precedence when the data is displayed and the input mask is ignored. For example, if you create a Password input mask in table Design view and also set the Format property for the same field, either in the table or in a control on a form, the Password input mask is ignored and the data is displayed according to the Format property.


FormatConditions Property

You can use the FormatConditions property to return a reference to the FormatConditions collection and its related properties.

Setting

This property is available only by using Visual Basic and is read-only.

Remarks

Conditional formatting can also be set on a combo box or text box from the Conditional Formatting dialog box. The Conditional Formatting dialog box is available by clicking Conditional Formatting on the Format menu when a form is in Design view.


 FormatCount Property

FormatCount Property

You can use the FormatCount property to determine the number of times the OnFormat property has been evaluated for the current section on a report.

Setting

You can use this property only in a macro or an Visual Basic event procedure specified by a section's OnFormat property setting.

The FormatCount property setting has a Long data type value.

This property isn't available in report Design view and is read-only in other views.

Remarks

Microsoft Access increments the FormatCount property each time the OnFormat property setting is evaluated for the current section. As the next section is formatted, Microsoft Access resets the FormatCount property to 1.

Under some circumstances, Microsoft Access formats a section more than once. For example, you might design a report in which the KeepTogether property for the detail section is set to Yes. When Microsoft Access reaches the bottom of a page, it formats the current detail section once to see if it will fit. If it doesn't fit, Microsoft Access moves to the next page and formats the detail section again. In this case, the setting for the FormatCount property for the detail section is 2 because it was formatted twice before it was printed.

You can use the FormatCount property to ensure that an operation that affects formatting gets executed only once for a section. In the following example, the DLookup function is evaluated only when the FormatCount property is set to 1:

Private Sub Detail_Format(Cancel As Integer, _
     FormatCount As Integer)
    Const conBold = 700
    Const conNormal = 400
    If FormatCount = 1 Then
        If DLookup("CompanyName", _
                "Customers", "CustomerID = Reports!" _
                & "[Customer Labels]!CustomerID") _
                Like "B*" Then
            CompanyNameLine.FontWeight = conBold
        Else
            CompanyNameLine.FontWeight = conNormal
        End If
    End If
End Sub


Forms Property

You can use the Forms property to return a reference to the Forms collection and its related properties.

Setting

This property is available only by using Visual Basic and is read-only.

Remarks

The properties of the Forms collection in Visual Basic refer to forms that are currently open.


 FrozenColumns Property

FrozenColumns Property

You can use the FrozenColumns property to determine how many columns in a datasheet are frozen. Frozen columns are displayed on the left side of the datasheet and don't move when you scroll horizontally through the datasheet.

Note The FrozenColumns property applies only to tables, forms, and queries in Datasheet view.

Setting

The FrozenColumns property is set by Microsoft Access when you click Freeze Columns on the Format menu.

In Visual Basic, this property setting is an Integer value indicating the number of columns in the datasheet that have been frozen by using the Freeze Columns command. The record selector column is always frozen, so the default value is 1. Consequently, if you freeze one column, the FrozenColumns property is set to 2; if you freeze two columns, it's set to 3; and so on.

This property setting is read-only in all views.

Remarks

When you freeze columns by using the Freeze Columns command, Microsoft Access automatically moves the columns to the leftmost edge of the datasheet in the order in which you freeze them. For example, if you freeze three columns, these become the first, second, and third columns in the datasheet. Because the record selector column is always frozen, the FrozenColumns property in this case will be set to 4. The three columns you freeze will have their ColumnOrder properties set to 1, 2, and 3 (in the order they are frozen).

If you click Unfreeze All Columns on the Format menu, all frozen columns will be unfrozen, and the FrozenColumns property will be set to 1.

Note The Unfreeze All Columns command will not restore the original order of columns if the Freeze Columns command caused the column order to change.


 FullName Property

FullName Property

You can use the FullName property to determine the full pathname (including filename) of a specific data access page.

Setting

The FullName property is a string expression and is available only by using Visual Basic and is read-only.

Remarks

The FullName property is the full name of the file that the link points to. The Name property is the name of the link.

The FullName value is the same string that is displayed when you hover over a data access page name in the Database window.


 FullPath Property

FullPath Property

The FullPath property returns a string containing the path and file name of the referenced type library.

Setting

The FullPath property is available only by using Visual Basic and is read-only.

Remarks

Type libraries reside in files. The following table shows the file extensions for files that commonly contain type libraries.

File extension | Type of file
.olb, .tlb | Type library file
.adp, .ade, .mdb, .mda, .mde | Database
.exe, .dll | Executable file
.ocx | ActiveX control

If the IsBroken property setting of a Reference object is True (-1), reading the FullPath property generates an error.


FuriganaControl Property

Language-specific information

You can use the FuriganaControl property to indicate a target control and automatically create furigana for text entered in a text box.

Settings

The setting value is the name of the control for entering Furigana.

You can set this property by using the property sheet, a macro, or Visual Basic.

Remarks

If the FuriganaControl property is set in the control, furigana will automatically be created, and can be displayed in a separately designated control. Only if a control name in the same form is set with the FuriganaControl property will the form run properly when executed. If text is entered in a control other than the designated control name in the same form, an error will occur. The type of furigana characters is determined by the IMEMode/KanjiConversionMode property settings in the control.

Note If you enter text in the target control, the furigana of the newly entered text is automatically added to the end of the designated target control content. Even if the text of the target control is revised or deleted, the characters before the change in the target control will not be revised or deleted. Changing the content of the target control revises the text in the Furigana control as necessary. The FuriganaControl property will not run if text is pasted into the target control.


 GridX, GridY Properties

GridX, GridY Properties

You can use the GridX and GridY properties to specify the horizontal and vertical divisions of the alignment grid in form Design view and report Design view.

Setting

Enter an integer between 1 and 64 representing the number of subdivisions per unit of measurement. If the Measurement System box is set to U.S. on the Number tab of the Regional Settings Properties dialog box of Windows Control Panel, the default setting is 24 for the GridX property (horizontal) and 24 for the GridY property (vertical).

You can set this property by using the property sheet, a macro, or Visual Basic.

In Visual Basic, you set this property by using a numeric expression

Remarks

The GridX and GridY properties provide control over the placement and alignment of objects on a form or report. You can adjust the grid for greater or lesser precision. To see the grid, click Grid on the View menu. If the setting for either the GridX or GridY properties is greater than 24, the grid points disappear from view (although the grid lines are still displayed).


 GroupHeader, GroupFooter Properties

GroupHeader, GroupFooter Properties

You can use the GroupHeader and GroupFooter properties to create a group header or a group footer for a selected field or expression in a report. You can use group headers and footers to label or summarize data in a group of records. For example, if you set the GroupHeader property to Yes for the Categories field, each group of products will begin with its category name.

Setting

The GroupHeader and GroupFooter properties use the following settings.

Setting | Description
Yes | Creates a group header or footer.
No | (Default) Doesn't create a group header or footer.

You set these properties in the Sorting And Grouping box.

You can set these properties only in report Design view.

Note You can't set or refer to these properties directly in Visual Basic. To create a group header or footer for a field or expression in Visual Basic, use the CreateGroupLevel method.

Remarks

To set the grouping properties - GroupOn, GroupInterval, and KeepTogether - to other than their default values, you must first set the GroupHeader or GroupFooter property or both to Yes for the selected field or expression.


 GroupInterval Property

GroupInterval Property

You can use the GroupInterval property with the GroupOn property to specify how records are grouped in a report. The GroupInterval property specifies an interval value that records are grouped by. This interval differs depending on the data type and GroupOn property setting of the field or expression you're grouping on. For example, you can set the GroupInterval property to 1 if you want to group records by the first character of a Text field, such as ProductName.

Setting

The GroupInterval property settings are Integer values that depend on the field's data type and its GroupOn property setting. The default GroupInterval setting is 1.

You can set this property by using the Sorting And Grouping box, a macro, or Visual Basic.

You can set the GroupInterval property only in report Design view or in the Open event procedure of a report.

Remarks

Here are examples of GroupInterval property settings for different field data types.

Field data type | GroupOn setting | GroupInterval setting
All | Each value | (Default) Set to 1.
Text | Prefix characters | Set to 3 for grouping by the first three characters in the field (for example, Chai, Chartreuse, and Chang would be grouped together).
Date/Time | Week | Set to 2 to return data in biweekly groups.
Date/Time | Hour | Set to 12 to return data in half-day groups.

To set the GroupInterval property to a value other than its default setting (1), you must first set the GroupHeader or GroupFooter property or both to Yes for the selected field or expression.


 GroupLevel Property

GroupLevel Property

You can use the GroupLevel property in Visual Basic to refer to the group level you are grouping or sorting on in a report.

Setting

The GroupLevel property setting is an array in which each entry identifies a group level. To refer to a group level, use this syntax:

GroupLevel(n)

The number n is the group level, starting with 0. The first field or expression you group on is group level 0, the second is group level 1, and so on. You can have up to 10 group levels (0 to 9).

The following sample settings show how you use the GroupLevel property to refer to a group level.

Group level | Refers to
GroupLevel(0) | The first field or expression you sort or group on.
GroupLevel(1) | The second field or expression you sort or group on.
GroupLevel(2) | The third field or expression you sort or group on.

You can use this property only by using Visual Basic to set the SortOrder, GroupOn, GroupInterval, KeepTogether, and ControlSource properties. You set these properties in the Open event procedure of a report.

Remarks

In reports, you can group or sort on more than one field or expression. Each field or expression you group or sort on is a group level.

You specify the fields and expressions to sort and group on by using the CreateGroupLevel method.

If a group is already defined for a report (the GroupLevel property is set to 0), then you can use the ControlSource property to change the group level in the report's Open event procedure. For example, the following code changes the ControlSource property to a value contained in the txtPromptYou text box on the open form named SortForm:

Private Sub Report_Open(Cancel As Integer)
    Me.GroupLevel(0).ControlSource _
        = Forms!SortForm!txtPromptYou
End Sub


 GroupOn Property

GroupOn Property

You can use the GroupOn property in a report to specify how to group data in a field or expression by data type. For example, this property lets you group a Date field by month.

Setting

The GroupOn property settings available for a field depend on its data type, as the following table shows. For an expression, all of the settings are available. The default setting for all data types is Each Value.

Field data type | Setting | Groups records with | Visual Basic
Text | (Default) Each Value | The same value in the field or expression. | 0
 | Prefix Characters | The same first n number of characters in the field or expression. | 1
Date/Time | (Default) Each Value | The same value in the field or expression. | 0
 | Year | Dates in the same calendar year. | 2
 | Qtr | Dates in the same calendar quarter. | 3
 | Month | Dates in the same month. | 4
 | Week | Dates in the same week. | 5
 | Day | Dates on the same date. | 6
 | Hour | Times in the same hour. | 7
 | Minute | Times in the same minute. | 8
AutoNumber, Currency, Number | (Default) Each Value | The same value in the field or expression. | 0
 | Interval | Values within an interval you specify. | 9

You can set the GroupOn property by using the Sorting And Grouping box, a macro, or Visual Basic.

In Visual Basic, you set this property in the Open event procedure of a report.

Remarks

To set the GroupOn property to a value other than Each Value, you must first set the GroupHeader or GroupFooter property or both to Yes for the selected field or expression.


 GrpKeepTogether Property

GrpKeepTogether Property

You can use the GrpKeepTogether property to specify whether groups in a multiple column report that have their KeepTogether property for a group set to Whole Group or With First Detail will be kept together by page or by column.

Setting

The GrpKeepTogether property uses the following settings.

Setting | Visual Basic | Description
Per Page | 0 | Groups are kept together by page.
Per Column | 1 | (Default) Groups are kept together by column.

You can set the GrpKeepTogether property by using the report's property sheet, a macro, or Visual Basic.

This property can be set only in report Design view.

Remarks

You can use this property to specify whether all the data for a group will appear in the same column. For example, if you have a list of employees by department in a multiple-column format, you can use this property to keep all members of the same department in the same column.

The GrpKeepTogether property setting has no effect if the KeepTogether property for a group is set to No.


 GUID Property

GUID Property

The GUID property of a Reference object returns a GUID that identifies a type library in the Windows Registry.

Setting

The GUID property is available only by using Visual Basic and is read-only.

Remarks

Every type library has an associated GUID which is stored in the Registry. When you set a reference to a type library, Microsoft Access uses the type library's GUID to identify the type library.

You can use the AddFromGUID method to create a Reference object from a type library's GUID.


HasContinued Property

You can use the HasContinued property to determine if part of the current section begins on the previous page.

Setting

The HasContinued property is set by Microsoft Access and is read-only in all views.

Value | Description
True (-1) | Part of the current section has been printed on the previous page.
False (0) | Part of the current section hasn't been printed on the previous page.

You can get the value of the HasContinued property by using a macro or Visual Basic.

Remarks

You can use this property to determine whether to show or hide certain controls depending on the value of the property. For example, you may have a hidden label in a page header containing the text "Continued from previous page". If the value of the HasContinued property is True, you can make the hidden label visible.


 HasData Property

HasData Property

You can use the HasData property to determine if a form or report is bound to an empty recordset.

Setting

The HasData property is set by Microsoft Access. The value of this property can be read only while printing or while in Print Preview.

Value | Description
-1 | The object has data.
0 | The object doesn't have data.
1 | The object is unbound.

You can get the value of the HasData property by using a macro or Visual Basic.

Remarks

You can use this property to determine whether to hide a subreport that has no data. For example, the following expression hides the subreport control when its report has no data.

Me!SubReportControl.Visible = Me!SubReportControl.Report.HasData


 HasModule Property

HasModule Property

You can use the HasModule property to specify or determine whether a form or report has a class module. Setting this property to No can improve the performance and decrease the size of your database.

Setting

The HasModule property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The form or report has a class module.
No | False (0) | (Default) The form or report doesn't have a class module.

You can set the HasModule property by using the form or report's property sheet, a macro, or Visual Basic.

The HasModule property can be set only in form or report Design view but can be read in any view.

Remarks

Forms or reports that have the HasModule property set to No are considered lightweight objects. Lightweight objects are smaller and typically load and display faster than objects with associated class modules. In many cases, a form or report doesn't need to use event procedures and doesn't require a class module.

If your application uses a switchboard form to navigate to other forms, instead of using command buttons with event procedures, you can use a command button with a macro or hyperlink. For example, to open the Employees form from a command button on a switchboard, you can set the control's HyperlinkSubAddress property to "Form Employees".

Lightweight objects don't appear in the Object Browser and you can't use the New keyword to create a new instance of the object. A lightweight form or report can be used as a subform or subreport and will appear in the Forms or Reports collection. Lightweight objects support the use of macros, and public procedures that exist in standard modules when called from the object's property sheet.

Microsoft Access sets the HasModule property to True as soon as you attempt to view an object's module, even if no code is actually added to the module. For example, selecting Code from the View menu for a form in Design view causes Microsoft Access to add a class module to the Form object and set its HasModule property to True. You can add a class module to an object in the same way by setting the HasModule property to Yes in an object's property sheet.

Warning If you set the HasModule property to No by using an object's property sheet or set it to False by using Visual Basic, Microsoft Access deletes the object's class module and any code it may contain.

When you use a method of the Module object or refer to the Module property for a form or report in Design view, Microsoft Access creates the associated module and sets the object's HasModule property to True. If you refer to the Module property of a form or report at run-time and the object has its HasModule property set to False, an error will occur.

Objects created by using the CreateForm or CreateReport methods are lightweight by default.


 Height, Width Properties (Microsoft Access)

Height, Width Properties

You can use the Height and Width properties to size an object to specific dimensions. This can be useful, for example, if you want to create objects that are exactly the same size or that have the same width or height.

Notes

  • The Height property applies only to form sections and report sections, not to forms and reports.

  • The Width property applies only to forms and reports, not to form sections and report sections.

  • Both properties apply to controls on forms and reports.

Setting

Enter a number for the desired height or width in the current unit of measurement. To use a unit of measurement different from the setting in the Regional Settings Properties dialog box in Windows Control Panel, specify the unit, such as cm or in (for example, 5 cm or 3 in). The setting for the Width property must be a value from 0 to 22 inches (55.87 cm).

You can set these properties by using the object's property sheet, a macro, or Visual Basic.

For controls, you can set the default for these properties by using the default control style or the DefaultControl method in Visual Basic.

In Visual Basic, use a numeric expression to set the value of each property. Values are expressed in twips.

For report sections, you can't use a macro or Visual Basic to set the Height property when you print or preview a report. For report controls, you can set the Height and Width properties when you print or preview a report only by using a macro or an event procedure specified in a section's OnFormat event property setting.

You can't set these properties for an object once the print process has started. For example, attempting to set the Height property in a report's Print event generates an error.

Remarks

Microsoft Access automatically sets the Height and Width properties when you create or size a control or when you size a window in form Design View or report Design view.

The height of sections and the width of forms and reports are measured from the inside of their borders. The height and width of controls are measured from the center of their borders so controls with different border widths align correctly. The margins for forms and reports are set in the Page Setup dialog box, available by clicking Page Setup on the File menu.

Note To set the left and top location of an object, use the Left and Top properties.


 HelpContextID, HelpFile Properties (Microsoft Access)

HelpContextID, HelpFile Properties

  • The HelpContextID property specifies the context ID of a topic in the custom Help file specified by the HelpFile property setting.

  • The HelpFile property specifies the name of a custom Help file for the current form or report.

Setting

  • For the HelpContextID property, enter a Long Integer value between 0 and 2,147,483,647 representing the context ID of the Help file topic you want to display. The default setting is 0.

    Note If you enter the context ID of the Help file topic as a positive number, the help topic will display in a "full" help topic window. If you add a minus sign ("-") in from of the context ID, the help topic will be displayed in a "pop-up" window. It is important to note the the context id does not have to have a negative number when authored in Microsoft Help Workshop. You must add the minus sign when setting the property to make the topic display in the pop-up window.

  • For the HelpFile property, enter a string expression that contains the path and file name of a custom Help file created with the Windows Help Compiler.

You can set these properties by using the property sheet, a macro, or Visual Basic. These properties don't apply to controls on reports.

Remarks

You can create a custom Help file to document forms, reports, or applications you create with Microsoft Access.

When you press the F1 key in Form view, Microsoft Access calls the Microsoft Help Workshop or Microsoft HTML Help Workshop application, loads the custom Help file specified by the HelpFile property setting for the form or report, and displays the Help topic specified by the HelpContextID property setting.

If a control's HelpContextID property setting is 0 (the default), Microsoft Access uses the form's HelpContextID and HelpFile properties to identify the Help topic to display. If you press F1 in a view other than Form view or if the HelpContextID property setting for both the form and the control is 0, a Microsoft Access Help topic is displayed.


 HideDuplicates Property

HideDuplicates Property

You can use the HideDuplicates property to hide a control on a report when its value is the same as in the preceding record. For example, on a report listing suppliers and their products, each supplier's name can appear once for each group of products, rather than once for each product.

Note The HideDuplicates property applies only to controls (check box, combo box, list box, option button, option group, text box, toggle button) on a report.

The property doesn't apply to check boxes, option buttons, or toggle buttons when they appear in an option group. It does apply to the option group itself.

Setting

The HideDuplicates property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | If the value of a control or the data it contains is the same as in the preceding record, the control is hidden.
No | False (0) | (Default) The control is visible regardless of the value in the preceding record.

You can set this property by using the control's property sheet, a macro, or Visual Basic.

You can set the HideDuplicates property only in report Design view.

Remarks

You can use the HideDuplicates property to create a grouped report by using only the detail section rather than a group header and the detail section.


 hWnd Property

hWnd Property

You can use the hWnd property to determine the handle (a unique Long Integer value) assigned by Microsoft Windows to the current window.

Setting

This property is read-only and is available only by using a macro or Visual Basic.

Remarks

You can use this property in Visual Basic when making calls to Windows application programming interface (API) functions or other external routines that require the hWnd property as an argument. Many Windows functions require the hWnd property value of the current window as one of the arguments.

Caution Because the value of this property can change while a program is running, don't store the hWnd property value in a public variable.


 Hyperlink Property

Hyperlink Property

You can use the Hyperlink property to return a reference to a Hyperlink object. You can use the Hyperlink property to access the properties and methods of a Hyperlink object associated with a command button, image, or label control.

Setting

The Hyperlink property is available only by using Visual Basic.


 HyperlinkAddress Property

HyperlinkAddress Property

You can use the HyperlinkAddress property to specify or determine the path to an object, document, Web page or other destination for a hyperlink associated with a command button, image control, or label control.

Setting

The HyperlinkAddress property is a string expression representing the path to a file (UNC path) or Web page (URL).

You can set the HyperlinkAddress property by using the control's property sheet, a macro, or Visual Basic.

Note When you set the HyperlinkAddress property, you automatically specify the Address property for the Hyperlink object associated with the control.

You can also use the Insert Hyperlink dialog box to set this property by clicking the Build button [image] to the right of the property box in the property sheet.

Note When you create a hyperlink by using the Insert Hyperlink dialog box, Microsoft Access automatically sets the HyperlinkAddress property and HyperlinkSubAddress to the location specified in the Type the file or Web page name box. The HyperlinkSubAddress property can also be set to the location specified in the Select an object in this database box.

If you copy a hyperlink from another application and paste it into a form or report, Microsoft Access creates a label control with its Caption property, HyperlinkAddress property, and HyperlinkSubAddress property automatically set.

Remarks

When you move the cursor over a command button, image control, or label control whose HyperlinkAddress property is set, the cursor changes to an upward-pointing hand. Clicking the control displays the object or Web page specified by the link.

To open objects in the current database, leave the HyperlinkAddress property blank and specify the object type and object name you want to open in the HyperlinkSubAddress property by using the syntax "objecttype objectname". If you want to open an object contained in another Microsoft Access database, enter the database path and file name in the HyperlinkAddress property and specify the database object to open by using the HyperlinkSubAddress property.

The HyperlinkAddress property can contain an absolute or a relative path to a target document. An absolute path is a fully qualified URL or UNC path to a document. A relative path is a path related to the base path specified in the Hyperlink Base setting in the DatabaseName Properties dialog box (available by clicking Database Properties on the File menu) or to the current database path. If Microsoft Access can't resolve the HyperlinkAddress property setting to a valid URL or UNC path, it will assume you've specified a path relative to the base path contained in the Hyperlink Base setting or the current database path.

Note When you follow a hyperlink to another Microsoft Access database object, the database Startup properties are applied. For example, if the destination database has a Display form set, that form is displayed when the database opens.

The following table contains examples of HyperlinkAddress and HyperlinkSubAddress property settings.

HyperlinkAddress | HyperlinkSubAddress | Description
http://www.microsoft.com/ |  | The Microsoft home page on the Web.
C:\Program Files\Microsoft Office\Office\Samples\Cajun.htm |  | The Cajun Delights page in the Access sample applications subdirectory.
C:\Program Files\Microsoft Office\Office\Samples\Cajun.htm | NewProducts | The "NewProducts" Name tag in the Cajun Delights page.
C:\Personal\MyResume.doc | References | The bookmark named "References" in the Microsoft Word document "MyResume.doc".
C:\Finance\First Quarter.xls | Sheet1!TotalSales | The range named "TotalSales" in the Microsoft Excel spreadsheet "First Quarter.xls".
C:\Presentation\NewPlans.ppt | 10 | The 10th slide in the Microsoft PowerPoint document "NewPlans.ppt".


 HyperlinkColor Property

HyperlinkColor Property

You can use the HyperlinkColor property to specify or determine the default color of all hyperlinks within the Application object.

Setting

The HyperlinkColor property uses the following settings.

Setting | Visual Basic
Black | acColorIndexBlack (0)
Maroon | acColorIndexMaroon (1)
Green | acColorIndexGreen (2)
Olive | acColorIndexOlive (3)
Dark Blue | acColorIndexDarkBlue (4)
Violet | acColorIndexViolet (5)
Teal | acColorIndexTeal (6)
Gray | acColorIndexGray (7)
Silver | acColorIndexSilver (8)
Red | acColorIndexRed (9)
Bright Green | acColorIndexBrightGreen (10)
Yellow | acColorIndexYellow (11)
Blue (default) | acColorIndexBlue (12)
Fushia | acColorIndexFushia (13)
Aqua | acColorIndexAqua (14)
White | acColorIndexWhite (15)

You can set the HyperlinkColor property through the DefaultWebOptions property or the SetOption method by using Visual Basic.

You can set or change the default hyperlink color available in the Web Options dialog box. To display this dialog box, click Options on the Tools menu. Click the General tab and click the Web Pages button.

Remarks

The default color of a hyperlink is changed to the followed hyperlink color when a hyperlink control has been pressed.

Use the DefaultWebOptions property to identify or set the Application object's DefaultWebOptions object properties.


 HyperlinkSubAddress Property

HyperlinkSubAddress Property

You can use the HyperlinkSubAddress property to specify or determine a location within the target document specified by the HyperlinkAddress property. The HyperlinkSubAddress property can be an object within a Microsoft Access database, a bookmark within a Microsoft Word document, a named range within a Microsoft Excel spreadsheet, a slide within a Microsoft PowerPoint presentation, or a location within an HTML document.

Setting

The HyperlinkSubAddress property is a string expression representing a named location within the target document specified by the HyperlinkAddress property.

You can set the HyperlinkSubAddress property by using a control's property sheet, a macro, or Visual Basic.

You can also use the Insert Hyperlink dialog box to set this property by clicking the Build button [image] to the right of the property box in the property sheet.

Note When you create a hyperlink by using the Insert Hyperlink dialog box, Microsoft Access automatically sets the HyperlinkAddress property and HyperlinkSubAddress to the location specified in the Type the file or Web page name box. The HyperlinkSubAddress property is set to the location specified in the Select an object in this database box.

Remarks

When you move the cursor over a command button, image control, or label control whose HyperlinkSubAddress property is set, the cursor changes to an upward-pointing hand. Clicking the control displays the object or Web page specified by the link.

To open objects in the current database, leave the HyperlinkAddress property blank and specify the object type and object name you want to open in the HyperlinkSubAddress property in the format "objecttype objectname". For example, to create a hyperlink for a command button that opens the Employees form you could set the control's HyperlinkSubAddress property to "Form Employees". If you want to open an object contained in another Microsoft Access database, enter the database path and file name in the HyperlinkAddress property and specify the database object to open by using the HyperlinkSubAddress property.

Note When you follow a hyperlink to another Microsoft Access database object, the database Startup properties are applied. For example, if the destination database has a Display form set, that form is displayed when the database opens.

The following table contains shows examples of HyperlinkAddress and HyperlinkSubAddress property settings.

HyperlinkAddress | HyperlinkSubAddress | Description
http://www.microsoft.com/ |  | The Microsoft home page on the Web.
C:\Program Files\Microsoft Office\Office\Samples\Cajun.htm |  | The Cajun Delights page in the Access sample applications subdirectory.
C:\Program Files\Microsoft Office\Office\Samples\Cajun.htm | NewProducts | The "NewProducts" Name tag in the Cajun Delights page.
C:\Personal\MyResume.doc | References | The bookmark named "References" in the Microsoft Word document "MyResume.doc".
C:\Finance\First Quarter.xls | Sheet1!TotalSales | The range named "TotalSales" in the Microsoft Excel spreadsheet "First Quarter.xls".
C:\Presentation\NewPlans.ppt | 10 | The 10th slide in the Microsoft PowerPoint document "NewPlans.ppt".


 IgnoreNulls Property (Microsoft Access)

IgnoreNulls Property

You can use the IgnoreNulls property to specify that records with Null values in the indexed fields not be included in the index.

Setting

The IgnoreNulls property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | Records that contain Null values in the indexed fields aren't included in the index.
No | False (0) | (Default) Records that contain Null values in the indexed fields are included in the index.

You can set this property by using the Indexes window of table Design view or Visual Basic.

To access the IgnoreNulls property of an index by using Visual Basic, use the DAO IgnoreNulls property.

Remarks

You can define an index for a field to facilitate faster searches for records indexed on that field. If you allow Null entries in the indexed field and expect to have many of them, set the IgnoreNulls property for the index to Yes to reduce the amount of storage space that the index uses.


 ImageHeight Property

ImageHeight Property

You can use the ImageHeight property in Visual Basic to determine the height in twips of the picture in an image control.

Setting

The ImageHeight property is an Integer value equal to the height of a picture in twips.

This property is read-only in all views.

Remarks

You can use the ImageHeight property together with the ImageWidth property to determine the size of a picture in an image control. You could then use this information to change the image control's Height and Width properties to match the size of the picture displayed.


 ImageWidth Property

ImageWidth Property

You can use the ImageWidth property in Visual Basic to determine the width in twips of a picture in an image control.

Setting

The ImageWidth property is an Integer value equal to the width of a picture in twips.

This property is read-only in all views.

Remarks

You can use the ImageWidth property together with the ImageHeight property to determine the size of a picture in an image control. You could then use this information to change the image control's Height and Width properties to match the size of the picture displayed.


 IMEHold/HoldKanjiConversionMode Property

IMEHold/HoldKanjiConversionMode Property

Language-specific information

You can use the IMEHold/Hold KanjiConversionMode property to show whether the Kanji Conversion Mode is maintained when the control loses the focus.

Settings

The IMEHold/Hold KanjiConversionMode property uses the following settings.

Settings | Description | Visual Basic
Yes | Maintains the Kanji Conversion Mode set in the last control. | True (-1)
No | Does not maintain the Kanji Conversion Mode set in the last control (default). | False (0)

You can set this property by using the property sheet, a macro, or Visual Basic.

Remarks

By setting the IMEHold/Hold KanjiConversionMode property, you can designate whether or not the Kanji Conversion Mode is maintained when the control loses the focus. If this property is set to Yes, the Kanji Conversion Mode setting is maintained when the control loses the focus and once that control regains the focus, the Kanji Conversion Mode setting for that control is restored. If this property is set to No (default setting), the Kanji Conversion Mode will be set by the IMEMode/KanjiConversionMode property for that control.

Note To set the Kanji Conversion Mode when the focus shifts to the control, set the IMEMode/KanjiConversionMode property.


 IMEMode/KanjiConversion Property

IMEMode/KanjiConversionMode Property

Language-specific information

You can use the IMEMode/KanjiConversionMode property to set a control's Kanji Conversion Mode when the focus shifts to the control.

Settings

The IMEMode/KanjiConversionMode property uses the following settings.

Setting | Description | Visual Basic
No Control | Kanji Conversion Mode not set (default). | 0
On | Turns on Kanji Conversion Mode. | 1
Off | Turns off Kanji Conversion Mode. | 2
Disable | Disables Kanji Conversion Mode. | 3
Hiragana | Sets full pitch hiragana | 4
Full pitch Katakana | Sets full pitch katakana. | 5
Half pitch Katakana | Sets half pitch katakana. | 6
Full pitch Alpha/Num | Sets full pitch letters/numbers. | 7
Half pitch Alpha/Num | Sets half pitch letters/numbers. | 8

You can set this property by using the property sheet, a macro, or Visual Basic.

Remarks

You can specify the Kanji Conversion Mode when the focus shifts to control by setting the IMEMode/KanjiConversionMode property. If set to No Control (default) the setting before the focus shifted to that control is used. For any other setting, the Kanji Conversion Mode setting for that control is used. For example, if the IMEMode/KanjiConversionMode property is set to Off, the Kanji Conversion Mode is turned off, and if the IMEMode/KanjiConversionMode property is set to On, the Kanji Conversion Mode is turned on. The Kanji Conversion Mode automatically changes each time the focus shifts between controls.

Note If set to Disable, the Kanji Conversion Mode settings cannot be changed. If any other setting is used, the Kanji Conversion Mode can be changed, but when the focus changes, the settings are lost. If you want to save the settings before the control loses the focus, set the IMEHold/HoldKanjiConversionMode property.


 Indexed Property

Indexed Property

You can use the Indexed property to set a single-field index. An index speeds up queries on the indexed fields as well as sorting and grouping operations. For example, if you search for specific employee names in a LastName field, you can create an index for this field to speed up the search for a specific name.

Setting

The Indexed property uses the following settings.

Setting | Description
No | (Default) No index.
Yes (Duplicates OK) | The index allows duplicates.
Yes (No Duplicates) | The index doesn't allow duplicates.

You can set this property only in the Field Properties section in table Design view. You can set a single-field index by setting the Indexed property in the Field Properties section in table Design view. You can set multiple-field indexes in the Indexes window by clicking Indexes on the View menu.

If you add a single-field index in the Indexes window, Microsoft Access will set the Indexed property for the field to Yes.

In Visual Basic, use the ADO Append method of the Indexes collection to create an index for a field.

Remarks

Use the Indexed property to find and sort records by using a single field in a table. The field can hold either unique or non-unique values. For example, you can create an index on an EmployeeID field in an Employees table in which each employee ID is unique or you can create an index on a Name field in which some names may be duplicates.

Note You can't index Memo, Hyperlink, or OLE Object data type fields.

You can create as many indexes as you need. The indexes are created when you save the table and are automatically updated when you change or add records. You can add or delete indexes at any time in table Design view.

Tip You can specify text that is commonly used at the beginning or the end of a field name (such as "ID", "code", or "num") for the AutoIndex On Import/Create option on the Tables/Queries tab, available by clicking Options on the Tools menu. When you import data files that contain this text in their field names, Microsoft Access creates an index for these fields.

If the primary key for a table is a single field, Microsoft Access will automatically set the Indexed property for that field to Yes (No Duplicates).

If you want to create multiple-field indexes, use the Indexes window.


 InputMask Property

InputMask Property

You can use the InputMask property to make data entry easier and to control the values users can enter in a text box control. For example, you could create an input mask for a Phone Number field that shows you exactly how to enter a new number: (___) ___-____. It is often easier to use the Input Mask Wizard to set the property for you.

Setting

The InputMask property can contain up to three sections separated by semicolons (;).

Section | Description
First | Specifies the input mask itself; for example, !(999) 999-9999. For a list of characters you can use to define the input mask, see the following table.
Second | Specifies whether Microsoft Access stores the literal display characters in the table when you enter data. If you use 0 for this section, all literal display characters (for example, the parentheses in a phone number input mask) are stored with the value; if you enter 1 or leave this section blank, only characters typed into the control are stored.
Third | Specifies the character that Microsoft Access displays for the space where you should type a character in the input mask. For this section, you can use any character; to display an empty string, use a space enclosed in quotation marks (" ").

In Visual Basic you use a string expression to set this property. For example, the following specifies an input mask for a text box control used for entering a phone number:

Forms!Customers!Telephone.InputMask = "(###) ###-####"

When you create an input mask, you can use special characters to require that certain data be entered (for example, the area code for a phone number) and that other data be optional (such as a telephone extension). These characters specify the type of data, such as a number or character, that you must enter for each character in the input mask.

You can define an input mask by using the following characters.

Character | Description
0 | Digit (0 to 9, entry required, plus [+] and minus [-] signs not allowed).
9 | Digit or space (entry not required, plus and minus signs not allowed).
# | Digit or space (entry not required; spaces are displayed as blanks while in Edit mode, but blanks are removed when data is saved; plus and minus signs allowed).
L | Letter (A to Z, entry required).
? | Letter (A to Z, entry optional).
A | Letter or digit (entry required).
a | Letter or digit (entry optional).
& | Any character or a space (entry required).
C | Any character or a space (entry optional).
. , : ; - / | Decimal placeholder and thousand, date, and time separators. (The actual character used depends on the settings in the Regional Settings Properties dialog box in Windows Control Panel).
< | Causes all characters to be converted to lowercase.
> | Causes all characters to be converted to uppercase.
! | Causes the input mask to display from right to left, rather than from left to right. Characters typed into the mask always fill it from left to right. You can include the exclamation point anywhere in the input mask.
\ | Causes the character that follows to be displayed as the literal character (for example, \A is displayed as just A).

Note Setting the InputMask property to the word "Password" creates a password-entry control. Any character typed in the control is stored as the character but is displayed as an asterisk (*). You use the Password input mask to prevent displaying the typed characters on the screen.

For a control, you can set this property in the control's property sheet. For a field in a table, you can set the property in table Design view (in the Field Properties section) or in Design view of the Query window (in the Field Properties property sheet).

You can also set the InputMask property by using a macro or Visual Basic.

Remarks

When you type data in a field for which you've defined an input mask, the data is always entered in Overtype mode. If you use the BACKSPACE key to delete a character, the character is replaced by a blank space.

If you move text from a field for which you've defined an input mask onto the Clipboard, the literal display characters are copied, even if you have specified that they not be saved with data.

Note Only characters that you type directly in a control or combo box are affected by the input mask. Microsoft Access ignores any input masks when you import data, run an action query, or enter characters in a control by setting the control's Text property in Visual Basic or by using the SetValue action in a macro.

When you've defined an input mask and set the Format property for the same field, the Format property takes precedence when the data is displayed. This means that even if you've saved an input mask, the input mask is ignored when data is formatted and displayed. The data in the underlying table itself isn't changed; the Format property affects only how the data is displayed.


 InputParameters Property

InputParameters Property

You can use the InputParameters property to specify or determine the input parameters that are passed to a SQL statement in the RecordSource property of a form or report or a stored procedure when used as the record source within a Microsoft Access project (.adp).

Setting

<name> <type> = <expression> [,<name> <type> = <expression> ] ...

The InputParameters property has the following arguments.

Argument | Description
name | The name of the parameter. If it is a stored procedure parameter, it requires a leading @ sign. Spaces are not allowed in parameter names.
type | The SQL Server datatype of the parameter.
expression | A Microsoft Access expression that is passed to the expression service to resolve. Like other expressions, it can refer to another control on the form, it can supply a prompt text for user input, or it can be a literal.
 | If the = sign is followed by nothing or immediately by a comma, the proc is executed using the default parameter value as defined in the query or CREATE PROC command. This is also true if the parameter is not listed in the string at all.

You can set this property by using the property sheet or Visual Basic.

Remarks

When used with a RecordSource property:

An example InputParameter property string used with a SQL statement in the RecordSource property would use the following syntax.

state char=[Form]![StateList], salesyear smallint=[Enter year of interest]

This would result in the state parameter being set to the current value of the StateList control, and the user getting prompted for the salesyear parameter. If there were any other parameters that were not in this list, they would get default values assigned.

The query should be executed with one ? marker for each non-default parameter in the InputParameter list.

A refresh or requery command (via menu, keyboard, or Navigation Bar) in Access should trigger a reexecute of the query. Users can do this in code by calling the standard Recordset.Requery method. If the value of a parameter is bound to a control on the form, the current value of the control is used at requery time. The query is not automatically reexecuted when the value of the control changes.

When used with a stored procedure:

An example InputParameter property string used with stored procedure would be:

@state char=[Form]![StateList], @salesyear smallint=[Enter year of interest]

This would result in the @state parameter being set to the current value of the StateList control, and the user getting prompted for the @salesyear parameter. If there were any other parameters to the stored proc that were not in this list, they would get default values assigned.

The stored procedure should be executed using a command string containing the {call } syntax with one ? marker for each non-default parameter in the InputParameter list.

A refresh or requery command (via menu, keyboard, or Navigation Bar) in Access should trigger a reexecute of the stored procedure. Users can do this in code by calling the standard Recordset.Requery method. If the value of a parameter is bound to a control on the form, the current value of the control is used at requery time. The stored procedure is not automatically reexecuted when the value of the control changes.

This builder dialog is invoked when a stored procedure is first selected as the record source of a form if the stored procedure has any parameters. After initial creation of the InputParameters string, this same dialog is used as a builder for changing the string. In this case however the list of parameters comes from what already exists in the string.

Parameter values are also settable in code using the ActiveX Data Object's (ADO) Command and Parameter objects. If the result returns a result set, a form can be bound to it by setting the form's Recordset property. ADO coding is the only way to handle stored procedures that do not return result sets such as action queries, those that return output parameters, or those that return multiple result sets.


 InSelection Property

InSelection Property

You can use the InSelection property to determine or specify whether a control on a form in Design view is selected.

Setting

The InSelection property uses the following settings.

Setting | Description
True (-1) | The control is selected.
False (0) | The control isn't selected.

This property is available only by using a macro or Visual Basic.

Remarks

When a control is selected, its sizing handles are visible and it can be resized by the user. More than one control can be selected at a time.


 InsideHeight, InsideWidth Properties

InsideHeight, InsideWidth Properties

You can use the InsideHeight and InsideWidth properties to determine the height and width (in twips) of the window containing a form.

Setting

  • The InsideHeight property. An Integer value expressed in twips that represents the height of a form window.

  • The InsideWidth property. An Integer value expressed in twips that represents the width of a form window.

The InsideHeight and InsideWidth properties are available only by using a macro or Visual Basic and can be set at any time.

Remarks

If you want to determine the interior dimensions of the form itself, you use the Width property to determine the form width and the sum of the heights of the form's visible sections to determine its height (the Height property applies only to form sections, not to forms). The interior of a form is the region inside the form, excluding the scroll bars and the record selectors.

You can also use the WindowHeight and WindowWidth properties to determine the height and width of the window containing a form.

If a window is maximized, setting these properties doesn't have any effect until the window is restored to its normal size.


 IsBroken Property

IsBroken Property

The IsBroken property returns a Boolean value indicating whether a Reference object points to a valid reference in the Windows Registry.

Setting

The IsBroken property is available only by using Visual Basic and is read-only.

The default value of the IsBroken property is False (0). The IsBroken property returns True (-1) only if the Reference object no longer points to a valid reference in the Registry.

Remarks

By evaluating the IsBroken property, you can determine whether or not the file associated with a particular Reference object has been moved to a different directory or deleted.

If the IsBroken property is True, Microsoft Access generates an error when you try to read the Name or FullPath properties.


 IsCompiled Property

IsCompiled Property

The IsCompiled property returns a Boolean value indicating whether the Visual Basic project is in a compiled state.

Setting

The IsCompiled property is available only by using Visual Basic and is read-only.

The IsCompiled property returns True (-1) if the project is in a compiled state.

Remarks

You can force Visual Basic to compile the project from the user interface while in module Design view by clicking Compile All Modules or Compile And Save All Modules on the Debug menu.

The IsCompiled property of the Application object is False (0) when the project has never been fully compiled, if a module has been added, edited, or deleted after compilation, or if a module hasn't been saved in a compiled state.


IsConnected Property

You can use the IsConnected property to determine if the CurrentProject or CodeProject object is currently connected.

Setting

The IsConnected property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The CurrentProject or CodeProject object is currently connected.
No | False (0) | The CurrentProject or CodeProject object is not connected

The IsConnected property is available only by using Visual Basic and is read-only.


 IsHyperlink Property

IsHyperlink Property

You can use the IsHyperlink property to specify or determine if the data contained in a text box or combo box is a hyperlink.

Setting

The IsHyperlink property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The data displayed is a hyperlink.
No | False (0) | The data displayed is not a hyperlink.

You can set the IsHyperlink property by using the property sheet, a macro, or Visual Basic.


IsLoaded Property

You can use the IsLoaded property to determine if an AccessObject is currently loaded.

Setting

The IsLoaded property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The specified AccessObject is loaded.
No | False (0) | The specified AccessObject is not loaded..

The IsLoaded property is available only by using Visual Basic and is read-only.


 IsVisible Property

IsVisible Property

You can use the IsVisible property in Visual Basic to determine whether a control on a report is visible.

Setting

The IsVisible property uses the following settings.

Setting | Description
True (-1) | (Default) The control is visible.
False (0) | The control isn't visible.

You can set the IsVisible property only in the Print event of a report section that contains the control.

Remarks

You can use the IsVisible property together with the HideDuplicates property to determine when a control on a report is visible and show or hide other controls as a result. For example, you could hide a line control when a text box control is hidden because it contains duplicate values.


 Item Property (Collections)

Item Property (Collections)

The Item property returns a specific member of a collection either by position or by index.

Setting

object.Item(index)

The Item property uses the following settings.

Setting | Description
object | One of the following collections:
 | Controls Forms Modules Pages Reports Properties AccessObjectProperties DataAccessPages AllForms AllReports | AllDataAccessPages AllMacros AllModules AllTables AllQueries AllViews AllStoredProcedures AllDatabaseDiagrams FormatConditions
index | An expression that specifies the position of a member of the collection referred to by the object argument. If a numeric expression, the index argument must be a number from 0 to the value of the collection's Count property minus 1. If a string expression, the index argument must be the name of a member of the collection.

The Item property is available only by using Visual Basic and is read-only.

Remarks

If the value provided for the index argument doesn't match any existing member of the collection, an error occurs.

The Item property is the default member of a collection, so you don't have to specify it explicitly. For example, the following two lines of code are equivalent:

Debug.Print Modules(0)
Debug.Print Modules.Item(0)


 Item Property (ObjectFrame Control)

Item Property (ObjectFrame Control)

You can use the Item property to get a description of the linked data displayed in a chart control or unbound object frame.

Setting

The Item property setting is a string expression and is read-only in all views.

Note If you are using Automation (formerly called OLE Automation), and need to specify a range of data, use the SourceItem property.

Remarks

The description of a linked object frame depends on the kind of OLE object it is linked to. For example, if you link it to cells in a Microsoft Excel worksheet, Microsoft Access displays the cell data in the object frame, and the Item property identifies the linked cells using the row-and-column format. For a chart, the Item property setting is the word "Chart". For a graphic, the setting is the coordinates of the linked graphic area.

Note The data for a linked OLE object is displayed in the frame but is stored by the application that created the data. To change the data, you must use that application.

When you link an OLE object to an unbound object frame by clicking Paste Special on the Edit menu, Microsoft Access sets the SourceObject, OLEClass, and Item properties. The following table shows typical property settings for various OLE objects.

Object | SourceObject property | OLEClass property | Item property
Worksheet | C:\Excel\Xls\Mywrksht.xls | Microsoft Excel Worksheet | R1C1:R7C4
Chart | C:\Excel\Xls\Mychart.xlc | Microsoft Excel Chart | Chart
Graphic | C:\Windows\Mybitmap.bmp | Paintbrush Picture | 0 0 72 71


 ItemData Property

ItemData Property

The ItemData property returns the data in the bound column for the specified row in a combo box or list box.

Syntax

control.ItemData(rowindex)

The ItemData property has the following arguments.

Argument | Description
control | A Control object that represents a combo box or list box.
rowindex | The row in the combo box or list box containing the data you want to return. Rows in combo and list boxes are indexed starting with zero. For example, to return the item in the sixth row of a combo box, you'd specify 5 for the rowindex argument.

Remarks

The ItemData property enables you to iterate through the list of entries in a combo box or list box. For example, suppose you wanted to iterate through all of the items in a list box to search for a particular entry. You can use the ListCount property to determine the number of rows in the list box, and then use the ItemData property to return the data for the bound column in each row.

You can also use the ItemData property to return data only from selected rows in a list box. You can iterate through the ItemsSelected collection to determine which row or rows in the list box have been selected, and use the ItemData property to return the data in those rows. You must set the MultiSelect property of the list box to Simple or Extended to enable the user to select more than one row at a time.

Tip You can use the Column property to return data from a specified row and column, even if the specified column isn't the bound column.


 ItemsSelected Property

ItemsSelected Property

You can use the ItemsSelected property to return a reference to the hidden ItemsSelected collection. This hidden collection can be used to access data in the selected rows of a multiselect list box control.

Remarks

The ItemsSelected collection is unlike other collections in that it is a collection of Variants rather than of objects. Each Variant is an integer index referring to a selected row in a list box or combo box.

Use the ItemsSelected collection in conjunction with the Column property or the ItemData property to retrieve data from selected rows in a list box or combo box. You can list the ItemsSelected collection by using the For Each...Next statement.

For example, if you have an Employees list box on a form, you can list the ItemsSelected collection and use the control's ItemData property to return the value of the bound column for each selected row in the list box.

Tip To enable multiple selection of rows in a list box, set the control's MultiSelect property to Simple or Extended.

The ItemsSelected collection has no methods and two properties, the Count and Item properties.


 KeepTogether Property - Groups

KeepTogether Property - Groups

You can use the KeepTogether property for a group in a report to keep parts of a group - including the group header, detail section, and group footer - together on the same page. For example, you might want a group header to always be printed on the same page with the first detail section.

Setting

The KeepTogether property for a group uses the following settings.

Setting | Visual Basic | Description
No | 0 | (Default) Prints the group without keeping the group header, detail section, and group footer on the same page.
Whole Group | 1 | Prints the group header, detail section, and group footer on the same page.
With First Detail | 2 | Prints the group header on a page only if it can also print the first detail record.

You can set the KeepTogether property for a group by using the Sorting And Grouping box, a macro, or Visual Basic.

In Visual Basic, you set the KeepTogether property for a group in report Design view or the Open event procedure of a report by using the GroupLevel property.

Remarks

To set the KeepTogether property for a group to a value other than No, you must set the GroupHeader or GroupFooter property or both to Yes for the selected field or expression.

A group includes the group header, detail section, and group footer. If you set the KeepTogether property for a group to Whole Group and the group is too large to fit on one page, Microsoft Access will ignore the setting for that group. Similarly, if you set this property to With First Detail and either the group header or detail record is too large to fit on one page, the setting will be ignored.

If the KeepTogether property for a section is set to No and the KeepTogether property for a group is set to Whole Group or With First Detail, the KeepTogether property setting for the section is ignored.


 KeepTogether Property - Sections

KeepTogether Property - Sections

You can use the KeepTogether property for a section to print a form or report section all on one page. For example, you might have a group of related information that you don't want printed across two pages.

Note The KeepTogether property applies only to form and report sections (except page headers and page footers).

Setting

The KeepTogether property for a section uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | Microsoft Access starts printing the section at the top of the next page if it can't print the entire section on the current page.
No | False (0) | (Default) Microsoft Access prints as much of the section as possible on the current page and prints the rest on the next page.

You can set this property by using the section's property sheet, a macro, or Visual Basic.

You can set the KeepTogether property for a section only in form Design view or report Design view.

Remarks

Usually, when a page break occurs while a section is being printed, Microsoft Access continues printing the section on the next page. By using the section's KeepTogether property, you can print the section all on one page. If a section is longer than one page, Microsoft Access starts printing it on the next page and continues on the following page.

If the KeepTogether property for a group is set to Whole Group or With First Detail and the KeepTogether property for a section is set to No, the KeepTogether property setting for the section is ignored.


KeyboardLanguage Property

Language-specific information

You can use the KeyboardLanguage property to specify or determine the keyboard language on entry into a control.

Setting

The KeyboardLanguage uses the following settings.

Setting | Visual Basic | Description
System | 0 | Sets the initial keyboard language to the most recently used keyboard language.
English | 11 | Sets the initial keyboard language to English.
Arabic | 3 | Sets the initial keyboard language to Arabic.
Hebrew | 15 | Sets the initial keyboard language to Hebrew.

You can set this property by using the property sheet or Visual Basic.

For more information about right-to-left properties, see Learn more about right-to-left properties in Microsoft Access 2000.


 KeyPreview Property

KeyPreview Property

You can use the KeyPreview property to specify whether the form-level keyboard event procedures are invoked before a control's keyboard event procedures.

Note The keyboard events are KeyDown, KeyUp, and KeyPress.

Setting

The KeyPreview property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The form receives keyboard events first, then the active control receives keyboard events.
No | False (0) | (Default) Only the active control receives keyboard events.

You can set the KeyPreview property by using the form's property sheet, a macro, or Visual Basic.

You can set the KeyPreview property in any view.

Remarks

You can use the KeyPreview property to create a keyboard-handling procedure for a form. For example, when an application uses function keys, setting the KeyPreview property to True allows you to process keystrokes at the form level rather than writing code for each control that might receive keystroke events.

To handle keyboard events only at the form level and prevent controls from receiving keyboard events, set the KeyAscii argument to 0 in the form's KeyPress event procedure, and set the KeyCode argument to 0 in the form's KeyDown and KeyUp event procedures.

If a form has no visible or enabled controls, it automatically receives all keyboard events.


Kind Property

The Kind property indicates the type of reference that a Reference object represents.

Setting

The Kind property is read-only and can be read only from Visual Basic.

The Kind property returns the following values:

Value | Description
Project (1) | The Reference object represents a reference to a Visual Basic project.
TypeLib (0) | The Reference object represents a reference to a file that contains a type library.


 LabelAlign, TextAlign Properties

LabelAlign, TextAlign Properties

  • The LabelAlign property specifies the text alignment within attached labels on new controls.

  • The TextAlign property specifies the text alignment in new controls.

Setting

The LabelAlign property uses the following settings.

Setting | Description
General | (Default) The label text aligns to the left.
Left | The label text aligns to the left.
Center | The label text is centered.
Right | The label text aligns to the right.

You can set the LabelAlign property by using a control's default control style or the DefaultControl method in Visual Basic.

The TextAlign property uses the following settings.

Setting | Visual Basic | Description
General | 0 | (Default) The text aligns to the left; numbers and dates align to the right.
Left | 1 | The text, numbers, and dates align to the left.
Center | 2 | The text, numbers, and dates are centered.
Right | 3 | The text, numbers, and dates align to the right.

You can set the TextAlign property by using the control's property sheet, a macro, or Visual Basic.

You can also set the TextAlign property by clicking Align Left [image] , Center [image] , and Align Right [image] on the Formatting (Form/Report) toolbar.

You can set the default for the TextAlign property by using a control's default control style or the DefaultControl method in Visual Basic.

Remarks

When created, controls have an attached label (as long as their AutoLabel property is set to Yes). Changes to the LabelAlign default control style setting affect only controls created on the current form or report. To change the default control style for all new forms or reports that you create without using a Microsoft Access wizard, see Specify a new template for forms and reports.


 LabelX, LabelY Properties

LabelX, LabelY Properties

You can use the LabelX and LabelY properties to change the placement of labels attached to new controls. For example, you might want an attached label to appear to the right of a control instead of to the left.

Setting

Enter a positive or negative number that specifies the distance of label text from the upper-left corner of the label's attached control. To use a unit of measurement different from the setting in the Regional Settings Properties dialog box in Windows Control Panel, specify the unit, such as cm or in (for example, 2 cm or 1.5 in).

You can set these properties only by using a control's default control style or the DefaultControl method in Visual Basic.

Remarks

The LabelX property sets the distance on the horizontal axis and the LabelY property sets the distance on the vertical axis. A negative number for the LabelX property places the label's upper-left corner to the left of the control. A negative number for the LabelY property places the label's upper-left corner above the control. Positive numbers for both properties place the label to the right of and below the upper-left corner of the control.

If the LabelAlign property is set to Right or Left, the LabelX and LabelY properties specify the distance between the right or left edge of the label and the control's upper-left corner. If the LabelAlign property is set to Center, the LabelX and LabelY properties specify the distance between the center of the label and the control's upper-left corner.

Combining the LabelX, LabelY, and LabelAlign properties produces the following results.

LabelX | LabelY | LabelAlign | Result
-1 in | 0 in | General | The label's upper-left corner is 1 inch to the left of the control's upper-left corner.
-.5 in | 0 in | Right | The label's upper-right corner is 0.5 inch to the left of the control's upper-left corner.
.5 in | -.5 in | Center | The center of the top of the label is 0.5 inch to the right and 0.5 inch above the control's upper-left corner.


 LanguageSettings Property (Microsoft Access)

LanguageSettings Property

You can use the LanguageSettings property to return a reference to the current LanguageSettings object and its related properties

Setting

[application.]LanguageSettings[.property]

The ComAddIns property uses the following settings.

Setting | Description
application | The Application object.
LanguageSettings | Required. When used without specifying a method or property, returns the LanguageSettings object.
property | A property of the LanguageSettings object.

The LanguageSettings property is available only by using Visual Basic.

Remarks

Once you establish a reference to the LanguageSettings object, you can access all the properties and methods of the object. You can set a reference to the LanguageSettings object by clicking References on the Tools menu while in module Design view. Then set a reference to the Microsoft Office 9.0 Object Library in the References dialog box by selecting the appropriate check box. Microsoft Access can set this reference for you if you use a Microsoft Office 9.0 Object Library constant to set a LanguageSettings object's property or as an argument to a LanguageSettings object's method.


 LayoutForPrint Property

LayoutForPrint Property

You can use the LayoutForPrint property to specify whether the form or report uses printer or screen fonts.

Setting

The LayoutForPrint property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default for reports) Uses printer fonts.
No | False (0) | (Default for forms) Uses screen fonts.

You can set this property by using the form's or report's property sheet, a macro, or Visual Basic.

The property can be set only in form Design view or report Design view.

Remarks

When you choose a font in Microsoft Access, you are choosing either a screen font or a printer font, depending on the setting of the LayoutForPrint property. Remember that printer fonts and screen fonts can differ, and characters on screen may not look exactly like those displayed on the printed page.

Tip If you select a scalable font, such as a TrueType font, the screen and printer characters will look nearly the same.

Screen fonts are the images of letters, numbers, and symbols that are installed on your system to be displayed on the screen. If you installed a printer, additional screen fonts may have been installed automatically.

Printer fonts are the letters, numbers, and symbols that are produced when you print a report or a form. The available fonts are those fonts that were installed as part of your printer's setup, and depend on your printer.

If you set the LayoutForPrint property to Yes, the Formatting (Form/Report) toolbar displays the fonts and point sizes available for your printer.

If you design a form or report on a system with a different printer than the one you will use to print, Microsoft Access displays a message when you print the form or report to let you know that it was designed for another kind of printer. If you print the form or report anyway, your printer may substitute different fonts. Similarly, Microsoft Access may substitute fonts if you change the LayoutForPrint property setting. For example, you might design a form or report with LayoutForPrint set to No, then change the setting to Yes. You can reselect the font for each control to specify the appearance of the form or report.


 Left, Top Properties (Microsoft Access)

Left, Top Properties

You can use the Left and Top properties to specify an object's location on a form or report. For example, you might want a control to be always positioned in the upper-right corner of a section.

Setting

A control's location is the distance measured from its left or top border to the left or top edge of the section containing the control. Setting the Left or Top property to 0 places the control's edge at the very left or top of the section. To use a unit of measurement different from the setting in the Regional Settings Properties dialog box in Windows Control Panel, specify the unit, such as cm or in (for example, 3 cm or 2 in).

In Visual Basic, use a numeric expression to set the value of this property. Values are expressed in twips.

For controls, you can set these properties by using a control's property sheet, a macro, or Visual Basic.

For reports, you can set these properties only by using a macro or event procedure in Visual Basic while the report is in Print Preview or being printed.

Remarks

When you move a control, its new Left and Top property settings are automatically entered in the property sheet. When you view a form or report in Print Preview or when you print a form, a control's location is determined by its Left and Top property settings along with the margin settings in the Page Setup dialog box, available by clicking Page Setup on the File menu.

For reports, the Top property setting is the amount the current section is offset from the top of the page; the Left property setting is the amount the current section is offset from the left edge of the page. Both property settings are expressed in twips. You can use these properties to specify how far down the page you want a section to print in the section's Format event procedure.


 LineSlant Property

LineSlant Property

You use the LineSlant property to specify whether a line control slants from upper left to lower right or from upper right to lower left.

Setting

The LineSlant property uses the following settings.

Setting | Visual Basic | Description
\ | False (0) | (Default) Upper left to lower right
/ | True (-1) | Upper right to lower left

You can set this property by using the control's property sheet, a macro, or Visual Basic.

Remarks

Use the LineSlant property to change a line's direction. To position and size the line on your form or report, use the mouse.


 ListCount Property (Microsoft Access)

ListCount Property

You can use the ListCount property to determine the number of rows in a list box or the list box portion of a combo box.

Setting

Microsoft Access sets the ListCount property to the number of rows in the list box or the list box portion of the combo box. The value of the ListCount property is read-only and can't be set by the user.

This property is available only by using a macro or Visual Basic. You can read this property only in Form view and Datasheet view.

Remarks

The ListCount property setting contains the total number of rows in the combo box list or list box, as determined by the control's RowSource and RowSourceType properties. If the control is based on a table or query (the RowSourceType property is set to Table/Query and the RowSource property is set to a particular table or query), the ListCount property setting contains the number of records in the table or query result set. If the RowSourceType property is set to Value List, the ListCount property setting contains the number of rows the value list specified in the RowSource property results in (this depends on the value list and the number of columns in the list box or combo box list, as set by the ColumnCount property).

If you set the ColumnHeads property to Yes, the row of column headings is included in the number of rows returned by the ListCount property. For combo boxes and list boxes based on a table or query, adding column headings adds an additional row. For combo boxes and list boxes based on a value list, adding column headings leaves the number of rows unchanged (the first row of values becomes the column headings).

You can use the ListCount property with the ListRows property to specify how many rows you want to display in the list box portion of a combo box.


 LinkChildFields, LinkMasterFields Properties

LinkChildFields, LinkMasterFields Properties

You can use the LinkChildFields and LinkMasterFields properties together to specify how Microsoft Access links records in a form or report to records in a subform, subreport, or embedded object, such as a chart. If these properties are set, Microsoft Access automatically updates the related record in the subform when you change to a new record in a main form.

Setting

You can set the LinkChildFields and LinkMasterFields properties for the subform, subreport, or embedded object as follows:

  • The LinkChildFields property. Enter the name of one or more linking fields in the subform, subreport, or embedded object.

  • The LinkMasterFields property. Enter the name of one or more linking fields or controls in the main form or report.

You can use the Subform/Subreport Field Linker to set these properties by clicking the Build button [image] to the right of the property box in the property sheet.

You can also set these properties by using a string expression in a macro or Visual Basic.

The properties can only be set in Design view or during the Open event of a form or report.

Remarks

The fields or controls you use to set these properties don't need to have the same names, but they must contain the same kind of data and have the same or a compatible data type and field size. For example, an AutoNumber field is compatible with a Number field if the FieldSize property for the Number field is set to Long Integer.

You can use the name of a control (including the name of a calculated control) to set the LinkMasterFields property, but you can't use the name of a control to set the LinkChildFields property. If you want to use a calculated value as the link for a subform, subreport, or embedded object, define a calculated field in the child object's underlying query and set the LinkChildFields property to the field.

When you specify more than one field or control name for these property settings, you must enter the same number of fields or controls for each property setting and separate the names with a semicolon (;).

When you create a subform or subreport by dragging a form or report from the Database window onto another form or report or by using the Form Wizard, Microsoft Access automatically sets the LinkChildFields and LinkMasterFields properties under the following conditions:

  • Both the main form or report and the child object are based on tables, and a relationship between those tables has been defined with the Relationships command. Microsoft Access uses the fields that relate the two tables as the linking fields.

  • The main form or report is based on a table with a primary key, and the subform or subreport is based on a table or query that contains a field with the same name and the same or a compatible data type as the primary key. Microsoft Access uses the primary key from the main object's underlying table and the identically named field from the child object's underlying table or query as the linking fields.

Note The linking fields don't have to be included in the main object or in the child object. As long as they are contained in the objects' underlying tables or queries, you can use the fields to link the objects. When you use a wizard, Microsoft Access automatically includes the linking fields.


 LimitToList Property

LimitToList Property

You can use the LimitToList property to limit a combo box's values to the listed items.

Setting

The LimitToList property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | If the user selects an item from the list in the combo box or enters text that matches a listed item, Microsoft Access accepts it. If the entered text doesn't match a listed item, the text isn't accepted and the user must then retype the entry, select a listed item, press ESC, or click Undo on the Edit menu.
No | False (0) | (Default) Microsoft Access accepts any text that conforms to the ValidationRule property.

You can set the LimitToList property by using the combo box's property sheet, a macro, or Visual Basic.

For table fields, you can set this property on the Lookup tab of the Field Properties section of table Design view for fields with the DisplayControl property set to Combo Box.

Tip Microsoft Access sets the LimitToList property automatically when you select Lookup Wizard as the data type for a field in table Design view.

Remarks

When the LimitToList property of a bound combo box is set to No, you can enter a value in the combo box that isn't included in the list. Microsoft Access stores the new value in the form's underlying table or query (in the field specified in the combo box's ControlSource property), not the table or query set for the combo box by the RowSource property. To have newly entered values appear in the combo box, you must add the new value to the table or query set in the RowSource property by using a macro or Visual Basic event procedure that runs when the NotInList event occurs.

Note If you set the combo box's BoundColumn property to any column other than the first visible column (or if you set BoundColumn to 0), the LimitToList property is automatically set to Yes.

Setting both the LimitToList property and the AutoExpand property to Yes lets Microsoft Access find matching values from the list as the user enters characters in the text box portion of the combo box, and restricts the entries to only those values.

When the LimitToList property is set to Yes and the user clicks the arrow next to the combo box, Microsoft Access selects matching values in the list as the user enters characters in the text box portion of the combo box, even if the AutoExpand property is set to No. If the user presses ENTER or moves to another control or record, the selected value appears in the combo box.

Combo boxes accept Null values when the LimitToList property is set to Yes or True, whether or not the list contains Null values. If you want to prevent users from entering a Null value in a combo box, set the Required property of the field in the table to which the combo box is bound to Yes.


 Lines Property

Lines Property

The Lines property returns a string containing the contents of a specified line or lines in a standard module or a class module.

Setting

object.Lines(line, numlines)

The Lines property uses the following settings.

Setting | Description
object | A Module object.
line | A Long value that specifies the line number of the first line to return.
numlines | A Long value that specifies the number of lines to return.

The Lines property is available only by using Visual Basic and is read-only.

Remarks

Lines in a module are numbered beginning with 1. For example, if you read the Lines property with a value of 1 for the line argument and 1 for the numlines argument, the Lines property returns a string containing the text of the first line in the module.

To insert a line of text into a module, use the InsertLines method.


 LineSpacing Property

LineSpacing Property

You can use the LineSpacing property to specify or determine the location of information displayed within a label or text box control. For example, you might want display information in a text box control with 0.25 inches of space between each line of text within the control.

Setting

A control's displayed information location is the distance measured betwwen each line of the displayed information. To use a unit of measurement different from the setting in the Regional Settings Properties dialog box in Windows Control Panel, specify the unit, such as cm or in (for example, 3 cm or 2 in).

In Visual Basic, use a numeric expression to set the value of this property. Values are expressed in twips.

You can set these properties by using the property sheet, a macro, or Visual Basic.


 ListIndex Property (Microsoft Access)

ListIndex Property

You can use the ListIndex property to determine which item is selected in a list box or combo box.

Setting

The ListIndex property is an integer from 0 to the total number of items in a list box or combo box minus 1. Microsoft Access sets the ListIndex property value when an item is selected in a list box or list box portion of a combo box. The ListIndex property value of the first item in a list is 0, the value of the second item is 1, and so on.

This property is available only by using a macro or Visual Basic. You can read this property only in Form view and Datasheet view. This property is read-only and isn't available in other views.

Remarks

The ListIndex property value is also available by setting the BoundColumn property to 0 for a combo box or list box. If the BoundColumn property is set to 0, the underlying table field to which the combo box or list box is bound will contain the same value as the ListIndex property setting.

List boxes also have a MultiSelect property that allows the user to select multiple items from the control. When multiple selections are made in a list box, you can determine which items are selected by using the Selected property of the control. The Selected property is an array of values from 0 to the ListCount property value minus 1. For each item in the list box the Selected property will be True (-1) if the item is selected and False (0) if it is not selected.

The ItemsSelected collection also provides a way to access data in the selected rows of a list box or combo box.


 ListRows Property

ListRows Property

You can use the ListRows property to set the maximum number of rows to display in the list box portion of a combo box.

Setting

The ListRows property holds an integer that indicates the maximum number of rows to display. The default setting is 8. The setting for the ListRows property must be from 1 to 255.

You can set this property by using the combo box's property sheet, a macro, or Visual Basic.

For table fields, you can set this property on the Lookup tab of the Field Properties section of table Design view for fields with the DisplayControl property set to Combo Box.

Tip Microsoft Access sets the ListRows property automatically when you select Lookup Wizard as the data type for a field in table Design view.

In Visual Basic, use a numeric expression to set the value of this property.

You can set the default for this property by using a combo box's default control style or the DefaultControl method in Visual Basic.

Remarks

If the actual number of rows exceeds the number specified by the ListRows property setting, a vertical scroll bar appears in the list box portion of the combo box.


 ListWidth Property

ListWidth Property

You can use the ListWidth property to set the width of the list box portion of a combo box.

Setting

The ListWidth property holds a value specifying the width of the list box portion of a combo box in inches or centimeters, depending on the measurement system (U.S. or Metric) selected in the Measurement System box on the Number tab of the Regional Settings Properties dialog box of Windows Control Panel. To use a unit other than the default, include a measurement indicator, such as cm or in. The default setting (Auto) makes the list box portion of the combo box the same width as the combo box.

You can set the ListWidth property by using the combo box's property sheet, a macro, or Visual Basic.

For table fields, you can set this property on the Lookup tab of the Field Properties section of table Design view for fields with the DisplayControl property set to Combo Box.

Tip Microsoft Access sets the ListWidth property automatically when you select Lookup Wizard as the data type for a field in table Design view.

In Visual Basic, use a numeric expression to set the value of this property. The default unit of measurement in Visual Basic is twips.

You can also set the default for this property by using a combo box's default control style or the DefaultControl method in Visual Basic.

Remarks

The list portion of the combo box can be wider than the combo box but can't be narrower.

If you want to display a multiple-column list, enter a value that will make the list box wide enough to show all the columns.

Tip When designing combo boxes, be sure to leave enough space to display your data and for Microsoft Access to insert a vertical scroll bar.


 LocationOfComponents Property

LocationOfComponents Property

You can use the LocationOfComponents property to specify or determine the central URL or path where Microsoft Office controls can be downloaded by authorized users viewing your saved database.

Setting

The LocationOfComponents property is a string expression and is available only by using Visual Basic .

Remarks

The Microsoft Office controls are automatically downloaded with the Web page if the DownloadComponents property is True, the components are not already installed, the path is valid and points to a location that contains the necessary components, and the user has a valid Microsoft Office 2000 license.


 LogMessages Property (Microsoft Access)

LogMessages Property

You can use the LogMessages property in an SQL pass-through query to specify whether messages returned from an SQL database are stored in a messages table in the current Microsoft Access database.

Note The LogMessages property applies only to pass-through queries.

Setting

The LogMessages property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | Microsoft Access stores messages returned from the SQL database in a messages table.
No | False (0) | (Default) Microsoft Access doesn't store messages returned from the SQL database.

You can set this property by using the query's property sheet or Visual Basic.

Remarks

The name of the messages table where the returned messages are stored is username - nn, where username is the logon name of the user running the pass-through query, and nn is an integer that increases in increments of 1, starting at 00. For example, if user JoanW sets the LogMessages property to Yes and receives messages from an SQL database, the messages table will be named JoanW - 00. If JoanW receives messages in another Microsoft Access session (and the first table hasn't been deleted), a new table named JoanW - 01 is created.

Note Error messages from SQL Server aren't stored in the messages table.


 lpOLEObject Property

lpOLEObject Property

You can use the lpOLEObject property in Visual Basic to determine the memory address of an OLE object. The lpOLEObject property returns a pointer to IOLEObject.

Setting

You can use the lpOLEObject property to refer to the address of the active OLE object. If no object is displayed, the setting is 0. The lpOLEObject property setting is a Long data type value specified by Microsoft Access.

This property setting isn't available in Design view and is read-only in other views.

Remarks

In the OLE dynamic link libraries (DLLs), many function calls require the address of the OLE object as an argument. You can pass the value specified by the lpOLEObject property when making application programming interface (API) calls to the OLE DLLs.

Note If an API call is made to a function that makes a callback to the control, the results will be unpredictable.


 Major Property

Major Property

The Major property of a Reference object returns a Long value indicating the major version number of an application to which you have set a reference.

Setting

The Major property is available only by using Visual Basic and is read-only.

Remarks

The Major property returns the value to the left of the decimal point in a version number. For example, if you've set a reference to an application whose version number is 2.5, the Major property returns 2.


 MaxRecButton Property

MaxRecButton Property

You can use the MaxRecButton property to specify or determine if the maximum record limit button is available on the navigation bar of a form in Datasheet view or Form view.

Note This property is only available for forms within a Microsoft Access project (.adp).

Setting

The MaxRecButton property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The maximum record limit button is available to the user.
No | False (0) | The maximum record limit button is unavailable to the user.

You can set this property by using the property sheet, or Visual Basic.


 MaxRecords Property (Microsoft Access)

MaxRecords Property

You can use the MaxRecords property to determine or specify the maximum number of records that will be returned by:

  • A query that returns data from an ODBC database in an Microsoft Access database (.mdb).

  • A view that returns data from a SQL database in an Access project (.adp).

Setting

The MaxRecords property setting is a Long Integer value representing the number of records that will be returned.

In an Microsoft Access database, you can set this property by using the query's property sheet or Visual Basic.

When you set this property in Visual Basic you use the ADO MaxRecords property.

Remarks

Records are returned in the order specified by the query's ORDER BY clause.

You can use the MaxRecords property in situations where limited system resources might prohibit a large number of returned records.


 MDE Property

MDE Property

You can use the MDE property to determine whether a database has been saved as a .mde file.

Note This property is only available with a Microsoft Access database (.mdb)

Setting

When a database is saved as an .mde file, Microsoft Access adds the MDE property to the database and sets it to the String value "T".

The MDE property can be determined only by using Visual Basic and is read-only in all views.

Important Trying to determine the MDE property for a database that hasn't been saved as an .mde file will generate run-time error 3270 (property not found). The MDE property doesn't exist in a database until the database is saved as an .mde file.

Remarks

You can convert a database to an .mde file by pointing to Database Utilities on the Tools menu and clicking Make MDE File. When you save a database as an .mde file, Microsoft Access removes all editable source code, compiles all modules, and compacts the database. Your Visual Basic code still works, but the code cannot be viewed or changed. In addition, you can't add or make changes to form or report objects.

Warning Be sure to retain a copy of your original database. If you need to change any code or the design of objects in an .mde database, you must do so in the original database and then create a new .mde database. You will also need the original database in order to convert to future versions of Microsoft Access because you can't directly convert .mde files.

Saving a database as an .mde file is most appropriate when you want to prevent changes to forms or reports, or hide your Visual Basic code from the database users. You could also convert a database to an .mde file when you create your own wizards or for the front-end portion of a front-end/back-end application.

A replicated database can't be saved as an .mde file; however, once a database is saved as an .mde file, it can be replicated.


 Me Property

Me Property

You can use the Me property in Visual Basic to refer to a form, report, (or to the form or report associated with a subform or subreport), or class module where Visual Basic code is currently running.

Setting

The Me property is available only by using Visual Basic and is read-only in all views.

Remarks

The Me property contains an object reference to the current form or report and is faster than a fully qualified object reference. For example, the following two code fragments refer to the value of the LastName control for the current record on the Employees form:

strLastName = Forms!Employees.LastName
strLastName = Me!LastName

In most cases, the form or report referred to by the Me property is the same form or report referred to by the ActiveForm or ActiveReport properties of the Screen object. However, these properties refer to the form or report with the focus, whereas the Me property always refers to the form or report in which code is running. For example, a Timer event can occur in a form that doesn't have the focus. When that happens, the code Screen.ActiveForm refers to the form with the focus, and the Me property refers to the form in which the Timer event occurred. Therefore, when you are creating generic procedures that operate on the current form, the preferred method is to pass the form to the procedure by using the Me property rather than the ActiveForm property.

You can use the Me keyword in class modules to refer to the current instance of that class. Just as you use Me in form or report class modules to retrieve a reference to the current form or report, you use Me in a class module to retrieve a reference to the current class module object.


 MenuBar Property

MenuBar Property

You can use the MenuBar property to specify the menu bar to use for a Microsoft Access database (.mdb), Access project (.adp), form, or report. You create these menu bars by using the Customize subcommand of the Toolbars command on the View menu. For more information on creating customized toolbars, see Create a custom menu bar for the current database.

You can also use the MenuBar property to specify the menu bar macro that will be used to display a custom menu bar for a database, form, or report.

Note In previous versions of Microsoft Access, you created a custom menu bar by setting the MenuBar property to the name of a menu bar macro. You then created macro groups containing the commands for the menus on this menu bar. This functionality is still supported in Access9TBD. However, it is strongly recommended that you create custom menu bars with the new Customize dialog box, available by clicking Toolbars on the View menu.

Setting

Enter the name of the menu bar you want to display. If you leave the MenuBar property setting blank, Microsoft Access displays the built-in (default) menu bar or the application's global menu bar. If you set the MenuBar property to a value that is not the name of an existing menu bar or menu bar macro, the form or report will not have a menu bar (the default menu bar will not be shown).

You can set this property by using the object's property sheet, a macro, or Visual Basic.

In Visual Basic, set this property by using a string expression that is the name of the menu bar you want to display.

To display the built-in menu bar or global menu bar for a database, form, or report by using a macro or Visual Basic, set the property to a zero-length string (" ").

Remarks

When you use the MenuBar property with forms and reports, Microsoft Access displays the specified menu bar when the form or report is opened. This menu bar is displayed whenever the form or report has the focus.

When used with the Application object, the MenuBar property enables you to display a custom menu bar throughout the database. However, if you've set the MenuBar property for a form or report in the database, the custom menu bar of the form or report will be displayed in place of the database's custom menu bar whenever the form or report has the focus. When the form or report loses the focus, the custom menu bar for the database is displayed.

Note You can switch between a database's custom menu bar and the built-in menu bar by pressing CTRL+F11.


 MinMaxButtons Property

MinMaxButtons Property

You can use the MinMaxButtons property to specify whether the Maximize and Minimize buttons will be visible on a form.

Setting

The MinMaxButtons property uses the following settings.

Setting | Visual Basic | Description
None | 0 | The Maximize and Minimize buttons aren't visible.
Min Enabled | 1 | Only the Minimize button is visible.
Max Enabled | 2 | Only the Maximize button is visible.
Both Enabled | 3 | (Default) Both the Minimize and Maximize buttons are visible.

You can set these properties by using the form's property sheet, a macro, or Visual Basic.

You can set the MinMaxButtons property only in form Design view.

Remarks

Clicking a form's Maximize button enlarges the form so it fills the Microsoft Access window. Clicking a form's Minimize button reduces the form to a short title bar at the bottom of the Microsoft Access window.

To display the Maximize and Minimize buttons on a form, you must set the form's BorderStyle property to Thin or Sizable and the ControlBox property to Yes. If you set the BorderStyle property to None or Dialog, or if you set the ControlBox property to No, the form won't have Maximize or Minimize buttons, regardless of the MinMaxButtons property setting.

Even when the MinMaxButtons property is set to None, a form always has Maximize and Minimize buttons in Design view.

If a form's MinMaxButtons property is set to None, the Maximize and Minimize commands aren't available on the form's Control menu.


 Minor Property

Minor Property

The Minor property of a Reference object returns a Long value indicating the minor version number of the application to which you have set a reference.

Setting

The Minor property is available only by using Visual Basic and is read-only.

Remarks

The Minor property returns the value to the right of the decimal point in a version number. For example, if you've set a reference to an application whose version number is 2.5, the Minor property returns 5.


 Modal Property

Modal Property

You can use the Modal property to specify whether a form opens as a modal form. When a form opens as a modal form, you must close the form before you can move the focus to another object.

Setting

The Modal property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The form opens as a modal form in Form view.
No | False (0) | (Default) The form opens as a non-modal form in Form view.

You can set this property by using the form's property sheet, a macro, or Visual Basic.

Remarks

When you open a modal form, other windows in Microsoft Access are disabled until you close the form (although you can switch to windows in other applications). To disable menus and toolbars in addition to other windows, set both the form's Modal and PopUp properties to Yes.

You can use the BorderStyle property to specify the kind of border a form will have. Typically, modal forms have the BorderStyle property set to Dialog.

Tip You can use the Modal, PopUp, and BorderStyle properties to create a custom dialog box. You can set Modal to Yes, PopUp to Yes, and BorderStyle to Dialog for custom dialog boxes.

Setting the Modal property to Yes makes the form modal only when you:

  • Open it in Form view from the Database window.

  • Open it in Form view by using a macro or Visual Basic.

  • Switch from Design view to Form view.

When the form is modal, you can't switch to Datasheet view from Form view, although you can switch to Design view and then to Datasheet view.

The form isn't modal in Design view or Datasheet view, and also isn't modal if you switch from Datasheet view to Form view.

Note You can use the Dialog setting of the Window Mode action argument of the OpenForm action to open a form with its Modal and PopUp properties set to Yes.


 Module Property

Module Property

You can use the Module property to specify a form module or report module.

Setting

The Module property is available only by using Visual Basic and is read-only in all views.

Note The Module property also returns a reference to a specified Module object.

Remarks

Use the Module property to access the properties and methods of a Module object associated with a Form or Report object.

The setting of the HasModule property of a form or report determines whether it has an associated module. If the HasModule property is False, the form or report does not have an associated module. When you refer to the Module property of that form or report while in design view, Microsoft Access creates the associated module and sets the HasModule property to True. If you refer to the Module property of a form or report at run-time and the object has its HasModule property set to False, an error will occur.

You could use this property with any of the properties and methods of the module object.


 Modules Property

Modules Property

You can use the Modules property to access the Modules collection and its related properties.

Setting

This property is available only by using Visual Basic.

Remarks

Use the properties of the Modules collection in Visual Basic to refer to all open standard modules and class modules.


 MousePointer Property

MousePointer Property

You can use the MousePointer property together with the Screen object to specify or determine the type of mouse pointer currently displayed.

Setting

The setting for the MousePointer property is an Integer value representing one of the following pointers.

Setting | Description
0 | (Default) The shape is determined by Microsoft Access
1 | Normal Select (Arrow)
3 | Text Select (I-Beam)
7 | Vertical Resize (Size N, S)
9 | Horizontal Resize (Size E, W)
11 | Busy (Hourglass)

Note Setting the MousePointer property to an integer other than one that appears in the preceding table will cause the property to be set to 0.

You can set the MousePointer property only by using Visual Basic.

Remarks

The MousePointer property affects the appearance of the mouse pointer over the entire screen. Some custom controls have a MousePointer property that, if set, will specify how the mouse pointer is displayed when it's positioned over the control.

You could use the MousePointer property to indicate that your application is busy by setting the property to 11 to display an hourglass icon. You can also read the MousePointer property to determine what's being displayed. This could be useful if you wanted to prevent a user from clicking a command button while the mouse pointer is displaying an hourglass icon.

Setting the MousePointer property to 11 is the same as passing the True (-1) argument to the Hourglass method of the DoCmd object. Conversely, passing the True argument to the Hourglass method also sets the MousePointer property to 11.


MoveLayout, NextRecord, PrintSection Properties

You can use combinations of these property settings in Visual Basic to specify or change a report's layout when the report is previewed, printed, or saved to a file:

  • The MoveLayout property specifies whether Microsoft Access should move to the next printing location on the page.

  • The NextRecord property specifies whether a section should advance to the next record.

  • The PrintSection property specifies whether a section should be printed.

Setting

The MoveLayout property uses the following settings.

Setting | Description
True (-1) | (Default) The section's Left and Top properties are advanced to the next print location.
False (0) | The section's Left and Top properties are unchanged.

The NextRecord property uses the following settings.

Setting | Description
True | (Default) The section advances to the next record.
False | The section doesn't advance to the next record.

The PrintSection property uses the following settings.

Setting | Description
True | (Default) The section is printed.
False | The section isn't printed.

To set these properties, specify a macro or event procedure for a section's OnFormat property.

Microsoft Access sets these properties to True before each section's Format event.

Remarks

These properties are useful when you want to use a report as a template into which you write data from a macro or Visual Basic as you print.

The following table shows the result of different setting combinations for these properties.

MoveLayout | NextRecord | PrintSection | Description
True | True | True | (Default) Move to the next print location, get the next record, and print the data.
True | False | True | Move to the next print location, don't advance to the next record, but print the data. This combination is typically used when the data in a section requires more space than the layout allows and you want to print the remaining data in the space that would otherwise be occupied by the next section.
False | True | False | Skip a record without leaving a blank space on the page.
True | True | False | Skip a record and leave a blank space on the page.
True | False | False | Leave a blank space without skipping a record.
False | True | True | Print the current record on top of the last record as an overlay.
False | False | True | Not allowed.
False | False | False | Not allowed.


 MultiRow Property

MultiRow Property

You can use the MultiRow property to specify or determine whether a tab control can display more than one row of tabs.

Setting

The MultiRow property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | Multiple rows are allowed.
No | False (0) | (Default) Multiple rows aren't allowed.

You can set the MultiRow property by using the control's property sheet, a macro, or Visual Basic.

You can also set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

Remarks

When the MultiRow property is set to True, the number of rows is determined by the width and number of tabs. The number of rows may change if the control is resized or if additional tabs are added to the control.

When the MultiRow property is set to False and the width of the tabs exceeds the width of the control, navigation buttons appear on the right side of the tab control. You can use the navigation buttons to scroll through all the tabs on the tab control.


 MultiSelect Property

MultiSelect Property

You can use the MultiSelect property to specify whether a user can make multiple selections in a list box on a form and how the multiple selections can be made.

Setting

The MultiSelect property uses the following settings.

Setting | Visual Basic | Description
None | 0 | (Default) Multiple selection isn't allowed.
Simple | 1 | Multiple items are selected or deselected by clicking them with the mouse or pressing the SPACEBAR.
Extended | 2 | Multiple items are selected by holding down SHIFT and clicking them with the mouse or by holding down SHIFT and pressing an arrow key to extend the selection from the previously selected item to the current item. You can also select items by dragging with the mouse. Holding down CTRL and clicking an item selects or deselects that item.

You can set the MultiSelect property by using the list box's property sheet, a macro, or Visual Basic.

This property can be set only in form Design view.

Remarks

You can use the ListIndex property to return the index number for the selected item. When the MultiSelect property is set to Extended or Simple, you can use the list box's Selected property or ItemsSelected collection to determine the items that are selected. In addition, when the MultiSelect property is set to Extended or Simple, the value of the list box control will always be Null.

If the MultiSelect property is set to Extended, requerying the list box clears any selections made by the user.


 Name Property (Microsoft Access)

Name Property

You can use the Name property to specify or determine the string expression that identifies the name of a AccessObject object, control, or Reference object.

Setting

A valid name must conform to the object-naming rules for Microsoft Access. For Microsoft Access objects the name may be up to 64 characters long. For controls, the name may be as long as 255 characters.

For objects, set the Name property by clicking Save on the File menu in Design view and entering a valid name. To change the name of an existing object in the Database window, click the name, then either click Rename on the Edit menu or click the name again. You can also change the name by right-clicking it and clicking Rename on the shortcut menu. To change the name of an existing object when the object is open, click Save As/Export on the File menu.

For a section or control, you can set this property by using the property sheet, a macro, or Visual Basic. You can use the Name property in expressions for objects.

You can set this property only in Design view.

Note For a Reference object, this property is read-only in all views.

Remarks

The default name for new objects is the object name plus a unique integer. For example, the first new form is Form1, the second new form is Form2, and so on. A form can't have the same name as another system object, such as the Screen object.

For an unbound control, the default name is the type of control plus a unique integer. For example, if the first control you add to a form is a text box, its Name property setting is Text1.

For a bound control, the default name is the name of the field in the underlying source of data. If you create a control by dragging a field from the field list, the field's FieldName property setting is copied to the control's Name property box.

You can't use "Form" or "Report" to name a control or section.

Controls on the same form, report, or data access page can't have the same name, but controls on different forms, reports or data access pages can have the same name. A control and a section on the same form can't share the same name.


 NavigationButtons Property

NavigationButtons Property

You can use the NavigationButtons property to specify whether navigation buttons and a record number box are displayed on a form.

Setting

The NavigationButtons property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The form has navigation buttons and a record number box.
No | False (0) | The form doesn't have navigation buttons or a record number box.

You can set this property by using the form's property sheet, a macro, or Visual Basic.

Remarks

Navigation buttons provide an efficient way to move to the first, previous, next, last, or blank (new) record. The record number box displays the number of the current record. The total number of records is displayed next to the navigation buttons. You can enter a number in the record number box to move to a particular record.

If you remove the navigation buttons from a form and want to create your owns means of navigation for the form, you can create custom navigation buttons and add them to the form. For more information on creating custom navigation buttons, see Navigate between controls, records, and form pages by using Visual Basic.


 NewRecord Property

NewRecord Property

You can use the NewRecord property to determine whether the current record is a new record.

Setting

The NewRecord property uses the following settings.

Setting | Description
True (-1) | The current record is new.
False (0) | The current record isn't new.

The NewRecord property is read-only in Form view and Datasheet view. It isn't available in Design view. This property is available only by using a macro or Visual Basic.

Remarks

When a user has moved to a new record, the NewRecord property setting will be True whether the user has started to edit the record or not.


 NewRowOrCol Property

NewRowOrCol Property

You can use the NewRowOrCol property to specify whether a section and its associated data is printed in a new row or column within a multiple-column report or multiple-column form. For example, you can use this property to print each group header at the top of a new column in a multiple-column report.

Note The NewRowOrCol property doesn't apply to page headers or page footers.

Setting

The NewRowOrCol property uses the following settings.

Setting | Visual Basic | Description
None | 0 | (Default) The row or column breaks are determined by the settings in the Page Setup dialog box (available by clicking Page Setup on the File menu) and the available space on the page.
Before Section | 1 | Microsoft Access starts printing the current section (the section for which you're setting the property, such as a group header section) in a new row or column. It then prints the next section, such as a detail section, in that same row or column.
After Section | 2 | Microsoft Access starts printing the current section, such as a group header section, in the current row or column. It starts printing the next section, such as a detail section, in the next row or column.
Before & After | 3 | Microsoft Access starts printing the current section in a new row or column. It starts printing the following section in the next row or column.

You can set this property by using the section's property sheet, a macro, or Visual Basic.

You can set the NewRowOrCol property only in form Design view or report Design view.

Remarks

The following items are some sample settings for a group header section in a multiple-column report. Make sure Down, Then Across is selected under Column Layout on the Columns tab of the Page Setup dialog box.

Sample setting | Result
Before Section | The group header is printed at the top of a new column.
After Section | The detail section is printed at the top of a new column.
Before & After | The group header is printed in a column by itself, and the detail section is printed at the top of a new column.

Sections in a form or report are normally printed vertically down a page. The default Column Layout option is Across, Then Down. You can print the sections in multiple columns across a page by clicking Down, Then Across under Column Layout on the Columns tab of the Page Setup dialog box.

If you set the NewRowOrCol property to Before Section, the vertical or horizontal orientation of the page affects how the section appears when printed. If you click Across, Then Down under Column Layout on the Columns tab of the Page Setup dialog box, Microsoft Access starts printing the section at the beginning of a new row; if you click Down, Then Across, Microsoft Access starts printing the section at the beginning of a new column.


 NewValues Property

NewValues Property

You can use the NewValues property to specify how AutoNumber fields increment when new records are added to a table.

Note The NewValues property applies only to AutoNumber fields.

Setting

The NewValues property uses the following settings.

Setting | Description
Increment | (Default) AutoNumber field values increment by 1 for new records.
Random | AutoNumber field values are assigned a random Long Integer value for new records.

You can set this property in the table's property sheet in table Design view by clicking the General tab in the Field Properties section.

Remarks

When you replicate a database, AutoNumber field settings are set to Random to ensure that new records entered in different replicas will have unique values.


 NumeralShapes Property

NumeralShapes Property

Language-specific information

You can use the NumeralShapes property to specify or determine numeral shapes to be displayed and printed in a combo box, label, list box, or text box.

Setting

The NumeralShapes property uses the following settings.

Setting | Visual Basic | Description
System | 0 | Numeral shapes determined by the Numeral Shapes system setting.
Arabic | 1 | Arabic digit shapes will be used to display and print numerals.
Hindi | 2 | Hindi digit shapes will be used to display and print numerals.
Context | 3 | Numeral shapes determined by Unicode context rules for adjacent text.

You can set this property by using the property sheet or Visual Basic.

For more information about right-to-left properties, see Learn more about right-to-left properties in Microsoft Access 2000.


 Object Properties

Object Properties

The Object properties provide general information about objects contained in the Database window.

Note The Object properties are available for all objects in a Microsoft Access database (.mdb) and only for forms, data access pages, macros, modules, and reports in an Access project (.adp).

Setting

You can view the Object properties, and set the Description or Attributes properties, in the following ways:

  • Click an object in the Database window, and then click Properties [image] on the Database toolbar.

  • Click an object in the Database window, and then click Properties on the View menu.

  • Right-click an object in the Database window, and then click Properties on the shortcut menu.

You can also specify or determine the Object properties in an Access database (.mdb) by using Visual Basic. The Object properties of an Access project (.adp) are not available using Visual Basic.

Note You can only enter or edit the Description and Attributes properties. The other Object properties are set by Microsoft Access and are read-only.

Remarks

The objects for which you can display properties in the Database window are tables, queries, forms, data access pages, reports, macros, and modules. Each class of objects in the database is represented by a separate DAO Document object within the DAO Containers collection. For example, the Containers collection contains a Document object that represents all the forms in the database.

The following Object properties are available from the Database window.

Property | Description
Name | This is the name of the object and contains the setting from the object's Name property.
Type | This is the object's type. Microsoft Access object types are Form, Data Access Pages, Macro, Module, Query, Report, and Table.
Description | This is the object's description and is the same as the setting for the object's Description property. You can also set the object's Description property in the object's property sheet. An object's description also appears next to the object's name in the Database window if you click Details on the View menu.
Created | This is the date that the object was created. For tables and queries, this property is the same as the DateCreated property.
Modified | This is the date that the object was last modified. For tables and queries, this property is the same as the LastUpdated property.
Owner | This is the owner of the object. For more information, see the Owner property.
Attributes | This property specifies whether the object is hidden or visible and whether the object can be replicated in a database replica. If you set the Hidden attribute to True (by selecting the Hidden check box), the object won't appear in the Database window. To display hidden objects in the Database window, click Options on the Tools menu, click the View tab, and then select the Hidden Objects check box. The icons for hidden objects will be dimmed in the Database window. You can then turn the Hidden attribute off, making the objects visible in the Database window.


 Object Property

Object Property

You can use the Object property in Visual Basic to return a reference to the ActiveX object that is associated with a linked or embedded OLE object in a control. By using this reference, you can access the properties or invoke the methods of the OLE object.

Setting

The Object property returns a reference to an ActiveX object. You can use the Set statement to assign this ActiveX object to an object variable. The type of object reference returned depends on which application created the OLE object.

The Object property setting is read-only in all views.

Remarks

When you embed or link an OLE object in a Microsoft Access form, you can set properties that determine the type of object and the behavior of the container control. However, you can't directly set or read the OLE object's properties or apply its methods, as you can when performing Automation. The Object property returns a reference to an Automation object that represents the linked or embedded OLE object. By using this reference, you can change the OLE object by setting or reading its properties or applying its methods. For example, Microsoft Excel is an COM component that supports Automation. If you've embedded a Microsoft Excel worksheet in a Microsoft Access form, you can use the Object property to set a reference to the Worksheet object associated with that worksheet. You can then use any of the properties and methods of the Worksheet object.

For information on which properties and methods an ActiveX object supports, see the documentation for the application that was used to create the OLE object.


 ObjectPalette Property

ObjectPalette Property

The ObjectPalette property specifies the palette in the application used to create:

  • An OLE object contained in a bound object frame, chart, or unbound object frame.

  • A bitmap or other graphic that is loaded into a command button, image control, or toggle button by using the Picture property.

Setting

Microsoft Access sets the value of the ObjectPalette property to a String data type containing the palette information. You can use this setting to set the value of the PaintPalette property for a form or report.

For the following objects, views, and controls, the ObjectPalette property setting is read-only. This property setting is unavailable for these controls in other views.

Object | View | Control
Forms | Form Design view and Form view | Command button, chart, image control, toggle button, and unbound object frame.
 | Form view | Bound object frame.
Reports | Report Design view | Command button, chart, image control, toggle button, and unbound object frame. This property setting is unavailable for a bound object frame in all views on a report.

You can use the setting of this property only in a macro or Visual Basic.

If the application associated with the OLE object, bitmap, or other graphic doesn't have an associated palette, the ObjectPalette property is set to an zero-length string.

Remarks

The setting of the ObjectPalette property makes the palette of the application associated with the OLE object, bitmap, or other graphic contained in a control available to the PaintPalette property of a form or report. For example, to make the palette used in Microsoft Graph available when you're designing a form in Microsoft Access, you set the form's PaintPalette property to the ObjectPalette value of an existing chart control.

Note Windows can have only one color palette active at a time. Microsoft Access allows you to have multiple graphics on a form, each using a different color palette. The PaintPalette and PaletteSource properties let you specify which color palette a form should use when displaying graphics.


 ObjectVerbs Property

ObjectVerbs Property

You can use the ObjectVerbs property in Visual Basic to determine the list of verbs an OLE object supports.

Setting

The ObjectVerbs property setting is a zero-based string array.

This property setting isn't available in Design view and is read-only in other views.

Remarks

You can use the ObjectVerbs property with the ObjectVerbsCount property to display a list of the verbs supported by an OLE object. The Verb property uses this list of verbs to determine which operation to perform when an OLE object is activated (when the Action property is set to acOLEActivate).

The Verb property setting is the position of a particular verb in the list of verbs returned by the ObjectVerbs property. For example, 1 specifies the first verb in the list (the Visual Basic command ObjectVerbs(0), or the first verb in the ObjectVerbs property array), 2 specifies the second verb in the list (the Visual Basic command ObjectVerbs(1), or the second verb in the ObjectVerbs property array), and so on.

The first verb in the ObjectVerbs property array, called by the Visual Basic command ObjectVerbs(0), is the default verb. If the Verb property hasn't been set, this verb specifies the operation performed when the OLE object is activated.

Applications that expose OLE objects typically include the Object command on the Edit menu. When the user points to the Object command, a submenu displays the object's verbs. You can use the ObjectVerbs and ObjectVerbsCount properties to display a list of verbs in a form or report instead of on a menu.

The list of verbs an object supports varies, depending on the state of the object. To update the list of verbs an object supports, set the control's Action property to acOLEFetchVerbs. Be sure to update the list of verbs before presenting it to the user.


 ObjectVerbsCount Property

ObjectVerbsCount Property

You can use the ObjectVerbsCount property in Visual Basic to determine the number of verbs supported by an OLE object.

Setting

The ObjectVerbsCount property setting is an Integer data type value that specifies the number of elements in the ObjectVerbs property array.

This property setting isn't available in Design view and is read-only in other views.

Remarks

The list of verbs an OLE object supports may vary, depending on the state of the object. To update the list of supported verbs, set the control's Action property to acOLEFetchVerbs.


 ODBCConnectStr Property

ODBCConnectStr Property

You can use the ODBCConnectStr property in an SQL pass-through query to specify the Open Database Connectivity (ODBC) connection string for the query.

Note The ODBCConnectStr property applies only to pass-through queries.

Setting

Enter the ODBC connection string that defines the connection to the SQL database you want to use.

You can set this property by using the query's property sheet or Visual Basic.

You can also use the ODBC Connection String Builder to create the ODBC connection string for this property. This builder establishes a connection to the SQL database server and then ends the connection after the ODBC connection string is created.

Remarks

The default setting for this property is the string "ODBC;", which Microsoft Access restores if you delete an existing setting. When the ODBCConnectStr property is set to "ODBC;", Microsoft Access will prompt you for a connection string whenever the query is used but won't store the connect string. You must enter a connection string in the ODBCConnectStr property box if you want Microsoft Access to store the connection string.

Tip If you know the full connection string for the SQL database, enter it in the ODBCConnectStr property box. This way you will avoid the need to enter the connection string in the ODBC connection dialog box each time you use the query.

The connection string is different for different types of ODBC data sources. For example, to connect to the Human Resources data source on the HRSRVR server (a Microsoft SQL Server) by using the logon identification (ID) Smith and the password Sesame, you can use the following connection string.

ODBC;DSN=Human Resources;SERVER=HRSRVR;UID=Smith;PWD=Sesame

For more information about accessing data in ODBC databases, see Chapter 15, "Retrieving and Analyzing Data," in the Microsoft Office 2000/Visual Basic Programer's Guide. For information about how to obtain the Microsoft Office 2000/Visual Basic Programer's Guide, click [image] .


 ODBCTimeout Property (Microsoft Access)

ODBCTimeout Property

You can use the ODBCTimeout property to specify the number of seconds Microsoft Access waits before a time-out error occurs when a query is run on an Open Database Connectivity (ODBC) database.

Setting

The ODBCTimeout property is an Integer value representing the number of seconds Microsoft Access waits. The default is 60 seconds. When this property is set to 0, no time-out error occurs.

You can set this property by using the query's property sheet or Visual Basic.

Remarks

When you're using an ODBC database, such as Microsoft SQL Server, there may be delays due to network traffic or heavy use of the ODBC server. The ODBCTimeout property lets you specify how long Microsoft Access waits for a network connection before a time-out error occurs.

For more information about accessing data in ODBC databases, see Chapter 15, "Retrieving and Analyzing Data," in the Microsoft Office 2000/Visual Basic Programer's Guide. For information about how to obtain the Microsoft Office 2000/Visual Basic Programer's Guide, click [image] .


 OldValue Property

OldValue Property

You can use the OldValue property to determine the unedited value of a bound control.

Setting

The OldValue property contains the unedited data from a bound control and is read-only in all views.

You can access this property only by using a macro or Visual Basic.

The OldValue property can be assigned to a variable by using the following syntax:

OriginalValue = Forms!Customers!AmountPaid.OldValue

Remarks

Microsoft Access uses the OldValue property to store the original value of a bound control. When you edit a bound control on a form, your changes aren't saved until you move to another record. The OldValue property contains the unedited version of the underlying data.

You can provide your own undo capability by assigning the OldValue property setting to a control. The following example shows how you can undo any changes to text box controls on a form:

Sub btnUndo_Click()
     Dim ctlTextbox As Control
     For Each ctlTextbox in Me.Controls
     If ctlTextbox.ControlType = acTextBox Then
        ctlTextbox.Value = ctl.OldValue
     End If
     Next ctlTextbox
End Sub

If the control hasn't been edited, this code has no effect. When you move to another record, the record source is updated, so the current value and the OldValue property will be the same.

The OldValue property setting has the same data type as the field to which the control is bound.


 OLEClass Property

OLEClass Property

You can use the OLEClass property to obtain a description of the kind of OLE object contained in a chart control or an unbound object frame.

Setting

This property is set automatically in the control's property sheet to a string expression when you click Object on the Insert menu to add an OLE object to a form. The OLEClass property setting is read-only in all views.

Note If you are using Automation (formerly called OLE Automation) and need to specify a name to refer to the OLE object, use the Class property.

Remarks

The OLEClass property and the Class property are similar but not identical. The OLEClass property setting is a general description of the OLE object whereas the Class property setting is the name used to refer to the OLE object in Visual Basic. Examples of OLEClass property settings are Microsoft Excel Chart, Microsoft Word Document, and Paintbrush Picture.


 OLEData Property

OLEData Property

You can use the OLEData property to copy data from one unbound object frame to another or from one ActiveX control to another.

Setting

controlname.OLEData

The OLEData property uses the following settings.

Setting | Description
controlname | Required. The name of the unbound object frame control.
OLEData | Required. The data contained in an unbound object frame or ActiveX control.

The OLEData property is available only by using Visual Basic. For ActiveX controls, the OLEData property of one ActiveX control can be set to the OLEData property of another ActiveX control only in Design view.

Remarks

You can use this property to display data in an unbound object frame based on the data contained in another unbound object frame.

When you set the OLEData property of an ActiveX control to the OLEData property of another ActiveX control, the first ActiveX control becomes another instance of the second ActiveX control. For example, the result of the following property assignment is to change the TreeView control into a Calendar control:

Me!MyTreeViewControl.OLEData = Me!MyCalendarControl.OLEData


 OLEType Property

OLEType Property

You can use the OLEType property to determine if a control contains an OLE object, and, if so, whether the object is linked or embedded.

Setting

The OLEType property uses the following settings.

Setting | Constant | Description
Linked | acOLELinked (0) | The control contains a linked object. All the object's data is managed by the application that created it.
Embedded | acOLEEmbedded (1) | The control contains an embedded object. All the object's data is managed by Microsoft Access.
None | acOLENone (3) | The control doesn't contain an OLE object.

The OLEType property is read-only in all views.

Remarks

When creating an OLE object, use the OLETypeAllowed property to determine what type of object a control can contain.


 OLETypeAllowed Property

OLETypeAllowed Property

You can use the OLETypeAllowed property to specify the type of OLE object a control can contain.

Setting

The OLETypeAllowed property uses the following settings.

Setting | Constant | Description
Linked | acOLELinked (0) | The control can contain only a linked object.
Embedded | acOLEEmbedded (1) | The control can contain only an embedded object.
Either | acOLEEither (2) | (Default) The control can contain either a linked or an embedded object.

You can set the OLETypeAllowed property by using the control's property sheet, a macro, or Visual Basic. You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

Note For unbound object frames and charts, you can't change the OLETypeAllowed setting after an object is created. For bound object frames, you can change the setting after the object is created. Changing the OLETypeAllowed property setting only affects new objects that you add to the control.

Remarks

To determine the type of OLE object a control already contains, you can use the OLEType property.


 OpenArgs Property

OpenArgs Property

You can use the OpenArgs property to determine the string expression specified by the openargs argument of the OpenForm method that opened a form.

Setting

This property is available only by using a macro or by using Visual Basic with the OpenForm method of the DoCmd object. This property setting is read-only in all views.

Remarks

To use the OpenArgs property, open a form by using the OpenForm method of the DoCmd object, and set the openargs argument to the desired string expression. The OpenArgs property setting can then be used in code for the form, such as an Open event procedure. You can also refer to the property setting in a macro, such as an Open macro, or an expression, such as an expression that sets the ControlSource property for a control on the form.

For example, suppose that the form you open is a continuous-form list of clients. If you want the focus to move to a specific client record when the form opens, you can set the OpenArgs property to the client's name, and then use the FindRecord action in an Open macro to move the focus to the record for the client with the specified name.


 Operator Property (FormatCondition Object)

Operator Property (FormatCondition Object)

You can use the Operator property to return the operator value for the conditional format or data validation of a FormatCondition object.

Setting

The Operator property returns one of the following intrinsic constants.

acBetween (0) | acLessThan (5)
acEqual (2) | acLessThanOrEqual (7)
acGreaterThan (4) | acNotBetween (1)
acGreaterThanOrEqual (6) | acNotEqual (3)

The Operator property is available only by using Visual Basicand is read-only.

Remarks

The Operator property's intrinsic constants are used in conjunction with the Expression1 and Expression2 properties and the Add method of the FormatConditions object for conditional formatting and data validation.


 OptionValue Property

OptionValue Property

Each control in an option group has a numeric value that you can set with the OptionValue property. When the control is selected, the number is assigned to the option group. If the option group is bound to a field, the value of the selected control's OptionValue property is stored in the field.

For example, this Region option group is bound to the Region field in a table. The Europe button has an OptionValue property setting of 1, the Asia button has a setting of 2, and the Africa button has a setting of 3. When one of these buttons is selected, the Region option group value will be the same as the OptionValue property setting for the selected control. In this case, because the Region option group is bound to the Region field, the value of this field in the table also equals 2.

Note The OptionValue property applies only to the check box, option button, and toggle button controls in an option group.

Setting

The OptionValue property holds a Long Integer value or numeric expression assigned to a control within an option group control.

You can set the OptionValue property by using the control's property sheet, a macro, or Visual Basic.

Remarks

Unless you change the OptionValue property yourself, the first control you place in an option group has a value of 1, the second control has a value of 2, and so on.

The OptionValue property is only available when the control is placed inside an option group control. When a check box, a toggle button, or an option button isn't in an option group, the control has no OptionValue property. Instead, each such control has a ControlSource property, and the value of each control will be either True (-1) if selected or False (0) if not selected.


 OrderBy Property

OrderBy Property

You can use the OrderBy property to specify how you want to sort records in a form, query, report, or table.

Note In a Microsoft Access project (.adp), this property is ignored. To set the sort order, you must use the ServerFilter property.

Setting

The OrderBy property is a string expression that is the name of the field or fields on which you want to sort records. When you use more than one field name, separate the names with a comma (,).

When you set the OrderBy property by entering one or more field names, the records are sorted in ascending order. Similarly, Visual Basic sorts these fields in ascending order by default.

If you want to sort records in descending order, type DESC at the end of the string expression. For example, to sort customer records in descending order by contact name, set the OrderBy property to "ContactName DESC".

You can set the OrderBy property by using the object's property sheet, a macro, or Visual Basic.

Remarks

For reports, the OrderByOn property must be set to Yes to apply the sort order specified by the object's OrderBy property. For forms, select the field by which you want to sort the records and either click the appropriate Sort button on the toolbar, or point to Sort on the Records menu and click the appropriate command on the submenu. You can also set the OrderByOn property for either forms or reports by using Visual Basic.

Setting the OrderBy property for an open report will run the report's Close and Open event procedures.

Note When a new object is created, it inherits the RecordSource, Filter, OrderBy, and OrderByOn properties of the table or query it was created from. For forms and reports, inherited filters aren't automatically applied when an object is opened.


 OrderByOn Property

OrderByOn Property

You can use the OrderByOn property to specify whether an object's OrderBy property setting is applied.

Note In a Microsoft Access project (.adp), this property is ignored. To set the sort order, you must use the ServerFilter property.

Setting

The OrderByOn property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The OrderBy property setting is applied when the object is opened.
No | False (0) | (Default) The OrderBy property setting isn't applied when the object is opened.

For reports, you can set the OrderByOn property by using the report's property sheet, a macro, or Visual Basic.

For all other objects, you can set the OrderByOn property by clicking a Sort button on the toolbar or by using Visual Basic.

Remarks

When a new object is created, it inherits the RecordSource, Filter, OrderBy, OrderByOn, and FilterOn properties of the table or query it was created from.


 OrganizeInFolder Property

OrganizeInFolder Property

You can use the OrganizeInFolder property to specify or determine if all supporting files, such as image files are stored in their own folder or with the data access page.

Setting

The OrganizeInFolder property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The supporting files are organized in a folder when you save the document as a data access page.
No | False (0) | The supporting files are saved in the same folder as the data access page.

The OrganizeInFolder property is available only by using Visual Basic and is read-only.

Remarks

The new folder is created in the folder where you have saved the Web page, and is named after the document. If long file names are used, a suffix is added to the folder name. The FolderSuffix property returns the folder suffix for the language support you have selected or installed, or the default folder suffix.

If you save a document that was previously saved with the OrganizeInFolder property set to a different value, Microsoft Access automatically moves the supporting files into or out of the folder, as appropriate.

If you don't use long file names (that is, if the UseLongFileNames property is set to False), Microsoft Access automatically saves any supporting files in a separate folder. The files cannot be saved in the same folder as the Web page.


 Orientation Property

Orientation Property

Language-specific information

You can use the Orientation property to specify or determine the view orientation for tables, queries, forms, and reports.

Setting

The Orientation property uses the following settings.

Setting | Visual Basic | Description
Left-to-Right | 0 | Sets the view orientation to left to right.
Right-to-Left | 1 | Sets the view orientation to right to left.

You can set this property by using the property sheet or Visual Basic.

Remarks

The Orientation property directly influences how tables and queries are displayed, The appearance of forms and reports is initially determined by the Orientation property, but you can subsequently change controls and the layout of menu bars.


 OutputAllFields Property

OutputAllFields Property

You can use the OutputAllFields property to show all fields in the query's underlying data source and in the field list of a form or report. Setting this property is an easy way to show all fields without having to click the Show box in the query design grid for each field in the query.

Note The OutputAllFields property applies only to append, make-table, and select queries.

Setting

The OutputAllFields property uses the following settings.

Setting | Description
Yes | Displays all the fields in the underlying tables and in the field list of a form or report.
No | (Default) Displays only fields that have the Show box selected in the query design grid.

You can set this property only by using the query's property sheet.

Note The use of an asterisk (*) in an SQL statement in place of a field name is the equivalent of setting the OutputAllFields property to Yes.

Remarks

When the OutputAllFields property is set to Yes, the only fields you need to include in the query design grid are those that you want to sort on or specify criteria for.

When you save a filter as a query, Microsoft Access sets the OutputAllFields property to Yes.


 Page, Pages Properties

Page, Pages Properties

You can use the Page and Pages properties to return information needed to print page numbers in a form or report. For example, you could use these properties to print "Page n of nn" in the page footer of a report.

  • The Page property specifies the current page number when a form or report is being printed.

  • The Pages property specifies the total number of pages in a form or report.

Setting

Although you can set the Page property to an Integer value, you most often use these properties to return information about page numbers. Both properties return an Integer value when used in an expression.

You can use the Page and Pages properties in an expression, a macro, or Visual Basic.

These properties are only available in Print Preview or when printing.

The Pages property is read-only at all times.

Remarks

To refer to the Pages property in a macro or Visual Basic, the form or report must include a text box whose ControlSource property is set to an expression that uses Pages. For example, you can use the following expressions as the ControlSource property setting for a text box in a page footer.

This expression | Prints
=Page | A page number (for example, 1, 2, 3) in the page footer.
="Page " & Page & " of " & Pages | "Page n of nn" (for example, Page 1 of 5, Page 2 of 5) in the page footer.
=Pages | The total number pages in the form or report (for example, 5).


 PageCount Property

PageCount Property

You can use the PageCount property to determine the number of pages in a snapshot.

Setting

The PageCount property is a Long value representing the number of pages in a snapshot.

This property is available only by using Visual Basic and is read-only.

Remarks

If you try to determine the PageCount property while no valid snapshot file is open, an error occurs.


 PageHeader, PageFooter Properties

PageHeader, PageFooter Properties

You can use the PageHeader and PageFooter properties to specify whether a report's page header or page footer is printed on the same page as a report header or report footer. For example, you might not want to print a page header containing the page number on the first page of a report if the report header is a cover sheet.

Setting

The PageHeader and PageFooter properties use the following settings.

Setting | Visual Basic | Description
All Pages | 0 | (Default) The page header or footer is printed on all pages of a report.
Not With Rpt Hdr | 1 | The page header or footer isn't printed on the same page as the report header.
Not With Rpt Ftr | 2 | The page header or footer isn't printed on the same page as the report footer. Microsoft Access prints the report footer on a new page.
Not With Rpt Hdr/Ftr | 3 | The page header or footer isn't printed on a page that has either a report header or a report footer. Microsoft Access prints the report footer on a new page.

You can set these properties by using the report's property sheet, a macro, or Visual Basic.

You can set the PageHeader and PageFooter properties only in report Design view.

Remarks

Microsoft Access normally prints report page headers or page footers on every page in a report, including the first and last.

In report Design view, click Page Header/Footer on the View menu to display the page header and page footer sections.

Note When forms are printed, page headers and page footers are always printed on all pages.


 PageIndex Property

PageIndex Property

You can use the PageIndex property to specify or determine the position of a Page object within a Pages collection. The PageIndex property specifies the order in which the pages on a tab control appear.

Setting

The PageIndex property setting is an Integer value between 0 and the Pages collection Count property setting minus 1.

You can set the PageIndex property by using a Page object's property sheet, a macro, or Visual Basic.

The PageIndex property can be set in any view.

Remarks

Changing the value of the PageIndex property changes the location of a Page object in the Pages collection and visually changes the order of pages on a tab control.

You can also change the order of Page objects in the Pages collection by using the Page Order dialog box available by right-clicking the tab control in Design view and then clicking Page Order.


 Painting Property

Painting Property

You can use the Painting property to specify whether forms or reports are repainted.

Setting

The Painting property uses the following settings.

Setting | Description
True (-1) | (Default) The form or report is repainted.
False (0) | The form or report isn't repainted.

You can set this property by using a macro or Visual Basic.

This property can be set and applies only in Form view and is unavailable in other views.

Remarks

The Painting property is similar to the Echo action. However, the Painting property prevents repainting of a single form or report, whereas the Echo action prevents repainting of all open windows in an application.

Setting the Painting property for a form or report to False also prevents all controls (except subform or subreport controls) on a form or report from being repainted. To prevent a subform or subreport control from being repainted, you must set the Painting property for the subform or subreport to False. (Note that you set the Painting property for the subform or subreport, not the subform or subreport control.)

The Painting property is automatically set to True whenever the form or report gets or loses the focus. You can set this property to False while you are working on a form or report if you don't want to see changes to the form or report or to its controls. For example, if a form has a set of controls that are automatically resized when the form is resized and you don't want the user to see each individual control move, you can turn Painting off, and then move all of the controls, then turn Painting back on.


 PaintPalette Property

PaintPalette Property

You can use the PaintPalette property to specify a palette to be used by a form or report.

Setting

You can set the PaintPalette property by using a macro or Visual Basic. The property setting must be a String data type containing the palette information.

You can set the PaintPalette property by assigning the value of the ObjectPalette property to the PaintPalette property in a macro or Visual Basic, by setting the PaletteSource property (in which case Microsoft Access automatically sets the PaintPalette property to this PaletteSource), or by setting the PaintPalette property of one form or report to the PaintPalette property of another form or report.

For a form, you can set the PaintPalette property in form Design view and Form view.

For a report, you can set the PaintPalette property in report Design view only.

Remarks

When you set the PaintPalette property, Microsoft Access makes a copy of the palette that you specify and saves it with the form or report. The palette is then available if you modify that form or report.

Changes to the palette you specified when you set the PaintPalette property don't affect the copy of the palette stored with the form or report. If you want to update the copy of the palette stored with the form or report, you must rerun the code or macro that sets the PaintPalette property or reset the PaletteSource property when the form or report is open.

When you set the PaintPalette property for a form or report, Microsoft Access automatically updates its PaletteSource property. Conversely, when you set the PaletteSource property for a form or report, the PaintPalette property is also updated. For example, when you specify a custom palette with the PaintPalette property, the PaletteSource property setting is changed to (Custom). The PaintPalette property (which is available only in a macro or Visual Basic) is used to set the palette for the form or report. The PaletteSource property gives you a way to set the palette for the form or report in the property sheet by using an existing graphics file.

Note Windows can have only one color palette active at a time. Microsoft Access allows you to have multiple graphics on a form, each using a different color palette. The PaintPalette and PaletteSource properties let you specify which color palette a form should use when displaying graphics.

You can use the ObjectPalette property to make the palette of an application associated with an OLE object, bitmap, or other graphic contained in a control on a form or report available to the PaintPalette property. For example, to make the palette used in Microsoft Graph available when you're designing a form in Microsoft Access, you set the form's PaintPalette property to the ObjectPalette value of an existing chart control.


 PaletteSource Property

PaletteSource Property

You can use the PaletteSource property to specify the palette for a form or report.

Setting

Enter the path and file name of one of the following file types:

  • .dib (device-independent bitmap file)

  • .pal (Windows palette file)

  • .ico (Windows icon file)

  • .bmp (Windows bitmap file)

  • .wmf or .emf file, or other graphics file for which you have a graphics filter

The default setting is (Default), which specifies the palette included with Microsoft Access. If you change this setting by entering a path and file name, the property setting displays (Custom).

You can set this property by using the form's or report's property sheet, a macro, or Visual Basic.

For a form, you can set the PaletteSource property in form Design view and Form view. The property setting is unavailable in other views.

For a report, you can set the PaletteSource property only in report Design view. The property setting is unavailable in other views.

Remarks

Windows can have only one color palette active at a time. Microsoft Access allows you to have multiple graphics on a form, each using a different color palette. The PaletteSource and PaintPalette properties let you specify which color palette a form uses when displaying graphics.

When you set the PaletteSource property for a form or report, Microsoft Access automatically updates its PaintPalette property. Conversely, when you set a form's or report's PaintPalette property, the PaletteSource property is also updated. For example, when you specify a custom palette with the PaintPalette property, the PaletteSource property setting changes to (Custom). The PaintPalette property (which is available only in a macro or Visual Basic) is used to set the palette for the form or report. The PaletteSource property gives you a way to set the palette for the form or report in the property sheet by using an existing graphics file.


 Parent Property (Microsoft Access)

Parent Property

You can use the Parent property to refer to the parent of a control, section, or control that contains other controls. The Parent property returns a control object if the parent is a control; it returns a AccessObject object if the parent is an Microsoft Access object.

Setting

The Parent property refers to a AccessObject object or control object and is read-only in all views.

Remarks

You can use the Parent property to determine which form or report is currently the parent when you have a subform or subreport that has been inserted in multiple forms or reports.

For example, you might insert an OrderDetails subform into both a form and a report. The following example uses the Parent property to refer to the OrderID field, which is present on the main form and report. You can enter this expression in a bound control on the subform.

=Parent!OrderID

The Parent property of a label control is the control the label is linked to. The Parent property for a check box, option button, or toggle button in an option group is the name of the option group control. The Parent property of an option group control is the name of the form.


 Path Property

Path Property

You can use the Path property to determine the location where data is stored for a Microsoft Access project (.adp) or Microsoft Access database (.mdb).

Setting

The Path property is a string expression that is the pathname to the disk location where data is stored for an Access database.

This property is available only by using Visual Basic and is read-only.

Remarks

You can use the Path property to determine the location of information stored through the CurrentProject or CodeProject objects of a project or database.


 Picture Property

Picture Property

You can use the Picture property to specify a bitmap or other type of graphic to be displayed on a command button, image control, toggle button, page on a tab control or as a background picture on a form or report. Buttons can display either a caption or a picture.

Setting

The Picture property contains (bitmap) or the path and file name of a bitmap or other type of graphic to be displayed.

You can set this property by using:

  • The property sheet. Click the Build button [image] to the right of the property box (for command buttons and toggle buttons). When you select one of the bitmap files from the Available Pictures list, the property setting is (bitmap).

  • A macro.

  • Visual Basic. You can use a string expression that includes the path and the name of the graphic, as in the following example:
    btnShowLogo.Picture = "c:\Windows\Winlogo.bmp"

  • The Picture command on the Insert menu (for image controls or background pictures on forms and reports) to select a bitmap or other type of graphic.

The default setting is (none). After the graphic is loaded into the object, the property setting is (bitmap) or the path and file name of the graphic. If you delete (bitmap) or the path and file name of the graphic from the property setting, the picture is deleted from the object and the property setting is again (none).

If the PictureType property is set to Embedded, the graphic is stored with the object.

Remarks

You can create custom bitmaps by using Microsoft Paintbrush or another application that creates bitmap files. A bitmap file must have a .bmp, .ico, or .dib extension. You can also use graphics files in the .wmf or .emf formats, or any other graphic file type for which you have a graphics filter. Forms, reports, and image controls support all graphics. Command buttons and toggle buttons only support bitmaps.

Buttons can display either a caption or a picture. If you assign both to a button, the picture will be visible, the caption won't. If the picture is deleted, the caption reappears. Microsoft Access displays the picture centered on the button and clipped if the picture is larger than the button.

Tip To create a command button or toggle button with a caption and a picture, you could include the desired caption as part of the bitmap and assign the bitmap to the Picture property of the control.


 PictureAlignment Property

PictureAlignment Property

You can use the PictureAlignment property to specify where a background picture will appear in an image control or on a form or report.

Setting

The PictureAlignment property uses the following settings.

Setting | Visual Basic | Description
Top Left | 0 | The picture is displayed in the top-left corner of the image control, Form window, or page of a report.
Top Right | 1 | The picture is displayed in the top-right corner of the image control, Form window, or page of a report.
Center | 2 | (Default) The picture is centered in the image control, Form window, or page of a report.
Bottom Left | 3 | The picture is displayed in the bottom-left corner of the image control, Form window, or page of a report.
Bottom Right | 4 | The picture is displayed in the bottom-right corner of the image control, Form window, or page of a report.
Form Center | 5 | (Forms only) The form's picture is centered horizontally in relation to the width of the form and vertically in relation to the height the entire form.

You can set the PictureAlignment property by using a form's or report's property sheet, a macro, or Visual Basic.

You can also set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

This property can be set in any view.

Remarks

The Form Center setting aligns a form's picture in the center of the form itself. All other PictureAlignment property settings align a form's picture in relation to the Form window. If you want to make sure that a form's picture is displayed only on the form or tiled across only the form, set the PictureAlignment property to Form Center.

For reports, the picture appears relative to a full page and not in relation to the size of the actual report. If your report is less than a full page and you want a picture to appear at a location not available through the PictureAlignment property settings, use an image control instead.

When you set the PictureTiling property to Yes, tiling of the picture will begin from the PictureAlignment property setting.


 PictureData Property

PictureData Property

You can use the PictureData property to copy the picture in a form, report, or control to another object that supports the Picture property.

Setting

The PictureData property setting is the PictureData property of another image control, command button, toggle button, form, or report.

You set this property by using Visual Basic.

Remarks

You can use this property to display different background pictures in a form, depending on actions taken by the user. For example, you might open a Customers form using a different background picture depending on whether the form is opened for data entry or for browsing.

You can also use the PictureData property together with the Timer event and the TimerInterval property to perform simple animation on a form.


PicturePages Property

You can use the PicturePages property to specify on which page or pages of a report a picture will be displayed.

Setting

The PicturePages property uses the following settings.

Setting | Visual Basic | Description
All Pages | 0 | (Default) The picture appears on all pages of the report.
First Page | 1 | The picture appears only on the first page of the report.
No Pages | 2 | The picture doesn't appear on the report.

You can set the PicturePages property by using a report's property sheet, a macro, or Visual Basic.


PictureSizeMode Property

You can use the PictureSizeMode property to specify how a picture for a form or report is sized.

Setting

The PictureSizeMode property uses the following settings.

Setting | Visual Basic | Description
Clip | 0 | (Default) The picture is displayed in its actual size. If the picture is larger than the form or report, then the picture is clipped.
Stretch | 1 | The picture is stretched horizontally and vertically to fill the entire form, even if its original ratio of height to width is distorted.
Zoom | 3 | The picture is enlarged to the maximum extent possible while keeping its original ratio of height to width.

You can set the PictureSizeMode property by using a form's or report's property sheet, a macro, or Visual Basic.

Remarks

When a small picture is used for the Picture property of a form or report, setting the PictureSizeMode property to Stretch or Zoom can cause substantial distortion of its resolution. Smaller pictures can be tiled across the entire form or report by using the PictureTiling property.


 PictureTiling Property

PictureTiling Property

You can use the PictureTiling property to specify whether a background picture is tiled across the entire image control, Form window, form, or page of a report.

Setting

The PictureTiling property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The picture is tiled.
No | False (0) | (Default) The picture isn't tiled.

You can set the PictureTiling property by using the object's property sheet, a macro, or Visual Basic.

You can also set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

Remarks

You can create interesting effects by placing a picture on a form or report and setting the PictureTiling property to Yes. The alignment of the tiled images is affected by the PictureAlignment property setting. For example, if the PictureAlignment property is set to Top Left, tiling begins at the top left of the image control, Form window, or page of a report.

Note If the PictureAlignment property is set to Form Center and the PictureTiling property is set to Yes, the background picture of a form will be tiled across the form, not across the Form window.


 PictureType Property

PictureType Property

You can use the PictureType property to specify whether Microsoft Access stores an object's picture as a linked or an embedded object.

Setting

The PictureType property uses the following settings.

Setting | Visual Basic | Description
Embedded | 0 | (Default) The picture is embedded in the object and becomes part of the database file.
Linked | 1 | The picture is linked to the object. Microsoft Access stores a pointer to the location of the picture on the disk.

You can set the PictureType property by using the object's property sheet, a macro, or Visual Basic.

This property can be set only in form Design view or report Design view.

For controls, you can set the default for this property by using the default control style or the DefaultControl method in Visual Basic.

Remarks

When this property is set to Embedded, the size of the database increases by the size of the picture file and, with some .wmf files, the size may increase as much as twice the size of the picture file. When this property is set to Linked, there is no increase in the size of the database because Microsoft Access only saves a pointer to the picture's location on the disk.

Note If a linked file is moved to another location on the disk, you must re-establish the link by using the object's Picture property.

For embedded pictures, the object's PictureData property stores the individual bits that make up a picture's image. For linked pictures, this property stores the path to the picture's file.

You can modify a linked picture by using a separate application and changes to the picture will appear the next time the object containing that picture is displayed in the database.


 PopUp Property

PopUp Property

You can use the PopUp property to specify whether a form opens as a pop-up form. For example, you set a form's PopUp property to Yes, its Modal property to Yes, and its BorderStyle property to Dialog to create a custom dialog box.

Setting

The PopUp property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The form opens as a pop-up form in Form view. It remains on top of all other Microsoft Access windows.
No | False (0) | (Default) The form isn't a pop-up form.

You can set this property by using the form's property sheet, a macro, or Visual Basic.

The PopUp property can be set only in form Design view.

Remarks

To specify the type of border you want on a pop-up form, use the BorderStyle property. You typically set the BorderStyle property to Thin for pop-up forms.

Tip You can use the PopUp, Modal and BorderStyle properties to create a custom dialog box. Set the Modal property to Yes, the PopUp property to Yes, and the BorderStyle property to Dialog for custom dialog boxes.

Setting the PopUp property to Yes makes the form a pop-up form only when you do one of the following:

  • Open it in Form view from the Database window.

  • Open it in Form view by using a macro or Visual Basic.

  • Switch from Design view to Form view.

When the PopUp property is set to Yes, you can't switch to other views from Form view, because the form's toolbar isn't available. (You can't switch a pop-up form from Form view to Datasheet view, even in a macro or Visual Basic.) You must close the form and reopen it in Design view or Datasheet view.

The form isn't a pop-up form in Design view or Datasheet view, and also isn't a pop-up form if you switch from Datasheet view to Form view.

Note You can use the Dialog setting of the Window Mode argument of the OpenForm action to open a form with its PopUp and Modal properties set to Yes.

Tip When you maximize a window in Microsoft Access, all other windows are also maximized when you open them or switch to them. However, pop-up forms aren't maximized. If you want a form to maintain its size when other windows are maximized, set its PopUp property to Yes.


 PreviousControl Property

PreviousControl Property

You can use the PreviousControl property with the Screen object to return a reference to the control that last received the focus.

Setting

The PreviousControl property contains a reference to the control that last had the focus. Once you establish a reference to the control, you can access all the properties and methods of the control.

This property is available only by using a macro or Visual Basic and is read-only.

Remarks

You can't use the PreviousControl property until more than one control on any form has received the focus after a form is opened. Microsoft Access generates an error if you attempt to use this property when only one control on a form has received the focus.


 Primary Property (Microsoft Access)

Primary Property

You can use the Primary property to specify the primary key field for a table. A primary key field holds data that uniquely identifies each record in a table.

Setting

The Primary property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The selected index is the primary key.
No | False (0) | The selected index isn't the primary key.

You can set the Primary property in three ways:

  • In table Design view, select the field or fields in the order you want for the primary key and then click Primary Key [image] on the toolbar.

  • In the Indexes window, select or enter the name of an index in the Index Name column and set the Primary property to Yes in the Index Properties section.

  • In Visual Basic, to access the Primary property of an index, use the ADO PrimaryKey property.

Remarks

Microsoft Access automatically creates an index on the primary key field of a table and uses it to find records and to create joins between tables. The primary key index requires an entry in each primary key field and allows no duplicates. The order of the fields in a multiple-field primary key determines the default sort order for the table.

If there is no primary key when you save a table's design, Microsoft Access will display a dialog box asking whether you want a primary key to be created. If you click Yes, an AutoNumber data type field will be added to the table (with its NewValues property set to Increment) and set as the primary key. If you click No, no primary key will be created.

A table with no primary key can't be used in a relationship and can be slower to sort and search.


 PrintCount Property

PrintCount Property

You can use the PrintCount property to identify the number of times the OnPrint property has been evaluated for the current section of a report.

Setting

You can use this property only in a macro or an event procedure specified by a section's OnPrint property setting.

The PrintCount property setting has a Long data type value.

This property isn't available in report Design view and is read-only in all other views.

Remarks

Microsoft Access increments the PrintCount property each time the OnPrint property setting is evaluated for the current section. As the next section is printed, Microsoft Access resets the PrintCount property to 0.

The PrintCount property is incremented, for example, when the KeepTogether property is set to No for the current section and the section is printed on more than one page. If you print a report containing order information, you might keep a running total of the order amounts. The following example shows how you can use the PrintCount property to make sure the value in the OrderAmount control is added only once to the running total:

Private Sub Detail_Format(Cancel As Integer, _
     FormatCount As Integer)
    If PrintCount = 1 Then
        RunningTotal = RunningTotal + OrderAmount
    End If
End Sub

In the previous example, RunningTotal can be a public variable or the name of an unbound control that is incremented each time a section is printed.


 ProcBodyLine Property

ProcBodyLine Property

The ProcBodyLine property returns a Long value containing the number of the line at which the body of a specified procedure begins in a standard module or a class module. The body of a procedure begins with the procedure definition, denoted by one of the following:

  • A Sub statement.

  • A Function statement.

  • A Property Get statement.

  • A Property Let statement.

  • A Property Set statement.

Setting

object.ProcBodyLine(procname, prockind)

The ProcBodyLine property uses the following settings.

Setting | Description
object | A Module object.
procname | A string expression that evaluates to the name of a procedure in the module.
prockind | An intrinsic constant that specifies the type of procedure. The constant may be one of the following values.
 | Constant | Description
 | vbext_pk_Get | A Property Get procedure.
 | vbext_pk_Let | A Property Let procedure.
 | vbext_pk_Proc | A Sub or Function procedure.
 | vbext_pk_Set | A Property Set procedure.

The ProcBodyLine property is available only by using Visual Basic and is read-only.

Remarks

The ProcBodyLine property returns a number that identifies the line on which the procedure definition begins. In contrast, the ProcStartLine property returns a number that identifies the line at which a procedure is separated from the preceding procedure in a module. Any comments or compilation constants that precede the procedure definition (the body of a procedure) are considered part of the procedure, but the ProcBodyLine property ignores them.

Note The ProcBodyLine property treats Sub and Function procedures similarly, but distinguishes between each type of Property procedure.


 ProcCountLines Property

ProcCountLines Property

The ProcCountLines property returns a Long value containing the number of lines in a specified procedure in a standard module or a class module. The procedure begins with any comments and compilation constants that immediately precede the procedure definition, denoted by one of the following:

  • A Sub statement.

  • A Function statement.

  • A Property Get statement.

  • A Property Let statement.

  • A Property Set statement.

Setting

object.ProcCountLines(procname, prockind)

The ProcCountLines property uses the following settings.

Setting | Description
object | A Module object.
procname | A string expression that evaluates to the name of a procedure in the module.
prockind | An intrinsic constant that specifies the type of procedure. The constant may be one of the following values.
 | Constant | Description
 | vbext_pk_Get | A Property Get procedure.
 | vbext_pk_Let | A Property Let procedure.
 | vbext_pk_Proc | A Sub or Function procedure.
 | vbext_pk_Set | A Property Set procedure.

The ProcCountLines property is available only by using Visual Basic and is read-only.

Remarks

The ProcCountLines property returns the number of lines in a procedure, beginning with the line returned by the ProcStartLine property and ending with the line that ends the procedure. The procedure may be ended with End Sub, End Function, or End Property.

Note The ProcCountLines property treats Sub and Function procedures similarly, but distinguishes between each type of Property procedure.


 ProcOfLine Property

ProcOfLine Property

The ProcOfLine property returns a string containing the name of the procedure that contains a specified line in a standard module or a class module. The body of a procedure begins with the procedure definition, denoted by one of the following:

  • A Sub statement.

  • A Function statement.

  • A Property Get statement.

  • A Property Let statement.

  • A Property Set statement.

Setting

object.ProcOfLine(line, pprockind)

The ProcOfLine property uses the following settings.

Setting | Description
object | A Module object.
line | A Long that specifies the number of a line in the module.
pprockind | An Long value that indicates the type of procedure containing the line specified by the line argument. When you return the value of the ProcOfLine property, the value of the pprockind argument is set to an intrinsic constant that specifies the type of procedure the line belongs to. The constant may be one of the following values.
 | Constant | Value | Description
 | vbext_pk_Get | 3 | A Property Get procedure.
 | vbext_pk_Let | 1 | A Property Let procedure.
 | vbext_pk_Proc | 0 | A Sub or Function procedure.
 | vbext_pk_Set | 2 | A Property Set procedure.

The ProcOfLine property is available only by using Visual Basic and is read-only.

Remarks

For any given line number, the ProcOfLine property returns the name of the procedure that contains that line. Since comments and compilation constants immediately preceding a procedure definition are considered part of that procedure, the ProcOfLine property may return the name of a procedure for a line that isn't within the body of the procedure. The ProcStartLine property indicates the line on which a procedure begins; the ProcBodyLine property indicates the line on which the procedure definition begins (the body of the procedure).

Note that the pprockind argument indicates whether the line belongs to a Sub or Function procedure, a Property Get procedure, a Property Let procedure, or a Property Set procedure. To determine what type of procedure a line is in, pass a variable of type Long to the ProcOfLine property, then check the value of that variable.

Note The ProcBodyLine property treats Sub and Function procedures similarly, but distinguishes between each type of Property procedure.


 ProcStartLine Property

ProcStartLine Property

The ProcStartLine property returns a Long value identifying the line at which a specified procedure begins in a standard module or a class module. The procedure begins with any comments and compilation constants that immediately precede the procedure definition, denoted by one of the following:

  • A Sub statement.

  • A Function statement.

  • A Property Get statement.

  • A Property Let statement.

  • A Property Set statement.

Setting

object.ProcStartLine(procname, prockind)

The ProcStartLine property uses the following settings.

Setting | Description
object | A Module object.
procname | A string expression that evaluates to the name of a procedure in the module.
prockind | An intrinsic constant that specifies the type of procedure. The constant may be one of the following values.
 | Constant | Description
 | vbext_pk_Get | A Property Get procedure.
 | vbext_pk_Let | A Property Let procedure.
 | vbext_pk_Proc | A Sub or Function procedure.
 | vbext_pk_Set | A Property Set procedure.

The ProcStartLine property is available only by using Visual Basic and is read-only.

Remarks

The ProcStartLine property returns the number of the line on which the specified procedure begins. The beginning of the procedure may include comments or compilation constants that precede the procedure definition.

To determine the line on which the procedure definition begins, use the ProcBodyLine property. This property returns the number of the line that begins with a Sub, Function, Property Get, Property Let, or Property Set statement.

The ProcStartLine and ProcBodyLine properties can have the same value, if the procedure definition is the first line of the procedure. If the procedure definition isn't the first line of the procedure, the ProcBodyLine property will have a greater value than the ProcStartLine property.

Notes

  • It may be easier to determine where a procedure begins if you have the Procedure Separator option selected. With this option selected, there is a line between the end of a procedure and the beginning of the next procedure. The first line of code (or blank line) below the procedure separator is the first line of the following procedure, which is the line returned by the ProcStartLine property. The Procedure Separator option is located on the Module tab of the Options dialog box, available by clicking Options on the Tools menu. To select the Procedure Separator check box, first select the Full Module View check box.

  • The ProcStartLine property treats Sub and Function procedures similarly, but distinguishes between each type of Property procedure.


 ProductCode Property

ProductCode Property

You can use the ProductCode property to determine the Microsoft Access globally unique identifier (GUID).

Setting

The ProductCode property is a string expression that is the GUID of the Microsoft Access product.

This property is available only by using Visual Basic and is read-only.


 ProjectName Property

ProjectName Property

You can use the ProjectName property to specify or determine the name of your Microsoft Access Application object.

Setting

The ProjectName property is a string expression that's the name of your Microsoft Access Application object. You can't set the ProjectName property to the name of an existing class of objects, for example, "application," "form," or "report". If you convert a database with a name that is the same as that of an existing class of objects, Microsoft Access will append an underscore to the name to prevent naming conflicts. For example, if the database you are converting is named "Application", the database will have a project name of "Application_" in Microsoft Access 2000.

You can set the ProjectName property on the Advanced tab of the Options dialog box (available by clicking Options on the Tools menu) or by using the SetOption method in Visual Basic. For example:

Application.SetOption "Project Name", "MyAccessProject"

Remarks

When you create a new database, Microsoft Access sets the ProjectName property to the database file name without the ".mdb" extension. Changing the database file name has no effect on the existing ProjectName property setting.

When you set the ProjectName property, the name of your Application object appears in the References dialog box, available in the Module window by clicking References on the Tools menu.

When you change the setting of the ProjectName property, your project will no longer be in a compiled state. To recompile the project, you must close and reopen your database and then click Compile And Save All Modules on the Debug menu.

From another application, such as Microsoft Excel, you can use the project name as part of the fully qualified name of an item in a Microsoft Access project by using the syntax projectname.Application.Forms!formname. For example, to refer to the LastName field on the Employees form in the Northwind sample database from Microsoft Excel, you set a reference to the Northwind database and then use the following reference:

Dim strLstName As String
strLastName = Northwind.Application.Forms!Employees!LastName

You can create a reference to a Microsoft Access database by selecting the project name (the Application object) in the References dialog box, available in the Module window by clicking References on the Tools menu. Once you select the project name, it also appears in the Project/Library list in the Object Browser.


 ProjectType Property

ProjectType Property

You can use the ProjectType property to determine the type of project that is currently open through the CurrentProject or CodeProject objects.

Setting

The ProjectType property returns one of the following intrinsic constants.

acADP (1) | acNull (0)
acMDB (2) |

The ProjectType property is available only by using Visual Basic and is read-only.


 Properties Property

Properties Property

You can use the Properties property to return a reference to a control's Properties collection object.

Note In Microsoft Access 2000, the Properties property has been replaced by the Properties property (Properties Collection) and the Properties property (AccessObjectProperties Collection). The Properties property is included in this version of Microsoft Access only for compatibility with previous versions.

Setting

controlname.Properties[.method or property]

The Properties property uses the following settings.

Setting | Description
controlname | Required. The name of the control whose Properties collection object you want to reference.
Properties | Required. When used without specifying a method or property, returns the Properties collection object.
method or property | A method or property of the Properties collection object. The Item property (collections) is the default property for the Properties collection object.

The Properties property is available only by using Visual Basic.

Remarks

The Properties collection object is the collection of all the properties related to a control. You can refer to individual members of the collection by using the member object's index or a string expression that is the name of the member object. The first member object in the collection has an index value of 0 and the total number of member objects in the collection is the value of the Properties collection's Count property minus 1.


Properties Property (AccessObjectProperties Collection)

You can use the Properties property to return a reference to an AccessObject, CurrentProject, or CodeProject object's AccessObjectProperties collection.

Setting

The AccessObjectProperties property is available only by using Visual Basic.

Remarks

The AccessObjectProperties collection object is the collection of all the properties related to an AccessObject, CurrentProject, or CodeProject object. You can refer to individual members of the collection by using the member object's index or a string expression that is the name of the member object. The first member object in the collection has an index value of 0 and the total number of member objects in the collection is the value of the AccessObjectProperties collection's Count property minus 1.


 Properties Property (Properties Collection)

Properties Property (Properties Collection)

You can use the Properties property to return a reference to a form, report or control's Properties collection.

Setting

The Properties property is available only by using Visual Basic and is read-only.

Remarks

The Properties collection object is the collection of all the properties related to a form, report, or control. You can refer to individual members of the collection by using the member object's index or a string expression that is the name of the member object. The first member object in the collection has an index value of 0 and the last member object in the collection has an index value that is the Properties collection's Count property minus 1.


 PrtDevMode Property

PrtDevMode Property

You can use the PrtDevMode property to set or return printing device mode information specified for a form or report in the Print dialog box.

Note It is strongly recommended that you consult the Win32 Software Development Kit for complete documentation on the PrtDevMode, PrtDevNames, and PrtMip properties.

Setting

The PrtDevMode property setting is a 94-byte structure that mirrors the DEVMODE structure defined in the Win32 Software Development Kit. For complete information on the PrtDevMode property members, consult the Win32 Software Development Kit.

The PrtDevMode property uses the following members.

Member | Description
DeviceName | A string with a maximum of 32 bytes that specifies the name of the device the driver supports - for example, "HP LaserJet IIISi" if the Hewlett-Packard LaserJet IIISi is the specified printer. Each printer driver has a unique string.
SpecVersion | An Integer that specifies the version number of the DEVMODE structure in the Win32 Software Development Kit.
DriverVersion | An Integer that specifies the printer driver version number assigned by the printer driver developer.
Size | An Integer that specifies the size, in bytes, of the DEVMODE structure. (This value doesn't include the optional dmDriverData member for device-specific data, which can follow this structure.) If an application manipulates only the driver-independent portion of the data, you can use this member to find out the length of this structure without having to account for different versions.
DriverExtra | An Integer that specifies the size, in bytes, of the optional dmDriverData member for device-specific data, which can follow this structure. If an application doesn't use device-specific information, you set this member to 0.
Fields | A Long value that specifies which of the remaining members in the DEVMODE structure have been initialized. It can be any combination of specific constants or none of them. For available constants, see the Fields member constants.
Orientation | An Integer that specifies the orientation of the paper. It can be either 1 (portrait) or 2 (landscape).
PaperSize | An Integer that specifies the size of the paper to print on. If you set this member to 0 or 256, the length and width of the paper are specified by the PaperLength and PaperWidth members, respectively. Otherwise, you can set the PaperSize member to a predefined value. For available values, see the PaperSize member values.
PaperLength | An Integer that specifies the paper length in units of 1/10 of a millimeter. This member overrides the paper length specified by the PaperSize member for custom paper sizes or for devices such as dot-matrix printers that can print on a variety of paper sizes.
PaperWidth | An Integer that specifies the paper width in units of 1/10 of a millimeter. This member overrides the paper width specified by the PaperSize member.
Scale | An Integer that specifies the factor by which the printed output will be scaled. The apparent page size is scaled from the physical page size by a factor of scale/100. For example, a piece of paper measuring 8.5 by 11 inches (letter-size) with a Scale value of 50 would contain as much data as a page measuring 17 by 22 inches because the output text and graphics would be half their original height and width.
Copies | An Integer that specifies the number of copies printed if the printing device supports multiple-page copies.
DefaultSource | An Integer that specifies the default bin from which the paper is fed. For available values, see the DefaultSource member values.
PrintQuality | An Integer that specifies the printer resolution. The values are -4 (high), -3 (medium), -2 (low), and -1 (draft).
Color | An Integer. For a color printer, specifies whether the output is printed in color. The values are 1 (color) and 2 (monochrome).
Duplex | An Integer. For a printer capable of duplex printing, specifies whether the output is printed on both sides of the paper. The values are 1 (simplex), 2 (horizontal), and 3 (vertical).
YResolution | An Integer that specifies the y-resolution of the printer in dots per inch (dpi). If the printer initializes this member, the PrintQuality member specifies the x-resolution of the printer in dpi.
TTOption | An Integer that specifies how TrueType fonts will be printed. For available values, see the TTOption member values.
Collate | An Integer that specifies whether collation should be used when printing multiple copies. Using uncollated copies provides faster, more efficient output, since the data is sent to the printer just once.
FormName | A string with a maximum of 16 characters that specifies the size of paper to use; for example, "Letter" or "Legal".
Pad | A Long value that is used to pad out spaces, characters, or values for future versions.
Bits | A Long value that specifies in bits per pixel the color resolution of the display device.
PW | A Long value that specifies the width, in pixels, of the visible device surface (screen or printer).
PH | A Long value that specifies the height, in pixels, of the visible device surface (screen or printer).
DFI | A Long value that specifies the device's display mode.
DFR | A Long value that specifies the frequency, in hertz (cycles per second), of the display device in a particular mode.

You can set the PrtDevMode property using Visual Basic.

This property setting is read/write in Design view and read-only in other views.

Caution Printer drivers can add device-specific data immediately following the 94 bytes of the DEVMODE structure. For this reason, it is important that the DEVMODE data outlined above not exceed 94 bytes.

Remarks

Only printer drivers that export the ExtDeviceMode function use the DEVMODE structure.

An application can retrieve the paper sizes and names supported by a printer by using the DC_PAPERS, DC_PAPERSIZE, and DC_PAPERNAMES values to call the DeviceCapabilities function.

Before setting the value of the TTOption member, applications should find out how a printer driver can use TrueType fonts by using the DC_TRUETYPE value to call the DeviceCapabilities function.


PrtDevNames Property

You can use the PrtDevNames property to set or return information about the printer selected in the Print dialog box for a form or report.

Note It is strongly recommended that you consult the Win32 Software Development Kit for complete documentation on the PrtDevMode, PrtDevNames, and PrtMip properties.

Setting

The PrtDevNames property is a variable-length structure that mirrors the DEVNAMES structure defined in the Win32 Software Development Kit.

The PrtDevNames property uses the following members.

Member | Description
DriverOffset | Specifies the offset from the beginning of the structure to a Null-terminated string that specifies the file name (without an extension) of the device driver. This string is used to specify which printer is initially displayed in the Print dialog box.
DeviceOffset | Specifies the offset from the beginning of the structure to the Null-terminated string that specifies the name of the device. This string can't be longer than 32 bytes (including the null character) and must be identical to the DeviceName member of the DEVMODE structure.
OutputOffset | Specifies the offset from the beginning of the structure to the Null-terminated string that specifies the MS-DOS device name for the physical output medium (output port); for example, "LPT1:".
Default | Specifies whether the strings specified in the DEVNAMES structure identify the default printer. Before the Print dialog box is displayed, if Default is set to 1 and all of the values in the DEVNAMES structure match the current default printer, the selected printer is set to the default printer. Default is set to 1 if the current default printer has been selected.

Microsoft Access sets the PrtDevNames property when you make selections in the Printer section of the Print dialog box. You can also set the property by using Visual Basic.

Remarks

Microsoft Access uses the DEVNAMES structure to initialize the Print dialog box. When the user chooses OK to close the dialog box, information about the selected printer is returned by the PrtDevNames property.


 PrtMip Property

PrtMip Property

You can use the PrtMip property in Visual Basic to set or return the device mode information specified for a form or report in the Print dialog box.

Setting

The PrtMip property setting is a 28-byte structure that maps to settings on the Margins tab for a form or report in the Page Setup dialog box.

The PrtMip property has the following members.

Member | Description
LeftMargin, RightMargin, TopMargin, BottomMargin | A Long that specifies the distance between the edge of the page and the item to be printed in twips.
DataOnly | A Long that specifies the elements to be printed. When True (-1), prints only the data in a table or query in Datasheet view, form, or report, and suppresses labels, control borders, grid lines, and display graphics such as lines and boxes. When False (0), prints data, labels, and graphics.
ItemsAcross | A Long that specifies the number of columns across for multiple-column reports or labels. This member is equivalent to the value of the Number Of Columns box under Grid Settings on the Columns tab of the Page Setup dialog box.
RowSpacing | A Long that specifies the horizontal space between detail sections in units of 1/20 of a point.
ColumnSpacing | A Long that specifies the vertical space between detail sections in twips.
DefaultSize | A Long. When True, uses the size of the detail section in Design view. When False, uses the values specified by the ItemSizeWidth and ItemSizeHeight members.
ItemSizeWidth | A Long that specifies the width of the detail section in twips. This member is equivalent to the value of the Width box under Column Size on the Columns tab of the Page Setup dialog box.
ItemSizeHeight | A Long that specifies the height of the detail section twips. This member is equivalent to the value of the Height box under Column Size on the Columns tab of the Page Setup dialog box.
ItemLayout | A Long that specifies horizontal (1953) or vertical (1954) layout of columns. This member is equivalent to Across, Then Down or Down, Then Across respectively under Column Layout on the Columns tab of the Page Setup dialog box.
FastPrint | Reserved.
Datasheet | Reserved.

The PrtMip property setting is read/write in Design view and read-only in other views.


ReadingOrder Property

Language-specific information

You can use the ReadingOrder property to specify or determine the reading order of words in text.

Setting

The ReadingOrder property uses the following settings.

Setting | Visual Basic | Description
Context | 0 | Reading order is determined by the language of the first character entered. If a right-to-left language character is entered first, reading order is right to left. If a left-to-right language character is entered first, reading order is left to right.
Left-to-Right | 1 | Sets the reading order to left to right.
Right-to-Left | 2 | Sets the reading order to right to left.

You can set this property by using the property sheet or Visual Basic.

Remarks

In a combo box or list box, the ReadingOrder property determines reading order behavior for both the text box and list box components of the control.

For more information about right-to-left properties, see Learn more about right-to-left properties in Microsoft Access 2000.


 ReadyState Property

ReadyState Property

You can use the ReadyState property to determine the status of the file being loaded into a snapshot control.

Setting

The ReadyState property is an Integer value representing the loading status of a snapshot file.

Setting | Description
0 | The snapshot control has not been initialized.
1 | The snapshot control is loading.
2 | The snapshot control is loaded, but the snapshot file is being downloaded.
4 | The snapshot control has finished downloading the snapshot file.

The ReadyState property is available only by using Visual Basic.

Remarks

If the SnapshotPath property has been set using the control's property sheet, then the ReadyState property will always be at least 2 even if the SnapshotPath property is later set to a zero-length string programmatically.

This property is useful when the SnapshotPath property contains an HTTP or FTP address to a snapshot file. In this case, the file is downloaded asynchronously and you can use the ReadyState property to determine when the download is complete and the snapshot is displayed.


 RecordLocks Property

RecordLocks Property

You can use the RecordLocks property to determine how records are locked and what happens when two users try to edit the same record at the same time. When you edit a record, Microsoft Access can automatically lock that record to prevent other users from changing it before you are finished.

  • Forms. Specifies how records in the underlying table or query are locked when data in a multiuser database is updated.

  • Reports. Specifies whether records in the underlying table or query are locked while a report is previewed or printed.

  • Queries. Specifies whether records in a query (typically an action query in a multiuser database) are locked while the query is run.

Note The RecordLocks property only applies to forms, reports, or queries in a Microsoft Access database (.mdb).

Setting

The RecordLocks property uses the following settings.

Setting | Visual Basic | Description
No Locks | 0 | (Default) In forms, two or more users can edit the same record simultaneously. This is also called "optimistic" locking. If two users attempt to save changes to the same record, Microsoft Access displays a message to the user who tries to save the record second. This user can then discard the record, copy the record to the Clipboard, or replace the changes made by the other user. This setting is typically used on read-only forms or in single-user databases. It is also used in multiuser databases to permit more than one user to be able to make changes to the same record at the same time. In reports, records aren't locked while the report is previewed or printed. In queries, records aren't locked while the query is run.
All Records | 1 | All records in the underlying table or query are locked while the form is open in Form view or Datasheet view, while the report is previewed or printed, or while the query is run. Although users can read the records, no one can edit, add, or delete any records until the form is closed, the report has finished printing, or the query has finished running.
Edited Record | 2 | (Forms and queries only) A page of records is locked as soon as any user starts editing any field in the record and stays locked until the user moves to another record. Consequently, a record can be edited by only one user at a time. This is also called "pessimistic" locking.

You can set this property by using a form's property sheet, a macro, or Visual Basic.

Note Changing the RecordLocks property of an open form or report causes an automatic recreation of the recordset.

Remarks

You can use the No Locks setting for forms if only one person uses the underlying tables or queries or makes all the changes to the data.

In a multiuser database, you can use the No Locks setting if you want to use optimistic locking and warn users attempting to edit the same record on a form. You can use the Edited Record setting if you want to prevent two or more users editing data at the same time.

You can use the All Records setting when you need to ensure that no changes are made to data after you start to preview or print a report or run an append, delete, make-table, or update query.

In Form view or Datasheet view, each locked record has a locked indicator [image] in its record selector.

Tip To change the default RecordLocks property setting for forms, click Options on the Tools menu, click the Advanced tab on the Options dialog box, and then select the desired option under Default Record Locking.

Data in a form, report, or query from an Open Database Connectivity (ODBC) database is treated as if the No Locks setting were chosen, regardless of the RecordLocks property setting.


 RecordSelectors Property

RecordSelectors Property

You can use the RecordSelectors property to specify whether a form displays record selectors in Form view.

Setting

The RecordSelectors property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) Each record has a record selector.
No | False (0) | No record has a record selector.

You can set this property by using the form's property sheet, a macro, or Visual Basic.

Remarks

You can use this property to remove record selectors when you create or use a form as a custom dialog box or a palette. You can also use this property for forms whose DefaultView property is set to Single Form.

The record selector displays the unsaved record indicator [image] when a record is being edited. When the RecordSelectors property is set to No and the RecordLocks property is set to Edited Record (record locking is "pessimistic" - only one person can edit a record at a time), there is no visual clue that the record is locked.


 Recordset Property

Recordset Property

You can use the Recordset property to specify or retrieve the ADO Recordset or DAO Recordset object representing a form's record source.

Note You cannot use this property with ODBCDirect recordset types in DAO.

Setting

The Recordset property returns the recordset object that provides the data being browsed in a form. If a form is based on a query, for example, referring to the Recordset property is the equivalent of cloning a Recordset object by using the same query. However, unlike using the RecordsetClone property, currency changes made to the Form.Recordset property are automatically reflected in the current record of the form.

This property is available only by using Visual Basic.

Remarks

When a recordset is asked for in a Microsoft Access database (.mdb), a DAO recordset is returned, in a Microsoft Access project (.adp), an ADO recordset is returned.

The read/write behavior of a form whose Recordset property has been set using Visual Basic is determined by the type of recordset (ADO or DAO) and the type of data (Jet or SQL) contained in the recordset identified by the property.

Recordset type | Based on SQL data | Based on Jet data
ADO | Read/Write (1) | Read Only
DAO | N/A | Read/Write

(1) Note The ADO Recordset.CursorLocation property must be set to adUseClient. The UniqueTable property is available in client/server on the property sheet, but not for Access databases (.mdb). This property must be set in Visual Basic code.

Global rstSuppliers As ADODB.Recordset
Sub MakeRW()
    DoCmd.OpenForm "Suppliers"
    Set rstSuppliers = New ADODB.Recordset
    rstSuppliers.CursorLocation = adUseClient
    rstSuppliers.Open "Select * From Suppliers", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
    Set Forms("Suppliers").Recordset = rstSuppliers
    Forms("Suppliers").UniqueTable = "Suppliers"
End Sub

You use the Recordset property:

  • To bind multiple forms to a common data set. This allows the synchronizing of multiple forms. For example
    Set Me.Recordset = Forms!Form1.Recordset

  • To use methods on the Recordset object that aren't directly supported on forms. For example, you can use the Recordset property when you want to use the ADO Find method or DAO Find methods to use a custom dialog for finding a record.

  • To wrap a transaction (which can be rolled back) around a set of edits that affect multiple forms.

When a new Recordset object is opened, its first record is the current record.

ADO methods and properties | DAO methods and properties
Find, Move or other Move methods | FindFirst, FindNext, FindLast, FindPrevious, Move or other Move methods.

Note If you change the form's RecordSource property, you must use the Set statement. Changing a form's Recordset property may also change the RecordSource, RecordsetType, and RecordLocks properties. Also, some data-related properties may be overridden; for example, the Filter, FilterOn, OrderBy, and OrderByOn properties.


 RecordsetClone Property

RecordsetClone Property

You can use the RecordsetClone property to refer to a form's Recordset object specified by the form's RecordSource property.

Setting

The RecordsetClone property setting is a copy of the underlying query or table specified by the form's RecordSource property. If a form is based on a query, for example, referring to the RecordsetClone property is the equivalent of cloning a Recordset object by using the same query. If you then apply a filter to the form, the Recordset object reflects the filtering.

This property is available only by using Visual Basic and is read-only in all views.

Remarks

You use the RecordsetClone property to navigate or operate on a form's records independent of the form itself. For example, you can use the RecordsetClone property when you want to use a method, such as the DAO Find methods, that can't be used with forms.

When a new Recordset object is opened, its first record is the current record. If you one of the Find method or one of the Move methods to make any other record in the Recordset object current, you must synchronize the current record in the Recordset object with the form's current record by assigning the value of the DAO Bookmark property to the form's Bookmark property.

You can use the RecordCount property to count the number of records in a Recordset object. The following example shows how you can combine the RecordCount property and the RecordsetClone property to count the records in a form:

Forms!Orders.RecordsetClone.MoveLast
MsgBox "My form contains " _
    & Forms!Orders.RecordsetClone.RecordCount _
    & " records.", vbInformation, "Record Count"

Note If you close the form or if you change the form's RecordSource property, the Recordset object is no longer valid. If you subsequently refer to the Recordset object or to previously saved bookmarks in the form or the Recordset object, an error will occur.


 RecordsetType Property

RecordsetType Property

You can use the RecordsetType property to specify what kind of recordset is made available to a form. For example, if you don't want data in bound controls to be edited when a form is in Form view or Datasheet view, you can set the RecordsetType property to Snapshot.

Setting

The RecordsetType property uses the following settings in a Microsoft Access database (.mdb).

Setting | Visual Basic | Description
Dynaset | 0 | (Default) You can edit bound controls based on a single table or tables with a one-to-one relationship. For controls bound to fields based on tables with a one-to-many relationship, you can't edit data from the join field on the "one" side of the relationship unless cascade update is enabled between the tables. For more information, see the topic that explains when you can update records from a query.
Dynaset (Inconsistent Updates) | 1 | All tables and controls bound to their fields can be edited.
Snapshot | 2 | No tables or the controls bound to their fields can be edited.

The RecordsetType property uses the following settings in a Microsoft Access project (.adp).

Setting | Visual Basic | Description
Snapshot | 3 | No tables or the controls bound to their fields can be edited.
Updatable Snapshot | 4 | (Default) All tables and controls bound to their fields can be edited.

You can set this property by using a form's property sheet, a macro, or Visual Basic.

Note Changing the RecordsetType property of an open form or report causes an automatic recreation of the recordset.

Remarks

You can create forms based on multiple underlying tables with fields bound to controls on the forms. Depending on the RecordsetType property setting, you can limit which of these bound controls can be edited.

In addition to the editing control provided by RecordsetType, each control on a form has a Locked property that you can set to specify whether the control and its underlying data can be edited. If the Locked property is set to Yes, you can't edit the data.


 RecordSource Property

RecordSource Property

You can use the RecordSource property to specify the source of the data for a form or report. You can display data from a table, query, or SQL statement. For example, to display and edit data from the Employees table in a form, you set the form's RecordSource property to Employees. Then you can bind controls on the form or report to specific fields in the Employees table by setting the control's ControlSource property to the name of a field in the table. For example, you can bind a control to the LastName field in the Employees table by setting the control's ControlSource property to LastName.

Setting

The RecordSource property setting can be a table name, a query name, or an SQL statement. For example, you can use the following settings.

Sample setting | Description
Employees | A table name specifying the Employees table as the source of data.
SELECT Orders!OrderDate FROM Orders; | An SQL statement specifying the OrderDate field on the Orders table as the source of data. You can bind a control on the form or report to the OrderDate field in the Orders table by setting the control's ControlSource property to OrderDate.

You can set the RecordSource property by using the form's or report's property sheet, a macro, or Visual Basic.

In Visual Basic, use a string expression to set this property.

Note Changing the record source of an open form or report causes an automatic requery of the underlying data. If a form's Recordset property is set at runtime, the form's RecordSource property is updated.

Remarks

After you have created a form or report, you can change its source of data by changing the RecordSource property. The RecordSource property is also useful if you want to create a reusable form or report. For example, you could create a form that incorporates a standard design, then copy the form and change the RecordSource property to display data from a different table, query, or SQL statement.

Limiting the number of records contained in a form's record source can enhance performance, especially when your application is running on a network. For example, you can set a form's RecordSource property to an SQL statement that returns a single record and change the form's record source depending on criteria selected by the user.


References Property

You can use the References property to access the References collection and its related properties, methods, and events.

Setting

This property is available only by using Visual Basic and is read-only.

Remarks

The References collection corresponds to the list of references in the References dialog box, available by clicking References on the Tools menu. Each Reference object represents one selected reference in the list. References that appear in the References dialog box but haven't been selected aren't in the References collection.


RepeatSection Property

You can use the RepeatSection property to specify whether a group header is repeated on the next page or column when a group spans more than one page or column.

Note The RepeatSection property only applies to group headers on a report.

Setting

The RepeatSection property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The group header is repeated.
No | False (0) | (Default) The group header isn't repeated.

You can set the RepeatSection property by using the group header section's property sheet, a macro, or Visual Basic.

Remarks

When printing a report that contains a subreport, the subreport's RepeatSection property will determine if the subreport group headers are repeated across pages or columns.


 ReplicationConflictFunction Property

ReplicationConflictFunction Property

The ReplicationConflictFunction property enables you to use custom conflict resolution code for resolving data conflicts that occur between replicas upon synchronization. When you set this property, Microsoft Access calls your conflict resolution function, rather than the built-in Conflict Resolver, when the user requests to resolve conflicts.

Settings

Set the ReplicationConflictFunction property to a text string that's the name of the Function procedure you wish to call. Note that the setting must be the name of a Function procedure; it can't be the name of a Sub procedure. Unless this property has been set, Microsoft Access calls the Conflict Resolver.

To set this property's value for the first time from Visual Basic, you must create the property and append it to the Properties collection of the UserDefined Document object. You should include error-handling code in your procedure to test for the case in which the property doesn't yet exist in the Properties collection. For more information, see the CreateProperty method.

When you create and append the ReplicationConflictFunction property, you must also provide a value of True (-1) for the optional DDL argument of the CreateProperty method. This argument ensures that users can't change or delete the new Property object unless they have dbSecWriteDef permissions. If you don't supply a value of True for this argument, your custom conflict resolution code won't be called.

To return control to the built-in Conflict Resolver again, remove this property from the Properties collection.

You can also add or delete this property on the Custom tab of the DatabaseName Properties dialog box, available by clicking Database Properties on the File menu.

Remarks

If the same record in a replicated database has been changed in one or more replicas, conflicts will result when you synchronize a replica with the replica set. When you choose to resolve these conflicts, Microsoft Access calls the built-in Conflict Resolver. The wizard presents each conflict to the user, who must manually determine which changed record contains the correct data.

If you prefer to automate conflict resolution for your application, you can write custom procedures to resolve conflicts, and then override the built-in functionality by setting the ReplicationConflictFunction property. You should create a single function that acts as a point of entry into your conflict resolution code. Then set the ReplicationConflictFunction property to the name of this function.

If you write your own custom conflict resolution code, it must also handle replication design errors and replication data errors. To see an example, open the wizard database Wzcnf80.mda in the Office folder and examine the source code.


 Reports Property

Reports Property

You can use the Reports property to access the Reports collection and its related properties.

Setting

This property is available only by using Visual Basic and is read-only.

Remarks

The Reports collection contains all of the currently open reports in a Microsoft Access database (.mdb) or Microsoft Access project (.adp).


 Required Property (Microsoft Access)

Required Property

You can use the Required property to specify whether a value is required in a field. If this property is set to Yes, when you enter data in a record, you must enter a value in the field or in any control bound to the field, and the value cannot be Null. For example, you might want to be sure that a LastName control has a value for each record. When you want to permit Null values in a field, you must not only set the Required property to No but, if there is a ValidationRule property setting, it must also explicitly state "validationrule Or Is Null".

Note The Required property doesn't apply to AutoNumber fields.

Setting

The Required property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The field requires a value.
No | False (0) | (Default) The field doesn't require a value.

You can set this property for all table fields (except AutoNumber data type fields) by using the table's property sheet or Visual Basic.

Note To access a field's Required property in Visual Basic, use the DAO Required property.

Remarks

The Required property is enforced at the table level by the Microsoft Jet database engine. If you set this property to Yes, the field must receive or already contain a value when it has the focus - when a user enters data in a table (or in a form or datasheet based on the table), when a macro or Visual Basic sets the value of the field, or when data is imported into the table.

You can use the Required and AllowZeroLength properties to differentiate between information that doesn't exist (stored as a zero-length string (" ") in the field) and information that may exist but is unknown (stored as a Null value in the field). If you set the AllowZeroLength property to Yes, a zero-length string will be a valid entry in the field regardless of the Required property setting. If you set Required to Yes and AllowZeroLength to No, you must enter a value in the field, and a zero-length string won't be a valid entry.

Tip You can use an input mask when data is entered in a field to distinguish between the display of a Null value and a zero-length string. For example, the string "None" could be displayed when a zero-length string is entered.

The following table shows the results you can expect when you combine the settings of the Required and AllowZeroLength properties.

Required | AllowZeroLength | User's action | Value stored
No | No | Presses ENTER Presses SPACEBAR Enters a zero-length string | Null Null (not allowed)
No | Yes | Presses ENTER Presses SPACEBAR Enters a zero-length string | Null Null Zero-length string
Yes | No | Presses ENTER Presses SPACEBAR Enters a zero-length string | (not allowed) (not allowed) (not allowed)
Yes | Yes | Presses ENTER Presses SPACEBAR Enters a zero-length string | (not allowed) Zero-length string Zero-length string

If you set the Required property to Yes for a field in a table that already contains data, Microsoft Access gives you the option of checking whether the field has a value in all existing records. However, you can require that a value be entered in this field in all new records even if there are existing records with Null values in the field.

Note To enforce a relationship between related tables that don't allow Null values, set the Required property of the foreign key field in the related table to Yes. The Jet database engine then ensures that you have a related record in the parent table before you can create a record in the child table. If the foreign key field is part of the primary key of the child table, this is unnecessary, because a primary key field can't contain a Null value.


 ResyncCommand Property

ResyncCommand Property

You can use the ResyncCommand property to specify or determine the SQL statement or stored procedure that will be used in an updateable snapshot of a table.

Setting

The ResyncCommand property is a string expression representing a SQL statement or stored procedure that is parameterized by the key columns from the Unique Table in the output cursor, using ? as parameter markers.

You can set this property by using the property sheet or Visual Basic.

Remarks

The parameters must match in number and ordering to the set of key columns for the table identified by the UniqueTable property. The purpose of the ResyncCommand property is to pull in the "fixed up" values of a row in a recordset after an update has been made, including an update to a join column. For an example, see item #1 in the example topic.

For data access pages and for forms based on views or non-parameterized SQL queries containing a join, if the ResyncCommand property is null, Microsoft Access determines an appropriate query to use for the resync operation. For data access pages and forms based on stored procedures or parameterized SQL statements, Access cannot determine an appropriate resync query at run time, so the user must supply the ResyncCommand string in order to get the correct row fix up behavior. If the ResyncCommand property is empty and Access cannot determine an appropriate query to use, the default ADO resync operation (to display the current values) occurs after an update or insert.


 ReturnsRecords Property (Microsoft Access)

ReturnsRecords Property

You can use the ReturnsRecords property in an SQL pass-through query to specify whether the query returns records. For example, if your pass-through query is SELECT * FROM EMPLOYEES, you can set the ReturnsRecords property to Yes to display all employee records in the query's datasheet.

Note The ReturnsRecords property applies only to pass-through queries.

Setting

The ReturnsRecords property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The query returns records (as a select query does).
No | False (0) | The query doesn't return records (as an action query does).

You can set this property by using the query's property sheet or Visual Basic.

Tip You can access a pass-through query's ReturnsRecords property in Visual Basic, but the preferred method is to use the DAO ReturnsRecords property.

Remarks

A pass-through query can return records, or it can be used to change data, create a database object, or perform an action as an action query does.

When you set the ReturnsRecords property to Yes, you can use the pass-through query in another query or as the basis for a combo box, list box, form, or report. If you set the ReturnsRecords property to No, you can't use the query as the basis for an object or control because no records are returned.


 RowHeight Property

RowHeight Property

You can use the RowHeight property to specify the height of all rows in Datasheet view.

Note The RowHeight property applies to all fields in Datasheet view and to form controls when the form is in Datasheet view.

Setting

You can set the RowHeight property in Datasheet view by dragging the lower border of the record selector or by clicking Row Height on the Format menu. When you set the RowHeight property by using the Row Height command, the value is expressed in points.

In Visual Basic, the RowHeight property setting is a Long Integer value that represents the datasheet row height in twips. To specify the default height for the current font, you can set the RowHeight property to True (-1).


 RowSourceType, RowSource Properties

RowSourceType, RowSource Properties

You can use the RowSourceType and RowSource properties together to tell Microsoft Access how to provide data to a list box, a combo box, or an unbound OLE object such as a chart. For example, to display rows of data in a list box from a query named CustomerList, set the list box's RowSourceType property to Table/Query and its RowSource property to the query named CustomerList.

Setting

The RowSourceType property uses the following settings.

Setting | Description
Table/Query | (Default) The data is from a table, query, or SQL statement specified by the RowSource setting.
Value List | The data is a list of items specified by the RowSource setting.
Field List | The data is a list of field names from a table, query, or SQL statement specified by the RowSource setting.

Note You can also set the RowSourceType property with a user-defined function. The function name is entered without a preceding equal sign (=) and without the trailing pair of parentheses. You must provide specific function code arguments to tell Microsoft Access how to fill the control.

The RowSource property setting depends on the RowSourceType property setting.

For this RowSourceType setting | Enter this RowSource setting
Table/Query | A table name, query name, or SQL statement.
Value List | A list of items with semicolons (;) as separators.
Field List | A table name, query name, or SQL statement.

Note If the RowSourceType property is set to a user-defined function, the RowSource property can be left blank.

You can set the RowSourceType and RowSource properties by using the control's property sheet, a macro, or Visual Basic.

For table fields, you can set these properties on the Lookup tab in the Field Properties section of table Design view for fields with the DisplayControl property set to Combo Box or List Box.

Note Microsoft Access sets these properties automatically when you select Lookup Wizard as the data type for a field in table Design view.

In Visual Basic, set the RowSourceType property by using a string expression with one of these values: "Table/Query", "Value List", or "Field List". You also use a string expression to set the value of the RowSource property. To set the RowSourceType property to a user-defined function, enter the name of the function.

Remarks

When you have a limited number of values that don't change, you can set the RowSourceType property to Value List and then enter the values that make up the list in the RowSource property.

When you create a user-defined function to insert items into a list box or combo box, Microsoft Access calls the function repeatedly to get the information it needs. User-defined RowSourceType functions must be written in a very specific function format.


 RunningSum Property

RunningSum Property

You can use the RunningSum property to calculate record-by-record or group-by-group totals in a report. The RunningSum property specifies whether a text box on a report displays a running total and lets you set the range over which values are accumulated. For example, you can group data by month and show the sum of each month's sales in the group footer. You can show the running sum of accumulated sales over the entire report (sales for January in the January footer, sales for January plus February in the February footer, and so on) by adding a text box to the footer that shows the sum of sales and setting its RunningSum property to Over All.

Note The RunningSum property applies only to a text box on a report.

Setting

The RunningSum property uses the following settings.

Setting | Visual Basic | Description
No | 0 | (Default) The text box displays the data from the underlying field for the current record.
Over Group | 1 | The text box displays a running sum of values in the same group level. The value accumulates until another group level section is encountered.
Over All | 2 | The text box displays a running sum of values in the same group level. The value accumulates until the end of the report.

You can set the RunningSum property by using the text box's property sheet, a macro, or Visual Basic. You can set the RunningSum property only in Design view.

Remarks

Place the text box in the Detail section to calculate a record-by-record total. For example, to number the records appearing in a detail section of a report, set the ControlSource property for the text box to "=1", and set the RunningSum property to Over Group.

Place the text box in a group header or group footer to calculate a group-by-group total.

You can have up to 10 nested group levels in a report.


 ScaleHeight, ScaleWidth Properties

ScaleHeight, ScaleWidth Properties

You can use the ScaleHeight and ScaleWidth properties to specify the number of units for the vertical or horizontal measurement of the page when the Circle, Line, Pset, or Print method is used while a report is printed or previewed, or its output is saved to a file.

Setting

  • The ScaleHeight property specifies a Single value used in a numeric expression to set the number of units for the vertical measurement of the page.

  • The ScaleWidth property specifies a Single value used in a numeric expression to set the number of units for the horizontal measurement of the page.

The default settings are the internal height and width of a report page in twips.

You can set the ScaleHeight and ScaleWidth properties by using a macro or a Visual Basic event procedure specified by a section's OnPrint property setting.

Remarks

You can use the ScaleHeight and ScaleWidth properties to create a custom coordinate scale for drawing or printing. For example, the statement ScaleHeight = 100 defines the internal height of the section as 100 units, or one vertical unit as one one-hundredth of the height.

Use the ScaleMode property to define a scale based on a standard unit of measurement, such as points, pixels, characters, inches, millimeters, or centimeters.

Setting the ScaleHeight and ScaleWidth properties to positive values makes coordinates increase in value from top to bottom and left to right. Setting them to negative values makes coordinates increase in value from bottom to top and right to left.

By using these properties and the related ScaleLeft and ScaleTop properties, you can set up a custom coordinate system with both positive and negative coordinates. All four of these Scale properties interact with the ScaleMode property in the following ways:

  • Setting any other Scale property to any value automatically sets the ScaleMode property to 0.

  • Setting the ScaleMode property to a number greater than 0 changes the ScaleHeight and ScaleWidth properties to the new unit of measurement and sets the ScaleLeft and ScaleTop properties to 0. Also, the CurrentX and CurrentY property settings change to reflect the new coordinates of the current point.

You can also use the Scale method to set the ScaleHeight, ScaleWidth, ScaleLeft, and ScaleTop properties in one statement.

Note The ScaleHeight and ScaleWidth properties aren't the same as the Height and Width properties.


 ScaleLeft, ScaleTop Properties

ScaleLeft, ScaleTop Properties

You can use the ScaleLeft and ScaleTop properties to specify the units for the horizontal and vertical coordinates that describe the location of the left and top edges of a page when the Circle, Line, Pset, or Print method is used while a report is previewed, printed, or its output is saved to a file.

Setting

  • The ScaleLeft property specifies a Single value used in a numeric expression to set the number of units for the horizontal coordinate of the left edge of a page. The default setting is 0.

  • The ScaleTop property specifies a Single value used in a numeric expression to set the number of units for the vertical coordinate of the top edge of a page. The default setting is 0.

You can set the ScaleLeft and ScaleTop properties by using a macro or a Visual Basic event procedure specified by a section's OnPrint property setting.

Remarks

By using these properties and the related ScaleHeight and ScaleWidth properties, you can set up a custom coordinate system with both positive and negative coordinates. All four of these Scale properties interact with the ScaleMode property in the following ways:

  • Setting any other Scale property to any value automatically sets the ScaleMode property to 0.

  • Setting the ScaleMode property to a number greater than 0 changes the ScaleHeight and ScaleWidth property settings to the new unit of measurement and sets the ScaleLeft and ScaleTop properties to 0. Also, the CurrentX and CurrentY property settings change to reflect the new coordinates of the current point.

You can also use the Scale method to set the ScaleHeight, ScaleWidth, ScaleLeft, and ScaleTop properties in one statement.

Note The ScaleLeft and ScaleTop properties aren't the same as the Left and Top properties.


 ScaleMode Property

ScaleMode Property

You can use the ScaleMode property in Visual Basic to specify the unit of measurement for coordinates on a page when the Circle, Line, Pset, or Print method is used while a report is previewed or printed, or its output is saved to a file.

Setting

The ScaleMode property uses the following settings.

Setting | Description
0 | Custom values used by one or more of the ScaleHeight, ScaleWidth, ScaleLeft, and ScaleTop properties
1 | (Default) Twips
2 | Points
3 | Pixels
4 | Characters (horizontal = 120 twips per unit; vertical = 240 twips per unit)
5 | Inches
6 | Millimeters
7 | Centimeters

The property setting has an Integer value.

You can set the ScaleMode property by using a macro or a Visual Basic event procedure specified by a section's OnPrint property setting.

Remarks

By using the related ScaleHeight, ScaleWidth, ScaleLeft, and ScaleTop properties, you can create a custom coordinate system with both positive and negative coordinates. All four properties interact with the ScaleMode property in the following ways:

  • Setting any other Scale property to any value automatically sets the ScaleMode property to 0.

  • Setting the ScaleMode property to a number greater than 0 changes the ScaleHeight and ScaleWidth property settings to the new unit of measurement and sets the ScaleLeft and ScaleTop properties to 0. Also, the CurrentX and CurrentY property settings change to reflect the new coordinates of the current point.


 Screen Property

Screen Property

You can use the Screen property to return a reference the Screen object and its related properties.

Setting

This property is available only by using Visual Basic and is read-only.

Remarks

Use the Screen object to refer to a particular form, report, or control that has the focus.


 ScreenTip Property

ScreenTip Property

You can use the ScreenTip property to specify or determine the text that is displayed when you move the cursor over a hyperlink control.

Setting

The ScreenTip property is a string expression displayed as a screen tip.

You can set the HyperlinkSubAddress property with the SubAddress property by using Visual Basic.

Note You can set the HyperlinkSubAddress property by using a control's property sheet, a macro, or Visual Basic.

Remarks

When you move the cursor over a hyperlink control whose HyperlinkSubAddress property is set, Microsoft Access changes the cursor to an upward-pointing hand and displays the text string defined by the ScreenTip property. Clicking the control displays the object or Web page specified by the link.

For more information about hyperlink addresses and their format, see the HyperlinkAddress and HyperlinkSubAddress property topics.


ScrollBarAlign Property

Language-specific information

You can use the ScrollBarAlign to specify or determine the alignment of a vertical scroll bar.

Setting

The ScrollBarAlign property uses the following settings.

Setting | Visual Basic | Description
System | 0 | Vertical scroll bar is placed on the left if the form or report Orientation property is right to left; and on the right if the form or report Orientation property is left to right.
Right | 1 | Aligns vertical scroll bar on the right side of the control.
Left | 2 | Aligns vertical scroll bar on the left side of the control.

You can set this property by using the property sheet or Visual Basic.

Remarks

For combo and list boxes, ScrollBarAlign also controls the placement of the box button above the scroll bar.

For more information about right-to-left properties, see Learn more about right-to-left properties in Microsoft Access 2000.


 ScrollBars Property

ScrollBars Property

You can use the ScrollBars property to specify whether scroll bars appear on a form or in a text box control.

Setting

The ScrollBars property uses the following settings.

Setting | Visual Basic | Description
Neither (forms) None (text boxes) | 0 | (Default for text boxes) No scroll bars appear on the form or text box.
Horizontal Only (forms) | 1 | Horizontal scroll bar appears on the form. Not applicable to text boxes.
Vertical Only (forms) Vertical (text boxes) | 2 | Vertical scroll bar appears on the form or text box.
Both (forms) | 3 | (Default for forms) Vertical and horizontal scroll bars appear on the form. Not applicable to text boxes.

You can set this property by using the form's or control's property sheet, a macro, or Visual Basic.

For a text box, you can set the default for this property by using the default control style or the DefaultControl method in Visual Basic.

Remarks

If your form is larger than the available display window, you can use the ScrollBars property to allow the user to view the entire form.

You can use the NavigationButtons property to control record navigation.


 Section Property

Section Property

You can use the Section property to identify a section of a form or report and provide access to the properties of that section. You can also identify controls by the section of a form or report where the control appears.

Setting

The Section property is an Integer data type value corresponding to a particular section. You can use Integer values or the constants listed below. It is recommended that you use the constants to make your code easier to read.

Setting | Constant | Description
0 | acDetail | Form detail section or report detail section
1 | acHeader | Form or report header section
2 | acFooter | Form or report footer section
3 | acPageHeader | Form or report page header section
4 | acPageFooter | Form or report page footer section
5 | acGroupLevel1Header | Group-level 1 header section (reports only)
6 | acGroupLevel1Footer | Group-level 1 footer section (reports only)
7 | acGroupLevel2Header | Group-level 2 header section (reports only)
8 | acGroupLevel2Footer | Group-level 2 footer section (reports only)

If a report has additional group-level sections, the header/footer pairs are numbered consecutively beginning with 9.

The Section property is read-only in all views.

For forms and reports, the Section property is an array of all existing sections in the form or report specified by the section number. For example, Section(0) refers to a form's detail section and Section(3) refers to a form's page header section.

You can also refer to a section by name. The following statements refer to the Detail0 section for the Customers form and are equivalent.

Forms!Customers.Section(acDetail).Visible
Forms!Customers.Section(0).Visible
Forms!Customers.Detail0.Visible

Remarks

For forms and reports, you must combine the Section property with other properties that apply to form or report sections. The following example shows how to refer to the Visible property of the page header section of the Customers form.

Forms!Customers.Section(acPageHeader).Visible
Forms!Customers.Section(3).Visible

For controls, you can use the Section property to determine which section of a form or report a control is in. The following example uses the Section property to determine which section contains the CustomerID control.

Dim intSectionNumber As Integer
intSectionNumber = Forms!Customers!CustomerID.Section


 Selected Property

Selected Property

You can use the Selected property in Visual Basic to determine if an item in a list box is selected.

Setting

The Selected property is a zero-based array that contains the selected state of each item in a list box.

Setting | Description
True (-1) | The list box item is selected.
False (0) | The list box item isn't selected.

You can get or set the Selected property by using Visual Basic.

This property is available only at run time.

Remarks

When a list box control's MultiSelect property is set to None, only one item can have its Selected property set to True. When a list box control's MultiSelect property is set to Simple or Extended, any or all of the items can have their Selected property set to True. A multiple-selection list box bound to a field will always have a Value property equal to Null. You use the Selected property or the ItemsSelected collection to retrieve information about which items are selected.

You can use the Selected property to select items in a list box by using Visual Basic. For example, the following expression selects the fifth item in the list:

Me!Listbox.Selected(4) = True


 SelHeight, SelWidth Properties

SelHeight, SelWidth Properties

You can use the SelHeight property to specify or determine the number of selected rows (records) in the current selection rectangle in a table, query, or form datasheet, or the number of selected records in a continuous form. You can use the SelWidth property to specify or determine the number of selected columns (fields) in the current selection rectangle. For example, if you've selected a group of rows and columns within Datasheet view of the Customers table, you can use the SelHeight and SelWidth properties to determine the number of rows and columns in the selection rectangle.

Setting

  • The SelHeight property. A Long Integer value between 0 and the number of records in the datasheet or continuous form. The setting of this property specifies or returns the number of selected rows in the selection rectangle or the number of selected records in the continuous form.

  • The SelWidth property. A Long Integer value between 0 and the number of columns in the datasheet. The setting of this property specifies or returns the number of selected columns in the selection rectangle.

These properties aren't available in Design view. These properties are only available by using a macro or Visual Basic.

Remarks

If there's no selection, the value returned by these properties will be zero. Setting either of these properties to 0 removes the selection from the datasheet or form.

If you've selected one or more records in the datasheet (using the record selectors), you can't change the setting of the SelWidth property (except to set it to 0). If you've selected one or more columns (using the column headings), you can't change the setting of the SelHeight property (except to set it to 0).

You can use these properties with the SelTop and SelLeft properties to specify or determine the actual position of the selection rectangle on the datasheet. If there's no selection, then the SelTop and SelLeft properties return the row number and column number of the cell with the focus.

The SelHeight and SelWidth properties contain the position of the lower-right corner of the selection rectangle. The SelTop and SelLeft property values determine the upper-left corner of the selection rectangle.


 SelTop, SelLeft Properties

SelTop, SelLeft Properties

You can use the SelTop property to specify or determine which row (record) is topmost in the current selection rectangle in a table, query, or form datasheet, or which selected record is topmost in a continuous form. You can use the SelLeft property to specify or determine which column (field) is leftmost in the current selection rectangle. For example, if you've selected a group of rows and columns within Datasheet view of the Customers table, you can use the SelTop and SelLeft properties to determine the first row and first column selected in the selection rectangle.

Setting

  • The SelTop property. A Long Integer value between 1 and the number of records in the datasheet or continuous form. The setting of this property specifies or returns the number of the topmost row in the current selection rectangle or the number of the topmost selected record in the continuous form.

  • The SelLeft property. A Long Integer value between 1 and the number of columns in the datasheet. The setting of this property specifies or returns the number of the leftmost column in the current selection rectangle.

These properties aren't available in Design view. These properties are available only by using a macro or Visual Basic.

Remarks

If there's no selection, the value returned by these properties is the row and column of the cell with the focus.

If you've selected one or more records in the datasheet (using the record selectors), you can't change the setting of the SelLeft property. If you've selected one or more columns (using the column headings), you can't change the setting of the SelTop property.

You can use these properties with the SelHeight and SelWidth properties to specify or determine the actual size of the selection rectangle. The SelTop and SelLeft properties determine the position of the upper-left corner of the selection rectangle. The SelHeight and SelWidth properties determine the lower-right corner of the selection rectangle.


 SelLength, SelStart, SelText Properties

SelLength, SelStart, SelText Properties

You can use these properties for tasks such as positioning the insertion point, establishing an insertion range, selecting parts of strings in a text box or combo box control, and deleting text.

  • The SelLength property specifies or determines the number of characters selected in a text box or the text box portion of a combo box.

  • The SelStart property specifies or determines the starting point of the selected text or the position of the insertion point if no text is selected.

  • The SelText property returns a string containing the selected text. If no text is selected, the SelText property contains a Null value.

Setting

  • The SelLength and SelStart properties use an Integer in the range 0 to the total number of characters in a text box or text box portion of a combo box.

  • The SelText property uses a string expression that contains the text selected in the control. If the control contains selected text when this property is set, the selected text is replaced by the new SelText setting.

You can set the SelLength and SelStart properties by using a macro or Visual Basic. The SelText property is read-only.

Remarks

To set or return these properties for a control, the control must have the focus. To move the focus to a control, use the SetFocus method.

Setting the SelLength property to a number less than 0 produces a run-time error.

Setting the SelStart property to a number greater than the number of characters in the control sets the property to the existing text length.

Changing the SelStart property cancels the selection, places an insertion point in the text, and sets the SelLength property to 0.


 ServerFilter Property

ServerFilter Property

You can use the ServerFilter property to specify a subset of records to be displayed when a server filter is applied to a form or report within a Microsoft Access project (.adp) or a data access page in a Microsoft Access project (.adp) or database (.mdb).

Setting

The ServerFilter property is a string expression consisting of a WHERE clause without the WHERE keyword. For example, the following Visual Basic code defines and applies a filter to show only customers from the USA:

Me.ServerFilter = "Country = 'USA'"
Me.ServerFilterByForm = True

The easiest way to set this property is by using a form or report's property sheet. You can also set this property on a form or report by using Visual Basic.

To set the ServerFilter property, you must first either:

  • Set the property value in the form's property sheet.

  • Set the property in Visual Basic by typing
    Forms(0).ServerFilter = "fieldname = value"

Note Setting the ServerFilter property has no effect on the ADO Filter property.

Remarks

You can use the ServerFilter property to save a filter and apply it at a later time. Filters are saved with the objects in which they are created. They are automatically loaded when the object is opened, but they aren't automatically applied.

To apply a saved filter to a form, you can click Apply Server Filter [image] on the toolbar, click Apply Filter/Sort on the Records menu, or use a macro or Visual Basic to set the ServerFilterByForm property to True (-1).

The Apply Server Filter button indicates the state of the ServerFilter and ServerFilterByForm properties. The button remains disabled until there is a filter to apply. If an existing filter is currently applied, the Apply Server Filter button appears pressed in.

To apply a filter automatically when a form is opened, specify in the OnOpen event property setting of the form either a macro that uses the ApplyFilter action or an event procedure that uses the ApplyFilter method of the DoCmd object. In either case, the form opens in the Server Filter By Form window.

You can only remove a server filter by using Visual Basic to set the ServerFilterByForm property to False (0) or clear all filter criteria in the Server Filter By Form window and then click Apply Server Filter.

When the ServerFilter property is set in form Design view, Microsoft Access does not attempt to validate the SQL expression. If the SQL expression is invalid, an error occurs when the filter is applied.

Notes

  • When a new object is created, it inherits the RecordSource, Filter, ServerFilter, OrderBy, and OrderByOn properties of the table or query it was created from.

  • The ServerFilter property setting is ignored if the form's record source is a stored procedure.


 ServerFilterByForm Property

ServerFilterByForm Property

You can use the ServerFilterByForm property to specify or determine whether a form is opened in the Server Filter By Form window.

Setting

The ServerFilterByForm property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The form is opened in the Server Filter By Form window.
 |  | Note When the ServerFilterByForm property is True, the Filter By Form feature is disabled.
No | False (0) | (Default) The form is not opened in the Server Filter By Form window.

The easiest way to set the ServerFilterByForm property is by using a form's property sheet. You can set this property by using Visual Basic.

To set the ServerFilterByForm property, you must first either:

  • Set the property in the form's property sheet.

  • Set the property in Visual Basic by typing
    Forms(0).ServerFilterByForm = True

If the ServerFilter property has been set, you can also set this property by clicking Apply Server Filter [image] on the Form View toolbar or the Filter/Sort toolbar.

Remarks

To apply a saved filter to a form, press the Apply Server Filter button, or apply the filter by using a macro or Visual Basic by setting the ServerFilterByForm property to True (-1).

The Apply Server Filter button indicates the state of the ServerFilter and ServerFilterByForm properties. The button remains disabled until there is a filter to apply. If an existing filter is currently applied, the Apply Server Filter button appears pressed in. To apply a filter automatically when a form opened, specify in the OnOpen event property setting of the form either a macro that uses the ApplyFilter action or an event procedure that uses the ApplyFilter method of the DoCmd object.

You can remove a filter by using Visual Basic to set the ServerFilterByForm property to False (0) or clear all filter criteria in the Server Filter By Form window and then click Apply Server Filter.

Notes

  • When a new object is created, it inherits the RecordSource, Filter, ServerFilter, OrderBy, and OrderByOn properties of the table or query it was created from. For forms and reports, inherited filters aren't automatically applied when an object is opened.

  • The ServerFilterByForm property setting is ignored if the form's record source is a stored procedure.


 ShortcutMenu Property

ShortcutMenu Property

You can use the ShortcutMenu property to specify whether a shortcut menu is displayed when you right-click an object on a form. For example, you might want to disable a shortcut menu to prevent the user from changing the form's underlying record source by using one of the filtering commands on the form's shortcut menu.

Setting

The ShortcutMenu property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) Shortcut menus are displayed.
No | False (0) | Shortcut menus aren't displayed.

You can set this property by using the form's property sheet, a macro, or Visual Basic.

Remarks

This property controls the displaying of the shortcut menus for a form and for any of its controls. If the ShortcutMenu property is set to No, shortcut menus aren't displayed when you right-click a form or any of its controls.

If you're developing a wizard, you might want to hide shortcut menus on your wizard forms to prevent the user from viewing or using them. This is especially true for forms that display choices. For example, the ShortcutMenu property for the Startup form in the Northwind sample database is set to No. This prevents users from displaying shortcut menus for the form or controls on the form.


 ShortcutMenuBar Property

ShortcutMenuBar Property

You can use the ShortcutMenuBar property to specify the shortcut menu that will appear when you right-click on a form, report, or control on a form. You create these shortcut menus by pointing to Toolbars on the View menu and then clicking Customize. For more information about creating custom toolbars, see Create a custom shortcut menu for the current database.

Note The ShortcutMenuBar property applies only to controls on a form, not controls on a report.

You can also use the ShortcutMenuBar property to specify the menu bar macro that will be used to display a shortcut menu for a datasheet, form, form control, or report.

Note In versions of Microsoft Access prior to Microsoft Access 97, you created a custom shortcut menu by setting the ShortcutMenuBar property to the name of a menu bar macro. You then created a macro group containing the commands for this menu. This functionality is still supported in Microsoft Access 2000. However, it is strongly recommended that you use the new Customize dialog box, available by pointing to Toolbars on the View menu, and then clicking Customize, to create custom shortcut menus.

Setting

Enter the name of the shortcut menu you want to display. A shortcut menu can be any command bar whose Type property is set to Popup. If you leave the ShortcutMenuBar property setting blank, Microsoft Access displays the built-in (default) shortcut menu or the application's global shortcut menu. If you set the ShortcutMenuBar property to a value that isn't the name of an existing shortcut menu or menu bar macro, the form, form control, or report won't have a shortcut menu (the default shortcut menu won't be shown).

You can set this property by using the object's property sheet, a macro, or Visual Basic.

In Visual Basic, you set this property by using a string expression that is the name of the shortcut menu you want to display.

To display the built-in shortcut menu for a database, form, form control, or report by using a macro or Visual Basic, set the property to a zero-length string (" ").

Remarks

You create a custom shortcut menu by first creating a toolbar that includes all the commands you want to appear on your custom shortcut menu. Then open the Toolbar Properties dialog box by selecting the toolbar in the Customize dialog box and clicking the Properties button. In the Toolbar Properties dialog box, set the Type property to Popup. This toolbar will now be available in the ShortcutMenuBar property box in the property sheet for a form, form control, or report.

When used with the Application object, the ShortcutMenuBar property enables you to display a custom shortcut menu as a global shortcut menu. However, if you've set the ShortcutMenuBar property for a form, form control, or report in the database, the custom shortcut menu of that object will be displayed in place of the database's global shortcut menu. You can display a different custom shortcut menu for a specific form, form control, or report by setting its ShortcutMenuBar property to a different shortcut menu. When the form, form control, or report has the focus, the custom shortcut menu for that object is displayed when the user clicks the right mouse button; otherwise, the global shortcut menu for the database is displayed.

Shortcut menus aren't available to any object if the AllowShortcutMenus property is set to False (0).


 ShowNavigationButtons Property

ShowNavigationButtons Property

You can use the ShowNavigationButtons property to specify or determine whether navigation buttons are available in the Snapshot Viewer control.

Setting

The ShowNavigationButtons property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The control's navigation buttons are displayed.
No | False (0) | The control's navigation buttons are not displayed.

You can set the ShowNavigationButtons property by using the control's property sheet or Visual Basic.

Remarks

When this property is set to No, the only way to navigate between pages in a snapshot is by using the snapshot control's pop-up menu or by setting the CurrentPage property using Visual Basic for Applications.


 SizeMode Property

SizeMode Property

You can use the SizeMode property to specify how to size a picture or other object in a bound object frame, an unbound object frame, or an image control.

Setting

The SizeMode property uses the following settings.

Setting | Visual Basic | Description
Clip | acOLESizeClip (0) | (Default) Displays the object at actual size. If the object is larger than the control, its image is clipped on the right and bottom by the control's borders.
Stretch | acOLESizeStretch (1) | Sizes the object to fill the control. This setting may distort the proportions of the object.
Zoom | acOLESizeZoom (3) | Displays the entire object, resizing it as necessary without distorting the proportions of the object. This setting may leave extra space in the control if the control is resized.

You can set the SizeMode property in a property sheet, in a macro, or by using Visual Basic. You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

Tip Use the Clip setting for the fastest display. You can use the Stretch setting for bar graphs and line graphs without concern for size adjustments. The Stretch setting can distort circles and photos.


 SnapshotPath Property

SnapshotPath Property

You can use the SnapshotPath property to specify or determine the path to the snapshot file to be displayed in the Snapshot Viewer control.

Setting

The SnapshotPath property is a String value representing the fully qualified path and file name to the snapshot file to be displayed in the control. The property can be set to the name of a snapshot file on a local computer, a file on a network, or a file located on at an HTTP or FTP address.

You can set the SnapshotPath property by using the control's property sheet or Visual Basic.

Remarks

If you set the SnapshotPath property to a zero-length string or the name of a nonexistent file, then nothing is displayed in the control. If you set this property to the name of a file that is not a snapshot file, then a snapshot file icon with a red "X" is displayed in the control.

Because the control supports HTTP and FTP addresses, the control may not know if the SnapshotPath property is valid at the time it is set. You can use the ReadyState property to determine if a valid snapshot file has been loaded into the control.


 SortOrder Property

SortOrder Property

You use the SortOrder property to specify the sort order for fields and expressions in a report. For example, if you're printing a list of suppliers, you can sort the records alphabetically by company name.

Setting

The SortOrder property uses the following settings.

Setting | Visual Basic | Description
Ascending | False (0) | (Default) Sorts values in ascending (A to Z, 0 to 9) order.
Descending | True (-1) | Sorts values in descending (Z to A, 9 to 0) order.

You can set the SortOrder property by using the Sorting And Grouping box, a macro, or Visual Basic.

In Visual Basic, you set the SortOrder property in report Design view or in the Open event procedure of a report by using the GroupLevel property.


 Source Property (Microsoft Access)

Source Property

You can use the Source property to specify the source connection string and source database for a query's source table or query. This is necessary if you're accessing data in an external table without linking the table.

Tip Using the Source property and the SourceConnectStr property to access ODBC tables is much slower than using linked tables.

Setting

You set the Source property by using a string expression. You can't set this property in code directly. It's set when you create a new query by using an SQL statement. The FROM clause in the SQL statement corresponds to the Source property setting.

The following examples show how you can use the Source property to connect to several different types of external databases.

Type of database | Specify this | Sample setting
Microsoft Access | The path and database name. Microsoft Access adds the file name extension automatically. | C:\Accts\Customers
dBASE | The database type and path. For a list of specifiers, see the ADO Connect property. | dBASE IV;DatabaseTable=C:\DBDATA
SQL Server (ODBC) The name of the source database and any additional information required by the product, such as a logon identification (ID) and password. You can also use the ODBC Connection String Builder to create the connection string. ODBC;DSN=salessrv;UID=jace;
PWD=password;DATABASE=sales;

You can set this property by using a query's field list property sheet.

You can also set it in SQL view of the Query window by using the FROM and IN clauses in the SQL statement.

Remarks

When all the source tables in a query come from the same external database, use the query's SourceConnectStr and SourceDatabase properties instead of setting the Source property for each source table or query.


 SourceConnectStr, SourceDatabase Properties

SourceConnectStr, SourceDatabase Properties

You can use these properties to access external data when you can't link the external tables to your database.

  • The SourceConnectStr property specifies the name of the application used to create an external database.

  • The SourceDatabase property specifies the external database in which the source tables or queries for a query reside.

Note The SourceConnectStr and SourceDatabase properties apply to all queries except data-definition, pass-through, and union queries.

Setting

You use a string expression to set the value of the SourceConnectStr and SourceDatabase properties.

You can set these properties in the query's property sheet or in SQL view of the Query window. In the SQL statement, the properties correspond to the IN clause.

Note If you are accessing multiple database sources, use the Source property instead of the SourceConnectStr and SourceDatabase properties.

Remarks

You must use the SourceConnectStr and SourceDatabase properties to access tables from external databases that were created in applications that don't use linked tables.

The following are examples of these property settings:

  • For a Microsoft Access database, the SourceDatabase property setting is the path and database name (for example, C:\Accounts\Customers). Microsoft Access adds the file name extension automatically. The SourceConnectStr property doesn't have a value for a Microsoft Access database.

  • For a database created by a product such as Paradox, the SourceDatabase property setting is the path (for example, C:\Pdoxdata). The SourceConnectStr property setting is the specifier for the database type (for example, Paradox 3.x;). For a list of specifiers, see the ADO Connect property.

  • The following example uses dBASE IV tables in the C:\Dbdata directory as the source of data for the query.
    SELECT Customer.COMPANYNAM, Orders.ORDERID, Orders.ORDERDATE
FROM Customer INNER JOIN Orders
ON Customer.CUSTOMERID = Orders.CUSTOMERID
IN 'C:\Dbdata'[dBASE IV;];

  • For an Open Database Connectivity (ODBC) database, the SourceConnectStr property setting is the name of the source database and any additional information required by the product, such as a logon identification (ID) and password. For example, for a Microsoft SQL Server database the setting might be:
    ODBC;DSN=salessrv;UID=jace;PWD=password;DATABASE=sales;

The SourceDatabase property doesn't have a value for an ODBC database.

For more information about accessing data in ODBC databases, see Chapter 15, "Retrieving and Analyzing Data," in the Microsoft Office 2000/Visual Basic Programmer's Guide. For information about how to obtain the Microsoft Office 2000/Visual Basic Programmer's Guide, click [image] .


 SourceDoc Property

SourceDoc Property

You can use the SourceDoc property to specify the file to create a link to or to embed when you create a linked object or embedded object by using the Action property in Visual Basic.

Setting

For an embedded object, enter the full path and file name for the file you want to use as a template and set the Action property to acOLECreateEmbed.

For a linked object, enter the full path and file name of the file to create a link to and set the Action property to acOLECreateLink.

You can set this property in a property sheet, in a macro, or by using Visual Basic.

Note While this property appears in the property sheet, it takes effect only after the Action property is set in a macro or by using Visual Basic.

Remarks

You can use the SourceDoc property to specify the file to create a link to and the control's SourceItem property to specify the data within that file. If you want to create a link to the entire object, leave the SourceItem property blank.

When a linked unbound object is created, the control's SourceItem property setting is concatenated with its SourceDoc property setting. In Form view, Datasheet view, and Print Preview, the control's SourceItem property setting is a zero-length string (" "), and its SourceDoc property setting is the full path to the linked file, followed by an exclamation point (!) or a backslash (\) and the SourceItem property setting, as in the following example:

"C:\Work\Qtr1\Revenue.xls!R1C1:R30C15"


 SourceItem Property

SourceItem Property

You can use the SourceItem property to specify the data within a file to be linked when you create a linked OLE object.

Setting

You can set the SourceItem property by specifying data in units recognized by the application supplying the object. For example, when you link to Microsoft Excel, you specify the SourceItem property setting by using a cell or cell-range reference such as R1C1 or R3C4:R9C22 or a named range such as Revenues.

Note To determine the syntax to describe a unit of data for a particular object, see the documentation for the application that was used to create the object.

You can set this property by using the control's property sheet, a macro, or Visual Basic.

In Visual Basic, you set this property by using a string expression.

Remarks

The control's OLETypeAllowed property must be set to Linked or Either when you use this property. Use the control's SourceDoc property to specify the file to link.


 SourceObject Property

SourceObject Property

You can use the SourceObject property to identify the form or report that is the source of the subform or subreport on a form or report. You can also use this property for linked unbound object frames to determine the complete path and file name of the file that contains the data linked to the object frame.

Setting

Enter the name of the form or report that is the source of the subform or subreport in the control's property sheet. If you add a subform or subreport to the form or report by dragging it from the Database window, the SourceObject property is set automatically in the property sheet.

For unbound object frames, the SourceObject property is set automatically when you use the Object command on the Insert menu to insert a linked OLE object.

For a subform or subreport, you can set this property by using the control's property sheet, a macro, or Visual Basic.

In Visual Basic, you set this property by using a string expression that is a name of a form or report.

For linked unbound object frames, the SourceObject property can't be set in any view.

Note You can't set or change the SourceObject property in the Open or Format events of a report.

Remarks

If you delete the SourceObject property setting in the property sheet for a subform or subreport, the control remains on the form but is no longer bound to the source form or report.


 SpecialEffect Property

SpecialEffect Property

You can use the SpecialEffect property to specify whether special formatting will apply to a section or control.

Setting

The SpecialEffect property uses the following settings.

Setting | Example | Visual Basic | Description
Flat |  | 0 | The object appears flat and has the system's default colors or custom colors that were set in Design view.
Raised |  | 1 | The object has a highlight on the top and left and a shadow on the bottom and right.
Sunken |  | 2 | The object has a shadow on the top and left and a highlight on the bottom and right.
Etched |  | 3 | The object has a sunken line surrounding the control.
Shadowed |  | 4 | The object has a shadow below and to the right of the control.
Chiseled |  | 5 | The object has a sunken line below the control.

You can set this property by using the Special Effect button on the Formatting (Form/Report) toolbar, the object's property sheet, a macro, or Visual Basic.

For controls, you can set the default for this property by using the default control style or the DefaultControl method in Visual Basic.

Remarks

The SpecialEffect property setting affects related property settings for the BorderStyle, BorderColor, and BorderWidth properties. For example, if the SpecialEffect property is set to Raised, the settings for the BorderStyle, BorderColor, and BorderWidth properties are ignored. In addition, changing or setting the BorderStyle, BorderColor, and BorderWidth properties may cause Microsoft Access to change the SpecialEffect property setting to Flat.

Note When you set the SpecialEffect property of a text box to Shadowed, the vertical height of the text display area is reduced. You can adjust the Height property of the text box to increase the size of the text display area.


 StartupForm Property

StartupForm Property

You can use the StartupForm property to specify the name of the form that opens when your database first opens. For example, you can use this property to display a specified form that contains a menu of all available forms, queries, and reports within a Microsoft Access application when the database opens.

Setting

The StartupForm property is a string expression that's the name of a form in the current database.

The easiest way to set this property is by using the Display Form option in the Startup dialog box, available by clicking Startup on the Tools menu. You can also set this property by using a macro or Visual Basic.

To set the StartupForm property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

The StartupForm property is preferred over the OpenForm action in the AutoExec macro. Because Microsoft Access runs the AutoExec macro after it parses the startup properties, your application shouldn't use an OpenForm action in its AutoExec macro if the StartupForm property is set.

If this property is blank, the Microsoft Access default database setting is used (the Database window opens).

This property's setting doesn't take effect until the next time the application database opens.


 StartupMenuBar Property

StartupMenuBar Property

You can use the StartupMenuBar property to specify a custom menu bar to use as the global menu bar for your application. For example, you can use the StartupMenuBar property to display a custom menu bar that doesn't contain the Security menu. This prevents a user from accessing any of the Security menu commands from the menu bar. You can also specify a menu bar macro that displays the custom menu bar you want to use as the global menu bar.

Setting

The StartupMenuBar property is a string expression that's the name of a custom menu bar or menu bar macro in the current database.

The easiest way to set this property is by using the Menu Bar option in the Startup dialog box, available by clicking Startup on the Tools menu. You can also set this property by using a macro or Visual Basic.

To set the StartupMenuBar property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

If you are setting the StartupMenuBar property, you shouldn't use a SetValue action in the AutoExec macro to set the MenuBar property for the Application object. Since Microsoft Access runs the AutoExec macro after it parses the startup properties, the global menu bar set in the AutoExec macro would replace the menu bar set by the StartupMenuBar property.

You can also create custom menu bars by using the MenuBar property for forms and reports. These custom menu bars are displayed when a specific form or report opens and replace the global menu bar in those cases.

If the StartupMenuBar property is blank (which it is by default), Microsoft Access displays the built-in menu bar. If this property is set to the name of a custom menu bar, then the setting of the AllowFullMenus property has no effect (the built-in full menus are replaced by the global menu bar).

Setting this property has the same effect as setting the MenuBar property of the Application object (except the MenuBar property setting takes effect immediately).

If the Use Access Special Keys check box in the Startup dialog box is selected, or if the AllowSpecialKeys property is set to True (-1), users can still press CTRL+F11 to toggle between the global menu bar and the built-in menu bar.

This property's setting doesn't take effect until the next time the application database opens.


 StartupShortcutMenuBar Property

StartupShortcutMenuBar Property

You can use the StartupShortcutMenuBar property to specify a custom shortcut menu to use as the global shortcut menu for your application. You can also specify a menu bar macro that displays the custom shortcut menu you want to use as the global shortcut menu.

Setting

The StartupShortcutMenuBar property is a string expression that's the name of a custom shortcut menu or a menu bar macro that displays a custom shortcut menu.

The easiest way to set this property is by using the Shortcut Menu Bar option in the Startup dialog box, available by clicking Startup on the Tools menu. You can also set this property by using a macro or Visual Basic.

To set the StartupShortcutMenuBar property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

If you are setting the StartupShortcutMenuBar property, you shouldn't use a SetValue action in the AutoExec macro to set the ShortcutMenuBar property for the Application object. Since Microsoft Access runs the AutoExec macro after it parses the startup properties, the global shortcut menu set in the AutoExec macro would replace the shortcut menu set in the StartupShortcutMenuBar property.

You can also create custom shortcut menus by using the ShortcutMenuBar property for forms, reports, and form controls. These custom shortcut menus are displayed when you right-click a specific form, report, or form control, and replace the global shortcut menu in those cases.

If this property is blank, Microsoft Access displays the built-in shortcut menus.

Setting this property has the same effect as setting the ShortcutMenuBar property of the Application object (except the ShortcutMenuBar property setting takes effect immediately).

This property's setting doesn't take effect until the next time the application database opens.


 StartupShowDBWindow Property

StartupShowDBWindow Property

You can use the StartupShowDBWindow property to specify whether or not the Database window is displayed when your application database opens. For example, you can open a main form when your application database opens and hide the Database window.

Setting

The StartupShowDBWindow property uses the following settings.

Setting | Description
True (-1) | Display the Database window at startup.
False (0) | Don't display the Database window at startup.

The easiest way to set this property is by using the Display Database Window option in the Startup dialog box, available by clicking Startup on the Tools menu. ou can also set this property by using a macro or Visual Basic.

To set the StartupShowDBWindow property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

You can set the StartupShowDBWindow property to False to hide the Database window so the user can't see the tables, queries, macros, and modules within your database.

If the Use Access Special Keys check box in the Startup dialog box is selected, or if the AllowSpecialKeys property is set to True, users can still press the F11 key to display the Database window.

Even if you set both the StartupShowDBWindow and AllowSpecialKeys properties to False, it's possible that a user can still access the Database window. This can happen if a user tries more than once to open the same database from the list of most-recently-used databases, which automatically appears on the File menu. To prevent users from accessing this list, replace the File menu with your own custom menu.

This property's setting doesn't take effect until the next time the application database opens.


 StartupShowStatusBar Property

StartupShowStatusBar Property

You can use the StartupShowStatusBar property to specify whether or not the status bar should appear when the application database opens. For example, you can use the StartupShowStatusBar property to prevent display of the status bar if you don't want to display any status messages in your application.

Setting

The StartupShowStatusBar property uses the following settings.

Setting | Description
True (-1) | Display the status bar at startup.
False (0) | Don't display the status bar at startup.

The easiest way to set this property is by using the Display Status Bar option in the Startup dialog box, available by clicking Startup on the Tools menu. You can also set this property by using a macro or Visual Basic.

To set the StartupShowStatusBar property by using a macro or Visual Basic, you must first either set the property in the Startup dialog box once or create the property in the following ways:

  • In a Microsoft Access database (.mdb), you can add it by using the CreateProperty method and append it to the Properties collection of the Database object.

  • In a Microsoft Access project (.adp), you can add it to the AccessObjectProperties collection of the CurrentProject object by using the Add method.

Remarks

Setting this property affects the display of the status bar only for the current database. You can also control whether the status bar is shown or hidden by default for all Microsoft Access databases. To do this click Options on the Tools menu, click the View tab, and then select or clear the Status Bar check box under Show. The current database won't display a status bar if any of the following is true: the Status Bar check box in the Options dialog box is cleared; the Display Status Bar check box in the Startup dialog box is cleared; or the StartupShowStatusBar property is set to False.

This property's setting doesn't take effect until the next time the application database opens.


 StatusBarText Property

StatusBarText Property

You can use the StatusBarText property to specify the text that is displayed in the status bar when a control is selected.

Note The StatusBarText property applies only to controls on a form, not controls on a report.

Setting

You set the StatusBarText property by using a string expression up to 255 characters long.

You can set this property by using the control's property sheet, a macro, or Visual Basic.

Note The length of the text you can display in the status bar depends on your computer hardware and video display.

Remarks

You can use the StatusBarText property to provide specific information about a control. For example, when a text box has the focus, a brief instruction can tell the user what kind of data to enter.

Note You can also use the ControlTipText property to display a ScreenTip for a control.

If you create a control by dragging a field from the field list, the value in a field's Description property is copied to the StatusBarText property.

For a control containing a hyperlink, the status bar shows the hyperlink address when the mouse pointer is over the control if the Show Hyperlink Addresses In Status Bar box is selected. This check box is located on the Hyperlinks/HTML tab of the Options dialog, available by clicking Options on the Tools menu. When you're editing the control, the status bar shows the text that is the setting of the StatusBarText property.


 Style Property (Microsoft Access)

Style Property

You can use the Style property to specify or determine the appearance of tabs on a tab control.

Setting

The Style property uses the following settings.

Setting | Visual Basic | Description
Tabs | acTabs | (Default) Tabs appear as tabs.
Buttons | acButtons | Tabs appear as buttons.
None | acNone | No tabs appear in the control.

You can set the Style property by using the tab control's property sheet, a macro, or Visual Basic.

You can also set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

You can set the Style property in any view.

Remarks

When the tab control's Style property is set to Tabs or Buttons, the appearance of the tabs is determined by the TabFixedHeight, TabFixedWidth, and MultiRow properties.

You could set the tab control's Style property to None if you wanted complete control over when a user could move between tabs. In prior versions of Microsoft Access, wizard dialogs were created by using multiple-page forms. You can now use a tab control create your own wizard with each page of the wizard contained on a separate page of a tab control with its Style property set to None.


 SubAddress Property

SubAddress Property

You can use the SubAddress property to specify or determine a location within the target document specified by the Address property. The SubAddress property can be an object within a Microsoft Access database, a bookmark within a Microsoft Word document, a named range within a Microsoft Excel spreadsheet, a slide within a Microsoft PowerPoint presentation, or a location within an HTML document.

Setting

The SubAddress property is a string expression representing the HyperlinkSubAddress property of a named location within the target document specified by the HyperlinkAddress property

You can set the HyperlinkSubAddress property with the SubAddress property by using Visual Basic.

Note You can set the HyperlinkSubAddress property by using a control's property sheet, a macro, or Visual Basic.

Remarks

When you move the cursor over a command button, image control, or label control whose HyperlinkSubAddress property is set, the cursor changes to an upward-pointing hand. Clicking the control displays the object or Web page specified by the link.

For more information about hyperlink addresses and their format, see the HyperlinkAddress and HyperlinkSubAddress property topics.


 SubdatasheetExpanded Property

SubdatasheetExpanded Property

You can use the SubdatasheetExpanded property to specify or determine the saved state of all subdatasheets within a table or query.

Note The SubdatasheetExpanded property applies only to tables and queries within a Microsoft Access database (.mdb).

Setting

The SubdatasheetExpanded property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The saved state of all subdatasheets in the table is expanded.
No | False (0) | (Default) The saved state of all subdatasheets in the table is closed.

The easiest way to set the SubdatasheetExpanded property is by using a table's property sheet. You can set this property by using Visual Basic.

To set the SubdatasheetExpanded property by using Visual Basic, you must first either:

  • Set the property in table Design view by pointing to Properties on the View menu.

  • Create the property by using the DAO CreateProperty method.

Remarks

The value of the SubdatasheetExpanded property is displayed in the Table Properties property sheet.

The SubdatasheetExpanded and SubdatasheetHeight properties take effect on the subform control when the form is in datasheet view.


 SubdatasheetHeight Property

SubdatasheetHeight Property

You can use the SubdatasheetHeight property to specify or determine the display height of a subdatasheet when expanded.

Note The SubdatasheetHeight property applies only to tables and queries within a Microsoft Access database (.mdb).

Setting

The SubdatasheetHeight property in a numeric expression representing the default height to display in the subdatasheet.

The easiest way to set the SubdatasheetHeight property is by using a table's property sheet. You can set this property by using Visual Basic. In Visual Basic, the property's value is expressed in twips.

To set the SubdatasheetHeight property by using Visual Basic, you must first either:

  • Set the property in table Design view by pointing to Properties on the View menu.

  • Create the property by using the DAO CreateProperty method.

Remarks

If the subdatasheet includes more records than the height setting can accommodate, a vertical scrollbar is displayed.

The SubdatasheetHeight property setting includes the New Record row if adding new records is supported. It does not include the column header row or scrollbar region.

The SubdatasheetHeight and SubdatasheetExpanded properties take effect on the subform control when the form is in datasheet view.


 SubdatasheetName Property

SubdatasheetName Property

You can use the SubdatasheetName property to specify or determine the table or query that is bound to the subdatasheet.

Note The SubdatasheetName property applies only to tables and queries within a Microsoft Access database (.mdb).

Setting

The SubdatasheetName property in a string expression representing the name of the table or query bound to the subdatasheet.

The easiest way to set the SubdatasheetName property is by using a table's property sheet. You can set this property by using Visual Basic.

To set the SubdatasheetName property by using Visual Basic, you must first either:

  • Set the property in table Design view by pointing to Properties on the View menu.

  • Create the property by using the DAO CreateProperty method.


 TabFixedHeight, TabFixedWidth Properties

TabFixedHeight, TabFixedWidth Properties

You can use the TabFixedHeight and TabFixedWidth properties to specify or determine the height and width of the tabs on a tab control.

Setting

The TabFixedHeight and TabFixedWidth property settings are a value that represents the height and width of tabs in the unit of measurement specified in the Regional Settings Properties dialog box in Windows Control Panel. If you set these properties to zero, the tabs automatically adjust to the height or width of the tab contents.

You can set these properties by using the tab control's property sheet, a macro, or Visual Basic.

You can also set the default for these properties by using a control's default control style or the DefaultControl method in Visual Basic.

In Visual Basic these properties use a Long Integer value representing the height or width of the tabs in twips and can be set in any view.

Note To use a unit of measurement different from the setting in the Regional Settings Properties dialog box in Windows Control Panel, specify the unit, such as cm or in (for example, 5 cm or 3 in).

Remarks

You can't change the color of a tab control. If the tabs don't cover the width of the tab control, the area behind the tabs is displayed. If you place a tab control on an object with a different color than the tab control, you should make sure that the tabs cover the control's background area.


 TabIndex Property

TabIndex Property

You can use the TabIndex property to specify a control's place in the tab order on a form.

Note The TabIndex property applies only to controls on a form, not controls on a report.

Setting

You can set the TabIndex property to an integer representing the position of the control within the tab order of the form. Valid settings are 0 for the first tab position, up to the total number of controls minus 1 for the last tab position. For example, if a form has three controls that each have a TabIndex property, valid TabIndex property settings are 0, 1, and 2.

Setting the TabIndex property to an integer less than 0 produces an error.

You can set this property by using the control's property sheet, a macro, or Visual Basic.

Note You can also set the tab order of controls on a form by using the Tab Order command on the View menu. This also sets the TabOrder property for the controls.

Remarks

By default, Microsoft Access assigns a tab order to controls in the order that you create them on a form. Each new control is placed last in the tab order. If you change the setting of a control's TabIndex property to adjust the tab order, Microsoft Access automatically renumbers the TabIndex property setting of other controls to reflect insertions and deletions.

In Form view, invisible or disabled controls remain in the tab order but are skipped when you press the TAB key.

Changing the tab order of other controls on the form doesn't affect what happens when you press a control's access key. For example, if you've created an access key for the label of a text box, the focus will move to the text box whenever you press the label's access key - even if you change the TabIndex property setting for the text box.

If you press an access key for a control such as a label that doesn't have a TabIndex property (and thus isn't in the tab order), the focus moves to the next control in the tab order that can receive the focus.


 TabStop Property

TabStop Property

You can use the TabStop property to specify whether you can use the TAB key to move the focus to a control in Form view.

Note The TabStop property applies only to controls on a form, not controls on a report.

This property doesn't apply to check box, option button, or toggle button controls when they appear in an option group. It applies only to the option group itself.

Setting

The TabStop property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) You can move the focus to the control by pressing the TAB key.
No | False (0) | You can't move the focus to the control by pressing the TAB key.

You can set this property by using the control's property sheet, a macro, or Visual Basic.

Remarks

When you create a control on a form, Microsoft Access automatically assigns the control a position in the form's tab order. Each new control is placed last in the tab order. If you want to prevent a control from being available when you tab through the controls in a form, set the control's TabStop property to No.

In Form view, hidden or disabled controls remain in the tab order but are skipped when you move through the controls by pressing TAB, even if their TabStop properties are set to Yes.

As long as a control's Enabled property is set to Yes, you can click the control or use an access key to select it, regardless of its TabStop property setting. For example, you can set the TabStop property of a command button to No to prevent users from selecting the button by pressing TAB. However, they can still click the command button to choose it.


 Tag Property (Microsoft Access)

Tag Property

You can use the Tag property to store any extra information about a form, report, data access page, section, or control needed by your application.

Setting

You can enter a string expression up to 2048 characters long. The default setting is a zero-length string (" ").

You can set this property by using the object's property sheet, a macro, or Visual Basic.

Remarks

Unlike other properties, the Tag property setting doesn't affect any of an object's attributes.

You can use this property to assign an identification string to an object without affecting any of its other property settings or causing other side effects. The Tag property is useful when you need to check the identity of a form, report, data access page, section, or control that is passed as a variable to a procedure.


 Text Property (Microsoft Access)

Text Property

You can use the Text property to set or return the text contained in a text box or in the text box portion of a combo box.

Setting

You can set the Text property to the text you want to display in the control. You can also use the Text property to read the text currently in the control.

You can set or read this property only by using a macro or Visual Basic.

Note To set or return a control's Text property, the control must have the focus, or an error occurs. To move the focus to a control, you can use the SetFocus method or GoToControl action.

Remarks

While the control has the focus, the Text property contains the text data currently in the control; the Value property contains the last saved data for the control. When you move the focus to another control, the control's data is updated, and the Value property is set to this new value. The Text property setting is then unavailable until the control gets the focus again. If you use the Save Record command on the Records menu to save the data in the control without moving the focus, the Text property and Value property settings will be the same.


 TextToDisplay Property

TextToDisplay Property

You can use the TextToDisplay property to specify or determine the display text for a hyperlink.

Setting

The TextToDisplay property is a string expression representing the text displayed as a hyperlink.

The TextToDisplay property can be set by using the form's property sheet or Visual Basic.


 TimerInterval Property

TimerInterval Property

You can use the TimerInterval property to specify the interval, in milliseconds, between Timer events on a form.

Setting

The TimerInterval property setting is a Long Integer value between 0 and 2,147,483,647.

You can set this property by using the form's property sheet, a macro, or Visual Basic.

Note When using Visual Basic, you set the TimerInterval property in the form's Load event.

Remarks

To run Visual Basic code at intervals specified by the TimerInterval property, put the code in the form's Timer event procedure. For example, to requery records every 30 seconds, put the code to requery the records in the form's Timer event procedure, and then set the TimerInterval property to 30000.


 Toolbar Property

Toolbar Property

You can use the Toolbar property to specify the toolbar to use for a form or report. You create these toolbars by using the Customize subcommand of the Toolbars command on the View menu. For more information on creating customized toolbars, see Create a custom toolbar for the current database.

Setting

The Toolbar property setting is the name of the custom toolbar you want to display. If you leave the Toolbar property setting blank, Microsoft Access displays the form's or report's built-in (default) toolbar.

You can set the Toolbar property by using the form's or report's property sheet, a macro, or Visual Basic.

In Visual Basic, set this property by using a string expression that's the name of the toolbar you want to display.

To display the built-in toolbar for a form or report by using a macro or Visual Basic, set the Toolbar property to a zero-length string (" ").

Remarks

When you set the Toolbar property, Microsoft Access displays the specified custom toolbar when the form or report is opened. This toolbar is displayed whenever the form or report has the focus.


 TopValues Property

TopValues Property

You can use the TopValues property to return a specified number of records or a percentage of records that meet the criteria you specify. For example, you might want to return the top 10 values or the top 25 percent of all values in a field.

Note The TopValues property applies only to append, make-table, and select queries.

Setting

The TopValues property setting is an Integer value representing the exact number of values to return or a number followed by a percent sign (%) representing the percentage of records to return. For example, to return the top 10 values, set the TopValues property to 10; to return the top 10 percent of values, set the TopValues property to 10%.

You can't set this property in code directly. It's set in SQL view of the Query window by using a TOP n or TOP n PERCENT clause in the SQL statement.

You can also set the TopValues property by using the query's property sheet or the Top Values box Top value, list box on the Query Design toolbar.

Note The TopValues property in the query's property sheet and on the Query Design toolbar is a combo box that contains a list of values and percentage values. You can select one of these values or you can type any valid setting in the text box portion of this control.

Remarks

Typically, you use the TopValues property setting together with sorted fields. The field you want to display top values for should be the leftmost field that has the Sort box selected in the query design grid. An ascending sort returns the bottommost records, and a descending sort returns the topmost records. If you specify that a specific number of records be returned, all records with values that match the value in the last record are also returned.

For example, suppose a set of employees has the following sales totals.

Sales | Salesperson
90,000 | Leverling
80,000 | Peacock
70,000 | Davolio
70,000 | King
60,000 | Suyama
50,000 | Buchanan

If you set the TopValues property to 3 with a descending sort on the Sales field, Microsoft Access returns the following four records.

Sales | Salesperson
90,000 | Leverling
80,000 | Peacock
70,000 | Davolio
70,000 | King

Note To return the topmost or bottommost values without displaying duplicate values, set the UniqueValues property in the query's property sheet to Yes.


 Transparent Property

Transparent Property

You can use the Transparent property to specify whether a command button is solid or transparent.

Tip Use the BackStyle property to make other controls solid or transparent.

Setting

The Transparent property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The button is transparent.
No | False (0) | (Default) The button is solid.

You can set this property by using the command button's property sheet, a macro, or Visual Basic.

Remarks

You can use this property to place a transparent command button over another control. For example, you could place several transparent buttons over a picture displayed in an image control and run various macros or Visual Basic event procedures depending on which part of the picture the user clicks.

Note To hide and disable a button, use the Visible property. To disable a button without hiding it, use the Enabled property. To hide a button only when a form or report is printed, use the DisplayWhen property.


 TripleState Property

TripleState Property

You can use the TripleState property to specify how a check box, toggle button, or option button will display Null values.

Note The TripleState property doesn't apply to the specified controls when they are used inside an option group control.

Setting

The TripleState property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The control will cycle through states for Yes, No, and Null values. The control appears dimmed (grayed) when its Value property is set to Null.
No | False (0) | (Default) The control will cycle through states for Yes and No values. Null values display as if they were No values.

You can set the TripleState property by using a control's property sheet, a macro, or Visual Basic.

This property can be set in any view.


 Type Property (Microsoft Access)

Type Property

The Type property indicates whether a module is a standard module or a class module.

Setting

The Type property is available only by using Visual Basic and is read-only.

If the module is a standard module, the value of the Type property is acStandardModule or 0. If the module is a class module, the value of the Type property is acClassModule or 1.


 Type Property (AccessObject Object)

Type Property (AccessObject Object)

You can use the Type property to return the value of a AccessObject object type.

Setting

The Type property returns one of the following intrinsic constants.

acDataAccessPage (6) | acQuery (1)
acDiagram (8) | acReport (3)
acForm (2) | acServerView (7)
acMacro (4) | acStoredProcedure (9)
acModule (5) | acTable (0)

The Type property is available only by using Visual Basicand is read-only.


 Type Property (FormatCondition Object)

Type Property (FormatCondition Object)

You can use the Type property to return the value of a FormatCondition object type.

Setting

The Type property returns one of the following intrinsic constants.

acExpression (1) | acFieldHasFocus (2)
acFieldValue (0) |

The Type property is available only by using Visual Basic and is read-only.


 UnderlineHyperlinks Property

UnderlineHyperlinks Property

You can use the UnderlineHyperlink property to specify or determine if hyperlinks within the Application object should be underlined when displayed.

Setting

The UnderlineHyperlink property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) Hyperlinks will be underlined
No | False (0) | Hyperlinks will not be underlined.

You can set the UnderlineHyperlink property through the DefaultWebOptions property or the SetOption method by using Visual Basic.

You can set or change the underline hyperlink setting in the Web Options dialog box. To display this dialog box, click Options on the Tools menu. Click the General tab and click the Web Pages button.

Remarks

DefaultWebOptions property to identify or set the Application object's DefaultWebOptions object properties.


 Unique Property (Microsoft Access)

Unique Property

You can use the Unique property to specify that an index enforces uniqueness of the data in the table's key index.

Setting

The Unique property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | The index is a key (unique) index.
No | False (0) | The index is a non-key index.

You can set this property in the Indexes window of table Design view or by using Visual Basic.

Note To access the Unique property of an index by using Visual Basic, use the ADO Unique property.

Remarks

A key index optimizes finding records. It consists of one or more fields that uniquely arrange all records in a table in a predefined order. If the index consists of one field, values in that field must be unique. If the index consists of more than one field, duplicate values can occur in each field, but each combination of values from all the indexed fields must be unique. A non-key index has fields with values that are not necessarily unique.

An index is the primary index for a table if its Primary property is set to Yes. Each table can have only one primary index.


 UniqueRecords Property

UniqueRecords Property

You can use the UniqueRecords property to specify whether to return only unique records based on all fields in the underlying data source, not just those fields present in the query itself.

Note The UniqueRecords property applies only to append and make-table action queries and select queries.

Setting

The UniqueRecords property uses the following settings.

Setting | Description
Yes | Doesn't return duplicate records.
No | (Default) Returns duplicate records.

You can set the UniqueRecords property in the query's property sheet or in SQL view of the Query window.

Note You set this property when you create a new query by using an SQL statement. The DISTINCTROW predicate corresponds to the UniqueRecords property setting. The DISTINCT predicate corresponds to the UniqueValues property setting.

Remarks

You can use the UniqueRecords property when you want to omit data based on entire duplicate records, not just duplicate fields. Microsoft Access considers a record to be unique as long as the value in one field in the record differs from the value in the same field in another record.

The UniqueRecords property has an effect only when you use more than one table in the query and select fields from the tables used in the query. The UniqueRecords property is ignored if the query includes only one table.

The UniqueRecords and UniqueValues properties are related in that only one of them can be set to Yes at a time. When you set UniqueRecords to Yes, for example, Microsoft Access automatically sets UniqueValues to No. You can, however, set both of them to No. When both properties are set to No, all records are returned.


 UniqueTable Property

UniqueTable Property

You can use the UniqueTable property to specify or determine the table to be updatable when:

  • A form or data access page is bound to a multiple table view or stored procedure within a Microsoft Access project (.adp).

  • A data access page is bound to a multiple table query or macro within a Microsoft Access project (.adp).

Setting

The UniqueTable property is a string expression representing the unique table to be updatable.

You can set this property by using the property sheet or Visual Basic.

Remarks

The UniqueTable property identifies the "most many" table of a join. If you don't set the UniqueTable property, a form that is bound to a view or stored proc or SQL String containing a join is read only. Also, the datasheet produced by View.Open or StoredProc.Run is read only in the case of a join (because there's no way to set the UniqueTable property). Once you set the UniqueTable property, only fields from that table are updatable, and inserts and deletes can only be made to that table.

A form or data access page based on a join cursor must have a UniqueTable property string in order for the recordset to be an updatable snapshot. The Unique Table is the table in the underlying query whose rows have a 1-to-1 correspondence with rows in the cursor. In a simple Patients - Doctors join, Patients is the unique table because every row of the cursor corresponds to one row of the Patients table. Note that a Many-to-Many join does not have a valid UniqueTable property, and is thus read-only. The UniqueTable property will be exposed as a RecordsetDef object in the case of a data access page. The purpose of the UniqueTable property is:

To enforce the correct updatability semantics:

  • The key columns of the Unique Table must be present in the select list of the query that forms the cursor, even for SQL Server. (For other data sources, see the Remarks section in the ResyncCommand property topic.)

  • Deletion of a row in a join cursor deletes the row from the Unique Table only.

  • Insertion of a row in a join cursor is allowed for the Unique Table only

  • Update of a row in a join cursor is allowed for fields in the Unique Table only.

To provide the right parameter values for the Resync Query. The UniqueTable property of a form or a RecordsetDef supports the catalog.owner.tablename notation to fully qualify a base table from others in the same cursor, if this is required. For example, for example, if dbo.authors were joined to user1.authors in a cursor, then the UniqueTable would need to be specified as dbo.authors or user1.authors.

For a join cursor, if the UniqueTable property is empty, the recordset reverts to read only and any attempt to edit results in a beep and a status message, "This Recordset is not updatable because the UniqueTable property is not set." If there is a non-empty UniqueTable property, set the UniqueTable property (and UniqueSchema, UniqueCatalog properties if necessary) on the underlying Recordset or Rowset. Then, go through and mark each column that does not match the UniqueTable property as read only.

On insert and update operations, only the fields from the Unique Table are available for editing. When the user tries to type into them he gets a beep and the message "Only fields from the Unique Table can be edited." If the UniqueTable property has been set incorrectly, this will happen for all columns.

Set Unique Table in the single table case

If the case of a recordset based on a view or SQL String, we still want to provide our own ResyncCommand to handle the case of server expression columns. Also, in the case of a stored proc, the user may want to provide their own ResyncCommand property even in the single-table case. For these reasons we should always set the "Unique Table" provider property in the single table case. ( QBU will only allow the setting of a Resync Command if Unique Table has been set. )


 UniqueValues Property

UniqueValues Property

You can use the UniqueValues property when you want to omit records that contain duplicate data in the fields displayed in Datasheet view. For example, if a query's output includes more than one field, the combination of values from all fields must be unique for a given record to be included in the results.

Note The UniqueValues property applies only to append and make-table action queries and select queries.

Setting

The UniqueValues property uses the following settings.

Setting | Description
Yes | Displays only the records in which the values of all fields displayed in Datasheet view are unique.
No | (Default) Displays all records.

You can set the UniqueValues property in the query's property sheet or in SQL view of the Query window.

Note You can set this property when you create a new query by using an SQL statement. The DISTINCT predicate corresponds to the UniqueValues property setting. The DISTINCTROW predicate corresponds to the UniqueRecords property setting.

Remarks

When you set the UniqueValues property to Yes, the results of the query aren't updatable and won't reflect subsequent changes made by other users.

The UniqueValues and UniqueRecords properties are related in that only one of them can be set to Yes at a time. When you set the UniqueValues property to Yes, for example, Microsoft Access automatically sets the UniqueRecords property to No. You can, however, set both of them to No. When both properties are set to No, all records are returned.

Tip If you want to count the number of instances of a value in a field, create a totals query.


 UpdateOptions Property

UpdateOptions Property

You can use the UpdateOptions property to specify how a linked OLE object is updated.

Setting

The UpdateOptions property uses the following settings.

Setting | Visual Basic | Description
Automatic | acOLEUpdateAutomatic (0) | (Default) Updates the object each time the linked data changes.
Manual | acOLEUpdateManual (2) | Updates the object only when the control's Action property is set to acOLEUpdate or the link is updated with the OLE/DDE Links command on the Edit menu.

You can set the UpdateOptions property in a property sheet, in a macro, or by using Visual Basic. You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

The UpdateOptions property setting is also available through the OLE/DDE Links command on the Edit menu.

Remarks

Normally, the object is updated automatically whenever the linked data changes, but you can tell Microsoft Access to update the data only when it receives a specific instruction to do so. For example, if other users or applications can access or change linked spreadsheet data on a form, you can use this property to specify that the linked data only be updated when the database is opened in single-user mode.

When the UpdateOptions property is set to Manual, updates don't occur based on the setting of the Refresh Interval box on the Advanced tab of the Options dialog box, available by clicking Options on the Tools menu.

Note When an object's data is changed, the Updated event occurs.

The following example sets the UpdateOptions property for an unbound object frame named OLE1 to update manually, and then uses the Action property to force an update of the OLE object in the control.

OLE1.UpdateOptions = acOLEUpdateManual
OLE1.Action = acOLEUpdate


UseLongFileNames Property

You can use the UseLongFileNames property to specify or determine whether long file names are used when a document is stored as a data access page.

Setting

The UseLongFileNames property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) Use long file names whenever possible when you save the document as a data access page.
No | False (0) | Use the 8.3 DOS filename format.

The UseLongFileNames property is available only by using Visual Basic.

Remarks

If you don't use long file names and your data access page has supporting files, Microsoft Access automatically organizes those files in a separate folder. Otherwise, use the OrganizeInFolder property to determine whether supporting files are organized in a separate folder.


 UserControl Property

UserControl Property

You can use the UserControl property to determine whether the current Microsoft Access application was started by the user or by another application with Automation, formerly called OLE Automation.

Setting

The UserControl property uses the following settings.

Setting | Description
True (-1) | The current application was started by the user.
False (0) | The current application was started by another application with Automation.

You can determine the UserControl property setting only by using Visual Basic.

This property is read-only in all views when user starts the Access application. If Microsoft Access is started by OLE Automation, the UserControl property can be set in Visual Basic.

Remarks

When an application is launched by the user, the Visible and UserControl properties of the Application object are both set to True. When the UserControl property is set to True, it isn't possible to set the Visible property of the object to False.

When an Application object is created by using Automation, the Visible and UserControl properties of the object are both set to False.


 UseTransaction Property

UseTransaction Property

You can use the UseTransaction property to specify or determine whether an action query runs as a single transaction. In some situations, setting this property to No can make queries run much faster.

Setting

The UseTransaction property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The query runs as a single transaction.
No | False (0) | The query doesn't run as a single transaction.

You can set the UseTransaction property by using the query's property sheet or Visual Basic. To set this property in a Microsoft Access database (.mdb) with Visual Basic, you must first add it to a QueryDef object's Properties collection by using the CreateProperty method.

Remarks

When a make-table, delete, append, or update query has its UseTransaction property set to Yes, the Microsoft Jet database engine stores the returned records in a cache and, if necessary, stores the results in a temporary database on disk. When the query has finished, the Jet database engine reads the records from the temporary database and writes them back to the original database.

You may get substantial performance benefits by setting the UseTransaction property to No in the right circumstances. When the UseTransaction property is set to No, the user will never encounter problems associated with too many lock requests. In addition, the Jet database engine doesn't store query results in a temporary database, thereby achieving a substantial performance increase.

If there is a large number of records that must be written to the temporary database, performance may suffer as a result of running an action query as a single transaction. In addition, when running delete or update queries in a shared database, a large number of lock requests are generated. This may cause performance to suffer and in some Network Operating Systems like Netware it can cause the query to fail when the lock requests exceed 10,000.

If a transaction can't be completed, an error message appears and you have the option of saving any changes.

When the UseTransaction property is set to No, the only way to roll back an entire transaction is to use the ADO RollbackTrans or DAO Rollback method in Visual Basic.


 ValidationRule, ValidationText Properties (Microsoft Access)

ValidationRule, ValidationText Properties

You can use the ValidationRule property to specify requirements for data entered into a record, field, or control. When data is entered that violates the ValidationRule setting, you can use the ValidationText property to specify the message to be displayed to the user.

Note The ValidationRule and ValidationText properties don't apply to check box, option button, or toggle button controls when they are in an option group. They apply only to the option group itself.

Setting

Enter an expression for the ValidationRule property setting and text for the ValidationText property setting. The maximum length for the ValidationRule property setting is 2048 characters. The maximum length for the ValidationText property setting is 255 characters.

For controls, you can set the ValidationRule property to any valid expression. For field and record validation rules, the expression can't contain user-defined functions, domain aggregate or aggregate functions, the Eval function, or CurrentUser method, or references to forms, queries, or tables. In addition, field validation rules can't contain references to other fields. For records, expressions can include references to fields in that table.

You can set the ValidationRule and ValidationText properties by using:

  • The Field Properties section of table Design view (for a field validation rule).

  • The property sheet for a table by clicking Properties on the View menu in table Design view (for a record validation rule).

  • The property sheet for a control on a form.

  • A macro or Visual Basic. In Visual Basic, use a string expression to set these properties.

For table fields and records, you can also set these properties in Visual Basic by using the DAO ValidationRule property.

Remarks

Microsoft Access automatically validates values based on a field's data type; for example, Microsoft Access doesn't allow text in a numeric field. You can set rules that are more specific by using the ValidationRule property.

If you set the ValidationRule property but not the ValidationText property, Microsoft Access displays a standard error message when the validation rule is violated. If you set the ValidationText property, the text you enter is displayed as the error message.

For example, when a record is added for a new employee, you can enter a ValidationRule property requiring that the value in the employee's StartDate field fall between the company's founding date and the current date. If the date entered isn't in this range, you can display the ValidationText property message: "Start date is incorrect."

If you create a control by dragging a field from the field list, the field's validation rule remains in effect, although it isn't displayed in the control's ValidationRule property box in the property sheet. This is because a field's validation rule is inherited by a control bound to that field.

Control, field, and record validation rules are applied as follows:

  • Validation rules you set for fields and controls are applied when you edit the data and the focus leaves the field or control.

  • Validation rules for records are applied when you move to another record.

  • If you create validation rules for both a field and a control bound to the field, both validation rules are applied when you edit data and the focus leaves the control.

The following table contains expression examples for the ValidationRule and ValidationText properties.

ValidationRule property | ValidationText property
<> 0 | Entry must be a nonzero value.
> 1000 Or Is Null | Entry must be blank or greater than 1000.
Like "A????" | Entry must be 5 characters and begin with the letter "A".
>= #1/1/96# And <#1/1/97# | Entry must be a date in 1996.
DLookup("CustomerID", "Customers", "CustomerID = Forms!Customers!CustomerID") Is Null | Entry must be a unique CustomerID (domain aggregate functions are allowed only for form-level validation).

If you create a validation rule for a field, Microsoft Access doesn't normally allow a Null value to be stored in the field. If you want to allow a Null value, add "Is Null" to the validation rule, as in "<> 8 Or Is Null" and make sure the Required property is set to No.

You can't set field or record validation rules for tables created outside Microsoft Access (for example, dBASE, Paradox, or SQL Server). For these kinds of tables, you can create validation rules for controls only.


 Value Property (Microsoft Access)

Value Property

You can use the Value property to determine or specify if a control is selected, the selected value or option within the control, the text contained in a text box control, or the value of a custom property.

  • Check box, option button, and toggle button controls. Determines or specifies whether or not the control is selected.

  • Combo box, list box, and option group controls. Determines or specifies which value or option in the control is selected.

  • Text box controls. Determines or specifies the text in the text box.

  • Tab control. Determines or specifies the selected Page object.

  • Built-in properties. Determines or specifies the value of a built-in property of an AccessObject object.

Setting

The Value property uses the following setting depending on the specified control.

Control | Setting | Description | Visual Basic
Check box | True False | The check box is selected. (Default) The check box is cleared. | True (-1) False (0)
Combo box | [The text in the text box portion of the control] | This may or may not be the same as the setting for the Text property of the control. The current setting for the Text property is what is displayed in the text box portion of the combo box; the Value property is set to the Text property setting only after this text is saved. |
List box | [The list box item value] | The value in the bound column for the item selected in the list. |
Option button | True False | The option button is selected. (Default) The option button isn't selected. | True False
Option group | [The OptionValue property setting] | The OptionValue property setting for the selected control in the group. |
Text box | [The value of the control's Text property] | The Text property returns the formatted string. The Text property may be different than the Value property for a text box control. The Text property is the current contents of the control. The Value property is the saved value of the text box control. The Text property is always current while the control has the focus. |
Toggle button | True False | The toggle button is pressed in. The toggle button isn't pressed in. | True False
Tab control | [An Integer value representing the index number of the currently selected Page object] | The Value property of a tab control contains the index number of the current Page object. There is one Page object for each tab in a tab control. The first Page object always has an index number of 0, the second has an index number of 1, and so on. |
Bound object frame or chart control |  | The Value property for a bound object frame or a bound chart control is set to the value of the field that the control is bound to. Since these fields normally contain OLE objects or chart objects, which are stored as binary data, this value is usually meaningless. |
ActiveX control |  | Some ActiveX controls support the Value property. For example, the Value property setting for a Calendar control is the currently selected date in the control. For more information, see the documentation for each ActiveX control. |
Custom properties | A Long or string expression representing the value of the custom property. | The Value property of a custom property contains the value of the specified custom property of an AccessObject object. For more information about custom properties, see the topics about the AccessObject object, AccessObjectProperty object, and the AccessObjectProperties collection. |

You can set this property by using a macro or Visual Basic.

Remarks

  • The Value property returns or sets a control's default property, which is the property that is assumed when you don't explicitly specify a property name. In the following example, because the default value of the text box is the value of the Text property, you can refer to its Text property setting without explicitly specifying the name of the property.
    Forms!frmCustomers!txtLastName = "Smith"

This means that the following two statements are equivalent.

Forms!frmCustomers!optCreditApproved.Value = True
Forms!frmCustomers!optCreditApproved = True

Note The Value property is not the same as the DefaultValue property, which specifies the value that a property is assigned when a new record is created.

  • The Value property can also return or set a custom properties' default property, which is the property that is assumed when you don't explicitly specify a property name.This means that the following two statements are equivalent.
    CurrentProject.AllForms!optCreditApproved.Value = True
CurrentProject.AllForms!optCreditApproved = True


 VBE Property (Microsoft Access)

VBE Property

You can use the VBE property to return a reference to the current VBE object and its related properties. The VBE property of the Application object represents the Microsoft Visual Basic for Applications editor.

Setting

[application.]VBE[.property]

The VBE property uses the following settings.

Setting | Description
application | Optional. The Application object.
VBE | Required. When used without specifying a property, returns the VBE object'.
property | A property of the VBE object.

The VBE property is available only by using Visual Basic.

Remarks

Once you establish a reference to the VBE object, you can access all the properties and methods of the object. You can set a reference to the VBE object by clicking References on the Tools menu while in module Design view. Then set a reference to the Microsoft Visual Basic for Applications Extensibility 5.3 Object Library in the References dialog box by selecting the appropriate check box. Microsoft Access can set this reference for you if you use a Microsoft Visual Basic for Applications Extensibility 5.3 Object Library constant to set a VBE object's property or as an argument to a VBE object's method.


 Verb Property

Verb Property

You can use the Verb property to specify the operation to perform when an OLE object is activated, which is permitted when the control's Action property is set to acOLEActivate.

Setting

You can set the Verb property by specifying an Integer data type value indicating the position of a verb in the list of verbs returned by the ObjectVerbs property. You can set the Verb property to 1 to specify the first verb in the list, you can set it to 2 to specify the second verb in the list, and so on.

You can set the Verb property by using the control's property sheet, a macro, or Visual Basic. You can set the default for this property by using the default control style or the DefaultControl method in Visual Basic.

If you don't use the ObjectVerbs property to identify a specific verb, you can set the Verb property to one of the following values to indicate the operation to perform. These values specify the standard verbs supported by all objects.

Constant | Description
acOLEVerbPrimary (0) | Performs the default operation for the object.
acOLEVerbShow (-1) | Activates the object for editing.
acOLEVerbOpen (-2) | Opens the object in a separate application window.
acOLEVerbHide (-3) | For embedded objects, hides the application that was used to create the object.

With some applications' objects, you can use these additional values.

Constant | Description
acOLEVerbInPlaceUIActivate (-4) | Activates the object for editing within the control. The menus and toolbars of the OLE server become available in the OLE container.
acOLEVerbInPlaceActivate (-5) | Activates the object within the control. The menus and toolbars of the OLE server aren't available in the OLE container.

Remarks

Each object supports its own set of verbs. For example, many objects support the verbs Edit and Play. You can use the ObjectVerbs and ObjectVerbsCount properties to find out which verbs are supported by an object.

Microsoft Access automatically uses an object's default verb if the user double-clicks an object for which the AutoActivate property is set to Double-Click.


Vertical Property

You can use the Vertical property to set a form control for vertical display and editing or set a report control for vertical display and printing.

Settings

The Vertical property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | Displays, edits, and prints vertical text.
No | False (0) | Does not display, edit, or print vertical text. (default)

You can set the Vertical property by using the property sheet, a macro, or Visual Basic.

Remarks

You can specify how vertical text will be displayed, edited, or printed in the control by setting the Vertical property. If set to Yes, the starting point for inputting text is the upper right corner of the control (the ending point is the lower left corner of the control). If using full pitch characters, the display and print directions are the same as the control for horizontal text. If using half pitch characters, it shifts 90 degrees to the right. The cursor is also rotated 90 degrees to the right in a vertical text control.

Note Text selection using key combinations is different for vertical text control and horizontal text control. Key combinations and their effect on range selection are described below.

Key combination | Selected range
Shift+Up | Vertical: One character before the cursor. Horizontal: One line before the cursor.
Shift+Down | Vertical: One character after the cursor. Horizontal: One line after the cursor.
Shift+Right | Vertical: One line after the cursor. Horizontal: One character before the cursor.
Shift+Left | Vertical: One line before the cursor. Horizontal: One character after the cursor.


 Visible Property (Microsoft Access)

Visible Property

You can use the Visible property to show or hide a form, report, form or report section, data access page, or control. This may be useful if you want to maintain access to information on a form without it being visible. For example, you could use the value of a control on a hidden form as the criteria for a query.

Setting

The Visible property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | (Default) The object is visible.
No | False (0) | The object is not visible.

You can set this property by using the object's property sheet (for sections and all controls except page breaks), a macro, or Visual Basic.

For forms, reports, and data access pages, you must set this property by using a macro or Visual Basic.

For controls, you can set the default for this property by using the default control style or the DefaultControl method in Visual Basic.

Remarks

The Visible property has no effect on a column in Datasheet view. To specify whether a column is visible in Datasheet view, you use the ColumnHidden property.

To hide an object when printing, you use the DisplayWhen property.

You can use the Visible property to hide a control on a form or report by including the property in a macro or event procedure that runs when the Current event occurs. For example, you can show or hide a congratulatory message next to a salesperson's monthly sales total in a sales report, depending on the sales total.

Note There is also a Visible property of the Application object that can be set to cause the application to be invisible. This property can only be set by using Visual Basic.


 Visible Property (Application Object)

Visible Property (Application Object)

You can use the Visible property of the Application object to specify or determine whether a Microsoft Access application is minimized.

Setting

The Visible property uses the following settings.

Setting | Description
True (-1) | The application is visible.
False (0) | The application isn't visible.

You can set the Visible property of the Application object only by using Visual Basic. You can set the default for this property by using a control's default control style or the DefaultControl method in Visual Basic.

Remarks

When an application is launched by the user, the Visible and UserControl properties of the Application object are both set to True. When the UserControl property is set to True, it isn't possible to set the Visible property of the object to False.

When an Application object is created by using Automation (formerly called OLE Automation), the Visible and UserControl properties of the object are both set to False.

Note When the Visible property of the Application object is set to False, the application is minimized but isn't hidden from the user.


 WebOptions Property

WebOptions Property

You can use the WebOptions property to reference the WebOptions object and its related properties.

Setting

The WebOptions property is available by using Visual Basic and is read-only.

Remarks

Use the WebOptions object's properties to set web options for the active data access page.


 WhatsThisButton Property (Microsoft Access)

WhatsThisButton Property (Microsoft Access)

You can use the WhatsThisButton property to specify whether a What's This button [image] is added to a form's title bar.

Note You can't display the What's This button on the title bar of a form unless the MinMaxButtons property is set to None.

Setting

The WhatsThisButton property uses the following settings.

Setting | Visual Basic | Description
Yes | True (-1) | A What's This button appears on the title bar.
No | False (0) | (Default) A What's This button doesn't appear on the title bar.

You can set the WhatsThisButton property by using the form's property sheet, a macro, or Visual Basic.

This property can be set only in form Design view.

Remarks

Clicking the What's This button on the title bar of a form causes the question-mark mouse pointer to appear. With the question-mark pointer, you can click any control to access its custom Help topic specified by the control's HelpContextID property. If the control doesn't have a custom Help topic, the form's custom Help topic is displayed. If neither the form or the control has a custom Help topic, Microsoft Access Help is displayed.


WillContinue Property

You can use the WillContinue property to determine if the current section will continue on the following page.

Setting

The WillContinue property is set by Microsoft Access and is read-only in all views.

Value | Description
True (-1) | The current section continues on the following page.
False (0) | The current section doesn't continue on the following page.

You can get the value of the WillContinue property by using a macro or Visual Basic.

Remarks

You can use this property to determine whether to show or hide certain controls, depending on the value of the property. For example, you may have a hidden label in a page header containing the text "Continued on next page". If the value of the WillContinue property is True, you can make the hidden label visible.


 WindowHeight, WindowWidth Properties

WindowHeight, WindowWidth Properties

You can use these properties to return the height and width of a form or data access page in twips.

Setting

The WindowHeight and WindowWidth property settings are Integer values.

These property settings are read-only and are available only by using a macro or Visual Basic.

Remarks

The WindowHeight property is measured from the upper-left corner of the form or data access page to its lower-left corner. The WindowWidth property is measured from the upper left corner of the form or data access page to its upper-right corner.


 Zoom Property

Zoom Property

You can use the Zoom property to specify or determine the display state for a snapshot.

Setting

The Zoom property is an Integer value between 0 and 8 representing the display state for a snapshot page as a percentage of the actual page size.

Constant | Description
snapZoomToFit | (Default) Zooms to a full page display.
snapZoomToFill | Zooms the page to fill the available space in the control.
snapZoom200Percent | Zooms the page by a factor of 200%.
snapZoom150Percent | Zooms the page by a factor of 150%.
snapZoom100Percent | Zooms the page by a factor of 100%.
snapZoom75Percent | Zooms the page by a factor of 75%.
snapZoom50Percent | Zooms the page by a factor of 50%.
snapZoom25Percent | Zooms the page by a factor of 25%.
snapZoom10Percent | Zooms the page by a factor of 10%.

You can set the Zoom property by using the control's property sheet or Visual Basic.

If you set this property to an invalid value, an error occurs.

Remarks

When the AllowContextMenu property is set to Yes, you can also specify the Zoom property from the control's pop-up menu.


Statements Reference

The following reference lists all the statements alphabetically (except for SQL statements).

A-M

AppActivate (VBA) | DeleteControl
Beep (VBA) | DeleteReportControl
Call (VBA) | DeleteSetting (VBA)
ChDir (VBA) | Dim (VBA)
ChDrive (VBA) | Do...Loop (VBA)
Close (VBA) | End (VBA)
Const (VBA) | Erase (VBA)
Date (VBA) | Error (VBA)
DDE | Exit (VBA)
DDEExecute | FileCopy (VBA)
DDEPoke | For Each...Next (VBA)
DDETerminate | For...Next (VBA)
DDETerminateAll | Function (VBA)
Declare (VBA) | Get (VBA)
DefBool (VBA) | GoSub...Return (VBA)
DefByte (VBA) | GoTo (VBA)
DefCur (VBA) | If...Then...Else (VBA)
DefDate (VBA) | Input # (VBA)
DefDbl (VBA) | Kill (VBA)
DefInt (VBA) | Let (VBA)
DefLng (VBA) | Line Input # (VBA)
DefObj (VBA) | Lock (VBA)
DefSng (VBA) | LSet (VBA)
DefStr (VBA) | Mid (VBA)
DefType (VBA) | MidB (VBA)
DefVar (VBA) | MkDir (VBA)

N-Z

Name (VBA) | Resume (VBA)
On Error (VBA) | Return (VBA)
On...GoSub (VBA) | RmDir (VBA)
On...GoTo (VBA) | RSet (VBA)
Open (VBA) | SaveSetting (VBA)
Option Base (VBA) | Seek (VBA)
Option Compare (VBA) | SelectCase (VBA)
Option Explicit (VBA) | SendKeys (VBA)
Option Private (VBA) | Set (VBA)
Print # (VBA) | SetAttr (VBA)
Private (VBA) | Static (VBA)
Property Get (VBA) | Stop (VBA)
Property Let (VBA) | Sub (VBA)
Property Set (VBA) | Time (VBA)
Public (VBA) | Type (VBA)
Put (VBA) | Unlock (VBA)
Randomize (VBA) | While...Wend (VBA)
ReDim (VBA) | Width # (VBA)
Rem (VBA) | With (VBA)
Reset (VBA) | Write # (VBA)


 DDEExecute Statement

DDEExecute Statement

You can use the DDEExecute statement to send a command from a client application to a server application over an open dynamic data exchange (DDE) channel.

For example, suppose you've opened a DDE channel in Microsoft Access to transfer text data from a Microsoft Excel spreadsheet into a Microsoft Access database. Use the DDEExecute statement to send the New command to Microsoft Excel to specify that you wish to open a new spreadsheet. In this example, Microsoft Access acts as the client application, and Microsoft Excel acts as the server application.

Syntax

DDEExecute channum, command

The DDEExecute statement has the following arguments.

Argument | Description
channum | A channel number, the long integer returned by the DDEInitiate function.
command | A string expression specifying a command recognized by the server application. Check the server application's documentation for a list of these commands.

Remarks

The value of the command argument depends on the application and topic specified when the channel indicated by the channum argument is opened. An error occurs if the channum argument isn't an integer corresponding to an open channel or if the other application can't carry out the specified command.

From Visual Basic, you can use the DDEExecute statement only to send commands to another application. For information on sending commands to Microsoft Access from another application, see Use Microsoft Access as a DDE Server.

Tip If you need to manipulate another application's objects from Microsoft Access, you may want to consider using Automation.


 DDEPoke Statement

DDEPoke Statement

You can use the DDEPoke statement to supply text data from a client application to a server application over an open dynamic data exchange (DDE) channel.

For example, if you have an open DDE channel between Microsoft Access and Microsoft Excel, you can use the DDEPoke statement to transfer text from a Microsoft Access database to a Microsoft Excel spreadsheet. In this example, Microsoft Access acts as the client application, and Microsoft Excel acts as the server application.

Syntax

DDEPoke channum, item, data

The DDEPoke statement has the following arguments.

Argument | Description
channum | A channel number, an integer returned by the DDEInitiate function.
item | A string expression that's the name of a data item recognized by the application specified by the DDEInitiate function. Check the application's documentation for a list of possible items.
data | A string containing the data to be supplied to the other application.

Remarks

The value of the item argument depends on the application and topic specified when the channel indicated by the channum argument is opened. For example, the item argument may be a range of cells in a Microsoft Excel spreadsheet.

The string contained in the data argument must be an alphanumeric text string. No other formats are supported. For example, the data argument could be a number to fill a cell in a specified range in an Excel worksheet.

If the channum argument isn't an integer corresponding to an open channel or if the other application doesn't recognize or accept the specified data, a run-time error occurs.

Tip If you need to manipulate another application's objects from Microsoft Access, you may want to consider using Automation.


 DDETerminate Statement

DDETerminate Statement

You can use the DDETerminate statement to close a specified dynamic data exchange (DDE) channel.

For example, if you've opened a DDE channel to transfer data between Microsoft Excel and Microsoft Access, you can use the DDETerminate statement to close that channel once the transfer is complete.

Syntax

DDETerminate channum

Remarks

The channum argument specifies the channel number to close. It refers to a channel opened by the DDEInitiate function. If the channum argument isn't an integer corresponding to an open channel, a run-time error occurs.

Once a channel is closed, any subsequent DDE functions or statements performed on that channel cause a run-time error.

The DDETerminate statement has no effect on active DDE link expressions in fields on forms or reports.

Tip If you need to manipulate another application's objects from Microsoft Access, you may want to consider using Automation.


 DDETerminateAll Statement

DDETerminateAll Statement

You can use the DDETerminateAll statement to close all open dynamic data exchange (DDE) channels.

For example, suppose you've opened two DDE channels between Microsoft Excel and Microsoft Access, one to retrieve system information about Microsoft Excel and one to transfer data. You can use the DDETerminateAll statement to close both channels simultaneously.

Syntax

DDETerminateAll

Remarks

Using the DDETerminateAll statement is equivalent to executing a DDETerminate statement for each open channel number. Like the DDETerminate statement, the DDETerminateAll statement has no effect on active DDE link expressions in fields on forms or reports.

If there are no DDE channels open, the DDETerminateAll statement runs without causing a run-time error.

Tips

  • If you interrupt a procedure that performs DDE, you may inadvertently leave channels open. To avoid exhausting system resources, use the DDETerminateAll statement in your code or from the Immediate (lower) pane of the Debug window while debugging code that performs DDE.

  • If you need to manipulate another application's objects from Microsoft Access, you may want to consider using Automation.


Запрос мастера анализа таблиц

1 2 3 4


Запрос мастера анализа таблиц


ApplyFilter Action Arguments (1)

Argument | Setting
Filter Name |
Where Condition | [Company Name] Like "[AАБВГД]*"


ApplyFilter Action Arguments (2)

Argument | Setting
Filter Name |
Where Condition | [Company Name] Like "B*"


ApplyFilter Action Arguments (3)

Argument | Setting
Filter Name |
Where Condition | [Company Name] Like "[CЗ]*"


ApplyFilter Action Arguments (4)

Argument | Setting
Filter Name |
Where Condition | [Company Name] Like "[ZЖШЕ]*"


GoToControl Action Arguments

Argument | Setting
Control Name | CompanyName.


Apply a Filter by Using a Macro - Example

The following macro contains a set of actions, each of which filters the records for a Customer Phone List form. It shows the use of the ApplyFilter, ShowAllRecords, and GoToControls actions. It also shows the use of conditions to determine which toggle button in an option group has been selected on the form. Each action row is associated with a toggle button that selects the set of records starting with A, B, C, and so on, or all records.

Click the action name to see the arguments for each action.

Condition | Action | Comment
 |  | Attached to AfterUpdate event of CompanyNameFilter option group.
[Company Name Filters] =1 | ApplyFilter | Filter for company names that start with A, А, Б, В, Г, or Д.
[Company Name Filters] =2 | ApplyFilter | Filter for company names that start with B.
[Company Name Filters] =3 | ApplyFilter | Filter for company names that start with C or З.
... Action rows for D through Y have the same format as those for A through C ...
[Company Name Filters] =26 | ApplyFilter | Filter for company names that start with Z, Ж, Ш, or Е.
[Company Name Filters] =27 | ShowAllRecords | Show all records.
[RecordsetClone].[RecordCount]>0 | GoToControl | If records are returned for the selected letter, move focus to the CompanyName control.


Validate Data by Using a Macro - Example

The following validation macro checks the postal codes entered in a Suppliers form. It shows the use of the StopMacro, MsgBox, CancelEvent, and GoToControl actions. A conditional expression checks the country and postal code entered in a record on the form. If the postal code is not in the right format for the country, the macro displays a message box and cancels saving the record. It then returns you to the Postal Code control, where you can correct the error.

Click the action name to see the arguments for each action.

Condition | Action | Comment
 |  | Attached to the BeforeUpdate property of the Suppliers form.
IsNull([Country]) | StopMacro | If Country is Null, postal code can't be validated
[Country] In ("France","Italy","Spain") And Len([Postal Code]) <> 5 | MsgBox | If the postal code isn't 5 characters, display a message and...
... | CancelEvent | ... cancel the event.
 | GoToControl |
[Country] In ("Australia","Singapore") And Len([Postal Code]) <> 4 | MsgBox | If the postal code isn't 4 characters, display a message and...
... | CancelEvent | ... cancel the event.
 | GoToControl |
([Country] = "Canada") And ([Postal Code] Not Like"[A-Z][0-9][A-Z] [0-9][A-Z][0-9]") | MsgBox | If the postal code isn't correct for Canada, display a message and...
... | CancelEvent | ... cancel the event.


MsgBox Action Arguments (1)

Argument | Setting
Message | The postal code must be 5 characters.
Beep | Yes
Type | Information
Title | Postal Code Error


MsgBox Action Arguments (2)

Argument | Setting
Message | The postal code must be 4 characters.
Beep | Yes
Type | Information
Title | Postal Code Error


MsgBox Action Arguments (3)

Argument | Setting
Message | The postal code not valid. Example of Canadian code: H1J 1C3
Beep | Yes
Type | Information
Title | Postal Code Error


 OpenDataAccessPage Action

OpenDataAccessPage Action

You can use the OpenDataAccessPage action to open a data access page in Page view or Design view.

Setting

The OpenDataAccessPage action has the following arguments.

Action argument | Description
Data Access Page Name | The name of the form to open. The Data Access Page Name box in the Action Arguments section of the Macro window shows all forms in the current database. This is a required argument. If you run a macro containing the OpenDataAccessPage action in a library database, Microsoft Access looks for the form with this name first in the library database, then in the current database.
View | The view in which the data access page will open. Click Browse or Design in the view box. The default is Browse.

Remarks

This action is similar to clicking the Open button or Design button in the Database window after selecting a data access page on the Pages tab.

Tip You can select a data access page in the Database window and drag it to a macro action row. This automatically creates an OpenDataAccessPage action that opens the data access page in Page view.

To run the OpenDataAccessPage action in Visual Basic, use the OpenView method of the DoCmd object.


Set the Value of a Control by Using a Macro - Example

The following macro opens the Add Products form from a button on the Suppliers form. It shows the use of the Echo, Close, OpenForm, SetValue, and GoToControl actions. The SetValue action sets the Supplier ID control on the Products form to the current supplier on the Suppliers form. Then the GoToControl action moves the focus to the Category ID field, where you can begin to enter data for the new product.

Click the action name to see the arguments for each action.

Action | Comment
 | Attached to the Add Products button on the Suppliers form.
Echo | Stop screen updating while the macro is running (echo is turned off).
Close | Close Product List form
OpenForm | Open the Products form.
SetValue | Set the Supplier ID control to the current supplier on the Suppliers form.
GoToControl | Go to the Category ID control.


MsgBox Action Arguments

Argument | Setting
Message | Move to the supplier record whose products you want to see, then press the Review Products button again.
Beep | Yes
Type | None
Title | Select a Supplier


OpenForm Action Arguments

Argument | Setting
Form Name | Product List
View | Datasheet
Filter Name |
Where Condition | [Supplier ID] = [Forms]![Suppliers]![SupplierID]
Data Mode | Read Only
Window Mode | Normal


MoveSize Action Arguments

Argument | Setting
Right | 0.7799"
Down | 1.8"
Width |
Height |


Close Action Arguments

Argument | Setting
Object Type | Form
Object Name | Product List
Save | No


OpenForm Action Arguments

Argument | Setting
Form Name | Products
View | Form
Filter Name |
Where Condition |
Data Mode | Add
Window Mode | Normal


SetValue Action Arguments

Argument | Setting
Item | [Forms]![Products]![SupplierID]
Expression | SupplierID


Synchronize Forms by Using a Macro - Example

The following macro opens a Product List form in the lower-right corner of the Suppliers form, displaying the current supplier's products. It shows the use of the Echo, MsgBox, GoToControl, StopMacro, OpenForm, and MoveSize actions. It also shows the use of a conditional expression with the MsgBox, GoToControl, and StopMacro actions.

Click the action name to see the arguments for each action.

Condition | Action | Comment
 |  | Attached to the Review Products button on the Suppliers form.
 | Echo | Stop screen updating while the macro is running (echo is turned off).
IsNull([Supplier ID]) | MsgBox | If there is no current supplier on the Suppliers form, display a message...
 | GoToControl | Move focus to the CompanyName control.
... | StopMacro | ... and stop the macro.
 | OpenForm | Open the Product List form and show the current supplier's products.
 | MoveSize | Position the Product List form in the lower right of the Suppliers form.


AllDataAccessPages Collection Example

The following example prints the name of each open AccessObject object in the AllDataAccessPages collection.

Sub AllDataAccessPages()
    Dim obj As AccessObject, dbs As Object
    Set dbs = Application.CurrentProject
    ' Search for open AccessObject objects in
    ' AllDataAccessPages collection.
    For Each obj In dbs.AllDataAccessPages
        If obj.IsLoaded = TRUE then
            ' Print name of obj.
            Debug.Print obj.Name
        End If
    Next obj
End Sub


AllDatabaseDiagrams Collection Example

The following example prints the name of each open AccessObject object in the AllDatabaseDiagrams collection.

Sub AllDatabaseDiagrams()
    Dim obj As AccessObject, dbs As Object
    Set dbs = Application.CurrentData
    ' Search for open AccessObject objects in
    ' AllDatabaseDiagrams collection.
    For Each obj In dbs.AllDatabaseDiagrams
        If obj.IsLoaded = TRUE then
            ' Print name of obj.
            Debug.Print obj.Name
        End If
    Next obj
End Sub


AllForms Collection Example

The following example prints the name of each open AccessObject object in the AllForms collection.

Sub AllForms()
    Dim obj As AccessObject, dbs As Object
    Set dbs = Application.CurrentProject
    ' Search for open AccessObject objects in AllForms collection.
    For Each obj In dbs.AllForms
        If obj.IsLoaded = TRUE then
            ' Print name of obj.
            Debug.Print obj.Name
        End If
    Next obj
End Sub


AllMacros Collection Example

The following example prints the name of each open AccessObject object in the AllMacros collection.

Sub AllMacros()
    Dim obj As AccessObject, dbs As Object
    Set dbs = Application.CurrentProject
    ' Search for open AccessObject objects in AllMacros collection.
    For Each obj In dbs.AllMacros
        If obj.IsLoaded = TRUE then
            ' Print name of obj.
            Debug.Print obj.Name
        End If
    Next obj
End Sub


AllModules Collection Example

The following example prints the name of each open AccessObject object in the AllModules collection.

Sub AllModules()
    Dim obj As AccessObject, dbs As Object
    Set dbs = Application.CurrentProject
    ' Search for open AccessObject objects in AllModules collection.
    For Each obj In dbs.AllModules
        If obj.IsLoaded = TRUE then
            ' Print name of obj.
            Debug.Print obj.Name
        End If
    Next obj
End Sub


AllQueries Collection Example

The following example prints the name of each open AccessObject object in the AllQueries collection.

Sub AllQueries()
    Dim obj As AccessObject, dbs As Object
    Set dbs = Application.CurrentData
    ' Search for open AccessObject objects in AllQueries collection.
    For Each obj In dbs.AllQueries
        If obj.IsLoaded = TRUE then
            ' Print name of obj.
            Debug.Print obj.Name
        End If
    Next obj
End Sub


AllReports Collection Example

The following example prints the name of each open AccessObject object in the AllReports collection.

Sub AllReports()
    Dim obj As AccessObject, dbs As Object
    Set dbs = Application.CurrentProject
    ' Search for open AccessObject objects in AllReports collection.
    For Each obj In dbs.AllReports
        If obj.IsLoaded = TRUE then
            ' Print name of obj.
            Debug.Print obj.Name
        End If
    Next obj
End Sub


AllStoredProcedures Collection Example

The following example prints the name of each open AccessObject object in the AllProcedures collection.

Sub AllStoredProcedures()
    Dim obj As AccessObject, dbs As Object
    Set dbs = Application.CurrentData
    ' Search for open AccessObject objects in
    ' AllStoredProcedures collection.
    For Each obj In dbs.AllStoredProcedures
        If obj.IsLoaded = TRUE then
            ' Print name of obj.
            Debug.Print obj.Name
        End If
    Next obj
End Sub


AllTables Collection Example

The following example prints the name of each open AccessObject object in the AllTables collection.

Sub AllTables()
    Dim obj As AccessObject, dbs As Object
    Set dbs = Application.CurrentData
    ' Search for open AccessObject objects in AllTables collection.
    For Each obj In dbs.AllTables
        If obj.IsLoaded = TRUE then
            ' Print name of obj.
            Debug.Print obj.Name
        End If
    Next obj
End Sub


AllViews Collection Example

The following example prints the name of each open AccessObject object in the AllViews collection.

Sub AllViews()
    Dim obj As AccessObject, dbs As Object
    Set dbs = Application.CurrentData
    ' Search for open AccessObject objects in AllViews collection.
    For Each obj In dbs.AllViews
        If obj.IsLoaded = TRUE then
            ' Print name of obj.
            Debug.Print obj.Name
        End If
    Next obj
End Sub


 DataAccessPages Collection

DataAccessPages Collection

 DataAccessPages collection (DataAccessPage object)

The DataAccessPages collection contains all of the data access pages that are currently open in a Microsoft Access project (.adp) or Access database (.mdb).

Remarks

Use the DataAccessPages collection in Visual Basic or in an expression to refer to data access pages that are currently open. For example, you can enumerate the DataAccessPages collection to set or return the values of properties of individual data access pages in the collection.

Tip The For Each...Next statement is useful for enumerating a collection.

You can refer to an individual DataAccessPage object in the DataAccessPages collection either by referring to the data access page by name, or by referring to its index within the collection. If you want to refer to a specific data access page in the DataAccessPages collection, it's better to refer to the data access page by name because a data access page's collection index may change.

The DataAccessPages collection is indexed beginning with zero. If you refer to a data access page by its index, the first data access page opened is DataAccessPages(0), the second form opened is DataAccessPages(1), and so on. If you opened Page1 and then opened Page2, Page2 would be referenced in the DataAccessPages collection by its index as DataAccessPages(1). If you then closed Page1, Page2 would be referenced in the DataAccessPages collection by its index as DataAccessPages(0).

Note To list all data access pages in the database, whether open or closed, enumerate the AllDataAccessPages collection of the CurrentProject object. You can then use the Name property of each individual AccessObject object to return the name of a data access page.

You can't add or delete a DataAccessPage object from the DataAccessPages collection.


Properties Collection Example

The next example enumerates the Forms collection and prints the name of each open form in the Forms collection. It then enumerates the Properties collection of each form and prints the name of each property and value.

Sub AllOpenForms()
    Dim frm As Form, prp As Property

    ' Enumerate Forms collection.
    For Each frm In Forms
        ' Print name of form.
        Debug.Print frm.Name
        ' Enumerate Properties collection of each form.
        For Each prp In frm.Properties
            ' Print name of each property.
            Debug.Print prp.Name; " = "; prp.Value
        Next prp
    Next frm
End Sub


Добавление присоединенного объекта в форму или отчет

Присоединенный объект добавляется в форму или отчет как вставленный или как связанный объект.

Объект, вставленный в форму или отчет, сохраняется в файле базы данных, что делает его доступным в любое время. Если изменить такой объект или путь к графическому объекту в форме или отчете, объект будет изменен в файле базы данных.

Если объект связан, его можно просматривать и вносить в него изменения в форме или отчете. В этом случае изменения сохраняются в исходном файле объекта, а не в файле базы данных. Файл объекта можно обновлять независимо от базы данных. Последние изменения будут выведены на экран при следующем открытии формы или отчета. Связывание объекта удобно при работе с очень большими файлами, которые нежелательно включать в файл базы данных, а также с файлами, используемыми в нескольких формах и отчетах. При перемещении файла связанного объекта связь следует установить повторно.

Возврат в раздел Добавление присоединенного объекта в форму или отчет


Добавление рисунка или другого объекта в форму, отчет или на страницу доступа к данным

Способ добавления рисунка или объекта зависит от того, где ведется работа: в форме или отчете либо на странице доступа к данным.

Формы и отчеты

В форму или отчет Microsoft Access можно добавлять объекты или части объектов, созданные в других приложениях, например, рисунок, созданный в Microsoft Paint, электронную таблицу, созданную в Microsoft Excel, или текстовый документ, созданный в Microsoft Word. Добавлять можно все содержимое файла или только некоторую выделенную часть.

В формах и отчетах присоединенный объект хранится в таблице. При переходе к новой записи в форме или отчете отображается другой объект. Например, таким способом можно хранить фотографии всех сотрудников компании. С другой стороны, свободный объект хранится в структуре формы или отчета. При переходе к новой записи объект не изменяется. Например, таким способом можно добавить в форму или отчет эмблему компании, созданную в приложении Microsoft Paint.

Страницы доступа к данным

На страницу доступа к данным можно добавлять графические объекты. Для привязки рисунка к странице доступа к данным следует ввести путь к рисунку в поле, а затем привязать изображение к этому полю. Отличие данного процесса от используемого в формах и отчетах состоит в том, что в таблице может сохраняться только путь к изображению, но не сам графический объект. На страницу доступа к данным можно также добавлять свободные рисунки, такие как эмблема или шапка, которые не изменяются при переходе к новой записи.

Возврат в раздел Добавление рисунка или другого объекта в форму, отчет или на страницу доступа к данным


Добавление свободного объекта в форму или отчет

Свободный объект добавляется в форму или отчет как вставленный или как связанный объект.

Вставляемый объект сохраняется в файле базы данных, что делает его доступным в любое время. Изменение такого объекта в форме или отчете приводит к изменению объекта в файле базы данных.

Если объект связан, его можно просматривать и вносить в него изменения в форме или отчете. В этом случае изменения сохраняются в исходном файле объекта, а не в файле базы данных. Файл объекта можно обновлять независимо от базы данных. Последние изменения будут выведены на экран при следующем открытии формы или отчета. Связывание объекта удобно при работе с очень большими файлами, которые нежелательно включать в файл базы данных, а также с файлами, используемыми в нескольких формах и отчетах. При перемещении файла связанного объекта связь следует установить повторно.

Возврат в раздел Добавление свободного объекта


 Вычисление суммы, среднего, числа элементов или других итоговых значений для записей в запросе

Вычисление суммы, среднего, числа элементов или других итоговых значений для записей в запросе

В ячейке строки Групповая операция в режиме конструктора запроса можно выбрать функцию для вычисления суммы, среднего, числа элементов, максимального или минимального значения, дисперсии или среднеквадратичного отклонения для значений одного или нескольких полей. Эти действия выполняются над значениями из всех записей в запросе или для одной или нескольких групп записей. В строке Условие отбора можно также добавить условия отбора, влияющие на результаты вычисления.

Примечание. Для вычисления суммы, среднего, числа элементов, максимального или минимального значения можно также воспользоваться мастером создания простого запроса, однако, для добавления условий отбора необходимо использовать бланк запроса.

Возврат в раздел Вычисление суммы, среднего, числа элементов или других итоговых значений для записей в запросе


 Сжатие базы данных Access или проекта Access

Сжатие базы данных Access или проекта Access

Начиная с данной версии Microsoft Access, сжатие и восстановление баз данных Microsoft Access объединено в один процесс. Однако для проектов Microsoft Access выполняется только сжатие; Access не восстанавливает проекты Access.

Сжатие базы данных Access или проекта Access. При удалении данных или объектов из базы данных Access или при удалении объектов из проекта Access база данных Access или проект Access могут стать фрагментированными и неэффективно использовать дисковое пространство. При сжатии базы данных Access или проекта Access создается копия файла и корректируется способ его хранения на диске.

Сжатие оптимизирует быстродействие как баз данных Access, так и проектов Access. Однако в проектах Access сжатие не затрагивает объекты баз данных, такие как таблицы или представления, располагающиеся не в самом проекте Access, а в базе данных Microsoft SQL Server. Кроме того, сжатие не оказывает влияния на работу счетчиков в проекте Access. Однако при сжатии базы данных Access, в которой были удалены записи из конца таблицы, содержащей поле счетчика, значение счетчика сбрасывается; для следующей добавляемой записи значение счетчика будет на единицу больше значения для последней не удаленной записи таблицы.

Восстановление баз данных Access. В большинстве случаев Microsoft Access определяет наличие повреждений в базе данных Access при попытке ее открытия и тут же предлагает выполнить ее сжатие. В некоторых ситуациях Microsoft Access может не определить, что база данных Access повреждена. Если в работе базы данных Access наблюдаются неполадки, выполните ее сжатие.

Сжатие базы данных, созданной в предыдущей версии Access, не приводит к ее преобразованию в формат Access 2000. См. дополнительные сведения о преобразовании баз данных Access предыдущих версий.

При преобразовании многопользовательской базы данных (с общим доступом), которая расположена на сервере или в общей папке, убедитесь, что она не открыта другим пользователем. Для преобразования базы данных Access необходимо иметь к ней доступ с разрешениями «Открытие/запуск» и «Монопольный доступ». См. дополнительные сведения о предоставлении разрешений на доступ.

Возврат в раздел Сжатие базы данных Access или проекта Access


 Условное форматирование текстового поля и других элементов управления в форме или отчете

Условное форматирование текстового поля и других элементов управления в форме или отчете

Если элемент управления формы или отчета содержит значения, которые требуется контролировать, можно облегчить пометку различных значений этого элемента управления, применив условное форматирование. Например, можно задать отображение в элементе управления зеленого фона в случае превышения предполагаемого объема продаж и красного фона, если предполагаемый объем продаж не достигнут. Кроме того, можно задать отображение текста полужирным, наклонным или подчеркнутым шрифтом, а также включать или отключать элемент управления в зависимости от того, выполняются или нет заданные условия.

С помощью условного форматирования можно видеть, как значения элементов управления соотносятся с постоянной величиной или с результатами обработки выражения. Для задания условий форматирования в соответствии с данными элементов управления или в соответствии с несколькими наборами условий можно использовать логические выражения. См. сведения о создании выражений.

Условное форматирование может быть основано на значении элемента управления, на произвольном выражении, содержащем ссылку на другой элемент управления, на определяемой пользователем функции Visual Basic для приложений либо на элементе управления, имеющем фокус. Например, можно задать такое условное форматирование, при котором поле получает красный фон, если годовая зарплата сотрудника превышает 100 000 у.е.; или такое, при котором текст в поле «Город» становится зеленым, если клиент проживает в Москве.

Если значение элемента управления меняется и более не отвечает заданному условию, Microsoft Access возвращает элементу управления форматирование, используемое по умолчанию. Условное форматирование применяется к элементу управления до тех пор, пока не будет снято пользователем, даже если ни одно из условий не выполняется и заданное форматирование элемента управления не отображается.

Примечание. Подстановочные знаки, такие как звездочка (*), вопросительный знак (?) и любые другие, нельзя использовать в условиях в качестве замены для текстовых символов или чисел.

Возврат в раздел Условное форматирование текстового поля и других элементов управления в форме или отчете


 Преобразование баз данных Access 2000 к формату Access 97

Преобразование баз данных Access 2000 к формату Access 97

База данных Microsoft Access 2000 может быть преобразована в формат Access 97, если она не является частью набора реплик. При преобразовании базы данных в формат Access 97 вся функциональность, специфичная для Access 2000, утрачивается.

При преобразовании базы данных Access 2000 в формат Access 97 в преобразуемой базе данных происходят следующие изменения.

  • Утрачивается связь со страницами доступа к данным.

  • Возможно неверное преобразование данных, для которых в Access 2000 используется поддержка кодировки Юникод. Access 97 использует символы только одной кодовой страницы, каждая из которых представляет собой набор 256 символов. Например, база данных Access 97 может использовать только символы ANSI. Во время преобразования набор символов, который может быть использован в конечной базе данных Access 97, определяется порядком сопоставления исходной базы данных Access 2000; символы, не входящие в этот набор, конвертируются неправильно.

  • База данных Access 2000, содержащая таблицу, свойство Размер поля (FieldSize) которой имеет значение «Действительное», не может быть преобразована в формат Access 97. Для успешного преобразования базы данных необходимо изменить значение свойства Размер поля (FieldSize), например, на «Одинарное с плавающей точкой» или «Двойное с плавающей точкой», либо сменить тип данных поля на денежный.

Для преобразования защищенной базы данных Access учетная запись пользователя, используемая для входа в систему, должна иметь следующие разрешения на доступ.

  • «Открытие/запуск» и «Монопольный доступ» для базы данных, «Чтение макета» для всех объектов базы данных.

  • Чтобы защитить преобразованную базу данных, необходимо открыть ее в Microsoft Access 97 и применить защиту на уровне пользователя.

Если база данных Access защищена паролем, ее можно преобразовать без удаления пароля. Если паролем защищена программа на языке Microsoft Visual Basic для приложений (VBA), необходимо указать этот пароль в среде Visual Basic.


 Копирование объекта базы данных

Копирование объекта базы данных

Существующий объект базы данных в базе данных Microsoft Access или проекте Microsoft Access можно легко настроить, создав его копию и внеся изменения в эту копию.

Копия объекта базы данных обычно наследует свойства исходного объекта. Однако при создании копии таблицы в проекте Access индексы, ограничения и триггеры исходной таблицы не наследуются; эти свойства необходимо создать в копии заново. Кроме того, если при создании копии таблицы или запроса в базе данных Access требуется, чтобы в копии присутствовала и подтаблица исходной таблицы или запроса, необходимо открыть копию и вставить подтаблицу.

Если требуется скопировать только структуру таблицы, а не таблицу с данными, или добавить данные таблицы в существующую таблицу, скопируйте таблицу с помощью команды Копировать.

Допускается перетаскивание объекта базы данных из окна базы данных одной базы данных Access или проекта Access в другую открытую базу данных Access или проект Access. Допускается копирование таблиц, запросов и отчетов путем перетаскивания из окна базы данных в другие приложения Microsoft.

Кроме того, имеется возможность сохранять некоторые объекты баз данных в виде объектов другого типа.

Возврат в раздел Копирование объекта базы данных


 Создание пользовательской справки для формы, отчета или элемента управления

Создание пользовательской справки для формы, отчета или элемента управления

Существует несколько способов добавления справки в форму, отчет или элемент управления Microsoft Access. Если требуется отображать всплывающие подсказки, появляющиеся на экране при перемещении указателя мыши по элементам управления, воспользуйтесь свойством Всплывающая подсказка (ControlTipText). Для отображения сведений о форме или элементе управления в строке состояния используется свойство Текст строки состояния (StatusBarText). Возможно также создание подсказок для создаваемых кнопок панели инструментов.

Если требуется, чтобы справка об элементе управления отображалась только после нажатия кнопки Что это такое? с последующим выбором элемента управления, можно создать справочный файл с помощью текстового редактора или текстового процессора (эта программа должна обеспечивать сохранение документов в формате RTF). Затем следует скомпилировать файл справочной системы с помощью компилятора Microsoft Help Workshop и связать его с элементом управления при помощи свойств Файл справки (HelpFile) и Идентификатор справки (HelpContextID).

Для форм и отчетов можно создать более развернутую справочную систему, вызываемую нажатием клавиши F1, настроив их свойства Файл справки (HelpFile) и Идентификатор справки (HelpContextID). Для создания файла справки этого типа можно использовать компилятор Microsoft Help Workshop или Microsoft HTML Help Workshop.

Примечания

  • Компилятор Microsoft Help Workshop можно загрузить с Web-узла технической поддержки продуктов Microsoft.

  • Компилятор Microsoft HTML Help Workshop входит в комплект средств разработчика Microsoft Office 2000 Developer.

  • Дополнительные сведения о создании пользовательского файла справки см. в главе «Adding Help to Your Custom Solution» книги Руководство программиста по Visual Basic для Microsoft Office 2000. Как получить копию этой книги.

Возврат в раздел Создание пользовательской справки для формы, отчета или элемента управления


 Создание выражения

Создание выражения

При создании выражения необходимо объединить идентификаторы, значения и операторы таким образом, чтобы они давали определенный результат. С помощью выражений выполняются как простейшие арифметические действия, например, сложение чисел (1 + 1), так и сложные операции с данными, как в следующем выражении, возвращающем ошибку, если поле «Страна» имеет значение «Франция», «Италия» или «Испания», а поле «Индекс» содержит меньше или больше пяти символов:

= [Страна] In ("Франция", "Италия", "Испания") And Len([Индекс])<>5

Выражения можно создавать с помощью построителя выражений или самостоятельно, комбинируя элементы выражения нужным образом.

Возврат в раздел Создание выражений


 Создание в таблице поля со списком подстановок или списком значений

Создание в таблице поля со списком подстановок или списком значений

Списки подстановок

Наиболее типичный список подстановок отображает значения, подставляемые из связанной таблицы. Например, в поле «Код поставщика» таблицы «Товары» из базы данных «Борей» отображается следующий список подстановок:

Сведения из таблицы «Поставщики», отображаемые в списке подстановок таблицы «Товары»

Данный список создается путем поиска значений в поле «КодПоставщика» таблицы «Поставщики» и вывода соответствующих значений поля «Название». При выборе значения из списка задается значение внешнего ключа в текущей записи (поле «КодПоставщика» в таблице «Товары»), совпадающее со значением первичного ключа соответствующей записи в связанной таблице (поле «КодПоставщика» в таблице «Поставщики»). При этом создается объединение со связанной таблицей, позволяющее отображать (но не сохранять) значения поля «Название» из таблицы «Поставщики». Внешний ключ (значение поля «КодПоставщика») сохраняется, но не отображается. Это приводит к тому, что любое обновление данных в таблице «Поставщики» будет отражаться как в списке, так и в записях в таблице «Товары». Поле списка подстановок необходимо определять из таблицы, содержащей внешний ключ и отображающей список подстановок. В приведенном примере поле списка подстановок определяется из таблицы «Товары».

Списки значений

Список постоянных значений выгладит так же, как список подстановок, но содержит постоянный набор значений, которые вводятся при создании списка. Список постоянных значений используется для ввода значений, которые не нужно хранить в таблице и для которых не предполагается частое изменение. Например, удобно создать для заполнения поля «Обращение» список значений типа «Г-н» или «Г-жа». Выбираемое из списка значение заносится в запись без создания отношения со связанной таблицей. Благодаря этому, если какое-либо значение из списка будет в дальнейшем изменено, это не отразится на ранее заполненных записях.

Создавать новые поля со списком подстановок или со списком значений можно как в режиме конструктора, так и в режиме таблицы. Однако, если поле, которое будет использовано как внешний ключ для поля подстановок, уже существует, необходимо открыть содержащую это поле таблицу в режиме конструктора и определить поле подстановок. Например, если имеется таблица «Товары», в которой уже определено поле «КодПоставщика», и требуется превратить его в поле подстановок, в котором будут выводиться названия поставщиков из таблицы «Поставщики», то необходимо открыть таблицу «Товары» в режиме конструктора и преобразовать поле «КодПоставщика» в поле подстановок.

Возврат в раздел Создание в таблице поля со списком подстановок или списком значений


 Создание форм, основанных на нескольких таблицах

Создание форм, основанных на нескольких таблицах

Использование мастера форм — это наиболее простой и быстрый способ создания формы, объединяющей данные из нескольких таблиц. Мастер форм ускоряет процесс создания форм, выполняя автоматически всю основную работу. В первом окне мастера форм можно выбрать поля, которые требуется включить в форму. Это могут быть поля из одной или нескольких таблиц. При использовании мастера форм для создания формы на основе нескольких таблиц Microsoft Access создает инструкцию SQL. Эта инструкция содержит сведения о том, какие таблицы и поля нужно использовать.

Обычная многотабличная форма

С помощью мастера можно создать обычную или иерархическую форму, отображающую данные из нескольких таблиц. Примером обычной является форма, содержащая сведения о товарах и их поставщиках.

Обычная многотабличная форма

Иерархическая многотабличная форма

Иерархической является форма, содержащая одну или несколько подчиненных форм. Подчиненные формы используются для показа данных из таблиц с отношением «один-ко-многим». Например, можно создать форму «Категории», содержащую данные из таблиц «Категории» и «Товары».

Иерархическая многотабличная форма

Синхронизированные формы

Имеется возможность представления данных в иерархическом виде без использования подчиненных форм. Например, если в форме много элементов управления, для подчиненной формы может не остаться места. В этом случае можно использовать мастер форм для создания синхронизированных форм. При нажатии кнопки в форме открывается другая форма, синхронизированная с записью в первой форме.

Возврат в раздел Создание формы на базе нескольких таблиц


 Группы

Группы

В группы можно организовывать различные типы объектов баз данных. Группа состоит из ярлыков к объектам базы данных, входящих в эту группу; при добавлении объекта в группу исходное расположение этого объекта не изменяется. Если щелкнуть панель Объекты, а затем значок конкретного типа объектов, все объекты базы данных этого типа отобразятся в списке Объект, даже те, что относятся также к группам. Если щелкнуть панель Группы в окне базы данных, а затем щелкнуть значок группы, в списке Объект отобразятся все объекты базы данных, добавленные в эту группу.

В группе можно объединить связанные объекты различных типов. Например, управлять формой с несколькими подчиненными формами будет легче, если создать группу, содержащую главную форму, подчиненные формы, а также таблицы или запросы, на которых они основаны. Кроме того, можно создать группу для наиболее часто используемых форм и отчетов; щелкнув значок этой группы, можно отобразить эти формы и отчеты в списке Объекты окна базы данных.


 Настройка среды приложения при помощи профилей пользователей Microsoft Access

Настройка среды приложения при помощи профилей пользователей Microsoft Access

В Microsoft Access имеются свойства базы данных и параметры запуска, отвечающие основным требованиям пользователей по настройке приложения. Однако разработчикам приложений для настройки среды приложения могут потребоваться дополнительные возможности, предоставляемые профилем пользователя.

Профиль пользователя Access — это особый набор разделов реестра Windows, который можно использовать для переопределения стандартных параметров Microsoft и ядра базы данных Мicrosoft Jet, а также для задания дополнительных параметров. При запуске приложения для определения профиля пользователя Access используется параметр командной строки /profile.

Применение профиля пользователя Access позволяет, например:

  • предотвращать возникновение конфликтов между потребностями приложения и стандартными настройками Access (которые могут быть изменены пользователями в свойствах базы данных), а также параметрами запуска;

  • гарантировать, что при распределении приложений специальные настройки не будут заменены настройками других программ, использующих Microsoft Jet;

  • проверять работу приложения с использованием разных конфигураций.

Примечание. Профиль пользователя, используемый для запуска Access из командной строки, — не то же самое, что профиль пользователя, определяемый для входа в операционную систему. Профиль пользователя Access применяется только к Access и только при запуске Access из командной строки. Профиль пользователя, определяемый для операционной системы, применяется ко всем приложениям в операционной системе и используется для сохранения системных данных отдельных пользователей.


 Задание значений по умолчанию

Задание значений по умолчанию

С помощью свойства Значение по умолчанию (DefaultValue) можно указать значение, которое будет автоматически вводиться при добавлении новой записи. Например, если большинство поставщиков находится в Нью-Йорке, можно задать значение «Нью-Йорк» для использования по умолчанию в поле «Город» таблицы «Поставщики». Значение по умолчанию можно либо принять, либо ввести вместо него новое значение.

Свойство Значение по умолчанию (DefaultValue) может быть задано для поля в режиме конструктора таблиц, для элемента управления в режиме конструктора форм. В режиме конструктора страниц доступа к данным используется поле Значение (Value). В большинстве случаев значения по умолчанию добавляются в поля в режиме конструктора таблицы, так как значения по умолчанию применяются для элементов управления, основанных на таких полях (при условии, что элементы управления создаются после задания значения свойства в режиме конструктора таблиц). Однако для свободных элементов управления или элементов управления, основанных на данных из связанных (внешних) таблиц, значения по умолчанию следует задавать в форме или на странице доступа к данным.

Возврат в раздел Определение значения, вводимого в поле или элемент управления по умолчанию


 Определение формата отображения для поля или элемента управления

Определение формата отображения для поля или элемента управления

Для задания формата отображения данных в поле или элементе управления используется свойство Формат поля (Format). Например, можно задать отображение всех дат в формате месяц/день/год или в каком-либо другом формате. Для числовых, денежных, логических полей, а также полей даты/времени и счетчика формат можно выбрать из списка встроенных форматов. Пользовательские форматы можно создавать для любого типа данных полей, кроме полей объектов OLE.

Свойство Формат поля (Format) можно установить в режиме конструктора таблицы, режиме конструктора запроса, режиме конструктора формы или режиме конструктора отчета. В большинстве случаев это свойство устанавливается для полей в режиме конструктора таблицы. В таком случае заданное значение автоматически применяется к полю в режиме конструктора запросов, а также к элементам управления в формах и отчетах, присоединенных к данному полю (при условии, что элементы управления создаются после задания значения свойства в режиме конструктора таблиц). Однако в некоторых случаях может потребоваться установка свойства в режиме конструктора запроса, формы или отчета. Например, в таблице может потребоваться формат отображения, отличный от используемого в отчете. Свойство Формат поля (Format) для поля можно задать в режиме конструктора запроса, а затем основать на этом запросе отчет. При использовании свободного элемента управления свойство Формат поля (Format) должно быть установлено в режиме конструктора формы или отчета.

Примечание. Если требуется отображать постоянные символы, упрощающие ввод данных во встроенный формат, более удобным может оказаться использование маски ввода. Для получения сведений о различиях между форматом и маской ввода нажмите кнопку [image] .

Возврат в раздел Определение формата отображения для поля или элемента управления


 Указание числа десятичных разрядов для отображения в поле или в элементе управления

Указание числа десятичных разрядов для отображения в поле или в элементе управления

Для указания числа десятичных знаков для отображения в числовых или денежных полях, а также в элементах управления, содержащих числовые или денежные данные, используется свойство Число десятичных разрядов (DecimalPlaces). Установить свойство Число десятичных разрядов (DecimalPlaces) можно в режиме конструктора таблицы, режиме конструктора запросов, режиме конструктора форм или режиме конструктора отчетов. В большинстве случаев свойства устанавливаются для полей в режиме конструктора таблицы. В таком случае установленные свойства применяются к полю в режиме конструктора запросов, а также к элементам управления в формах и отчетах, присоединенных к данному полю (при условии, что элементы управления создаются после задания значения свойства в режиме конструктора таблиц). Однако в некоторых случая может понадобиться установка свойства в режиме конструктора запроса, формы или отчета. Например, в таблице и в отчете необходимо отображать разное число десятичных знаков. Свойство Число десятичных разрядов (DecimalPlaces) для поля может быть установлено в режиме конструктора запроса, а затем на данном запросе может быть основан отчет. При использовании свободного элемента управления свойство Число десятичных разрядов (DecimalPlaces) должно быть установлено в режиме конструктора формы или отчета.

Возврат в раздел Указание числа десятичных разрядов, отображаемых поле или в элементе управления


 Удаление группы записей при помощи запроса

Удаление группы записей при помощи запроса

При помощи одного запроса на удаление можно удалить записи из одной таблицы, из нескольких таблиц с отношением «один-к-одному» или из нескольких таблиц с отношением «один-ко-многим», если разрешено каскадное удаление, (например, все клиенты в Твери и сделанные ими заказы). Однако, если для добавления условия требуется включить таблицу на стороне «многие» вместе с таблицей на стороне «один», запрос необходимо выполнить дважды, так как один запрос не позволяет удалить записи из главной таблицы и из связанных таблиц одновременно.

Отношение «один-ко-многим» можно различать в режиме конструктора запроса по изображению связей между таблицами. Если один конец связи отмечен символом «бесконечность» [image], то это отношение «один-ко-многим». Если оба конца отмечена знаком 1, то это отношение «один-к-одному».

Возврат в раздел Удаление группы записей при помощи запроса


 Задание подстановочного шрифта для поддержки двух шрифтов

Задание подстановочного шрифта для поддержки двух шрифтов

В таблице, форме или отчете может потребоваться отображение символов шрифта, который не поддерживается по умолчанию. Например, если данные состоят из символов английского и одного из азиатских языков, используемый по умолчанию шрифт может не поддерживать символы азиатского языка.

Поддержка двух шрифтов позволяет задать подстановочный шрифт. Если конкретный символ не поддерживается шрифтом, который используется по умолчанию, то Microsoft Access использует для его отображения подстановочный шрифт. При этом используется тот же размер шрифта и толщина линии, что и для шрифта по умолчанию в этой области таблицы, формы или отчета.

Примечание. Если данные содержат символы европейских языков, таких как английский, греческий или русский, а также символы одного из азиатских языков, следует задать подстановочный шрифт. В Microsoft Office имеется универсальный шрифт (Arial Unicode MS), который содержит все символы и знаки, определенные в стандарте кодировки Юникод версии 2.1. Однако для обеспечения оптимальной производительности, рекомендуется использовать этот шрифт только при необходимости.

См. сведения о поддержке кодировки Юникод и шрифте Arial Unicode MS.

См. сведения о многоязыковой поддержке в Microsoft Office.

Возврат в раздел Задание подстановочного шрифта для поддержки двух шрифтов


 Свойства полей

Свойства полей

Каждое поле имеет набор свойств, с помощью которых можно настраивать параметры сохранения, обработки и отображения данных. Например, свойство Размер поля (FieldSize) позволяет указать максимальное число символов, которые могут быть введены в текстовое поле. Чтобы задать значения свойств поля, следует открыть таблицу в режиме конструктора, выбрать поле в верхней части окна, а затем выбрать нужное свойство в нижней части окна.

Набор свойств каждого поля определяется указанным для поля типом данных.

Совет. При создании присоединенного элемента управления в форме или отчете путем перетаскивания поля из списка полей некоторые свойства поля автоматически копируются в элемент управления. Такой способ добавления поля в форму или отчет обеспечивает согласованность настроек свойств. Для получения дополнительных сведений нажмите кнопку [image] .

Возврат в раздел Задание свойств полей, определяющих обработку, сохранение и отображение данных


 Группировка записей по первым n символам текстового поля на страницах доступа к данным

Группировка записей по первым n символам текстового поля на страницах доступа к данным

Данный раздел содержит справочные сведения по следующим вопросам.

Типы данных, необходимые для группировки записей по первым символам

Внешний вид страницы с группировкой записей по первому символу поля в режиме страницы или в Microsoft Internet Explorer

Внешний вид страницы с группировкой записей по первым символам поля в режиме конструктора

Значения свойств в окне Сортировка и группировка

Типы данных, необходимые для группировки записей по первым символам

При группировке записей по первым n символам текстового поля элемент управления, по которому выполняется группировка, должен быть присоединен к полю с одним из следующих типов данных: «Текстовый» в базе данных Microsoft Access (.mdb); char, varchar, nchar или nvarchar в проекте Microsoft Access (.adp).

Возврат в начало

Внешний вид страницы с группировкой записей по первому символу поля в режиме страницы или в Internet Explorer

Для группировки записей по первым n символам необходимы два элемента управления, привязанных к полю, по которому будет выполняться группировка. Один элемент управления используется для группировки записей по указанному числу первых символов и последующего отображения этих первых символов. Второй элемент управления, располагаемый на один уровень группировки ниже, используется для сортировки записей и отображения фактического значения поля.

В следующем примере записи берутся из таблицы «Товары». На первом уровне группировки записи группируются по первому символу поля «Марка». На следующем уровне группировки страница отображает и сортирует записи по фактическим значениям поля «Марка».

Страница с группировкой записей по первому символу поля в режиме страницы или в Internet Explorer

Возврат в начало

Внешний вид страницы с группировкой записей по первым символам поля в режиме конструктора

Ниже показан макет страницы из предыдущего примера в режиме конструктора.

Страницы с группировкой записей по первым символам поля в режиме конструктора

Возврат в начало

Значения свойств в окне «Сортировка и группировка»

В следующей таблице перечислены свойства, установленные для страницы из примера в окне Сортировка и группировка. Если в свойстве Сортировка по умолчанию (DefaultSort) после имени поля не указано ключевое слово ASC или DESC, Microsoft Access сортирует записи по возрастанию.

Свойство | Источник группы записей Товары-Марка | Источник группы записей Товары
Раздел подписей | Нет | Да
Заголовок группы | Да | Да
Примечание группы | Нет | Нет
Раздел кнопок перехода | Да | Да
Развернуто по умолчанию | Нет | Нет
Размер страницы доступа к данным | 3 | 3
Группировка | По первым символам | По полному значению
Интервал | 1.0 | 1.0
Сортировка по умолчанию | Группа_Марка | Марка

Примечание. При группировке по полю Access создает псевдоним элемента управления, добавляя префикс «Группа_» к имени элемента управления в свойстве Данные (ControlSource); например, Группа_Марка — Марка. При ссылке на элемент управления в выражении или в свойстве, необходимо использовать псевдоним.

Возврат в начало

Возврат в раздел Группировка записей по первым n символам текстового поля на страницах доступа к данным


 Группировка записей по интервалам значений числовых, денежных полей и полей счетчика на страницах доступа к данным

Группировка записей по интервалам значений числовых, денежных полей и полей счетчика на страницах доступа к данным

Данный раздел содержит справочные сведения по следующим вопросам.

Типы данных, необходимые для группировки по интервалам значений числовых, денежных полей и полей счетчика

Внешний вид страницы с группировкой записей по интервалам в 100 рублей в режиме страницы или в Microsoft Internet Explorer

Внешний вид страницы с группировкой записей по интервалам в 100 рублей в режиме конструктора

Значения свойств в окне Сортировка и группировка

Типы данных, необходимые для группировки по интервалам значений числовых, денежных полей и полей счетчика

При группировке записей по значениям счетчика, денежным или числовым значениям элемент управления, по которому выполняется группировка, должен быть присоединен к полю с одним из следующих типов данных: «Счетчик», «Денежный» или «Числовой» в базе данных Microsoft Access (.mdb); decimal, numeric, int, smallint, tinyint, money, smallmoney, float или real в проекте Microsoft Access (.adp).

Возврат в начало

Внешний вид страницы с группировкой записей по интервалам в 100 рублей в режиме страницы или в Internet Explorer

Для группировки записей по интервалам необходимы два элемента управления, присоединенных к полю, по которому выполняется группировка. Первый элемент управления используется для группировки записей и отображения значений поля в виде интервалов. Второй элемент управления, помещаемый на один уровень группировки ниже, используется для отображения полного значения поля. В следующем примере записи берутся из запроса с именем «Продажи». Группировка записей по интервалам в 100 единиц выполняется в элементе управления, присоединенном к полю «ОбъемПродаж». На следующем уровне группировки записи на странице отображаются и сортируются по фактическим значениям поля «ОбъемПродаж».

Страница с группировкой записей по интервалам в 100 рублей в режиме страницы или в Internet Explorer

Возврат в начало

Внешний вид страницы с группировкой записей по интервалам в 100 рублей в режиме конструктора

Ниже показан макет страницы из предыдущего примера в режиме конструктора.

Страница с группировкой записей по интервалам в 100 рублей в режиме конструктора

Возврат в начало

Значения свойств в окне «Сортировка и группировка»

В следующей таблице перечислены свойства, установленные для страницы из примера в окне Сортировка и группировка. Если в свойстве Сортировка по умолчанию (DefaultSort) после имени поля не указано ключевое слово ASC или DESC, Microsoft Access сортирует записи по возрастанию.

Свойство | Источник группы записей Продажи-ОбъемПродаж | Источник группы записей Продажи
Раздел подписей | Нет | Да
Заголовок группы | Да | Да
Примечание группы | Нет | Нет
Раздел кнопок перехода | Да | Да
Развернуто по умолчанию | Нет | Нет
Размер страницы доступа к данным | 3 | 3
Группировка | Интервал | По полному значению
Интервал | 100 | 1.0
Сортировка по умолчанию | Группа_ОбъемПродаж | ОбъемПродаж

Примечание. При группировке по элементу управления Access создает псевдоним элемента управления, добавляя префикс «Группа_» к имени элемента управления в свойстве Данные (ControlSource); например, Группа_ОбъемПродаж — ОбъемПродаж. При ссылке на элемент управления в выражении или в свойстве, необходимо использовать псевдоним.

Возврат в начало

Возврат в раздел Группировка записей по интервалам значений числовых, денежных полей и полей счетчика на страницах доступа к данным


 Группировка записей по интервалам даты и времени на страницах доступа к данным

Группировка записей по интервалам даты и времени на страницах доступа к данным

Данный раздел содержит справочные сведения по следующим вопросам.

Типы данных, необходимые для группировки по интервалам значений даты и времени

Внешний вид страницы с группировкой записей по месяцам в режиме страницы или в Microsoft Internet Explorer

Внешний вид страницы с группировкой записей по месяцам в режиме конструктора

Значения свойств в окне Сортировка и группировка

Типы данных, необходимые для группировки записей по интервалам значений даты и времени

При группировке записей по интервалам даты и времени элемент управления, по которому выполняется группировка, должен быть присоединен к полю с одним из следующих типов данных: «Дата/время» в базе данных Microsoft Access (.mdb); datetime или smalldatetime в проекте Microsoft Access (.adp).

Возврат в начало

Внешний вид страницы с группировкой записей по месяцам в режиме страницы или в Internet Explorer

Для группировки записей по интервалам значений даты и времени необходимо два элемента управления. Элемент управления, по которому выполняется группировка, присоединяется к скрытому полю, хранящему значения даты или времени. Другой, видимый, элемент управления присоединяется к выражению, возвращающему интервал дат или времени. В следующем примере записи берутся из запроса с именем «Сводка». Страница использует невидимый элемент управления, присоединенный к полю «ДатаОтгрузки» для группировки записей на верхнем уровне группировки по месяцам. На этом же уровне группировки находится другой, видимый элемент управления, присоединен к выражению, возвращающему значение месяца из поля «ДатаОтгрузки».

Страница доступа к данным, группирующая записи по месяцам, в режиме страницы

Возврат в начало

Внешний вид страницы с группировкой записей по месяцам в режиме конструктора

На той же странице в режиме конструктора можно видеть скрытый элемент управления, используемый для группировки записей первого уровня группировки.

Страница доступа к данным, группирующая записи по месяцам, в режиме конструктора

Возврат в начало

Значения свойств в окне «Сортировка и группировка»

В следующей таблице перечислены свойства, установленные для страницы из примера в окне Сортировка и группировка. Если в свойстве Сортировка по умолчанию (DefaultSort) после имени поля не указано ключевое слово ASC или DESC, Microsoft Access сортирует записи по возрастанию.

Свойство | Источник группы записей Сводка-ДатаОтгрузки | Источник группы записей Сводка
Раздел подписей | Нет | Да
Заголовок группы | Да | Да
Примечание группы | Нет | Нет
Раздел кнопок перехода | Да | Да
Развернуто по умолчанию | Нет | Нет
Размер страницы доступа к данным | 3 | 3
Группировка | По годам | По кварталам
Интервал | 1.0 | 1.0
Сортировка по умолчанию | Группа_ДатаОтгрузки | ДатаОтгрузки

Примечание. При группировке по элементу управления Access создает псевдоним элемента управления, добавляя префикс «Группа_» к имени элемента управления в свойстве Данные (ControlSource); например, Группа_ДатаОтгрузки — ДатаОтгрузки. При ссылке на элемент управления в выражении или в свойстве, необходимо использовать псевдоним.

Возврат в начало

Возврат в раздел Группировка записей по интервалам даты и времени на страницах доступа к данным


 Индексы в базе данных Access

Индексы в базе данных Access

При помощи индексов ускоряется сортировка и поиск записей. Индексы таблиц Microsoft Access используются так же, как и предметные указатели в книгах: при поиске данных выполняется их поиск в индексе. Можно создавать индексы по одному или нескольким полям. Составные индексы позволяют пользователю различать записи, в которых первые поля могут иметь одинаковые значения.

Выбор полей для индексирования

В основном требуется индексировать поля, в которых часто осуществляется поиск, поля сортировки или поля, объединенные с полями из других таблиц в запросах. Однако индексы могут замедлить выполнение некоторых запросов на изменение, например, запросов на добавление, при выполнении которых требуется обновление индексов многих полей.

Поля первичного ключа таблиц индексируются автоматически, а индексировать поля с типом данных «Поле объекта OLE» нельзя. Для остальных полей индексирование используется, если выполняются следующие условия.

  • Поле имеет тип данных «Текстовый», «Числовой», «Денежный» или «Дата/время».

  • Предполагается выполнение поиска значений в поле.

  • Предполагается выполнение сортировки значений в поле.

  • Предполагается выполнение сортировки большого числа различных значений в поле. Если поле содержит много одинаковых значений, то применение индекса незначительно ускорит выполнение запросов.

Составные индексы

Если предполагается частое выполнение одновременной сортировки или поиска в нескольких полях, можно создать для этих полей составной индекс. Например, если в одном и том же запросе часто задаются условия для полей «Имя» и «Фамилия», то для этих двух полей имеет смысл создать составной индекс.

При сортировке таблицы по составному индексу Microsoft Access сначала выполняет сортировку по первому полю, определенному для данного индекса. Если в первом поле содержатся записи с повторяющимися значениями, то выполняется сортировка по второму полю, определенному для данного индекса, и так далее.

Возврат в раздел Создание индекса для ускорения поиска и сортировки записей


 Создание масок ввода

Создание масок ввода

Для создания маски ввода (иногда называемой «шаблоном поля») используется свойство Маска ввода (InputMask). Для управления вводом данных в поле или в элемент управления маска ввода использует текстовые константы отображения. Например, следующая маске ввода требует, чтобы все вводимые телефонные номера состояли только из цифр, причем ровно из такого их количества, которое образует полный номер телефона в США: код штата, код города и номер абонента. Пользователю остается только заполнить поля.

Маска ввода телефонных номеров

Свойство Маска ввода (InputMask) можно установить только в режиме конструктора таблицы, режиме конструктора запроса или режиме конструктора формы. В большинстве случаев свойство устанавливается для полей в режиме конструктора таблицы. В таком случае маска ввода автоматически применяется к полю в режиме конструктора запросов, а также к элементам управления форм и отчетов, присоединенных к этому полю (при условии, что элементы управления созданы после задания значения свойства в режиме конструктора таблиц). Однако в некоторых случаях может потребоваться установка свойства в режиме конструктора запроса или формы. Например, если потребуется не включать маску ввода в таблицу, но включить ее в текстовое поле. При использовании свободного элемента управления свойство Маска ввода (InputMask) необходимо установить в режиме конструктора формы.

Примечание. Если требуется задать способ отображения сохраненных данных, то вместо маски ввода желательно использовать формат. Для получения сведений о различиях между форматом и маской ввода нажмите кнопку [image] .

Возврат в раздел Создание маски ввода для управления вводом данных в поле или элемент управления


 Выполнение вычислений в запросе

Выполнение вычислений в запросе

В запросах можно выполнять вычисления следующих типов.

  • Встроенные вычисления, называемые «итоговыми», для расчета следующих значений по группам записей или по всем записям, отобранным в запросе: сумма, среднее, число значений, минимальное или максимальное значение, стандартное отклонение или дисперсия.

  • Пользовательские вычисления для выполнения расчетов с числовыми и строковыми значениями или значениями дат для каждой записи с использованием данных из одного или нескольких полей. Для ввода таких выражений необходимо создать новое вычисляемое поле непосредственно в бланке запроса.

Помимо отображения на экране возможно следующее использование результатов вычислений:

  • для определения условий отбора записей в запросе или для определения записей, над которыми производятся действия;

  • для обновления данных в запросе на обновление.

Возврат в раздел Выполнение вычислений в запросе


 Всплывающие формы и пользовательские диалоговые окна

Всплывающие формы и пользовательские диалоговые окна

Всплывающие формы

Всплывающая форма служит для вывода сообщений для пользователя или для ввода данных пользователем. Всплывающая форма располагается поверх других открытых форм, даже если активной является другая форма. Всплывающая форма может быть немодальной или модальной. Если всплывающая форма является немодальной, то, пока она открыта, пользователь имеет доступ к другим объектам и командам меню. Например, в форму «Поставщики» можно добавить кнопку, выводящую всплывающую форму «Список товаров». Эта всплывающая форма отображает список товаров, доступных через текущего поставщика в форме «Поставщики».

Немодальная всплывающая форма

Пользовательские диалоговые окна

Если всплывающая форма является модальной, доступ к другим объектам или командам меню невозможен до скрытия или закрытия этой формы. Модальные всплывающие формы называют пользовательскими диалоговыми окнами. Например, можно создать пользовательское диалоговое окно для выбора нужного отчета для печати.

Пользовательское диалоговое окно

Дополнительные сведения об использовании форм для получения и отображения информации см. в главе «Using Forms to Collect, Filter, and Display Information» книги Building Applications with Forms and Reports.

Возврат в раздел Создание всплывающих форм и пользовательских диалоговых окон


Способы восстановления панелей инструментов или строк меню, а также отдельных кнопок, команд или меню

Существует возможность восстановления различных элементов встроенной панели инструментов или строки меню.

  • Восстановление стандартных параметров всей встроенной панели инструментов или строки меню для отображения исходного набора кнопок или меню и команд с исходными настройками свойств. Microsoft Access также восстанавливает настройки свойств самой панели инструментов или строки меню, включая восстановление расположения на экране, а также скрытие или отображение, в зависимости от исходного состояния.

  • Восстановление всех исходных кнопок или меню (включая контекстные меню) и команд с настройками их свойств без восстановления свойств панели инструментов или строки меню (таких как положение на экране и размер).

  • Восстановление отдельной кнопки, команды или меню (кроме отдельного контекстного меню), не затрагивая других установок панели инструментов и строки меню. При восстановлении отдельной кнопки, команды или меню происходит ее возвращение к первоначальному виду.

Возврат в раздел Восстановление панелей инструментов или строк меню, а также отдельных кнопок, команд или меню


 Наложение ограничений и условий на вводимые данные

Наложение ограничений и условий на вводимые данные

В Microsoft Access существует несколько способов управления вводом данных в базу данных. Например, можно ограничить данные, вводимые в поле, определив для этого поля условие на значение. Если введенные в поле данные не соответствуют заданному условию, то на экран будет выведено сообщение, извещающее о том, какие данные разрешено вводить в указанное поле. Еще одним способом управления вводом данных является создание маски ввода. Этот способ используется для ограничения типов значений, вводимых в поле. Эти простые формы проверки условий на значение и ограничения можно реализовать, установив свойства для полей в таблицах или для элементов управления в формах.

В большинстве случаев способы проверки условий на значение и ограничение данных рекомендуется определять в свойствах таблиц в режиме конструктора. Это экономит время, так как, если в форме было использовано поле, то при вводе данных с помощью этой формы к ним будут применены условия на значение и другие ограничения, описанные в этом поле.

Однако, если данные, введенные в элемент управления в форме, не связаны с полем в таблице, то для наложения ограничений и условий на ввод данных эти свойства необходимо описать в форме. Кроме того, в таких ситуациях для выполнения проверки более сложных условий в формах необходимо использовать макросы или программы Visual Basic для приложений. Например, в некоторых случаях может возникнуть необходимость нарушить текущее условие на значение поля или сравнить значения таблиц.

Возврат в раздел Проверка условий на значения и ограничение данных


 Установка базовой гиперссылки для базы данных Access или проекта Access

Установка базовой гиперссылки для базы данных Access или проекта Access

При создании гиперссылки в базе данных Microsoft Access или проекте Microsoft Access можно указать в адресе гиперссылки фиксированное расположение (абсолютная ссылка), определяющее место назначения при помощи его полного адреса — например, C:\Мои документы\Sales.doc — либо указать в пути относительную ссылку. Путь относительной ссылки можно легко изменить, установив базу гиперссылки для базы данных Access или проекта Access. В качестве значения свойства базы данных Access или проекта Access База гиперссылки (HyperlinkBase) может быть указан адрес URL или путь к папке на сетевом или локальном диске.

Например, в базе данных Access или проекте Access могут потребоваться гиперссылки на Web-страницы, расположенные на сервере интрасети. Если в качестве базы гиперссылки указать адрес http://servername1, можно создавать гиперссылки в виде относительных ссылок, например webpage.htm. По щелчку такой гиперссылки откроется Web-страница с расположением http://servername1/webpage.htm. При последующем перемещении Web-страниц на другой сервер интрасети достаточно будет только изменить значение свойства База гиперссылки (HyperlinkBase) на http://servername2, чтобы скорректировать все относительные ссылки в базе данных Access или проекте Access.

Возврат в раздел Установка базовой гиперссылки для базы данных Access или проекта


 Использование базы данных Microsoft Access в нескольких версиях Microsoft Access

Использование базы данных Microsoft Access в нескольких версиях Microsoft Access

В некоторых ситуациях переход на Microsoft Access 2000 всех пользователей, работающих с общей базой данных Microsoft Access, не может быть проведен одновременно. В этом случае возможно совместное использование базы данных пользователями различных версий без ее изменения. Допускается преобразование некоторых частей базы данных Access к формату Microsoft Access 2000, что позволяет использовать преимущества многих новых средств, в то же время не влияя на работу пользователей предыдущих версий. Все пользователи могут совместно работать с одними и теми же данными.

Эта стратегия может использоваться как для баз данных Access, состоящих из одного файла, так и для приложений, разделенных на клиентскую и серверную части. Для использования в разных версиях Microsoft Access базы данных, состоящей из одного файла, следует преобразовать ее в приложение, разделенное на клиентскую и серверную части. Данные в серверной части останутся в формате самой ранней версии Microsoft Access, а пользователи будут работать с клиентской частью, преобразованной в формат Access 2000.

Для использования в нескольких версиях Microsoft Access приложения, состоящего из клиентской и серверной частей, следует преобразовать клиентскую часть приложения.

Возврат в раздел Использование существующей базы данных в различных версиях Microsoft Access


 Использование свойств файлов для поиска файлов

Использование свойств файлов для поиска файлов

Свойства файла — это сведения о файле, которые помогают его идентифицировать, например, описательный заголовок, имя автора, тема и ключевые слова, определяющие темы или важные сведения в файле. Свойства файла можно установить для базы данных, с которой ведется работа, а также для любой базы данных Microsoft Access, проекта Microsoft Access или страницы доступа к данным.

Для поиска файлов можно использовать три различных типа свойств.

Встроенные свойства файла. Встроенными называют уже существующие свойства (например, автор, заголовок и тема), для которых можно ввести значения. Например, можно ввести имя автора, позволяющее выполнять поиск всех баз данных, созданных определенным автором.

Настраиваемые свойства файла. Создаются пользователем и могут включать любые сведения. Например, можно создать свойство базы данных, хранящее сведения о номере ее версии.

Автоматически обновляемые свойства файла. К таким свойствам относятся размер базы данных, даты ее создания и последнего изменения. Например, можно организовать поиск всех баз данных, созданных после 3 марта 1998 года или измененных в последний раз вчера.


 Наложение ограничений или условий на данные, вводимые в таблицы

Наложение ограничений или условий на данные, вводимые в таблицы

В Microsoft Access существует множество способов управления вводом данных в поля таблицы.

В первую очередь необходимо убедиться, что поле имеет подходящий тип данных. Например, в поля типа «Дата/время» разрешен ввод данных только соответствующего формата даты и времени. Если в настоящий момент для таких данных используются текстовые поля, то, возможно, имеет смысл изменить тип поля на «Дата/время».

Существуют также дополнительные свойства, которые можно устанавливать для полей в целях обеспечения дальнейшего управления значениями, которые могут быть введены в поле.

  • В числовых полях для управления типом и диапазоном вводимых значений существует множество размеров полей.

  • Для текстовых полей можно установить максимальное число символов, которое может быть введено в поле.

  • Для всех полей, кроме полей счетчика (генерирующих свои собственные данные), можно сделать ввод данных обязательным.

  • Для текстовых, числовых полей и полей даты/времени можно определить маску ввода, предоставляющую пустые позиции для заполнения, а также указать, какие значения вводятся в эти позиции.

  • Во всех полях, кроме полей объектов OLE, можно предотвратить ввод в поле или в комбинацию полей повторяющихся значений.

Также можно определить два типа условий на значение: условие на значение поля и условие на значение записи. Определение условий на значения позволяет установить условие, ограничивающее круг принимаемых данных.

  • При помощи условий на значение поля, когда пользователь из него вышел, осуществляется проверка введенных значений. Например, в качестве условия на значение для числового поля можно указать выражение ">=10 And <=100", разрешающее ввод значений только от 10 до 100.

  • Условие на значение записи вступает в силу при сохранении всей записи. В отличие от условий на значение поля, в условиях на значение записи допускаются ссылки на другие поля. Это позволяет использовать такие условия для сравнения значений, введенных в разные поля таблицы. Например, в качестве условия на значение для таблицы «Заказы» можно указать выражение: "[КонечнаяДата]<=[ДатаЗаказа]+30". Это гарантирует, что дата, введенная в поле «КонечнаяДата», будет отличаться от даты в поле «ДатаЗаказа» не более чем на 30 дней.

При нарушении условий на значение обоих типов на экран выводится определяемое пользователем сообщение о том, как правильно ввести данные.

Возврат в раздел Проверка условий на значения и ограничение ввода данных в таблицах


 Проверка условий на значения, вводимые в поля, записи или элементы управления

Проверка условий на значения, вводимые в поля, записи или элементы управления

Чтобы поверить значение, вводимое в поле, запись или элемент управления, создайте условие на значение, а затем укажите текст, который должен быть отображен на экране, если введенные данные не соответствуют данному условию. Например, можно задать условие, что во всех вводящихся датах должен быть указан 1998 год.

В Microsoft Access существует несколько способов определения условий на значение. Данный раздел содержит справочные сведения по следующим вопросам.

Условия на значение поля

Условия на значение записи

Условия на значение элемента управления

Проверка условий на значения на уровне форм при помощи макросов или Visual Basic for Applications

Условия на значение поля

Определение условия на значение поля позволяет обеспечить ввод верных данных в поле. Значение, введенное в поле, проверяется после выхода пользователя из данного поля. Если введенное значение не соответствует заданному условию, на экран выводится сообщение, определенное пользователем. Условие на значение поля определяется в таблице.

Возврат в начало

Условия на значение записи

Условия на значение записи проверяются при сохранении записи. В отличие от условий на значение поля, в условиях на значение записи допускаются ссылки на другие поля. Это позволяет использовать такие условия для сравнения значений различных полей таблицы. Условие на значение записи определяется в таблице.

Возврат в начало

Условия на значение элемента управления

Условие на значение можно также определить в элементе управления в форме. В большинстве случаев лучше определить условие на значение поля в таблице, так как любое условие на значение поля автоматически применяется и для элемента управления, основанного на этом поле (при условии, что элементы управления создаются после определения условий на значения в режиме конструктора таблиц). Если же элемент управления не присоединен или не основан на данных из связанной (внешней) таблицы, условие на значение должно быть определено в элементе управления. Также условие на значение необходимо определить в элементе управления, если оно ссылается на поля или другие формы, или если оно содержит статистические функции по подмножеству, статистические функции, функции, определенные пользователем или функции CurrentUser и Eval.

Возврат в начало

Проверка условий на значения на уровне форм при помощи макросов или Visual Basic для приложений

Также бывают ситуации, когда для осуществления более сложной проверки вместе с формами необходимо использовать макросы или программу Visual Basic для приложений (VBA). Например, при некоторых обстоятельствах может потребоваться обойти заданное условие на значение или сравнить значения из разных таблиц.

Возврат в начало


Общие сведения о реестре Windows

Microsoft Access сохраняет необходимые для его инициализации сведения в реестре Windows. Реестр Windows представляет собой централизованную базу данных, используемую для установки и определения конфигурации программ и устройств, работающих в среде Windows. Реестр является аналогом файлов инициализации .ini, используемых в Windows версий 3.x: каждый раздел реестра аналогичен заключенному в квадратные скобки заголовку раздела в файле .ini, а параметры в разделе реестра аналогичны элементам раздела с соответствующим заголовком.


 Использование инструкций SQL в запросах, формах, отчетах, макросах и модулях

Использование инструкций SQL в запросах, формах, отчетах, макросах и модулях

Язык SQL (Structured Query Language) используется при создании запросов, а также для обновления и управления реляционными базами данных, такими как базы данных Microsoft Access. Когда пользователь создает запрос в режиме конструктора запроса, Microsoft Access автоматически создает эквивалентную инструкцию SQL. Пользователь имеет возможность просматривать и изменять инструкции SQL в режиме SQL. После внесения изменений в запрос в режиме SQL этот запрос может отображаться не так, как отображался ранее в режиме конструктора.

Некоторые запросы не могут быть определены в бланке запроса. Это запросы к серверу, управляющие запросы и запросы на объединение. Для создания таких запросов требуется ввести инструкцию SQL непосредственно в окно запроса в режиме SQL.

Инструкции SQL могут быть использованы в Microsoft Access в тех ситуациях, когда требуется указать имя таблицы, запроса или поля. Иногда автоматически создается инструкция SQL. Например, при использовании мастера для создания формы или отчета, получающего данные из нескольких таблиц, автоматически создается инструкция SQL, которая становится значением свойства Источник строк (RowSource) формы или отчета. При создании списка или поля со списком с помощью мастера также создается инструкция SQL, которая становится значением свойства Источник строк (RowSource) списка или поля со списком. Кроме того, с помощью инструкций SQL определяются подчиненные запросы в бланке запроса, аргументы макрокоманды «ЗапускЗапросаSQL» (RunSQL) и конструкции в программах.

Возврат в раздел Использование инструкций SQL в запросах, формах, отчетах, макросах и модулях


Работа с MDE-файлами

Предполагаемые действия

Сведения о MDE-файлах

Сохранение базы данных Microsoft Access в виде MDE-файла

Использование других средств защиты базы данных Access, сохраненной как MDE-файл

Сохранение реплицированной базы данных Access как MDE-файла

Сохранение как MDE-файла базы данных Access, содержащей ссылки на другую базу данных


 Добавление записей с полями типа «Счетчик»

Добавление записей с полями типа «Счетчик»

От заданной структуры запроса на добавление записей зависит, будут ли автоматически добавлены новые значения счетчика, или будут использованы значения исходной таблицы.

  • Для автоматического добавления значений счетчика не следует при создании запроса перетаскивать поле счетчика в бланк запроса.

    В этом случае при добавлении записей значения в поле счетчика вставляются автоматически. Первая добавленная запись получит значение на единицу большее, чем имела последняя ранее введенная в поле счетчика запись (даже если запись, содержащая в поле счетчика максимальное значение, была удалена).

  • Для сохранения в поле счетчика значений из исходной таблицы перетащите при создании запроса поле счетчика в бланк запроса.

    Если поле счетчика в таблице, в которую добавляются записи, является ключевым, а исходная таблица содержит в поле счетчика значения, совпадающие со значениями в таблице-получателе, рекомендуется использовать первый способ.


 Запросы с автоподстановкой значений, обеспечивающие автоматический ввод данных

Запросы с автоподстановкой значений, обеспечивающие автоматический ввод данных

Можно разработать запрос по нескольким таблицам для автоматического заполнения определенных полей новой записи. При вводе значения в поле в запросе, участвующее в объединении, а также в форму, запрос или страницу доступа к данным, созданные на основе запроса, Microsoft Access автоматически находит и заполняет существующие данные, связанные с этим значением. Например, если значение объединенного поля таблиц «Клиенты» и «Заказы» известно (обычно это идентификатор клиента, такой как «КодКлиента»), то можно ввести только код клиента, в все остальные данные о клиенте будут введены автоматически. Если соответствующие данные не будут найдены, то при выходе из данной записи на экран будет выведено сообщение об ошибке.

Введите значение в поле объединения

Остальные данные загружаются автоматически

Для обеспечения автоподстановки значений должны выполняться следующие требования.

  • Запрос должен быть основан на нескольких таблицах, а таблицы должны быть связаны отношением «один-ко-многим». (Целостность данных не обязательна.)

  • Объединенное поле, находящееся на стороне «один» данного отношения, должно иметь уникальный индекс. Уникальный индекс означает, что поле должно быть ключевым или свойство Индексы (Indexed) в режиме конструктора таблицы должно получить значение Да (Совпадения не допускаются).

  • Объединенное поле, добавленное в бланк запроса, изначально должно находиться на стороне «многие» отношения «один-ко-многим». (Другими словами, оно должно быть внешним ключом для данной таблицы.) Для выполнения автоподстановки значений это поле не может быть ключом, а также свойство Индексы (Indexed) для него не могут иметь значение Да (Совпадения не допускаются). Например, в запросе, содержащем таблицы «Клиенты» и «Заказы», переместите поле «КодКлиента» в бланк запроса из таблицы «Заказы», а не из таблицы «Клиенты».

  • Значение, вводимое в объединенное поле на стороне «многие», уже должно существовать в объединенном поле на стороне «один».

Если значение объединенного поля на стороне «многие» было добавлено или изменено в записи, то поиск и отображение на экране соответствующих значений таблицы на стороне «один» осуществляется автоматически.

Объединенное поле на стороне «многие» всегда можно обновить, в то время как объединенное поле на стороне «один» можно обновлять, только если при определении связей между таблицами было установлено каскадное обновление. В любом случае, при обновлении данных все значения итогов и выражений в запросе, зависящие от изменяемых данных, пересчитываются автоматически.


 Особенности языков с письмом справа налево

About right-to-left language features

Сведения, относящиеся к конкретным языкам

To enable the right-to-left features in Microsoft Access 2000, you must be running a 32-bit Microsoft Windows operating system that has right-to-left support — for example, the Arabic version of Microsoft Windows 95. Learn about system or special requirements for right-to-left languages.

When languages such as Arabic, Farsi, Hebrew, and Urdu are enabled for editing, you have several features available to you to make working in a right-to-left or bidirectional environment easier.

Дополнительные сведения

Двунаправленные шрифты

Проверка орфографии в двунаправленных текстах

Использование двунаправленного текста в выражениях

Поддержка письма справа налево и совместимость

Настройка значений по умолчанию для поддержки письма справа налево

Календари

Порядок сортировки при использовании текста с направлением справа налево

Связывание, импорт и экспорт таблиц, содержащих текст справа налево, в текстовые файлы

Поддержка кодовых страниц и разметки текста для HTML-файлов, использующих письмо справа налево

Изменение направления текста для таблиц

Изменение направления текста для запросов

Использование средств, поддерживающих письмо справа налево, в формах и отчетах

Настройка свойств поддержки письма справа налево для элементов управления

Преобразование отчетов, сохраненных в виде текстовых файлов, в формат ANSI

Работа со страницами доступа к данным, использующими текст с направлением справа налево

Создание макросов в приложениях, поддерживающих письмо справа налево

Создание модулей в приложениях, поддерживающих письмо справа налево


 Примеры работы с пустыми значениями с помощью вычисляемых полей

Примеры работы с пустыми значениями с помощью вычисляемых полей

Выражение вводится в ячейку Поле бланка запроса. Поля, ссылки на которые содержатся в выражении, находятся в таблицах или запросах текущего запроса.

Выражение | Описание
ТекущаяСтрана: IIf(IsNull([Страна]), " ", [Страна]) | Использует функции IIf и IsNull для отображения пустой строки в поле «ТекущаяСтрана», если значение поля «Страна» имеет значение Null; в обратном случае отображается содержимое поля «Страна».
ВремяДоставки: IIf(IsNull([ДатаЗаказа] - [ДатаОтгрузки]), "Проверьте отсутствующую дату ", [ДатаЗаказа] - [ДатаОтгрузки]) | Использует функции IIf и IsNull для отображения в поле «ВремяДоставки» сообщения «Проверьте пропущенную дату», если одно из полей «ДатаЗаказа» или «ДатаОтгрузки» имеет значение Null; в противном случае отображается разность значений полей.
ПродажиЗаПолгода: Nz([Продажи1кв],0) + Nz([Продажи2кв],0) | Отображает в поле «ПродажиЗаПолгода» суммы значений полей по продажам за первый и второй кварталы, используя функцию Nz для предварительного преобразования значений Null в нули.
IIf(IsNull([Цена]),0,[Цена]) | Преобразует значения Null в поле «Цена» в нули (0).

Примечание. Если в выражении используются арифметические операторы (+, -, *, /), а одного из полей имеет значение Null, результатом всего выражения тоже будет значение Null. Если какие-либо записи в одном из использованных в выражении полей имеют значение Null, то это значение Null можно преобразовать в нуль при помощи функции Nz, как показано в приведенной выше таблице. Для получения дополнительных сведений о функции Nz нажмите кнопку [image] .


 Пример подчиненного запроса в вычисляемом поле

Пример подчиненного запроса в вычисляемом поле

Выражение вводится в ячейку Поле бланка запроса. Поля, ссылки на которые содержатся в выражении, находятся в таблицах или запросах текущего запроса.

Выражение | Описание
Cat: (SELECT [Категория] FROM [Типы] WHERE [Товары].[КодТипа]=[Типы].[КодТипа]) | Отображает название категории товаров, если код типа из таблицы «Типы» совпадает с кодом типа из таблицы «Товары».


 Примеры использования статистических функций по подмножествам или статистических функций SQL в вычисляемых полях

Примеры использования статистических функций по подмножествам или статистических функций SQL в вычисляемых полях

Выражение вводится в ячейку Поле бланка запроса. Поля, ссылки на которые содержатся в выражении, находятся в таблицах или запросах текущего запроса.

Выражение | Описание
Count(*) | Использует функцию Count для пересчета числа записей в запросе, включая записи, содержащие поля со значением Null (пустые поля).
ДоляФрахта: Sum([Фрахт])/Sum([ОбщийИтог]) *100 Отображает в поле «ДоляФрахта» процент на оплату фрахта для каждого итога. Для этого сумма всех значений поля «Фрахт» делится на сумму всех значений поля «ОбщийИтог». (В данном примере использована функция Sum.)

На экране должна быть отображена строка Групповая операция в бланке запроса, а в ячейке Групповая операция для данного поля должно быть установлено значение Выражение.

Если для данного поля в ячейке свойства Формат поля (Format) установлено значение Процентный, не включайте выражение *100.
СредняяСкидка: DAvg("[Скидки]", "[Заказы]") | Использует функцию DAvg для отображения в поле «СредняяСкидка» значения средней скидки, предоставляемой по всем заказам, объединенным в итоговый запрос.

Для получения дополнительных сведений об использовании статистических функций по подмножеству нажмите кнопку [image] .


 Примеры выполнения арифметических операций в вычисляемых полях

Примеры выполнения арифметических операций в вычисляемых полях

Выражение вводится в ячейку Поле бланка запроса. Поля, ссылки на которые содержатся в выражении, находятся в таблицах или запросах текущего запроса.

Выражение | Описание
ПервоначальныйФрахт: [Фрахт] * 1.1 | Отображает в поле «ПервоначальныйФрахт» стоимость фрахта плюс 10 процентов.
ОбъемЗаказа: [Количество] * [Цена] | Отображает в поле «ОбъемЗаказа» произведение значений полей «Количество» и «Цена».
ВремяДоставки: [ДатаЗаказа] - [ДатаОтгрузки] | Отображает в поле «ВремяДоставки» разницу между значениями полей «ДатаЗаказа» и «ДатаОтгрузки».
ВсегоВНаличии: [ТоварыНаСкладе]+[ЗаказаныеТовары] | Отображает в поле «ВсегоВНаличии» сумму значений полей «ТоварыНаСкладе» и «ЗаказанныеТовары».
ДоляФрахта: Sum([Фрахт])/Sum([ОбщийИтог]) *100 Отображает в поле «ДоляФрахта» процент на оплату фрахта для каждого итога. Для этого сумма всех значений поля «Фрахт» делится на сумму всех значений поля «ОбщийИтог». (В данном примере использована функция Sum.)

На экране должна быть отображена строка Групповая операция в бланке запроса, а в ячейке Групповая операция для данного поля должно быть установлено значение Выражение.

Если для данного поля в ячейке свойства Формат поля (Format) установлено значение Процентный, не включайте выражение *100.

Примечание. Если в выражении используются арифметические операторы (+, -, *, /), а одно из полей имеет значение Null, результатом всего выражения тоже будет значение Null. Если какие-либо записи в одном из использованных в выражении полей могут содержать значение Null, то это значение Null можно преобразовать в нулm при помощи функции Nz; например:

Nz([ТоварыНаСкладе],0)+Nz([ЗаказанныеТовары],0)

Для получения дополнительных сведений о функции Nz нажмите кнопку [image] .


 Примеры использования функций даты в вычисляемых полях

Примеры использования функций даты в вычисляемых полях

Выражение вводится в ячейку Поле бланка запроса. Поля, ссылки на которые содержатся в выражении, находятся в таблицах или запросах текущего запроса.

Выражение | Описание
ВремяДоставки: DateDiff("d", [ДатаЗаказа], [ДатаОтгрузки]) | Использует функцию DateDiff для отображения в поле «ВремяДоставки» числа дней между датой заказа и датой отгрузки.
ГодНайма: DatePart("yyyy",[ДатаНайма]) | Использует функцию DatePart для отображения в поле «ГодНайма» года найма сотрудника.
Date( )- 30 | Использует функцию Date для отображения даты, предшествующей текущей на 30 дней.


 Примеры использования текстовых значений в вычисляемых полях

Примеры использования текстовых значений в вычисляемых полях

Выражение вводится в ячейку Поле бланка запроса. Поля, ссылки на которые содержатся в выражении, находятся в таблицах или запросах текущего запроса.

Выражение Описание

ПолноеИмя: [Имя] & " " & [Фамилия] | Отображает значения полей «Имя» и «Фамилия», разделенные пробелом в поле «Полное имя».
Адрес2: [Город] & " " & [Район] & " " & [Индекс] | Отображает значения полей «Город», «Район» и «Индекс», разделенные пробелами в поле «Адрес2».
ПерваяБукваТовара: Left([НазваниеТовара], 1) | Использует функцию Left для отображения в поле «ПерваяБукваТовара» первого символа значения поля «НазваниеТовара».
КодТипа: Right([КодПродукта], 2) | Использует функцию Right для отображения в поле «КодТипа» последних двух символов значения поля «КодПродукта».
КодРайона: Mid([Телефон],2,3) | Использует функцию Mid для отображения в поле «КодРайона» трех символов, начиная со второго, значения поля «Телефон».


 Color Builder

Color Builder

The Color Builder is a Microsoft Access tool used to select colors from the palette or to create custom colors that you can save and use in forms and reports.

To run this builder, click the Build button [image] next to the appropriate property in the property sheet.


Примеры сложных оптимизируемых выражений

В приведенных ниже примерах подразумевается, что поля «Фамилия» и «ДатаНайма» были проиндексированы, а поля «Отчество» или «Имя» нет. Следующая таблица содержит список комбинаций простых выражений и соответствующую степень оптимизации сложного выражения, получающегося результате.

Оптимизируемое выражение | Оператор | Оптимизируемое выражение | Результат
[Фамилия]="Иванов" | And | [ДатаНайма]<#11/12/90# | Оптимизируемое с помощью технологии Rushmore
[Фамилия]="Иванов" | Or | [ДатаНайма]<#11/12/90# | Оптимизируемое с помощью технологии Rushmore

Оптимизируемое выражение | Оператор | Неоптимизируемое выражение | Результат
[Фамилия]="Иванов" | And | [Отчество]="C" | Частично оптимизируемое (без использования технологии Rushmore)
[Фамилия]="Иванов" | Or | [Отчество]="C" | Неоптимизируемое

Неоптимизируемое выражение | Оператор | Неоптимизируемое выражение | Результат
[Имя]="Рома" | And | [Отчество]="C" | Частично оптимизируемое (без использования технологии Rushmore)
[Имя]="Рома" | Or | [Отчество]="C" | Неоптимизируемое


Особенности разработки или изменения запросов в сетевой среде

Если вы откроете запрос и начнете изменять его структуру, а в это время другой пользователь изменит структуру запроса до сохранения внесенных вами изменений, то Microsoft Access выведет на экран сообщение о том, что структура запроса была изменена. В этом случае имеется выбор, заменить новую версию своей версией или сохранить свою версию под другим именем. Если в то время, пока вы меняете структуру запроса, другие пользователи используют этот запрос для просмотра данных, они не увидят изменения структуры запроса, пока не закроют и снова не откроют запрос.


 Выбор параметров в диалоговом окне «Параметры запуска»

Выбор параметров в диалоговом окне «Параметры запуска»

  • Параметры запуска применяются к текущей базе данных Microsoft Access или проекту Microsoft Access.

  • При выборе параметра в диалоговом окне Параметры запуска автоматически задается значение свойства базы данных Access или проекта Access, связанного с этим параметром. Для просмотра списка этих свойств нажмите кнопку [image] .

  • Свойства, соответствующие параметрам запуска, не подавляют настройки свойств конкретной панели инструментов, строки меню, контекстного меню, формы или отчета. Например, параметры Строка меню и Контекстное меню в диалоговом окне Параметры запуска не переопределяют значения свойств для конкретных форм или отчетов, имеющих пользовательскую строку меню или контекстное меню. Таким образом, при открытии формы или отчета Microsoft Access отображает пользовательскую строку меню, присоединенную к этой форме или отчету, а не глобальную строку меню, указанную в диалоговом окне Параметры запуска.

  • Диалоговое окно Параметры запуска можно использовать вместо или в дополнение к макросу AutoExec. Макрос AutoExec запускается после вступления в силу параметров запуска, поэтому в макрос AutoExec не следует включать макрокоманды, которые могут изменить параметры запуска. Например, если в поле Вывод формы/страницы диалогового окна Параметры запуска указана форма, а в макросе AutoExec вызывается макрокоманда ОткрытьФорму, то сначала будет открыта форма, указанная в диалоговом окне Параметры запуска, а сразу за ней форма, указанная в макрокоманде ОткрытьФорму.

  • В базах данных Access, если для базы данных определена защита на уровне пользователя, то можно запретить пользователям изменять настройки в диалоговом окне Параметры запуска. Для этого следует обеспечить невозможность получения пользователями прав администратора на доступ к базе данных. Для получения дополнительных сведений нажмите кнопку [image] .

  • Настройки параметров запуска можно обойти, удерживая нажатой клавишу SHIFT при открытии базы данных.


 Convert Access Basic Code to Visual Basic

Convert Access Basic Code to Visual Basic

In Microsoft Access 95, Visual Basic for Applications replaced Access Basic, which was used in versions 1.x and 2.0 of Microsoft Access. In most respects, Visual Basic is identical to Access Basic, and Microsoft Access makes most necessary conversions to your code automatically when you convert your database.

However, the conversion process makes some changes to your code that you need to be aware of, and there are some additional changes that you must make yourself in order for your application to run successfully in Microsoft Access 2000.

Note The /runtime command-line switch is not available in the stand-alone or Office Professional Edition versions of Microsoft Access 2000. However, the /runtime command-line switch is available in the Office Developer Edition version of Microsoft Access 2000.

Calling the Windows Application Programming Interface

If your existing version 1.x or 2.0 Access Basic code makes calls to the Windows application programming interface (API), you may need to modify these calls when you convert your database. Versions 1.x and 2.0 of Microsoft Access are 16-bit applications and run on 16-bit versions of Windows. Microsoft Access 2000 is a 32-bit application and runs on 32-bit versions of Windows - Windows 95 and the Windows NT platform.

Check any Declare statements to ensure that they refer to the correct 32-bit dynamic-link libraries (DLLs). For example, 32-bit versions of Windows include User32.dll; in earlier versions of Windows, this DLL is called User.dll. For more information, see Convert Code That Calls a DLL.

The names of some functions in the Windows API have changed. Additionally, functions in the 32-bit Windows API are case-sensitive. For a complete reference, see the Microsoft Win32 Software Development Kit.

Some Properties and Optional Arguments Are Strictly Typed

Certain properties that returned Variant values in previous versions of Microsoft Access now return strings. Code that includes these properties will now run faster; however, when you convert a database from a previous version of Microsoft Access to Microsoft Access 2000, you should verify that no errors are introduced by these new return values.

In addition, some optional arguments which were of type Variant in previous versions of Microsoft Access are now strictly typed. Affected methods, properties, and functions include the GoToPage method of a Form object, the OpenCurrentDatabase, Echo, Quit, CreateForm, CreateReport, CreateControl, and CreateReportControl methods of the Application object, the Column property of a combo box or list box, and the domain aggregate functions. If your code includes any of these elements, you may want to verify that no errors are introduced when you convert your database.

To check for errors, first compile all code in the database. Next check for run-time errors when you run your code. The errors most likely to occur are a "Type mismatch" error, or an "Invalid use of Null" error.

You should also check for silent errors that may be introduced into your code when you convert a database. For example, the RecordSource property of a control previously returned a Variant value, but now returns a string. A string can't contain a Null value, although a Variant can. Code in a converted database that checks whether the value of the RecordSource property is Null will no longer run properly, because the value of the RecordSource property will never be Null. The following procedure is an example of code that checks whether the value of the RecordSource property of a text box is Null.

Private Sub Form_Load()
    If IsNull(Me.RecordSource) Then
        Me.Recordsource = "Employees"
    End If
End Sub

In Microsoft Access 2000, the IsNull function will never return True for the value of the RecordSource property. If the RecordSource property has not already been set in the previous example, its value is an empty string, the value returned by the IsNull function is False, and the procedure will never enter the If...Then construct to set the RecordSource property.

To correct the code in the previous example, use the Len function to check the length of the string returned by the RecordSource property to determine whether it is an empty string. The following line corrects the code in the previous example:

If Len(Me.RecordSource) = 0 Then
    ' Remainder of procedure here.

Changes to Modules

In versions 1.x and 2.0 of Microsoft Access, modules containing general procedures not specific to any form or report module are called global modules. In Microsoft Access 2000, these are called standard modules.

Microsoft Access 2000 includes class modules, which you can use to create custom objects. Any public procedures in a class module become methods and properties of a custom object when you create a new instance of the class. Class modules exist both independently and in association with forms and reports. For more information about class modules, see Program with Class Modules.

The CurrentDb Function Versus DBEngine(0)(0)

Use the CurrentDb method instead of DBEngine(0)(0) to return a Connection object variable that points to the current database. The CurrentDb function creates another instance of the current database, whereas DBEngine(0)(0) refers to the open copy of the current database. Using DBEngine(0)(0) limits your ability to use more than one variable of type Database that refers to the current database.

The DBEngine(0)(0) syntax is still supported, so Microsoft Access doesn't change your code during the conversion process. However, you should consider making this modification to your code in order to avoid possible conflicts in a multiuser environment.

The CurDir Function

The CurDir function behaves differently than it does in version 1.x or 2.0 due to the way that applications interact with Windows 95. Since each application has its own current folder, setting the current folder in Windows 98 by double-clicking an icon doesn't affect the current folder in Microsoft Access. The CurDir function in Microsoft Access 2000 always returns the current path.

Assigning an OLE Object to a Variable

If you manipulate OLE objects or other binary data in your code, you should use an array of bytes to store binary data. In versions 1.x and 2.0 of Microsoft Access, you assign OLE objects, or other binary data less than 64K in size, to string variables when you need to manipulate the objects or data in code. You also assign the data returned by the GetChunk method to string variables. However, Visual Basic supplies a Byte data type and byte functions such as LeftB and RightB. In Microsoft Access 2000, you should store binary data in an array of bytes instead of a string variable, and you should use the byte functions to manipulate that data.

Declare DDE Channels as Variant or Long

If you use the DDEInitiate function to open a DDE channel, you can declare the variable that stores the channel number, which is a Long value, as either a Variant or Long value. In versions 1.x and 2.0 of Microsoft Access, the channel number is an Integer value, so you must modify any Declaration statements in your code that create variables of type Integer to store the channel number.

String Conversion Fails If the String Contains a Percent Sign (%)

You can't assign a string containing a percent sign to a variable or a field that has a numeric data type, as in the following example:

Dim intX As Double
    intX = "10"                ' This works.
    intX = "10%"            ' This returns an error.

The hWnd Property

If you use the hWnd property in your code to pass a window handle of a form or a report to a Windows routine, you should pass the value directly to the routine. You shouldn't assign the value of this property to a variable. For example:

If Not IsZoomed(Screen.ActiveForm.hWnd) Then
    DoCmd.Maximize
EndIf

In versions 1.x and 2.0 of Microsoft Access, the hWnd property of a form or report is an Integer value. In Microsoft Access 2000, the hWnd property is a Long value, which you must change your code to accept.

DAO Property Objects vs. Microsoft Access Property Objects

You can't use an object variable in your code to refer to a Category property. The Category property is no longer supported for Form, Report, and Control objects.

The Parent Property

In Microsoft Access 2000, if you use the Parent property of a control in code or in an expression on a form or report, it typically returns the Form or Report object that contains the control. For example, if CategoryID is a text box on the Categories form, the code Forms!Categories!CategoryID.Parent returns a reference to the Categories form. There are two exceptions: for attached labels, the Parent property now returns the control the label is attached to; and for controls in an option group, it now returns the option group control.

Calling Code in Microsoft Access Wizards

If code in your version 1.x or 2.0 applications calls procedures in Microsoft Access wizards, after you convert your application, you must establish a reference from your application to the wizard database that contains the procedures that you call. For more information on establishing references, see Set References to Type Libraries.

In Microsoft Access version 2.0, there's no distinction between wizards and libraries, so their public code is always available to the current database. In Microsoft Access 2000, wizards and other add-ins are no longer treated as libraries. In addition, because wizards may change a great deal from one version of Microsoft Access to the next, you may need to rewrite some of your code to adapt to the changes after upgrading to a new version of Microsoft Access.

For code that's no longer provided in the Microsoft Access wizards, such as the AutoDialer, functionality has been added to Utility.mda, a special library database that's provided with Microsoft Access. A reference to this library is automatically added when you convert a database to Microsoft Access 2000.

Setting a Reference to a Microsoft Access Database

You cannot set a reference to a database created with a prior version of Microsoft Access from Microsoft Access 2000. You must convert the database to a Microsoft Access 2000 (version 9.0) database in order to set a reference to it.

Handling Automation Errors

In versions 1.x and 2.0 of Microsoft Access, COM components that support Automation (formerly called OLE Automation servers) return a single error. Visual Basic now enables a COM component to return error information specific to the error that has occurred. If your existing databases include code to handle a single Automation error, you may have to update that code to handle the more-specific errors that will now be returned.

Microsoft Access Errors and the Error Function

In Microsoft Access 2000, you use the properties of the Err object to obtain information about errors.

When a Microsoft Access error occurs, you can get the error number and the error description by using the Err object's Number and Description properties, as in the following example:

Debug.Print Err.Number, Err.Description

To return information about Microsoft Access, Visual Basic, or DAO errors, use the AccessError method. With the AccessError method, you can obtain error information regardless of whether the error has actually occurred.

Exclamation Point vs. Dot Operator When Referencing DAO Fields

If you used the . (dot) operator syntax when referring to a Field object of a Recordset object in applications created in versions 1.x or 2.0 of Microsoft Access, you must modify those references to use the ! (exclamation point) operator syntax. Or, if you want to continue using the . (dot) operator syntax, you must establish a reference to the Microsoft DAO 2.5/3.5 compatibility library in the References dialog box, available by clicking References on the Tools menu while in module Design view.

Converted ActiveX Controls

If your application contains ActiveX controls (formerly called OLE, or custom, controls) that were set up in version 2.0, you may need to insert the ByVal keyword in front of arguments that are passed to event procedures called from ActiveX control events, as in the following example:

Sub ChangeMonth_Click(ByVal intCurrentYear As Integer)

In order to determine whether an argument needs to be passed by value, click Compile All Modules on the Debug menu in module Design view. If you receive the following error message, you need to insert the ByVal keyword in front of the argument: "Event procedure declaration doesn't match description of event having the same name."

Because type checking of arguments is improved in Microsoft Access 2000, new event procedures created for ActiveX controls automatically have the ByVal keyword inserted when it's needed.

Calling Procedures in Form and Report Modules

In versions 1.x and 2.0 of Microsoft Access, you couldn't call a procedure defined in a form or report from anywhere but within that form or report module. In Microsoft Access 2000, you can call a public procedure in a form or report module from any procedure in the current database. You must qualify the procedure with the class name of the form or report module. For instance, to call a procedure named DisplayMessage that's defined in the module of the Orders form, you would use the following syntax:

Form_Orders.DisplayMessage

It's better to place procedures that you will call from outside a form or report in a standard module if possible, rather than in a form or report module.

Referring to Forms, Reports, and Controls in the Debug Window

When you're testing and debugging code, you must fully qualify all references to objects that you use in the Debug window, unless you've suspended execution in a form or report module. This means that in the Immediate pane of the Debug window, you must use the code Forms!Categories!CategoryID to refer to the CategoryID control on the Categories form in Form view, instead of just CategoryID, even when the Categories form is the current form.

Also, you can't use the Me keyword in the Debug window to refer to an object on a form or report when that form or report is in Design view unless you've suspended the execution of code in the form or report.

Converting Forms and Reports That Contain ActiveX Controls

When you convert a Microsoft Access 2.0 database for use in Microsoft Access 2000 (version 9.0), ActiveX controls on forms and reports may not be converted automatically. Microsoft Access 2.0 supports 16-bit OLE controls, while version 9.0 supports only 32-bit ActiveX controls.

If you're converting a database that contains a form or report that has a 16-bit version of an ActiveX control, and the 32-bit version doesn't yet exist on your system, Microsoft Access will generate an error message. You must obtain a 32-bit version of each ActiveX control that you wish to update and register it in the system registry. You should then save the form or report in the converted database and close and reopen the database.

Enabling a Database Created with a Previous Version of Microsoft Access

When you enable a large database created with version 1.x or 2.0 of Microsoft Access, but don't convert it to Microsoft Access 2000, you may need to increase the maximum buffer size beyond the default. To change this setting, open the system registry and navigate to the \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\3.0\Engines\Jet 2.x subkey. Create a new subkey named ISAM, and within this subkey create a new DWORD value called MaxBufferSize. Set this value to 1024, decimal base. For more information about editing the registry, see your Microsoft Windows documentation.

Renaming a Database

When you rename a database, compiled code in the database will be decompiled. To recompile code and save all modules in a compiled state, open the database, open a module in Design view, and click Compile And Save All Modules on the Debug menu.

Time Values in Query Criteria

When you convert a version 1.x or 2.0 database to Microsoft Access 2000, queries that contain criteria based on specific time values in Date/Time fields may return different results than they do in earlier versions. This behavior may also occur if you link tables from a version 1.x or 2.0 database to a Microsoft Access 2000 database. Only the time portion of Date/Time fields is affected.

Visual Basic Functions That Are Not Supported in Expressions

The following six Visual Basic functions can't be used in expressions outside a user-defined Sub or Function procedure:

EOF | Loc
FileAttr | LOF
FreeFile | Seek

If you need to use one of these functions in an expression outside a procedure, you can call the function from within a user-defined function that you call from the expression.

Line Numbers in Visual Basic Procedures

You can't assign line numbers greater than 65,529 to statements in your Visual Basic procedures. If your converted version 1.x or 2.0 Microsoft Access application contains line numbers greater than 65,529, you must modify them to fall within the acceptable range.

The Next Procedure and Previous Procedure Buttons

The Next Procedure and Previous Procedure buttons that are on the Module toolbar in versions 1.x and 2.0 aren't available in Microsoft Access 2000. If you convert a version 1.x or 2.0 database with a custom toolbar that contains one of these buttons, you won't receive an error, but the buttons will have no effect when clicked.

"Out of Memory" Error When Converting Large Databases

Visual Basic for Applications has a limit of 1,082 modules per database, and forms and reports each contain one module. To resolve this problem, reduce the number of objects in your database or consider dividing your application into multiple databases. If you have modules with a large amount of code, consider using library databases to store the code.

Formatting Null Values and Zero-Length Strings

In version 2.0 of Microsoft Access, you can use the Format function to return one value for a zero-length string and another for a Null value, and you can similarly use the Format property to automatically format fields in table Datasheet view or controls on a form or report. For example, you can use a format expression such as the following with the Format function to return the appropriate string value from code:

Dim var As Variant, strX As String
' Assign some value to strX and pass to Format function.
var = Format(strX, "@;ZLS;Null")

In Microsoft Access 2000, you must test separately for the Null value case and then return the appropriate value based on the result. For example, you could use the IIf function in an expression with the Format function, such as the following:

var = IIf(IsNull(strX),"Null", Format(strX, "@;ZLS"))

This change applies only when you use the Format function to format a value depending on whether it's a zero-length string or a Null value. Other format expressions used with the Format function continue to work as they do in previous versions.

If you convert a database from version 2.0 of Microsoft Access to Microsoft Access 2000, you'll need to change any code or property settings to use these methods. You can't use the Format property in table Datasheet view to distinguish between Null values and zero-length strings.


 Convert Library Databases and Add-Ins

Convert Library Databases and Add-Ins

If you use add-ins or library databases created in previous versions of Microsoft Access, you must convert them to Microsoft Access 2000 (version 9.0) format before you can use them with applications created in Access 2000.

You may also need to make some changes to the objects, macros, and procedures in your library databases and add-ins in order to make sure that they function properly.

For more information about library databases, see Chapter 10, "The Windows API and Other Dynamic-Link Libraries," in the Microsoft Office 2000/Visual Basic Programmer's Guide or see Set References to Type Libraries. For information about how to obtain the Microsoft Office 2000/Visual Basic Programmer's Guide, click [image] .

Referencing and Loading Library Databases

Before using a library in Microsoft Access 2000, you must establish a reference to the library database from each of your applications that uses it. You establish such a reference by clicking References on the Tools menu while in module Design view. A referenced database must be in Microsoft Access 2000 format.

A library database should contain only Visual Basic code, which you can call from any application that maintains a reference to that library. In versions 1.x and 2.0 of Microsoft Access, you load a library database at startup by creating an entry in the Libraries section of your .ini file. Most of the information that's stored in an .ini file in versions 1.x and 2.0 is stored in the Windows registry in later versions. However, there's no need to create a Windows registry key in order to use a library database.

Circular References Between Libraries

In versions 1.x and 2.0 of Microsoft Access, you can make circular library references. However, these aren't allowed in later versions of Microsoft Access. In other words, once you've created a reference from Library A to Library B, you cannot create a reference from Library B to Library A.

Custom Add-ins Menu Behavior

In versions 1.x and 2.0 of Microsoft Access, add-ins automatically appear on the Add-ins submenu of the File menu. In later versions of Microsoft Access, the Add-ins submenu is on the Tools menu. In Microsoft Access 2000 you can also reference add-ins from any toolbar or menu.


 Convert SendKeys Key Combinations

Convert SendKeys Key Combinations

If you're converting a version 1.x or 2.0 database to Microsoft Access 2000, changes in some dialog boxes and menus may require you to recode the SendKeys statement or SendKeys action. For example, the Add-ins submenu has been moved from the File menu to the Tools menu, and the previous Import, Export, and Attach submenus on the File menu have changed to the Get External Data and Save As/Export submenus. Because changes like this are likely to occur for each new version of Microsoft Access, it's a good idea to avoid using the SendKeys statement or action to carry out commands or fill in dialog boxes whenever possible.

Here are some tips you can use to avoid using the SendKeys statement or action:

  • Before you use the SendKeys statement or action to carry out a menu command, check for an equivalent macro action or Visual Basic method. Most commands that are commonly carried out by a menu command or option have an equivalent action or method. For example, you can now use the Dropdown method of a combo box rather than the code SendKeys "{F4}".

  • If a menu command doesn't have an equivalent action or method, use the RunCommand action rather than the SendKeys statement or action to carry it out.

  • Avoid using the SendKeys statement or action to set options in the Options dialog box. New versions of Microsoft Access have new and changed options, so the code in your SendKeys statement or action could easily break. Instead, use the GetOption and SetOption methods.

  • When you use the SendKeys statement to carry out an action, consider referencing the built in key-code constants or declaring constants for the values in your SendKeys statement. Defining your keystrokes as constants makes updating your code easier in the future.

  • In Microsoft Access version 2.0, you can enclose the Keystrokes argument of the SendKeys action in quotation marks, but it isn't required. If you enclose this argument in quotation marks in subsequent versions of Microsoft Access, an error occurs. To use quotation marks in the Keystrokes argument, you must use two sets of quotation marks, as in Michael ""Mick"" Suyama. An error can also occur if the Keystrokes argument contains incorrect syntax, misspelled text, or other values that aren't appropriate for the window the keystrokes are sent to.


 Создание присоединенного элемента управления HTML на странице доступа к данным

Создание присоединенного элемента управления HTML на странице доступа к данным

Примечание. Присоединенный элемент управления HTML может использоваться для отображения данных из поля базы данных или результатов выражения.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. На панели элементов нажмите кнопку Связанный HTML Связанный HTML .

  3. Чтобы присоединить элемент управления к полю, выделите в списке полей поле, содержащее код HTML, а затем перетащите его на страницу доступа к данным.

  4. Выберите на странице доступа к данным место, где должен располагаться верхний левый угол элемента управления, и отпустите кнопку мыши.


 Creating Object Variables

Creating Object Variables

In Microsoft Access, you can declare an object variable as a specific object type, as an Object, or as a Variant. Specific object types include Microsoft Access objects, Data Access Objects (DAO), Visual Basic Collection objects, instances of class modules, or Automation (formerly called OLE Automation) objects. The following examples show different specific object types you might use.

Dim frmOrderForm As Form                  ' Declares as Form object.
    Dim tdfOrders As TableDef              ' Declares as TableDef object.
      Dim colThings As New Collection      ' New Collection object.
        Dim obj As New Class1                    ' New instance of a class module.
          Dim appXL As Excel.Application      ' Automation object.

            Note If you use the New keyword in an object variable declaration, a new object is created and the variable is automatically pointed to it, so you don't need to use the Set statement.

              You can use the Me keyword in a form module or report module to refer to the form or report that is associated with that module. The Me keyword allows you to refer to the current form without giving its full reference.

              For example, you might create the following procedure in a standard module to change the color of the Detail section of a form.

              Sub ChangeFormColor(frmCurrent As Form)
    frmCurrent.Section(acDetail).BackColor = RGB(Rnd * 256, _
        Rnd * 256, Rnd * 256)
End Sub

              You can call this procedure from a form module and pass the Me keyword as an argument to the procedure. The Me keyword represents the form from which the procedure is called and on which the procedure is run.

              For example, you might call this procedure from the Click event of a form section. Set the Detail section's OnClick property to [Event Procedure], and create the following Sub procedure in the form's module.

              Private Sub Detail_Click()
    ChangeFormColor Me
End Sub

              If the name of the form were Orders, then you could also call this procedure with the following statement.

              ChangeFormColor Forms!Orders

              One advantage to using the Me keyword is that you don't need to know the name of the form to refer to it.


Примеры выражений, использующих в качестве условий отбора текстовые значения

Поле | Выражение | Описание
ПунктНазначения | "Киев" | Отображает заказы на доставку товаров в Киев.
ПунктНазначения | "Киев" Or "Минск" | Использует оператор Or для отображения заказов на доставку товаров в Киев или Минск.
ДатаОтгрузки | Between #05.01.95# And #10.01.95# | Использует оператор Between...And для отображения заказов на отгрузку товаров не ранее 5-янв-95 и не позднее 10-янв-95.
ДатаОтгрузки | #2/2/95# | Отображает заказы на отгрузку товаров 2-фев-95.
СтранаДоставки | In("Канада", "Великобритания") | Использует оператор In для отображения заказов на доставку товаров в Канаду или Великобританию.
СтранаДоставки | Not "США" | Использует оператор Not для отображения заказов на доставку товаров во все страны, за исключением США.
ИмяКлиента | Like "С*" | Заказы на доставку товаров клиентам, имена которых начинаются с буквы С.
Название | >="Н" | Отображает заказы на доставку товаров в фирмы, названия которых начинаются с букв, находящихся в диапазоне от Н до Я.
КодЗаказа | Right([OrderID], 2)="99" | Использует функцию Right для отображения заказов, код которых заканчивается на 99.
Название | Len([Название]) >Val(30) | Использует функции Len и Val для отображения заказов для фирм, названия которых состоят из более чем 30 символов.


Примеры выражений, использующих в качестве условий отбора результат статистической функции по подмножеству

Поле | Выражение | Описание
Фрахт | >(DStDev("[Фрахт]", "Заказы") + DAvg("[Фрахт]", "Заказы")) | Использует функции DAvg и DStDev для отображения всех заказов, для которых цена фрахта поднялась выше средней плюс стандартное отклонение цены.
Количество | >Davg("[Количество]", "Заказано") | Использует функцию DAvg для отображения заказанных товаров, количество которых превышает среднее.

Для получения дополнительных сведений об использовании статистических функций по подмножеству нажмите кнопку [image] .


Примеры выражений, использующих в качестве условий отбора результаты подчиненных запросов

Поле | Выражение | Отображает
Цена | (SELECT [Цена] FROM [Товары] WHERE [НазваниеТовара] = "Анисовый сироп") | Товары, цена которых равна цене анисового сиропа.
Цена | >(SELECT AVG([Цена]) FROM [Товары]) | Товары, цена которых превышает среднюю.
Оплата | > ALL (SELECT [Оплата] FROM [Сотрудники] WHERE ([Должность] LIKE "*Менеджер*") OR ([Должность] LIKE "*Вице-Президент*")) | Заработная плата каждого торгового представителя, превышающая заработную плату всех сотрудников, занимающих должность «Менеджера» или «Вице-Президента».
Итог: [Цена]* [Количество] | > ALL (SELECT AVG([Цена] * [Количество]) FROM [Заказано]) | Заказы, итоговая сумма которых превышает среднее значение заказа.


Примеры выражений, которые получают даты, а затем используют их в качестве условий отбора

Поле | Выражение | Описание
ДатаИсполнения | Between Date( ) And DateAdd("m", 3, Date( )) | Использует оператор Between...And и функции DateAdd и Date для отображения заказов, требующих исполнения в течение трех месяцев, начиная с сегодняшней даты включительно.
ДатаЗаказа | < Date( )- 30 | Использует функцию Date для отображения заказов, сделанных ранее, чем 30 дней назад.
ДатаЗаказа | Year([ДатаЗаказа])=1996 | Использует функцию Year для отображения заказов, сделанных в 1996 году.
ДатаЗаказа | DatePart("q", [ДатаЗаказа])=4 | Использует функцию DatePart для отображения заказов на четвертый квартал.
ДатаЗаказа DateSerial(Year
([ДатаЗаказа]),
Month([ДатаЗаказа])+1, 1)-1 		Использует функции DateSerial, Year и Month для отображения заказов на последний день каждого месяца.
ДатаЗаказа Year([ДатаЗаказа])=
Year(Now()) And Month([ДатаЗаказа])=
Month(Now()) 		Использует функции Year и Month, а также оператор And для отображения заказов текущего года и месяца.


Примеры выражений, использующих в качестве условий отбора часть значения поля

Поле | Выражение | Отображает
ИмяКлиента | Like "С*" | Выполненные заказы для клиентов, имена которых начинаются с буквы С.
ИмяКлиента | Like "*Импорт" | Выполненные заказы для клиентов, имена которых заканчиваются на слово «Импорт».
ИмяКлиента | Like "[А-Д]*" | Выполненные заказы для клиентов, имена которых начинаются с букв от А до Д.
ИмяКлиента | Like "*тр*" | Выполненные заказы для клиентов, имена которых содержат сочетание букв «тр».
ИмяКлиента | Like "Дом мод?" | Выполненные заказы для клиентов, у которых имя начинается со слова «Дом», а второе слово в имени содержит четыре буквы, причем первые три из них «мод», а четвертая неизвестна.


 Примеры выражений, использующих пустые значения полей (пустые значения и строки нулевой длины) в качестве условий отбора

Примеры выражений, использующих пустые значения полей (пустые значения и строки нулевой длины) в качестве условий отбора

Для получения дополнительных сведений об использовании значений Null и пустых строк нажмите кнопку [image] .

Поле | Выражение | Описание
ОбластьДоставки | Is Null | Отображает заказы для клиентов, у которых поле «ОбластьДоставки» является пустым.
ОбластьДоставки | Is Not Null | Отображает заказы для клиентов, у которых поле «РайонДоставки» содержит какое-либо значение.
Факс | " " | Отображает заказы для клиентов, у которых нет факсимильного аппарата, то есть для тех клиентов, у которых поле «Факс» содержит пустую строку, а не значение Null.


Различия в использовании в форме нескольких страниц и нескольких вкладок

Существует два способа для создания форм, состоящих из нескольких страниц: с использованием элемента управления «Набор вкладок» и с использованием элемента управления «Разрыв страницы».

Использование элемента управления «Набор вкладок» при создании формы, состоящей из нескольких страниц, является самым простым и эффективным способом. При помощи элемента управления «Набор вкладок» отдельные страницы объединяются в единый элемент управления. Для переключения между страницами необходимо выбрать одну из вкладок.

Набор вкладок, состоящий из двух вкладок

Элемент управления «Разрыв страницы» используется для указания горизонтальных разрывов между элементами управления в форме. Для перехода к странице, находящейся над или под указанным разрывом, используются клавиши PAGE UP или PAGE DOWN.

Возврат в раздел Создание формы, состоящей из нескольких страниц или вкладок


 Примеры проверки условий на значения с помощью макросов

Примеры проверки условий на значения с помощью макросов

В некоторых ситуациях может потребоваться использование условий на значение, содержащих сложные выражения, а затем выполнять различные действия в зависимости от значений этих выражений. Например, в разных странах существуют различные стандарты для почтовых индексов, поэтому с помощью простого условия проверить правильность ввода в базу данных почтовых индексов невозможно.

В этом случае следует создать макрос, в котором определяется значение, введенное в поле «Страна», а затем проверяется соответствие значения, вводящегося в поле «Индекс», стандартам этой страны.

Вначале создайте макрос, выводящий различные сообщения в зависимости от значения поля «Страна» и длины значения поля «Индекс».

Проверка условий на значения с помощью макроса

Затем откройте в режиме конструктора форму, содержащую элементы управления, и укажите имя макроса в свойстве события формы До обновления (BeforeUpdate). Необходимо использовать свойство формы, а не элемента управления, поскольку в данном условии проверяются значения двух элементов управления.

Определенный таким образом макрос будет выполняться после завершения ввода новой записи, но до сохранения записи в таблице «Поставщики». При выполнении любого из двух условий ошибки Access выведет соответствующее предупреждение, а запись в таблице «Поставщики» сохранена не будет.


 Примеры управляющих запросов

Примеры управляющих запросов

Создание таблицы

В следующем управляющем запросе с помощью инструкции CREATE TABLE создается таблица «Друзья». Приведенная инструкция определяет имена и типы полей таблицы и создает для поля «Код» индекс, назначающий это поле ключевым.

CREATE TABLE Друзья
([Код] integer,
[Фамилия] text,
[Имя] text,
[ДеньРождения] date,
[Телефон] text,
[Примечания] memo,
CONSTRAINT [Индекс1] PRIMARY KEY ([Код]));

Создание индекса

Следующая управляющая инструкция с помощью инструкции CREATE INDEX создает составной индекс по полям «Фамилия» и «Имя».

CREATE INDEX NewIndex
ON Друзья ([Фамилия], [Имя]);


 Примеры выражений, задающих условия отбора для запросов или расширенных фильтров

Примеры выражений, задающих условия отбора для запросов или расширенных фильтров

Выражение условия отбора может быть использовано в ячейке Условие отбора либо в окне расширенного фильтра, либо в режиме конструктора запроса.

Примечание. Можно также использовать специальные выражения условий отбора в поле в окне обычного фильтра, либо использовать выражения из списка, представленного в полях.

Предполагаемые действия

Примеры выражений, использующих в качестве условий отбора текстовые значения

Примеры выражений, вычисляющих или обрабатывающих даты и использующих полученные результаты в качестве условий отбора

Примеры выражений, использующих пустые значения полей (Null или пустые строки) в качестве условий отбора

Примеры выражений, использующих в качестве условий отбора часть значения поля

Примеры выражений, использующих в качестве условий отбора результаты статистических функций по подмножеству

Примеры выражений, использующих в качестве условий отбора результаты подчиненных запросов

Примеры использования нескольких условий отбора в одном или нескольких полях запроса


 Примеры выражений, вычисляющих или обрабатывающих значения с помощью вычисляемых полей в запросах

Примеры выражений, вычисляющих или обрабатывающих значения с помощью вычисляемых полей в запросах

Введите выражение для вычисляемого поля в ячейку Поле бланка запроса.

Выражение для вычисляемого поля

Предполагаемые действия

Сведения о создании выражения

Дополнительные сведения о вычисляемых полях

Примеры выражений с текстовыми значениями

Примеры выражений, содержащих арифметические операторы

Примеры выражений, вычисляющих и обрабатывающих даты

Просмотр примеров выражений, пересчитывающих, вычисляющих сумму и среднее значений с использованием статистических функций по подмножеству или статистических функций SQL

Просмотр примеров выражений для работы с пустыми полями (имеющими значение Null)

Просмотр примера выражения, использующего подчиненный запрос


Примеры выражений в инструкциях SQL

Как показывают приведенные примеры, выражения используются в различных компонентах инструкции SQL. Выражения выделены красным цветом.

Выражение | Результат
SELECT [Имя],[Фамилия] FROM [Сотрудники] WHERE [Фамилия]="Сидоров"; | Выводит значения полей «Имя» и «Фамилия» для сотрудников, имеющих фамилию Сидоров.
SELECT [КодТовара],[Марка] FROM [Товары] WHERE [КодТипа]=Forms![Новые товары]![КодТипа]; | Выводит значения полей «КодТовара» и «Марка» из таблицы «Товары» для записей, у которых значение поля «КодТипа» совпадает со значением элемента управления «КодТипа» в открытой форме «Новые товары».
SELECT Avg([ОтпускнаяЦена]) AS [Средняя отпускная цена] FROM [Сведения о заказах] WHERE [Отпускная цена]>1000; | Вычисляет среднюю отпускную цену для заказов, у которых значение в поле «ОтпускнаяЦена» превышает 1000, и выводит их в поле «Средняя отпускная цена».
SELECT [КодТипа],Count([КодТовара]) AS [КодКоличестваТоваров] FROM [Товары] GROUP BY [КодТипа] HAVING Count([КодТовара])>10; | Выводит в поле «КодКоличестваТоваров» общее количество товаров для типов, имеющих более 10 товаров.


Примеры отчетов, в которых каждая группа начинается с новой строки или столбца

В отчетах, содержащих несколько столбцов, можно обозначить заголовки групп, поместив их либо слева на странице (сверху вниз), либо вверху страницы (слева направо). В следующем примере приведен отчет, в котором поле «КодТипа» используется как заголовок группы, а поле «Марка» как данные.

Отчет, в котором каждый заголовок группы печатается в новой строке

Чтобы создать этот отчет, поместите поле «КодаТипа» в заголовок группы и поле «Марка» в область данных. Затем задайте для свойства Новая строка или столбец (NewRowOrCol) заголовка «КодТипа» значение До и после раздела и задайте значения для свойств, перечисленных ниже, на вкладке Столбцы в диалоговом окне Параметры страницы (команда Параметры страницы из меню Файл).

Группа | Свойство | Значение
Параметры сетки | Число столбцов | 3
Размер столбца | Ширина | Ширина столбца в области данных, например, 2"
 | Высота | Высота строки, например, 0.25"
Макет столбца | Слева направо | Выбрано

Чтобы создать отчет, в следующем примере следует использовать такой же макет отчета, как и в предыдущем примере, но задать для свойства Новая строка или столбец (NewRowOrCol) заголовка «КодТипа» значение До раздела, а также установить в группе Макет столбца параметр Сверху вниз в диалоговом окне Параметры страницы.

Отчет, в котором каждый заголовок группы печатается в новом столбце


Примеры простых оптимизируемых выражений

Если были созданы индексы для полей «Фамилия», «Возраст» и «ДатаНайма» в таблице «Сотрудники», существуют следующие простые оптимизируемые выражения:

  • [Фамилия]="Иванов"

  • [Возраст]>=21

  • #12/30/90#<[ДатаНайма]

  • Сотрудники.[Фамилия]=Клиенты.[Фамилия]

  • [Фамилия] In ("Иванов", "Петров", "Сидоров")

  • [Возраст] Between 18 And 65


 Примеры запросов на объединение

Примеры запросов на объединение

Запросы на объединение объединяют поля из двух или более таблиц или запросов в одно поле. Ниже приведены примеры простого запроса на объединение, сортировки записей, переименования полей и возвращения повторяющихся записей в запросах на объединение.

Данный раздел содержит сведения по следующим вопросам.

Простой запрос на объединение

Сортировка в запросе на объединение

Переименование полей в запросе на объединение

Возвращение повторяющихся записей в запросе на объединение

Простой запрос на объединение

Следующий запрос на объединение содержит две инструкции SQL SELECT, определяющие возвращение из таблиц «Поставщики» и «Клиенты» названий организаций и городов, находящихся в указанной стране.

Объединение данных из двух или нескольких таблиц с помощью запроса на объединение

Возврат в начало

Сортировка в запросе на объединение

В следующем запросе на объединение отбираются все названия организаций и городов из таблиц «Поставщики» и «Клиенты» и выполняется сортировка по названием городов:

SELECT [Название], [Город]
FROM [Поставщики]

UNION SELECT [Название], [Город]
FROM [Клиенты]
ORDER BY [Город];

Возврат в начало

Переименование полей в запросе на объединение

В следующем запросе на объединение поле «Название» получает при выводе результатов имя «Поставщик/Клиент»:

SELECT [Название] AS [Поставщик/Клиент], [Город]
FROM [Поставщики]

UNION SELECT [Название] AS [Поставщик/Клиент], [Город]
FROM [Клиенты];

Возврат в начало

Возвращение повторяющихся записей в запросе на объединение

В следующем запросе на объединение инструкция UNION ALL обеспечивает возвращение всех записей, в том числе повторяющихся:

SELECT [Название], [Город]
FROM [Поставщики]

UNION ALL SELECT [Название], [Город]
FROM [Клиенты];

Возврат в начало

Дополнительные сведения

Использование инструкций SQL в запросах, формах, отчетах, макросах и модулях

Способы объединения данных из нескольких таблиц или запросов в запросе


 Примеры текстовых полей, которые могут расширяться и сжиматься при печати форм и отчетов

Примеры текстовых полей, которые могут расширяться и сжиматься при печати форм и отчетов

Для того чтобы определить поле, вертикальный размер которого может увеличиваться и сжиматься по размеру содержимого поля в каждой записи, следует задать значение Да для свойств поля Расширение (CanGrow) и Сжатие (CanShrink). Например, поле Memo может содержать достаточно длинные текстовые значения. Для такого поля следует задать размер, достаточный для большинства значений поля, и установить значение Да для свойства Расширение (CanGrow). Это позволит полностью вывести на печать значения, не умещающиеся в стандартном размере поля. Если в каких то записях это поле окажется пустым, заданное для свойства Сжатие (CanShrink) значение Да позволит избежать печати пустых строк.

При расширении или сжатии поля автоматически изменяется высота соответствующего раздела. Поэтому существенным является согласование размеров поля и положения размещаемых рядом элементов управления.

Расширяемые поля имеют такую же высоту, что и самый высокий элемент управления в той же строке

При сжатии поля его высота не может стать меньшей, чем высота размещенных в той же строке элементов управления. Например, если рядом с полем помещается подпись, то подпись имеет значение (текст подписи), даже если поле остается пустым. В этом случае поле сожмется по высоте только до размера подписи.

Поля в режиме конструктора и в напечатанном отчете


 Form

Form

A form is a Microsoft Access database object on which you place controls for taking actions or for entering, displaying, and editing data in fields.


 Form Section

Form Section

A form section is part of a form such as a header, footer, or detail section.

You can set section properties which are attributes of a form that affect the appearance or behavior of that section. For example, you can set the CanGrow property to specify whether the section will increase vertically to print all the data the section contains. Section properties are set in form Design view.


 Способы оптимизации запросов

Способы оптимизации запросов

Существует ряд способов ускорения выполнения запросов. В дополнение к перечисленным ниже приемам конкретные запросы в базе данных могут быть исследованы с помощью анализатора быстродействия. Для получения дополнительных сведений об использовании анализатора быстродействия нажмите кнопку [image] .

  • Производите сжатие баз данных. Это повысит быстродействие запросов, так как при сжатии происходит преобразование записей в таблице таким образом, чтобы они находились на соседних страницах базы данных, упорядоченные по ключу таблицы. Это повысит скорость отбора записей в таблице, так как количество читаемых страниц базы данных с целью отбора записей будет минимальным. После сжатия базы данных запустите каждый запрос, чтобы скомпилировать его, используя обновленные характеристики таблицы.

  • Индексируйте все поля, используемые для определения условий отбора в запросе, а также поля на обеих сторонах объединения или создайте связь между этими полями. При создании связей ядро базы данных Microsoft Jet создает индекс внешнего ключа, если он еще не создан; в противном случае используется существующий индекс.

    Примечание. Ядро базы данных Microsoft Jet автоматически оптимизирует запрос, в котором выполняется объединение таблицы Microsoft Access на локальном жестком диске и таблицы на сервере ODBC, если таблица Microsoft Access достаточно мала, а поля, участвующие в объединении, проиндексированы. В этом случае Microsoft Access повышает производительность за счет загрузки с сервера только необходимых записей. Всегда старайтесь при объединении таблиц из различных источников обеспечить индексирование полей, участвующих в объединении.

  • При описании полей таблицы выбирайте типы данных минимального размера, достаточные для содержащихся в поле данных. Кроме того, для полей, участвующих в объединении, следует выбирать одинаковые или совместимые типы данных, такие как тип «Счетчик» и числовой тип (если для свойства Размер поля (FieldSize) задано значение Длинное целое).

  • При создании запроса не добавляйте лишние поля в запрос. Снимите флажок Вывод на экран для полей, используемых в условиях отбора, если не предполагается вывод в запросе содержимого этих полей.

  • Если в качестве значения для свойства Источник записей (RecordSource) формы или отчета задана инструкция SQL, то следует сохранить ее как запрос, а затем указать в качестве значения свойства Источник записей (RecordSource) имя запроса. Для получения дополнительных сведений нажмите кнопку [image] .

  • Старайтесь не использовать вычисляемые поля в подчиненных запросах. Необходимость расчета выражения при добавлении запроса с вычисляемыми полями в другой запрос замедляет выполнение запроса верхнего уровня. Предположим, например, что запрос Q1 является подчиненным для запроса Q2:
    Q1: SELECT IIF([MyColumn]="Да","Заказ подтвержден","Заказ не подтвержден") AS X FROM MyTable;
Q2: SELECT * FROM Q1 WHERE X="Заказ подтвержден";

Так как выражение с IIf в запросе Q1 нельзя оптимизировать, то и запрос Q2 не может быть оптимизирован. Таким образом, если нельзя оптимизировать выражение во вложенном запросе, то и весь запрос целиком не может быть оптимизирован.

Существует другой вариант построения запроса:

Q1: SELECT * FROM MyTable WHERE MyColumn = "Да";

Если в результатах запроса необходимо присутствие выражений, то следует поместить их в элемент управления в форме или отчете. Например, предыдущий запрос можно было преобразовать в запрос с параметрами, в который бы вводились значения для поля «MyColumn», а затем на его основе создать форму или отчет. Затем в форму или отчет можно добавить вычисляемый элемент управления, выводящий на экран строки «Привет» или «Пока» в зависимости от значения в поле «MyColumn».

Запрос следует построить следующим образом:

PARAMETERS [Чтобы просмотреть подтвержденные заказы, введите «Да». Чтобы просмотреть неподтвержденные заказы, введите «Нет».] Text;
SELECT *
FROM MyTable
WHERE MyColumn = [Чтобы просмотреть подтвержденные заказы, введите «Да». Чтобы просмотреть неподтвержденные заказы, введите «Нет».];

В вычисляемый элемент управления в форме или отчете вводится следующее выражение:

=IIF([MyColumn]="Да","Заказ подтвержден","Заказ не подтвержден")

  • При группировке записей по значениям связанных полей укажите значение Группировка для поля в той же таблице, в которой находится поле, по которому выполняется групповая операция (выполняется статистическая функция). Например, если в учебной базе данных «Борей» рассчитывается итоговое значение поля «Количество» в таблице «Заказано», а записи группируются по полю «КодЗаказа», то условие группировки (в ячейке Групповая операция) следует определить для поля «КодЗаказа» в таблице «Заказано», а не для поля «КодЗаказа» в таблице «Заказы». Если условие группировки определить для поля «КодЗаказа» в таблице «Заказы», то сначала будут объединены все записи, а потом выполнен расчет статистических функций, вместо того, чтобы сделать наоборот, сначала проведя расчет, а потом объединив только необходимые поля.

    Для повышения производительности используйте операцию Группировка для минимально возможного числа полей. В качестве альтернативы используйте функцию First. Для получения дополнительных сведений о функции First нажмите кнопку [image] .

    Если в итоговом запросе выполняется объединение, старайтесь использовать группировку записей только в одном запросе и добавляйте этот запрос в отдельный запрос, в котором выполняется объединение. Это повысит быстродействие некоторых запросов.

  • По возможности избегайте определения в запросах условий отбора для вычисляемых и неиндексированных полей.

    Используйте для условий отбора выражения, позволяющие оптимизировать запрос. Для получения дополнительных сведений об оптимизации выражений с помощью технологии Rushmore нажмите кнопку [image] .

  • Если условия отбора ограничивают значения полей, используемых в объединении таблиц с отношением «один-ко-многим», проверьте, будет ли запрос выполняться быстрее при определении условий для поля на стороне «один», чем при их определении на стороне «многие». Иногда после определения в запросе условий для поля на стороне «один» вместо условия на стороне «многие» запрос выполняется быстрее.

  • Индексируйте поля, используемые для сортировки.

  • Если не предполагается частое изменение данных, создавайте таблицы по результатам запроса с помощью запросов на создание таблиц. Создавайте формы, отчеты и другие запросы на базе результирующих таблиц, а не на базе исходных запросов, а также убедитесь, что правильно проведена индексация.

  • Старайтесь не использовать статистические функции по подмножеству, например функцию Dlookup, в запросе, в котором производится обращение к табличным данным. Статистические функции по подмножеству специфичны для Microsoft Access, поэтому ядро базы данных Microsoft Jet не может оптимизировать использующие их запросы. Вместо этого добавьте в запрос таблицу или создайте подчиненный запрос.

  • При создании перекрестного запроса по возможности используйте постоянные заголовки столбцов. Для получения дополнительных сведений нажмите кнопку [image] .

  • Применяйте операторы Between...And, In и = к индексированным полям.

  • Чтобы ускорить выполнение на сервере запросов на обновление больших объемов данных из источников данных ODBC, задайте для свойства FailOnError значение Да. Для получения дополнительных сведений нажмите кнопку [image] .

Примечание. Для получения советов по оптимизации производительности внешней базы данных SQL нажмите кнопку [image] .


Hidden Properties

Properties that have been hidden in the Microsoft Access 2000 Visual Basic object model because their functionality has been replaced by new language elements are listed in the following table. These properties are supported only for backward compatibility; for new code; you should use the replacement functionality provided in Microsoft Access 2000. To view hidden objects in the Object Browser, right-click in the Object Browser window and click Show Hidden Members on the shortcut menu.

Object | Hidden Property | Replacement
Form | AllowEditing, DefaultEditing | AllowAdditions, AllowDeletions, AllowEdits, DataEntry
Form | AllowUpdating | RecordsetType
BoundObjectFrame, CheckBox, ComboBox, Image, Label, Line, ListBox, ObjectFrame, OptionButton, OptionGroup, Rectangle, SubForm, TextBox | BorderLineStyle | BorderStyle
Form | Dynaset | RecordsetClone
Form, Report | MaxButton, MinButton | MinMaxButtons (Form only)
Form | ShowGrid | DatasheetGridlinesBehavior


 Факторы, которые необходимо учитывать при выполнении запроса на удаление записей

Факторы, которые необходимо учитывать при выполнении запроса на удаление записей

  • При удалении записей с помощью запроса на удаление отменить операцию невозможно. Поэтому, прежде чем выполнить такой запрос, необходимо просмотреть выбранные для удаления данные. Для этого на панели инструментов нажмите кнопку Вид [image] и просмотрите запрос в режиме таблицы.

  • Рекомендуется всегда делать резервные копии данных. Таким образом, если были удалены не те записи, их можно восстановить из резервных копий.

  • Иногда при выполнении запроса на удаление также могут быть удалены и некоторые записи из связанных таблиц, не включенных в запрос. Это случается, если в запрос включена только таблица, находящаяся на стороне «один» отношения «один-ко-многим», и для этого отношения было установлено каскадное удаление. При удалении записей из данной таблицы будут также удаляться записи из таблицы, находящейся на стороне «многие». Для получения дополнительных сведений об установлении каскадного удаления нажмите кнопку [image] .

  • Если запрос на удаление содержит более одной таблицы (например, запрос, удаляющий повторяющиеся записи из одной из таблиц), свойство Уникальные записи (UniqueRecords) этого запроса должно иметь значение Да. Для получения дополнительных сведений о задании свойства Уникальные записи (UniqueRecords) нажмите кнопку [image] .


 Index

Index

An index is a Microsoft Access feature that speeds up searching and sorting in a table. You can create an index for a field in the Indexes window of table Design view, or by setting the field's Indexed property to Yes.

Note The primary key of a table is automatically indexed, and fields for which the data type is Memo or OLE Object can't be indexed.


Language-Specific Properties and Methods

The Microsoft Access 2000 Visual Basic object model has new language-specific keywords for use with Asian and right-to-left languages. The availability of these language-specific keywords depends on the language support you have selected or installed. For more information about language-specific features, see Language-specific information.

Language-Specific Properties and Methods

Properties and methods that are available only in Asian or right-to-left languages are listed in the following table.

Property or Method | Object
FELineBreak | TextBox
FuriganaControl | TextBox
IMEHold/HoldKanjiConversionMode | ComboBox, ListBox, TextBox
IMEMode/KanjiConversionMode | ComboBox, Label, ListBox, TextBox
IMESentenceMode | ComboBox, Label, ListBox, TextBox
KeyboardLanguage | ComboBox, TextBox
NumeralShapes | ComboBox, Label, ListBox, TextBox
Orientation | Form
PostalAddress | TextBox
ReadingOrder | CheckBox, ComboBox, CommandButton, Label, ListBox, OptionButton, TextBox, ToggleButton
ScrollBarAlign | ComboBox, ListBox, TextBox


Methods with New Arguments

Existing methods for which arguments have been added for Microsoft Access 2000 are listed in the following table.

TransferText


 Avoiding Naming Conflicts

Avoiding Naming Conflicts

Below are some additional naming-conflict errors you may encounter in Microsoft Access.

Procedures and Variables in Standard Modules and Class Modules

In Microsoft Access, if both a standard module and a class module contain a public procedure with the same name, an unqualified reference to the procedure will always call the one residing in the standard module. To call a procedure in a class module, you must qualify it with the class name. The same holds true for variables with the same names defined in standard and class modules.

For example, if you have a function named CountOrders in the module of a form called Orders, you can call the function as follows.

Form_Orders.CountOrders

Differently Scoped Variables with the Same Name

If you declare a module-level variable that has the same name as a procedure-level variable in a procedure in that module, you must qualify the module-level variable with the name of that module. This applies to standard modules and class modules.

For example, you might declare a variable varScope at the module level and at the procedure level in a standard module called Important Functions. You can then refer to the module-level variable by qualifying it as [Important Functions].varScope.

It's best to avoid using variables with the same name within a single module.

Constant, Variable, and Procedure Names within Class Modules

You cannot give a constant, variable, or procedure in a form or report module the same name as a method or property of the form or report. For example, if you create a Sub procedure called Name, Microsoft Access will generate a compile-time error, because the form already has a Name property.


New Objects for Microsoft Access 97

Objects that were added to Visual Basic in Microsoft Access 97 are listed in the following table.

Objects | Description
Assistant | New Office Assistant functionality
Page, Pages | New Tab Control functionality


New Events for Microsoft Access 97

Events that were added to Visual Basic in Microsoft Access 97 are listed in the following table.


New Methods for Microsoft Access 97

Methods that were added to Microsoft Access 97 are listed in the following table.

Add (Pages collection)

AddFromFile (Module object)

AddFromFile (References collection)

AddFromGUID

AddFromString

AddToFavorites

CreateEventProc

DefaultControl

DeleteLines

InsertLines

 Find

Follow

FollowHyperlink

HyperlinkPart

RefreshDatabaseWindow

Remove(Pages collection)

Remove(References collection)

ReplaceLine

RunCommand


New Methods (by Object)

Methods that have been added to existing objects in Microsoft Access 2000 are listed in the following table (sorted by object name).

Objects | Methods
AccessObjectProperties | Add Remove
Application | CreateAccessProject CreateDataAccessPage GetHiddenAttribute NewAccessProject OpenAccessProject SetHiddenAttribute
Code Project, Current Project | CloseConnection OpenConnection
DataAccessPage | ApplyTheme
DoCmd | AddMenu OpenDataAccessPage OpenDiagram OpenStoredProcedure OpenView
FormatCondition | Delete Modify
FormatConditions | Add Delete
Hyperlink | CreateNewDocument
WebOptions | UseDefaultFolderSuffix


New Properties for Microsoft Access 97

Properties that were added to Microsoft Access 97 are listed in the following table.

A-G

CountOfDeclarationLines

CountOfLines

DatasheetBackColor

 DatasheetForeColor

FailOnError

H-P

HasModule

Hyperlink

HyperlinkAddress

HyperlinkSubAddress

IsVisible

Kind

Lines

Major

MDE

 Minor

MousePointer

MultiRow

PageIndex

ProcBodyLine

ProcCountLines

ProcOfLine

ProcStartLine

ProjectName

Q-Z

Style

TabFixedHeight

TabFixedWidth

 Toolbar

UseTransaction


 New Properties (By Object)

New Properties (By Object)

Properties that were added to existing objects in Microsoft Access 2000 are listed in the following table (sorted by object name).

Object | Property
AccessObject | FullName IsLoaded Properties Property (AccessObjectProperties Collection) Type (AccessObject Object)
Application | AnswerWizard CodeData CodeProject COMAddIns CurrentData CurrentProject DataAccessPages DefaultWebOptions FeatureInstall FileSearch LanguageSettings ProductCode Properties Property (Properties Collection) VBE
CodeData, CurrentData | AllDatabaseDiagrams AllQueries AllReports AllStoredProcedures AllTables AllViews
CodeProject, CurrentProject | AllDataAccessPages AllForms AllMacros AllModules AllReports BaseConnectionString Connection FullName IsConnected ProjectType Properties Property (AccessObjectProperties Collection)
DataAccessPage | ConnectionString Document WebOptions
DefaultWebOptions | AlwaysSaveInDefaultEncoding CheckIfOfficeHTMLEditor DownloadComponents Encoding FolderSuffix FollowedHyperlinkColor HyperlinkColor LocationOfComponents OrganizeInFolder UnderlineHyperlinks UseLongFileNames
Form | InputParameters MaxRecButton Recordset ResyncCommand ServerFilter ServerFilterByForm UniqueTable
FormatCondition | Enabled (FormatCondition Object) Expression1 Expression2 Operator (FormatCondition Object) Type (FormatCondition Object)
Hyperlink | Address EmailSubject ScreenTip SubAddress TextToDisplay
Screen | ActiveDataAccessPage
WebOptions | DownloadComponents Encoding FolderSuffix LocationOfComponents OrganizeInFolder UseLongFileNames

Microsoft Office properties

To see a list of the new properties available in the Microsoft Office 9.0 Object Library, open the Microsoft Office Visual Basic Reference in the Help contents.

To use the objects supplied by Microsoft Office, you must set a reference to the Microsoft Office 9.0 Object Library when the Visual Basic Editor is open by clicking References on the Tools Menu and selecting the check box next to this library.

Microsoft Visual Basic Editor properties

To see a list of the new properties available in the Microsoft Visual Basic for Applications Extensibility 5.3 Object Library, open the Microsoft Visual Basic Reference in the Help contents.

To use the objects supplied by the Microsoft Visual Basic Editor, you must set a reference to the Microsoft Visual Basic for Applications Extensibility 5.3 Object Library. To set this reference, open the Visual Basic Editor and click References on the Tools Menu and select the check box next to this library.


 Understanding Automation

Understanding Automation

In Microsoft Access, you can create an Automation (formerly called OLE Automation) object either by using the New keyword to declare an object variable, or by using the CreateObject or GetObject function.

Microsoft Access supports Automation in two different ways. Microsoft Access is an COM component, meaning that you can access objects exposed by other applications and manipulate them from Microsoft Access, or from another application that supports Automation (formerly called OLE Automation), you can manipulate Microsoft Access objects.

Note Before you can use Microsoft Access or another application as a component, you must set a reference to that application's object library. For more information on setting references, search online Help for "setting references."

For example, if you are using Microsoft Access as a component, you can use Microsoft Excel objects. You do this by creating a new Microsoft Excel object from Microsoft Access and pointing an object variable to it. You can then set its properties and call its methods as you would for any object. You can create a new instance of the Microsoft Excel Application class in either of the following ways.

Dim appXL As New Excel.Application
' Or
Dim appXL As Excel.Application
Set appXL = CreateObject("Excel.Application")

If Microsoft Excel is already running, you can use the GetObject function to point an object variable to the current instance of the Microsoft Excel Application class.

Dim appXL As Excel.Application
Set appXL = GetObject( , "Excel.Application")

For more information about the Application object, search the help index for "Application object".

If you are using Microsoft Access as a component, you can manipulate Microsoft Access objects from another application. For example, you can open a Microsoft Access form from Microsoft Excel and use it to view data in a Microsoft Excel workbook. The following example creates a new Microsoft Access object from Microsoft Excel.

Dim appAccess As New Access.Application

If Microsoft Access is already running, use the GetObject function to point an object variable to the current instance of the Microsoft Access Application class.


 Открытие баз данных предыдущих версий Access без их преобразования

Открытие баз данных предыдущих версий Access без их преобразования

Данный раздел содержит справочные сведения по следующим вопросам.

Когда следует задействовать базы данных Access

Совместимость снизу вверх

Структура таблиц

Панели инструментов и строки меню

Задействование защищенной базы данных Access

Размер задействованной базы данных Access

Совместимость программ

Когда следует задействовать базы данных Access

Задействование базы данных Microsoft Access может потребоваться в многопользовательской среде, когда одновременный переход всех пользователей на Microsoft Access 2000 невозможен. В этой ситуации база данных должна одновременно использоваться на различных версиях Microsoft Access, а пользователи, перешедшие на Microsoft Access 2000, могут задействовать базы данных в формате предыдущих версий. Когда пользователь Microsoft Access 2000 задействует базу данных, Microsoft Access сохраняет ее исходный формат, что позволяет продолжать работу с базой данных пользователям предыдущих версий Microsoft Access. Например, если общая база данных создана в Microsoft Access версии 2.0, она может быть использована в Microsoft Access версии 2.0 и задействована в Microsoft Access 2000.

Возврат в начало

Совместимость снизу вверх

В Microsoft Access 2000 можно задействовать базы данных Microsoft Access версии 2.0, Access 95 и Access 97. Задействование базы данных Access предыдущей версии с помощью Microsoft Access 2000 позволяет просматривать объекты базы данных, а также добавлять, удалять и изменять записи. Однако изменять структуру объектов при этом нельзя. Для изменения структуры существующих объектов или для добавления новых объектов необходимо открыть базу данных в той версии Microsoft Access, в которой она была создана. Базу данных Microsoft Access 2000 невозможно открыть с помощью Microsoft Access предыдущей версии.

Вместо задействования баз данных можно создавать приложения из серверной и клиентской частей и использовать их в Microsoft Access версии 2.0, Access 95, Access 97 и Access 2000, обеспечив поддержку клиентской частью самой старой из используемых версий Microsoft Access. Для получения дополнительных сведений об использовании баз данных Microsoft Access в нескольких версиях Microsoft Access нажмите кнопку [image] .

Возврат в начало

Структура таблиц

В базах данных Access предыдущих версий связывание или импорт таблиц Access 2000 невозможен. Однако можно экспортировать таблицы Access 2000 в базы данных Access предыдущих версий. Кроме того, можно вырезать, копировать и вставлять данные из таблиц Access 2000 в таблицы предыдущих версий Microsoft Access.

Возврат в начало

Новые стили панелей инструментов и строк меню

В Microsoft Access 97 и более поздних версий поддерживаются новые стили панелей инструментов и строк меню. При задействовании баз данных Microsoft Access 97 в Microsoft Access 2000 пользовательские панели инструментов автоматически преобразуются к новому виду, но это преобразование не сохраняется. Пользовательские строки меню рассматриваются как строки меню нового вида, но не преобразуются и не поддерживаются.

Возврат в начало

Задействование защищенной базы данных Access

Если база данных Access защищена, для сохранения ее безопасности следует воссоздать файл рабочей группы в Access 2000. Если воссоздать файл рабочей группы не удается, можно использовать администратор рабочих групп для присоединения файла рабочей группы предыдущей версии; однако перед присоединением рекомендуется преобразовать файл рабочей группы в формат Access 2000. До тех пор, пока база данных используется с исходным файлом рабочей группы, сохраняется вся ее защита, кроме разрешений на доступ к модулям. В Access 2000 существует возможность защитить программу Visual Basic для приложений (VBA) с помощью пароля. См. сведения о задействовании защищенных баз данных.

Возврат в начало

Размер задействованной базы данных Access

При задействовании размер базы данных Access может увеличиться. При задействовании в Access 2000 базы данных, которая уже была задействована в предыдущей версии Microsoft Access, размер проекта Visual Basic увеличится еще больше. В редких случаях база данных Microsoft Access версии 2.0 может быть задействована в Microsoft Access 95, повторно задействована в Microsoft Access 97, а затем еще раз задействована в Microsoft Access 2000. В этом случае сведения в проекте Visual Basic должны храниться в формате каждой версии.

Возврат в начало

Совместимость программ

Microsoft Access 2000 не поддерживает библиотеку совместимости DAO версии 2.5/3.x. При попытке задействовать базу данных Access, программа в которой содержит старые версии объектов, методов и свойств DAO, зависящие от библиотеки совместимости DAO 2.5/3.x, выдается сообщение об ошибках компиляции при преобразовании базы данных. Прежде чем задействовать базу данных Access, обновите программу, чтоб она не зависела от библиотеки совместимости DAO 2.5/3.x. Для получения сведений о совместимости Visual Basic предыдущих версий Microsoft Access с версией Visual Basic Microsoft Access 2000 нажмите кнопку [image] .

Возврат в начало

Для получения сведений о задействовании баз данных Access нажмите кнопку [image] .


 Оптимизация форм и подчиненных форм

Оптимизация форм и подчиненных форм

Существует ряд способов повышения быстродействия форм. Наряду с приведенными ниже советами пользователь базы данных Microsoft Access имеет возможность проверить формы с помощью анализатора быстродействия. Для получения сведений об использовании анализатора быстродействия нажмите кнопку [image] .

Советы по повышению быстродействия

  • Не создавайте перекрывающиеся элементы управления.

  • Не создавайте лишние рисунки и другие графические объекты.

  • Замените свободные рамки объекта, в которых выводится графика, на рамки рисунков.

  • Старайтесь использовать черно-белые рисунки вместо цветных.

  • Закрывайте неиспользуемые формы.

  • Если базовый источник записей формы содержит много записей, а форму требуется использовать, в основном, для ввода новых записей, задайте для свойства формы Ввод данных (DataEntry) значение Да. Форма при этом будет открываться с пустой записью. Если открыть форму со всеми выводящимися записями, то прежде чем будет открыта пустая запись в конце формы, Microsoft Access должен считать все имеющиеся записи.

  • Не сортируйте записи в базовом запросе, если только порядок записей не имеет важного значения, особенно для многотабличных запросов.

  • Создавайте подчиненные формы на базе запросов, а не на базе таблиц, и включайте в подчиненную форму только необходимые поля. Лишние поля замедляют выполнение подчиненной формы.

  • Индексируйте все поля в подчиненной форме, связываемые с главной формой.

  • Индексируйте любое поле в подчиненной форме, используемое для указания условий.

  • Задайте для свойств Разрешить изменения (AllowEdits), Разрешить добавление (AllowAdditions) и Разрешить удаление (AllowDeletions) подчиненной формы значения Нет, если не предполагается изменять данные в подчиненной форме. Или задайте для свойства Тип набора записей (RecordsetType) значение Статический набор.

  • Удалите программу из форм, в которых она не нужна, задав для свойства формы Наличие модуля (HasModule) значение Нет. Свойство Наличие модуля (HasModule) определяет, имеет ли форма модуль или нет. Форма без модуля загружается быстрее и занимает меньше места на диске. Если в форме или ее элементах управления не используются процедуры обработки событий, форме не нужен модуль. Например, если кнопочная форма используется только для связи с другими формами, то вместо использования кнопок с процедурами обработки событий, можно воспользоваться кнопками с макросами или гиперссылками. Чтобы использовать программу в форме без модуля, следует вызвать процедуру Function из стандартного модуля с помощью выражения. (Нельзя использовать процедуры Sub, так как они не вызываются с помощью выражения.) Для этого необходимо определить процедуру Function в стандартном модуле, а затем вызвать эту функцию из свойства события формы или из элемента управления. Например, чтобы использовать кнопку для вызова функции с целью открытия формы, следует добавить к свойству кнопки Нажатие кнопки (ОnClick) выражение наподобие следующего: «=OpenDataEntry()».

    Примечание. Чтобы удалить все процедуры обработки событий, которые содержит форма, необходимо задать для свойства Наличие модуля (HasModule) значение Нет. После этого модуль формы будет удален полностью.


 Простые и сложные оптимизируемые выражения и оптимизация по технологии Rushmore

Простые и сложные оптимизируемые выражения и оптимизация по технологии Rushmore

Существует возможность оптимизации простых и сложных выражений в строке Условие отбора в бланке запроса или в предложении WHERE в инструкции SQL SELECT. Для определенных типов сложных выражений Microsoft Access может использовать Rushmore (технология доступа к данным, используемая ядром базы данных Microsoft Jet) для достижения более высокого уровня оптимизации.

Простые оптимизируемые выражения

Простые оптимизируемые выражения могут составлять целое выражение или быть его частью. Простое оптимизируемое выражение записывается одним из следующих способов:

Индексированное поле Оператор сравнения Выражение

[ДатаЗаказа]=#09/15/96#

или

Выражение Оператор сравнения Индексированное поле

#11/1/96#<[ДатаНайма]

В простом оптимизируемом выражении:

  • Индексированное поле представляет собой поле, имеющее собственный индекс, или первое поле в индексе по нескольким полям.

  • Оператор сравнения является одним из следующих операторов: <, >, =, <=, >=, <>, Between…And, Like, In.

  • Выражение представляет любое допустимое выражение, в том числе константы, функции и значения полей из других таблиц.

Для просмотра примеров простых оптимизируемых выражений нажмите кнопку [image] .

Сложные выражения

Сложное выражение создается путем комбинирования двух простых выражений с помощью операторов And или Or. Сложное выражение может быть записано одним из следующих способов:

Простое выражение And Простое выражение

или

Простое выражение Or Простое выражение

Сложное выражение является полностью или частично оптимизируемым в зависимости от оператора, использованного для их комбинирования, и от того, являются ли оптимизируемыми оба простых выражения или только одно. Сложное выражение является оптимизируемым, если выполняются три следующих условия.

  • В выражении для объединения условий отбора используются операторы And или Or.

  • Оба условия отбора являются простыми оптимизируемыми выражениями.

  • Оба выражения содержат индексированные поля. Поля могут быть индексированы по отдельности или быть частью индекса, построенного по нескольким полям.

Примечание. Индексы, построенные по нескольким полям, допускают оптимизацию, если поля в запросе проверяются в том порядке, в котором они выводятся в окне индексов, начиная с первого индексированного поля и далее по соседним полям (до 10 полей включительно). Например, если индекс, построен по полям «Фамилия» и «Имя», то запрос может быть оптимизирован по полю «Фамилия» или по полям «Фамилия» и «Имя», но нельзя оптимизировать этот запрос по полю «Имя».

В следующей таблице показано, в каких случаях запросы являются оптимизируемыми.

Выражение | Оператор | Выражение | Запрос
Оптимизируемое | And | Оптимизируемое | Полностью оптимизируемый (с помощью технологии Rushmore)
Оптимизируемое | Or | Оптимизируемое | Полностью оптимизируемый (с помощью технологии Rushmore)
Оптимизируемое | And | Неоптимизируемое | Частично оптимизируемый (без использования технологии Rushmore)
Оптимизируемое | Or | Неоптимизируемое | Неоптимизируемый
Неоптимизируемое | And | Неоптимизируемое | Неоптимизируемый
Неоптимизируемое | Or | Неоптимизируемое | Неоптимизируемый
-- | Not | Оптимизируемое | Неоптимизируемый
-- | Not | Неоптимизируемое | Неоптимизируемый

При комбинировании простых выражений допускается использование скобок. Приведенные выше правила действуют и при группировке выражений в скобках.

Сложные оптимизируемые выражения могут быть в свою очередь сгруппированы для создания других более сложных оптимизируемых выражений.

Для просмотра примеров сложных оптимизируемых выражений нажмите кнопку [image] .

Примечания

  • Функция Count оптимизирована для запросов, использующих технологию Rushmore. Для получения дополнительных сведений о функции Count нажмите кнопку [image] .

  • В запросах по технологии Rushmore могут быть использованы таблицы Microsoft Access, а также таблицы Microsoft FoxPro и dBASE (файлы .dbf). Невозможно использовать технологию Rushmore с источниками данных ODBC, поскольку Microsoft Access пересылает запросы к источнику данных ODBC, а не обрабатывает их на локальном уровне.


 Порядок событий элементов управления в формах

Порядок событий элементов управления в формах

События элемента управления возникают в форме при переводе фокуса на элемент управления и при изменении или обновлении данных в элементе управления.

Перевод фокуса на элемент управления

При переводе фокуса на элемент управления в форме — например, при открытии формы, содержащей один или несколько активных элементов управления, или при переходе на другой элемент управления в той же форме — возникают события «Вход» (Enter) и «Получение фокуса» (GotFocus) в следующем порядке:

Вход Ю Получение фокуса

Когда пользователь открывает форму, эти события возникают после событий, связанных с открытием формы, таких как «Открытие» (Open), «Включение» (Activate) или «Текущая запись» (Current), в такой последовательности:

Открытие (форма) Ю Включение (форма) Ю Текущая запись (форма) Ю Вход (элемент управления) Ю Получение фокуса (элемент управления)

При выводе фокуса из элемента управления в форме, например, при закрытии формы, в которой выводятся один или несколько активных элементов управления, или при переходе на другой элемент управления в той же форме, возникают события «Выход» (Exit) и «Потеря фокуса» (LostFocus) в следующем порядке:

Выход Ю Потеря фокуса

Когда пользователь закрывает форму, события «Выход» (Exit) и «Потеря фокуса» (LostFocus) возникают перед событиями, связанными с закрытием формы, такими как «Выгрузка» (Unload), «Отключение» (Deactivate) или «Закрытие» (Close):

Выход (элемент управления) Ю Потеря фокуса (элемент управления) Ю Выгрузка (форма) Ю Отключение (форма) Ю Закрытие (форма)

Изменение и обновление данных в элементе управления

Когда пользователь вводит в элемент управления в форме новые данные или изменяет существующие, а после этого переводит фокус на другой элемент управления, события «До обновления» (BeforeUpdate) и «После обновления» (AfterUpdate) возникают в следующем порядке:

До обновления Ю После обновления

События «Выход» (Exit) и «Потеря фокуса» (LostFocus) для изменяемого элемента управления возникают после событий «До обновления (BeforeUpdate)» и «После обновления (AfterUpdate)»:

До обновления Ю После обновления Ю Выход Ю Потеря фокуса

Когда пользователь изменяет текст, содержащийся в поле, или содержимое поля в поле со списком, возникает событие «Изменение» (Change). Данное событие возникает при любом изменении содержимого элемента управления, причем до перехода на другой элемент управления или на другую запись и следовательно, до возникновения событий «До обновления» (BeforeUpdate) и «После обновления» (AfterUpdate). Если курсор находится в поле, то при нажатии любой клавиши, соответствующей символу, возникают следующие события:

Клавиша вниз Ю Нажатие клавиши Ю Изменение Ю Клавиша вверх

Событие «Отсутствие в списке» (NotInList) возникает, когда пользователь вводит в поле со списком значение, отсутствующее в списке, и предпринимает попытку перехода на другой элемент управления или другую запись. Это событие возникает после событий клавиатуры и события «Изменение» (Change) поля со списком, но до любых событий элемента управления или формы. Если для свойства поля со списком Ограничиться списком (LimitToList) задано значение Да, то сразу после события «Отсутствие в списке» (NotInList) возникает событие формы «Ошибка» (Error):

Клавиша вниз Ю Нажатие клавиши Ю Изменение Ю Клавиша вверх Ю Отсутствие в списке Ю Ошибка

Для получения дополнительных сведений о событиях нажмите кнопку [image] .


 Порядок событий формы и подчиненной формы

Порядок событий формы и подчиненной формы

События формы возникают при открытии и закрытии форм, при переходах между формами и при обработке данных в форме.

Открытие и закрытие формы

При открытии формы события возникают в следующем порядке:

Открытие Ю Загрузка Ю Изменение размера Ю Включение Ю Текущая запись

Кроме того, если все элементы управления в форме являются отключенными или скрытыми, событие «Получение фокуса» (GotFocus) возникает в форме после события «Включение» (Activate), но до события «Текущая запись» (Current).

При закрытии формы события возникают в следующем порядке:

Выгрузка Ю Отключение Ю Закрытие

Если форма не содержит активных элементов управления, событие «Потеря фокуса» (LostFocus) возникает в форме после события «Выгрузка» (Unload), но до события «Отключение» (Deactivate).

Переходы между формами

При переходе из открытого окна формы в окно другой открытой формы возникает событие «Отключение» (Deactivate) первой формы и событие «Включение» (Activate) второй формы:

Отключение (форма 1) Ю Включение (форма 2)

Событие формы «Отключение (Deactivate)» возникает также при переходе из окна формы в другое окно Microsoft Access. Однако событие «Отключение» не возникает при переходе диалоговое окно, в окно формы со значением Да свойства Всплывающее окно (PopUp) или в окно другого приложения.

Примечание. При переходе в окно открытой формы событие «Открытие» (Open) не возникает, даже если переход в форму осуществляется с помощью макрокоманды «ОткрытьФорму» (OpenForm).

Обработка данных в форме

При перемещении по записям формы и изменении данных возникают события формы и события элементов управления. Например, при открытии формы возникает следующая цепочка событий:

Открытие (форма) Ю Загрузка (форма) Ю Изменение размера (форма) Ю Включение (форма) Ю Текущая запись (форма) Ю Вход (элемент управления) Ю Получение фокуса (элемент управления)

Аналогично, при закрытии формы возникают следующие события:

Выход (элемент управления) Ю Потеря фокуса (элемент управления) Ю Выгрузка (форма) Ю Отключение (форма) Ю Закрытие (форма)

При изменении данных в элементе управления события «До обновления» (BeforeUpdate) и «После обновления» (AfterUpdate), как для элемента управления, так и для формы, возникают до события «Выход» (Exit). Для получения дополнительных сведений о порядке событий элементов управления и событий формы нажмите кнопку [image] .

Работа с подчиненными формами

При открытии формы, содержащей подчиненную форму, подчиненная форма и ее записи загружаются до главной формы. Таким образом, события подчиненной формы и содержащихся в ней элементов управления, такие как «Открытие» (Open), «Текущая запись» (Current), «Вход» (Enter) и «Получение фокуса» (GotFocus), возникают до событий главной формы. Однако событие «Включение» (Activate) для подчиненных форм не возникает, поэтому при открытии формы, содержащей подчиненную форму, возникает только событие «Включение» главной формы.

Аналогично этому, при закрытии формы, содержащей подчиненную форму, подчиненная форма и ее записи выгружаются до главной формы. Событие «Отключение» (Deactivate) для подчиненных форм не возникает, поэтому при закрытии формы, содержащей подчиненную форму, возникает только событие «Отключение» главной формы. События элементов управления, формы и подчиненной формы возникают в следующем порядке.

  1. События элементов управления в подчиненной форме, такие как «Выход» (Exit) и «Потеря фокуса» (LostFocus)

  2. События элементов управления в главной форме (включая саму подчиненную форму)

  3. События формы, такие как «Отключение» (Deactivate) и «Закрытие» (Close)

  4. События подчиненной формы.

Для получения дополнительных сведений о событиях нажмите кнопку [image] .


 Порядок событий клавиатуры и мыши

Порядок событий клавиатуры и мыши

События клавиатуры возникают в имеющих фокус формах или элементах управления в форме при нажатиях клавиш или при передаче команд клавиатуры. События мыши возникают для форм, разделов форм и элементов управления в формах при нажатии кнопок мыши, если в этот момент указатель установлен на форме, разделе формы или элементе управления.

События клавиатуры

Если элемент управления в форме имеет фокус, а пользователь нажимает и отпускает клавишу или выполняет макрокоманду «КомандыКлавиатуры» (SendKeys), возникает следующая цепочка событий:

Клавиша вниз Ю Нажатие клавиши Ю Клавиша вверх

При нажатии или отпускании клавиши или передаче команды клавиатуры, соответствующей символу из набора ANSI, всегда возникают события «Клавиша вниз» (KeyDown), «Нажатие клавиши» (KeyPress) и «Клавиша вверх» (KeyUp). При нажатии и удерживании клавиши ANSI попеременно возникают события «Клавиша вниз», «Нажатие клавиши», «Клавиша вниз», «Нажатие клавиши» и т.д. Это продолжается до отпускания клавиши; при отпускании клавиши возникает событие «Клавиша вверх». Для просмотра набора символов ANSI нажмите кнопки [image] и [image] .

При нажатии и отпускании клавиши, которая не является клавишей ANSI, возникают события «Клавиша вниз» (KeyDown) и «Клавиша вверх» (KeyUp). Если пользователь нажимает и удерживает клавишу, не являющуюся клавишей ANSI, то до отпускания клавиши возникает и повторяется событие «Клавиша вниз»; при отпускании клавиши возникает событие «Клавиша вверх».

Если нажатие клавиши вызывает другое событие элемента управления, то другое событие возникает после события «Нажатие клавиши» (KeyPress), но до события «Клавиша вверх» (KeyUp). Например, если нажатие клавиши приводит к изменению текста в поле, то событие «Изменение» (Change) возникает в следующей цепочке событий:

Клавиша вниз Ю Нажатие клавиши Ю Изменение Ю Клавиша вверх

Если нажатие клавиши вызывает перевод фокуса из одного элемента управления на другой, то событие «Клавиша вниз» (KeyDown) возникает для первого элемента управления, а для второго — события «Нажатие клавиши» (KeyPress) и «Клавиша вверх» (KeyUp). Например, если пользователь изменяет данные в элементе управления и нажимает клавишу TAB для перехода на следующий элемент управления, то возникают следующие события:

  • первый элемент управления:

    Клавиша вниз Ю До обновления Ю После обновления Ю Выход Ю Потеря фокуса

  • второй элемент управления:

    Вход Ю Получение фокуса Ю Нажатие клавиши Ю Клавиша вверх

События мыши

Если указатель установлен на элементе управления в форме, и пользователь нажимает и отпускает кнопку мыши, то возникает следующая цепочка событий элемента управления:

Кнопка вниз Ю Кнопка вверх Ю Нажатие кнопки

Если элемент управления имеет фокус, а пользователь устанавливает указатель на другой элемент управления и нажимает кнопку мыши, возникают следующие события:

  • первый элемент управления:

    Выход Ю Потеря фокуса

  • второй элемент управления:

    Вход Ю Получение фокуса Ю Кнопка вниз Ю Кнопка вверх Ю Нажатие кнопки

Если пользователь устанавливает указатель на элемент управления в другой записи и нажимает кнопку мыши, то событие формы «Текущая запись» (Current) возникает до события «Вход» (Enter) элемента управления.

Двойной щелчок элемента управления приводит к возникновению обоих событий «Двойное нажатие кнопки» (DblClick) и «Нажатие кнопки» (Click). Например, если указатель установлен на элементе управления, не являющемся кнопкой, то двойное нажатие кнопки мыши вызывает следующую цепочку событий элемента управления:

Кнопка вниз Ю Кнопка вверх Ю Нажатие кнопки Ю Двойное нажатие кнопки Ю Кнопка вверх

При двойном щелчке кнопки эти события возникают после второго события «Нажатие кнопки» (Click).

Событие формы, раздела или элемента управления «Перемещение указателя» (MouseMove) возникает при перемещении указателя по форме, разделу или элементу управления. Это событие является независимым от других событий мыши.

Для получения дополнительных сведений о событиях клавиатуры нажмите кнопку [image] .

Для получения дополнительных сведений о событиях мыши нажмите кнопку [image] .


 Порядок событий записей в форме

Порядок событий записей в форме

События записи возникают в форме при переводе фокуса на запись, обновлении содержимого записи, удалении существующей записи или записей, а также при создании новой записи.

Перемещение фокуса по записям и обновление содержимого записей

При переводе фокуса на существующую запись в форме, вводе новых или изменении существующих данных в записи и при переходе на другую запись в форме возникает такая последовательность событий:

Текущая запись (форма) Ю До обновления (форма) Ю После обновления (форма) Ю Текущая запись (форма)

При выходе из измененной записи, но до входа в новую запись, возникают события «Выход» (Exit) и «Потеря фокуса» (LostFocus) последнего элемента управления, имевшего фокус. Эти события возникают после событий формы «До обновления» (BeforeUpdate) и «После обновления» (AfterUpdate):

До обновления (форма) Ю После обновления (форма) Ю Выход (элемент управления) Ю Потеря фокуса (элемент управления) Ю Текущая запись (форма)

При переводе фокуса с одного элемента управления в форме на другой возникают события каждого элемента управления. Например, в различных ситуациях возникают такие последовательности событий:

  • открытие формы и изменение данных в элементе управления:

    Текущая запись (форма) Ю Вход (элемент управления) Ю Получение фокуса (элемент управления) Ю До обновления (элемент управления) Ю После обновления (элемент управления)

  • перевод фокуса на другой элемент управления:

    Вход (элемент управления 1) Ю Потеря фокуса (элемент управления 1) Ю Вход (элемент управления 2) Ю Получение фокуса (элемент управления 2)

  • перевод фокуса на другую запись:

    До обновления (форма) Ю После обновления (форма) Ю Выход (элемент управления 2) Ю Потеря фокуса (элемент управления 2) Ю Текущая запись (форма)

Для получения дополнительных сведений о порядке событий элементов управления в формах нажмите кнопку [image] .

Удаление записей

Когда пользователь удаляет запись, в форме возникают следующие события, и Microsoft Access выводит диалоговое окно с приглашением подтвердить удаление:

Удаление Ю До подтверждения Del Ю После подтверждения Del

Если пользователь отменяет событие «Удаление» (Delete), то события «До подтверждения Del» (BeforeDelConfirm) и «После подтверждения Del» (AfterDelConfirm) не возникают и диалоговое окно не выводится.

Создание новой записи

При переводе фокуса на новую (пустую) запись в форме и создании новой записи путем ввода символов с клавиатуры, события возникают в следующем порядке:

Текущая запись (форма) Ю Вход (элемент управления) Ю Получение фокуса (элемент управления) Ю До вставки (форма) Ю После вставки (форма)

События «До обновления» (BeforeUpdate) и «После обновления» (AfterUpdate) для элементов управления в форме и для новой записи возникают после события «До вставки» (BeforeInsert), но до события «После вставки» (AfterInsert).

Для получения дополнительных сведений о событиях нажмите кнопку [image] .


 Порядок событий отчета и разделов отчета

Порядок событий отчета и разделов отчета

События отчета и разделов отчета возникают при открытии отчета для печати или предварительного просмотра, а также при закрытии отчета.

События отчета

При открытии отчета для печати или предварительного просмотра и последующем закрытии отчета или переходе в другое окно Microsoft Access события возникают в следующем порядке:

Открытие Ю Включение Ю Отключение Ю Закрытие

При переходе между двумя окнами открытых отчетов возникает событие «Отключение» (Deactivate) первого отчета и событие «Включение» (Activate) второго:

Отключение (отчет1) Ю Включение (отчет2)

Событие «Отключение» (Deactivate) отчета возникает также при переходе из окна отчета в другое окно Microsoft Access. Однако событие «Отключение» не возникает при переходе в диалоговое окно, в окно формы со значением Да свойства Всплывающее окно (PopUp) или в окно другого приложения.

При открытии отчета, созданного на основе запроса, Access генерирует событие «Открытие» (Open) до выполнения базового запроса. Это делает возможным ввод в отчет условий отбора с помощью макроса или процедуры обработки события, которые запускаются в ответ на событие «Открытие». Например, макрос или процедура обработки события позволяют открыть специальное диалоговое окно, через которое пользователь вводит в отчет условия отбора.

События разделов отчета

При печати или предварительном просмотре отчета события разделов отчета «Форматирование» (Format) и «Печать» (Print) возникают после событий отчета «Открытие» (Open) и «Включение» (Activate) и до событий отчета «Отключение» (Deactivate) и «Закрытие» (Close):

Открытие (отчет) Ю Включение (отчет) Ю Форматирование (раздел отчета) Ю Печать (раздел отчета) Ю Отключение (отчет) Ю Закрытие (отчет)

Кроме того, на стадии форматирования отчета или после завершения форматирования, но до возникновения события «Печать», могут возникнуть следующие события:

  • событие «Возврат» (Retreat) возникает при возвращении в предыдущий раздел на стадии форматирования;

  • событие «Отсутствие данных» (NoData) возникает при отсутствии выводящихся в отчете записей;

  • событие «Страница» (Page) возникает после завершения форматирования, но до начала печати. Пользователь имеет возможность использовать данное события для изменения оформления отчета при печати.

Для получения дополнительных сведений о событиях нажмите кнопку [image] .


 Query Field

Query Field

A query field represents data from a table linked to the query. By default, a query field inherits all the properties that it has in the underlying table or query. For example, if a table design specifies the display format of the Order Date field as Medium Date in the field's Format property, the Order Date field is formatted in the query recordset as Medium Date. Because the underlying field properties are the defaults, they aren't displayed on the property sheet.

If a field property is changed in the table design, the query field automatically inherits the change. If, however, you change a property within the query, the property setting within the table design is overridden. If the property is later changed in the table design, the change isn't reflected in the query.

You can set the properties for query fields within the Field Properties window of the query Design view.

To open the Field Properties window in query Design view for a query field, click Properties [image] on the Query Design toolbar.


Советы по выбору метода фильтрации для использования в таблице, запросе или форме

Фильтр по выделенному, фильтр по форме и поле «Фильтр для» являются самыми простыми способами отбора записей. Если можно легко найти и выделить в форме или таблице значение, которое должны содержать отбираемые записи, следует использовать фильтр по выделенному. Фильтр по форме используется для выбора искомых значений из списка без просмотра всех записей в таблице или форме или при указании нескольких условий отбора одновременно. Поле «Фильтр для» используется, если фокус ввода находится в поле формы или таблицы и нужно ввести конкретное искомое значение или выражение, результат которого будет использоваться в качестве условия отбора. Для создания сложных фильтров следует использовать окно расширенного фильтра.

Примечание. В отчетах нельзя создавать фильтры с помощью вышеперечисленных методов. Однако отчет (как и форма) может наследовать фильтр. Для получения дополнительных сведений нажмите кнопку [image] .

Возврат в раздел Создание фильтра в таблице, запросе или форме


Report

A report is a Microsoft Access database object that presents information formatted and organized according to your specifications. Examples of reports are sales summaries, phone lists, and mailing labels.


 Report Section

Report Section

A report section is part of a report such as a header, footer, or detail section.

You can set report section properties that are attributes of a report which affect the appearance or behavior of a specific section. For example, you can set the CanGrow property to specify whether the section will increase vertically to print all the data the section contains. Section properties are set in report Design view.


 Требования к запросам, используемым в качестве фильтров

Требования к запросам, используемым в качестве фильтров

Запрос, используемый как фильтр, должен соответствовать перечисленным ниже требованиям.

  • Запрос должен иметь ту же базовую таблицу или запрос, что и форма или таблица, к которым он применяется.

  • Запрос не должен включать другие таблицы или запросы.

  • Запрос должен быть запросом на выборку (а не перекрестным запросом или запросом на изменение).

  • Запрос не должен содержать поля, в которых суммируются значения, подсчитывается количество записей или выполняются любые другие групповые операции над значениями поля.


 Отладка программ Visual Basic

Отладка программ Visual Basic

Отладкой называют процесс поиска и исправления ошибок в программах Visual Basic. Существуют ошибки трех типов:

  • Ошибки при компиляции возникают в неверно составленных программных конструкциях. Примерами таких ошибок могут служить неполные пары инструкций (например, If и End If или For и Next) или ошибки, нарушающие правила языка Visual Basic (например, ошибочно записанные ключевые слова, пропущенные разделители или неверные типы данных).

    К ошибкам при компиляции относятся также ошибки синтаксиса, являющиеся результатом нарушения правил грамматики или пунктуации. Примерами таких ошибок могут служить неполные пары скобок или неверное количество аргументов, переданных в функцию.

  • Ошибки при выполнении возникают на стадии выполнения программы. К ошибкам при выполнении относятся недопустимые операции, такие как деление на нуль или запись в несуществующий файл.

  • Логическими ошибками называют ошибки, которые не мешают выполнению приложения, но приводят к неверным результатам.

Чтобы помочь пользователю обнаруживать ошибки любых типов и контролировать ход выполнения программ, в редакторе Visual Basic имеются средства отладки, позволяющие выполнять программы в пошаговом режиме, следить за изменением значений переменных или выражений и выполнять трассировку (регистрировать вызовы) процедур.

Примечание. Большинство средств отладки Microsoft Access становятся доступными после прерывания выполнения программы. Для получения дополнительных сведений нажмите кнопку


 Understanding Scope and Visibility

Understanding Scope and Visibility

Procedure-level scoping applies to variables and constants that are declared within a procedure. Public or private module-level scoping applies to variables, constants, user-defined types, and Declare statements which are included at the top of a module. It also applies to Sub, Function, Property Get, Property Let, and Property Set procedures defined within that module. For more information, search the help index for "Declare statement" or "Property procedures".

The following table indicates how different elements are scoped at the two different scoping levels.

Scoping level | Type of element | Scope | Notes
Procedure-level | Variables | Private |
 | Constants | Private |
Module-level | Variables | Private unless declared as Public |
 | Constants | Private unless preceded by Public keyword | You can't declare a public constant within a class module.
 | Declare statements | Public unless preceded by Private keyword | Declare statements within class modules must be preceded by the Private keyword.
 | User-defined types | Public unless preceded by Private keyword | User-defined types declared within class modules must be preceded by the Private keyword.
 | Procedures | Public unless preceded by Private keyword | Event procedures in form and report modules are private by default.

Notes

  • Public elements defined in a standard module are available to all procedures in the current database and in referencing databases, unless the module contains an Option Private Module statement. If a module contains an Option Private Module statement, public elements are available only to procedures in the current database.

  • Class modules are private by default. Public elements defined in a class module are available to all procedures in the current database only; they are never available to referencing databases. Note that form and report modules are class modules.

  • Variables, constants, procedures, user-defined types, and Declare statements defined in a Microsoft Access database are never available to projects in other applications besides Microsoft Access.

  • To refer to a module-level variable or procedure in a class module, preface it with the name of the class. For example, if you have declared a module-level variable varOrders in a class module named Class1, you would refer to the module-level variable as Class1.varOrders. You need to do this if you use this variable in a standard module or in the Debug window. Use brackets around the class name of the form if the form name is two or more words.

  • A module-level variable declared in a class module stays in scope as long as an instance of the class exists. When you destroy the instance of the class, the variable goes out of scope.

  • In a standard module, once you initialize a module-level variable, the variable retains its value, whether or not code is running, until the variable is assigned another value, code is reset, or the database is closed.

  • If you create procedures with identical names in a class module and in a standard module, the procedure in the standard module is always called unless you preface the procedure with the class name of the class module.


 Выбор между числовыми и денежными полями

Выбор между числовыми и денежными полями

Для хранения числовых данных в Microsoft Access существует два типа данных для полей: числовой и денежный.

Числовые поля используются для хранения числовых данных, которые должны использоваться в математических вычислениях, за исключением денежных расчетов, а также вычислений, требующих высокой точности. Тип и размер значений, которые могут находиться в числовом поле, можно изменить в свойстве Размер поля (FieldSize). Например, в занимающее 1 байт на диске поле с размеров «Байт» допускается ввод только целых чисел от (без десятичных знаков) от 0 до 255.

Денежный тип поля используют для предотвращения округления во время вычислений. В денежных полях обеспечивается 15 знаков слева от десятичной запятой и 4 знака справа. Денежное поле занимает 8 байт на диске.

Для числовых и денежных полей определен ряд встроенных форматов отображения. Для выбора встроенных форматов и для создания пользовательских форматов используется свойство Формат (Format). Для получения дополнительных сведений о создании пользовательских форматов нажмите кнопку [image] .

Для получения дополнительных сведений о создании числовых или денежных полей нажмите кнопку [image] .


 Выбор между текстовыми полями и полями MЕМО

Выбор между текстовыми полями и полями MЕМО

Для хранения данных в виде текста или комбинации текста и цифр в Microsoft Access существует два типа данных для полей: текстовые и поля МЕМО.

Текстовый тип данных используется для хранения таких данных, как имена, адреса, а также чисел, не требующих вычислений, например, номеров телефонов, инвентарных номеров или почтовых индексов. В текстовом поле может находиться до 255 символов. По умолчанию устанавливается размер поля 50 символов. Для указания максимально возможного числа символов, которые могут находиться в текстовом поле, определите свойство Размер поля (FieldSize).

Тип данных «Поле MЕМО» используется для хранения более 255 символов. В поле MЕМО может находится до 64 000 символов. Для хранения форматированного текста или длинных документов вместо поля MЕМО создайте поле объекта OLE. Для получения дополнительных сведений о полях OLE нажмите кнопку [image] .

В текстовых полях и полях MЕМО могут храниться только введенные символы, пустые символы для неиспользованных позиций в поле храниться не будут.

Для получения дополнительных сведений о создании текстовых полей или полей Memo [image] .


 Выбор между таблицей и отчетом при создании списка, раскрывающегося списка или поля со списком с помощью мастера

Выбор между таблицей и отчетом при создании списка, раскрывающегося списка или поля со списком с помощью мастера

В большинстве случаев таблицу можно использовать в качестве источника строк для списков, раскрывающихся списков и полей со списком, создаваемых с помощью мастера. Запросы используются в следующих случаях.

  • Для включения в список, раскрывающийся список или поле со списком вычисляемых полей. Например, следующее выражение позволяет объединить имя и фамилию: ПолноеИмя: [Имя] & " "& [Фамилия]. Такое вычисляемое поле следует определить в запросе, а затем включить в список, раскрывающийся список или поле со списком.

  • Для включения в список, раскрывающийся список или в поле со списком полей из нескольких таблиц.

Когда поля из таблицы или запроса отбираются с помощью мастера в форме, Microsoft Access создает инструкцию SQL на основе отбираемых полей и устанавливает в качестве значения свойства Источник строк (RowSource) списка или поля со списком имя этой инструкции SQL. Когда поля из таблицы или запроса отбираются с помощью мастера на странице доступа к данным, Access устанавливает в качестве значения свойства ListRowSource списка или раскрывающегося списка имя выбранной таблицы или запроса.

Примечание. Мастера недоступны для обособленных страниц доступа к данным или для страниц, указывающих на другую базу данных. В обоих случаях список или раскрывающийся список придется создавать без помощи мастера.


Snapshot Viewer Control

An ActiveX control (Snapview.ocx) that you use to view a snapshot report from Microsoft Internet Explorer version 3.0 or later, or from any application that supports ActiveX controls, such as Microsoft Access or Microsoft Visual Basic for Applications.


 Sorting And Grouping Box

Sorting And Grouping Box

The Sorting And Grouping box specifies the order of your data and define the group levels for a report.

To display the Sorting And Grouping box, click Sorting And Grouping [image] on the toolbar.


Table

A table is the fundamental structure of a relational database management system. In Microsoft Access, a table is an object that stores data in records (rows) and fields (columns). The data is usually about a particular category of things, such as employees or orders.


 Table Field

Table Field

Table fields are separate pieces of information that make up a record within a table. You can control the appearance of data, specify default values, and speed up searching and sorting by setting field properties in the Field Properties section of table Design view.

Microsoft Access uses field properties when you view or edit data. For example, the Format, InputMask, and Caption properties that you set affect the appearance of table and query databases. The controls on new forms and reports that are based on the table inherit these properties by default. You can use other properties to set rules for data or to require data entry in your fields, which Microsoft Access enforces whenever you add or edit data in a table.

To open a table in Design view, go to the Database window, click the Tables tab, select the table you want to open, and then click Design.


Выбор между типами рамки объекта и между вставкой и связыванием объекта в форму

Пример объекта | Тип рамки | Объект
Необновляемый логотип в торговой ведомости. | Рамка рисунка | Вставленный (если много места на диске, если нет, то связанный)
Рисунок в форме или отчете, который предполагается изменять | Свободная рамка объекта | Вставленный
Фрагмент электронной таблицы Microsoft Excel в отчете о продажах | Свободная рамка объекта | Связанный
Фотографии всех сотрудников, хранящиеся в таблице «Сотрудники» | Присоединенная рамка объекта | Вставленный
Краткие сведения о сотрудниках (созданные и хранящиеся в документе Word), доступные из формы «Сотрудники» | Присоединенная рамка объекта | Связанный (отображается как значок)

Связанные объекты автоматически обновляются в отчете при предварительном просмотре или печати. В форме они обновляются в соответствии со следующей таблицей.

Тип рамки объекта | Свойство | Момент обновления
Свободная рамка объекта | Параметры обновления (UpdateOptions): Автоматическое Блокировка (Locked): Нет | При открытии формы.
Присоединенная рамка объекта | Параметр обновления (UpdateOption): Автоматическое Доступ (Enabled): Да Блокировка (Locked): Нет | При переходе фокуса в присоединенную рамку объекта.


Использование существующей базы данных в различных версиях Microsoft Access

Предполагаемые действия

Использование однофайловой базы данных Access в нескольких версиях Microsoft Access

Использование приложения типа клиент-сервер с несколькими версиями Microsoft Access

Не можете сделать выбор?


Использование мастера преобразования в формат SQL Server

Предполагаемые действия

Преобразование базы данных Microsoft Access в формат SQL Server

Предпосылки и преимущества преобразования базы данных Microsoft Access в формат Microsoft SQL Server

Подготовка к преобразованию базы данных Microsoft Access в формат SQL Server

Сведения об источниках данных ODBC

Назначение устройств хранения и размеров для базы данных и журнала транзакций

Выбор таблиц, которые будут преобразованы в формат SQL Server

Выбор атрибутов таблиц, которые будут преобразованы в формат SQL Server

Выбор способа преобразования приложения в формат SQL Server

Порядок преобразования мастером преобразования в формат SQL Server синтаксиса SQL базы данных Microsoft Access в проект Microsoft Access


 Новые возможности: проект Microsoft Access

Новые возможности: проект Microsoft Access

  • Легкий способ создания приложений клиент/сервер. Проект Microsoft Access (.adp) представляет собой новый тип файлов Access, предоставляющих эффективный, естественный доступ к базам данных Microsoft SQL Server с помощью архитектуры компонентов OLE DB. С помощью проекта Access можно легко создать приложение типа клиент/сервер.

  • Работа с проектами Access. Работа с проектом Microsoft Access очень похожа на работу с базой данных Access. Процесс создания форм, отчетов, страниц доступа к данным, макросов и модулей одинаков. Подключившись к базе данных SQL Server, можно просматривать, создавать, изменять и удалять таблицы, представления, сохраненные процедуры и схемы баз данных с помощью средств разработки Microsoft SQL Server Design Tools.

  • Использование ядра MSDE (Microsoft Data Engine). MSDE представляет собой новую технологию, обеспечивающую совместимость локального хранения данных с Microsoft SQL Server 7.0. MSDE можно рассматривать как ядро обработки данных в архитектуре клиент/сервер, альтернативное ядру базы данных Microsoft Jet для файлового сервера. Технология MSDE разработана и оптимизирована для использования на малых компьютерах, таких как рабочие станции пользователей или малые серверы рабочих групп.

  • Преобразование данных и объектов в формат SQL Server с помощью мастера. Мастер преобразования в формат SQL Server преобразует базу данных Microsoft Access (.mdb) в новую или существующую базу данных Microsoft SQL Server версий 6.5 или 7.0, либо в новый проект Microsoft Access (.adp) путем преобразования данных и описаний данных и переноса объектов базы данных.


 Обновление данных в запросе, таблицы которого связаны отношением «один-ко-многим»

Обновление данных в запросе, таблицы которого связаны отношением «один-ко-многим»

Если запрос основан на отношении «один-ко-многим», то, возможно, изменить данные в результатах запроса будет нельзя. В приведенной ниже таблице указаны типы полей, изменить которые невозможно, а также другие возможные способы их изменения.

Тип поля | Решение
Объединенное поле на стороне «один» | Установите каскадное обновление между двумя таблицами. Для получения дополнительных сведений нажмите кнопку [image] .
Новые записи, если объединенное поле стороны «многие» не отображено в таблице | Добавьте в запрос объединенное поле со стороны «многие», чтобы разрешить ввод новых записей.
Объединенные поля на стороне «многие» после обновления данных на стороне «один» | Сохраните запись; после этого появляется возможность внести изменения в объединенное поле на стороне «многие».
Пустое поле таблицы на стороне «один» отношения «один-ко-многим» с существующим внешним объединением | Введите значения в поля из таблицы на стороне «многие», но только если объединенные поля на стороне «один» содержат значения для этой записи.
Новые записи, если весь уникальный ключ таблицы ODBC не является выходным | Выберите все ключевые поля таблиц ODBC для разрешения ввода в эти поля.


 Выбор типа поля счетчика

Выбор типа поля счетчика

Для создания полей, в которые при добавлении записи автоматически вводится число, в Microsoft Access существует тип данных счетчика. Созданный для записи номер уже не может быть удален или изменен. Поле счетчика может генерировать три типа чисел: последовательно возрастающие на единицу, случайные числа, а также коды репликации (также называемые GUID — глобальные уникальные идентификаторы). Наиболее часто используется счетчик последовательно возрастающих чисел. Такой тип счетчика удобно использовать как первичный ключ таблицы. Счетчик случайных чисел создает случайный номер для каждой записи в таблице. Код репликации используется при репликации базы данных для создания уникальных идентификаторов, обеспечивающих синхронизацию реплик. См. сведения о кодах репликации и их использовании.

Для получения дополнительных сведений о создании полей счетчика нажмите кнопку [image] .


Работа с базой данных

Предполагаемые действия

Настройка открытия кнопочной формы

Просмотр баз данных

Получение сведений о таблицах и их работе

Получение сведений о запросах и их работе

Получение сведений о формах и их работе

Получение сведений об отчетах и их работе

Получение сведений о страницах доступа к данным и их работе

Получение сведений о макросах и их работе


Работа с проектом Microsoft Access

Предполагаемые действия

Общие сведения об использовании проектов Microsoft Access

Сведения о проекте Microsoft Access

Архитектура OLE DB и Data Link

Ядро MSDE (Microsoft Data Engine)

Использование служебных программ баз данных Microsoft SQL Server из Microsoft Access

Оптимизация проекта Microsoft Access

Документация

Документация по Microsoft SQL Server

Сведения об учебном проекте Access и базе данных Microsoft SQL Server «Northwind»

Преобразование базы данных Access в формат проекта Access

Преобразование базы данных Microsoft Access в формат SQL Server

Использование мастера преобразования в формат SQL Server

Совместное использование и обновление данных

Использование проекта Microsoft Access в многопользовательской среде

Управление числом записей, загружаемых в форму или таблицу проекта Access

Обновление данных в проекте Microsoft Access или на странице доступа к данным

Сравнение базы данных Microsoft Access и проекта Microsoft Access

Сравнение объектов базы данных в базе данных Microsoft Access и проекте Microsoft Access

Сравнение типов данных в базе данных Microsoft Access и проекте Microsoft Access

Сравнение разделителей, операторов, констант и подстановочных знаков в базе данных Microsoft Access и проекте Microsoft Access

Сравнение синтаксиса языка SQL в базе данных Microsoft Access и проекте Microsoft Access

Сравнение функций Visual Basic для приложений и Microsoft SQL Server Transact-SQL


 Event Procedure Constants

Event Procedure Constants

AfterDelConfirm Event Procedure Constants

You can use the following constants with event procedures for the AfterDelConfirm event:

  • acDelete

  • acDeleteCancel

  • acDeleteOK

  • acDeleteUserCancel

BeforeDelConfirm Event Procedure Constants

You can use the following constants with event procedures for the BeforeDelConfirm event:

  • acDataAdded

  • acDataErrContinue

  • acDataErrDisplay

Button Mask Constants

You can use the following button mask constants with event procedures for the MouseDown, MouseUp, and MouseMove events:

  • acLeftButton

  • acMiddleButton

  • acRightButton

Key Mask Constants

You can use the following key mask constants with event procedures for the KeyDown, KeyUp, MouseDown, MouseUp, and MouseMove events:

  • acAltMask

  • acCtrlMask

  • acShiftMask

NotInList Event Procedure Constants

You can use the following constants with event procedures for the NotInList event:

  • acDataErrAdded

  • acDataErrContinue

  • acDataErrDisplay

Error Event Procedure Constants

You can use the following constants with event procedures for the Error event:

  • acDataErrContinue

  • acDataErrDisplay

Updated Event Procedure Constants

You can use the following constants with event procedures for the Updated event:

  • acOLEChanged

  • acOLEClosed

  • acOLERenamed

  • acOLESaved

ApplyFilter Event Procedure Constants

You can use the following constants with event procedures for the ApplyFilter event:

  • acApplyFilter

  • acCloseFilterWindow

  • acShowAllRecords

Filter Event Procedure Constants

You can use the following constants with event procedures for the Filter event:

  • acFilterAdvanced

  • acFilterByForm


Keycode Constants

You can use the following constants to represent keyboard values. These constants can be used In Microsoft Access in event procedures for the KeyDown and KeyUp events.

vbKey0 | vbKeyF5 | vbKeyNumpad4
vbKey1 | vbKeyF6 | vbKeyNumpad5
vbKey2 | vbKeyF7 | vbKeyNumpad6
vbKey3 | vbKeyF8 | vbKeyNumpad7
vbKey4 | vbKeyF9 | vbKeyNumpad8
vbKey5 | vbKeyF10 | vbKeyNumpad9
vbKey6 | vbKeyF11 | vbKeyO
vbKey7 | vbKeyF12 | vbKeyP
vbKey8 | vbKeyF13 | vbKeyPageDown
vbKey9 | vbKeyF14 | vbKeyPageUp
vbKeyA | vbKeyF15 | vbKeyPause
vbKeyAdd | vbKeyF16 | vbKeyPrint
vbKeyB | vbKeyG | vbKeyQ
vbKeyBack | vbKeyH | vbKeyR
vbKeyC | vbKeyHelp | vbKeyRButton
vbKeyCancel | vbKeyHome | vbKeyReturn
vbKeyCapital | vbKeyI | vbKeyRight
vbKeyClear | vbKeyInsert | vbKeyS
vbKeyControl | vbKeyJ | vbKeySelect
vbKeyD | vbKeyK | vbKeySeparator
vbKeyDecimal | vbKeyL | vbKeyShift
vbKeyDelete | vbKeyLButton | vbKeySnapshot
vbKeyDivide | vbKeyLeft | vbKeySpace
vbKeyDown | vbKeyM | vbKeySubtract
vbKeyE | vbKeyMButton | vbKeyT
vbKeyEnd | vbKeyMenu | vbKeyTab
vbKeyEscape | vbKeyMultiply | vbKeyU
vbKeyExecute | vbKeyN | vbKeyUp
vbKeyF | vbKeyNumlock | vbKeyV
vbKeyF1 | vbKeyNumpad0 | vbKeyW
vbKeyF2 | vbKeyNumpad1 | vbKeyX
vbKeyF3 | vbKeyNumpad2 | vbKeyY
vbKeyF4 | vbKeyNumpad3 | vbKeyZ


 Action Constants

Action Constants

You can use these constants when you use Visual Basic to run a method of the DoCmd object. Using these constants with a method of the DoCmd object is the same as running the corresponding action in a macro. Note that the DoMenuItem method is obsolete; you should use the RunCommand method and its associated constants in Microsoft Access 2000 instead. Constants listed below with an asterisk (*) have been replaced with other constants, but will still work for the method or methods listed.

DoCmd object constants | Used with
acActiveDataObject | GoToRecord
acAdd | OpenQuery, OpenTable, OpenStoredProcedure, OpenView
acAll | FindRecord
acAnywhere | FindRecord
acCopy | DoMenuItem
acCurrent | FindRecord
acCut | DoMenuItem
acDiagram | Close, CopyObject, DeleteObject, Rename, RepaintObject, Save, SelectObject, TransferDatabase
acDataAccessPage | Close, CopyObject, DeleteObject, Rename, RepaintObject, Save, SelectObject, TransferDatabase
acDataAccessPageBrowse | OpenDataAccessPage
acDataAccessPageDesign | OpenDataAccessPage
acDataForm | GoToRecord
acDataQuery | GoToRecord
acDataServerView | GoToRecord
acDataStoredProcedure | GoToRecord
acDataTable | GoToRecord
acDefault | Close, CopyObject, DeleteObject, Rename, RepaintObject, Save,SelectObject
acDelete | DoMenuItem
acDesign | OpenForm
acDialog | OpenForm
acDown | FindRecord
acDraft | PrintOut
acEdit | OpenQuery, OpenTable, OpenStoredProcedure, OpenView
acEditMenu | DoMenuItem
acEntire | FindRecord
acExit* | Quit (DoCmd object), Quit (Application object)
acExport | TransferDatabase, TransferSpreadsheet
acExportDelim | TransferText
acExportFixed | TransferText
acExportHTML | TransferText
acExportMerge | TransferText
acFile | DoMenuItem
acFirst | GoToRecord
acFilterNormal | ApplyFilter
acForm | Close, CopyObject, DeleteObject, Rename, RepaintObject, Save, SelectObject, TransferDatabase
acFormAdd | OpenForm
acFormatASP | OutputTo
acFormatDAP | OutputTo, SendObject
acFormatHTML | OutputTo, SendObject
acFormatIIS | OutputTo
acFormatRTF | OutputTo, SendObject
acFormatSNP | OutputTo
acFormatTXT | OutputTo, SendObject
acFormatXLS | OutputTo, SendObject
acFormBar | DoMenuItem
acFormDS | OpenForm
acFormEdit | OpenForm
acFormPropertySettings | OpenForm
acFormReadOnly | OpenForm
acGoTo | GoToRecord
acHidden | OpenForm
acHigh | PrintOut
acIcon | OpenForm
acImport | TransferDatabase, TransferSpreadsheet
acImportDelim | TransferText
acImportFixed | TransferText
acImportHTML | TransferText
acLast | GoToRecord
acLink | TransferDatabase, TransferSpreadsheet
acLinkDelim | TransferText
acLinkFixed | TransferText
acLinkHTML | TransferText
acLow | PrintOut
acMacro | Close, CopyObject, DeleteObject, Rename, RepaintObject, Save, SelectObject, TransferDatabase
acMedium | PrintOut
acMenuCheck | SetMenuItem
acMenuGray | SetMenuItem
acMenuUncheck | SetMenuItem
acMenuUngray | SetMenuItem
acMenuVer1X | DoMenuItem
acMenuVer20 | DoMenuItem
acMenuVer70 | DoMenuItem
acModule | Close, CopyObject, DeleteObject, Rename, RepaintObject, Save, SelectObject, TransferDatabase
acNew | DoMenuItem
acNewRec | GoToRecord
acNext | GoToRecord
acNormal | OpenForm
acObject | DoMenuItem
acObjectUpdate | DoMenuItem
acObjectVerb | DoMenuItem
acOutputDataAccessPage | OutputTo
acOutputForm | OutputTo
acOutputModule | OutputTo
acOutputQuery | OutputTo
acOutputReport | OutputTo
acOutputTable | OutputTo
acPages | PrintOut
acPaste | DoMenuItem
acPreview | OpenForm
acPrevious | GoToRecord
acPrintAll | PrintOut
acPrompt* | Close, Quit (DoCmd object), Quit (Application object)
acQuery | Close, CopyObject, DeleteObject, Rename, RepaintObject, Save, SelectObject, TransferDatabase
acQuitPrompt | Quit (DoCmd object), Quit (Application object)
acQuitSaveAll | Quit (DoCmd object), Quit (Application object)
acQuitSaveNone | Quit (DoCmd object), Quit (Application object)
acReadOnly | OpenQuery, OpenTable, OpenStoredProcedure, OpenView
acRecordsMenu | DoMenuItem
acRefresh | DoMenuItem
acReport | Close, CopyObject, DeleteObject, Rename, RepaintObject, Save, SelectObject, TransferDatabase
acSaveForm | DoMenuItem
acSaveFormAs | DoMenuItem
acSave* | Quit (DoCmd object), Quit (Application object)
acSaveNo | Close
acSavePrompt | Close
acSaveRecord | DoMenuItem
acSaveYes | Close
acSearchAll | FindRecord
acSelectAllRecords | DoMenuItem
acSelection | PrintOut
acSelectRecord | DoMenuItem
acSendDataAccessPage | SendObject
acSendForm | SendObject
acSendModule | SendObject
acSendNoObject | SendObject
acSendQuery | SendObject
acSendReport | SendObject
acSendTable | SendObject
acServerFilter | ApplyFilter
acServerView | Close, CopyObject, DeleteObject, Rename, RepaintObject, Save, SelectObject, TransferDatabase
acSpreadsheetTypeExcel3 | TransferSpreadsheet
acSpreadsheetTypeExcel4 | TransferSpreadsheet
acSpreadsheetTypeExcel5 | TransferSpreadsheet
acSpreadsheetTypeExcel7 | TransferSpreadsheet
acSpreadsheetTypeExcel8 | TransferSpreadsheet
acSpreadsheetTypeExcel9 | TransferSpreadsheet
acSpreadsheetTypeLotusWK1 | TransferSpreadsheet
acSpreadsheetTypeLotusWK3 | TransferSpreadsheet
acSpreadsheetTypeLotusWK4 | TransferSpreadsheet
acSpreadsheetTypeLotusWJ2 - Japanese version only | TransferSpreadsheet
acStart | FindRecord
acStoredProcedure | Close, CopyObject, DeleteObject, Rename, RepaintObject, Save, SelectObject, TransferDatabase
acTable | Close, CopyObject, DeleteObject, Rename, RepaintObject, Save, SelectObject, TransferDatabase
acToolbarNo | ShowToolbar
acToolbarWhereApprop | ShowToolbar
acToolbarYes | ShowToolbar
acUndo | DoMenuItem
acUp | FindRecord
acViewDesign | OpenQuery, OpenReport, OpenStoredProcedure, OpenTable, OpenView
acViewNormal | OpenQuery, OpenReport, OpenStoredProcedure, OpenTable, OpenView
acViewPreview | OpenQuery, OpenReport, OpenStoredProcedure, OpenTable, OpenView
acWindowNormal | OpenForm


 Miscellaneous Constants

Miscellaneous Constants

The following lists indicate miscellaneous intrinsic constants provided by Microsoft Access.

List Box and Combo Box Constants

You can use the following constants to fill a list box or combo box by using a function. You use these constants with a function that's the setting of the RowSourceType property, by using a special function format.

acLBClose | acLBGetRowCount
acLBEnd | acLBGetValue
acLBGetColumnCount | acLBInitialize
acLBGetColumnWidth | acLBOpen
acLBGetFormat |

SysCmd Method Constants

You can use the following constants with the SysCmd method:

acDataAccessPage | acSysCmdAccessVer
acDefault | acSysCmdClearHelpTopic
acDiagram | acSysCmdClearStatus
acForm | acSysCmdGetObjectState
acMacro | acSysCmdGetWorkgroupFile
acModule | acSysCmdIniFile
acObjStateDirty | acSysCmdInitMeter
acObjStateNew | acSysCmdProfile
acObjStateOpen | acSysCmdRemoveMeter
acQuery | acSysCmdRuntime
acReport | acSysCmdSetStatus
acServerView | acSysCmdUpdateMeter
acStoredProcedure | acTable
acSysCmdAccessDir |

ControlType Property, CreateControl and CreateReportControl Methods Constants

You can use one of the following constants with the ControlType property and the CreateControl and CreateReportControl methods to specify the control type:

acBoundObjectFrame | acOptionButton
acCheckBox | acOptionGroup
acComboBox | acPage
acCommandButton | acPageBreak
acCustomControl | acRectangle
acImage | acSubform
acLabel | acTabCtl
acLine | acTextBox
acListBox | acToggleButton
acObjectFrame |

Section Property, CreateControl and CreateReportControl Methods Constants

You can use one of the following constants with the Section property and the CreateControl and CreateReportControl methodss to specify a section on a form or report:

acDetail | acGroupLevel2Header
acFooter | acHeader
acGroupLevel1Footer | acPageFooter
acGroupLevel1Header | acPageHeader
acGroupLevel2Footer |

OLE Constants

The following table gives the OLE constants, and shows the language elements with which these constants can be used.

OLE constants | Used with
acOLEActivate | Action property
acOLEActivateDoubleClick | AutoActivate property
acOLEActivateGetFocus | AutoActivate property
acOLEActivateManual | AutoActivate property
acOLEChanged | Updated event
acOLEClose | Action property
acOLEClosed | Updated event
acOLECopy | Action property
acOLECreateEmbed | Action property
acOLECreateFromFile (same as acOLECreateLink) | Action property
acOLECreateLink | Action property
acOLECreateNew (same as acOLECreateEmbed) | Action property
acOLEDelete | Action property
acOLEDisplayContent | DisplayType property
acOLEDisplayIcon | DisplayType property
acOLEEither | OLETypeAllowed property
acOLEEmbedded | OLEType property, OLETypeAllowed property
acOLEFetchVerbs | Action property
acOLEInsertObjDlg | Action property
acOLELinked | OLEType property, OLETypeAllowed property
acOLENone | OLEType property
acOLEPaste | Action property
acOLEPasteSpecialDlg | Action property
acOLERenamed | Updated event
acOLESaved | Updated event
acOLESizeAutoSize (not used) | SizeMode property
acOLESizeClip | SizeMode property
acOLESizeStretch | SizeMode property
acOLESizeZoom | SizeMode property
acOLEUpdate | Action property
acOLEUpdateAutomatic | UpdateOptions property
acOLEUpdateFrozen (not used) | UpdateOptions property
acOLEUpdateManual | UpdateOptions property
acOLEVerbHide | Verb property
acOLEVerbInPlaceActivate | Verb property
acOLEVerbInPlaceUIActivate | Verb property
acOLEVerbOpen | Verb property
acOLEVerbPrimary | Verb property
acOLEVerbShow | Verb property

SpecialEffect Property Constants

The following list gives the constants you can use to specify or determine the state of the SpecialEffect property. The acEffectNormal, acEffectRaised, and acEffectSunken constants can also be used with the DatasheetCellsEffect property.

acEffectChisel | acEffectRaised
acEffectEtched | acEffectShadow
acEffectNormal | acEffectSunken

Gridlines Constants

The following list gives the constants you can use to specify or determine the state of the gridlines effect for an object in datasheet view. These constants can be used with the DatasheetGridlinesBehavior property.

acGridlinesBoth | acGridlinesNone
acGridlinesBothV2 | acGridlinesVert
acGridlinesHoriz |

Type Constants

The following list gives the constants you can use to determine if the current module is a standard module or a class module. These constants can be used with the Type property.

acClassModule acStandardModule

HyperlinkPart Function Constants

You can use the following constants with the HyperlinkPart function:

acAddress | acFullAddress
acDisplayedValue | acScreenTip
acDisplayText | acSubAddress

Procedure Constants

You can use the following constants with the ProcStartLine, ProcBodyLine, ProcOfLine, and ProcCountLines properties.

vbext_pk_Get | vbext_pk_Proc
vbext_pk_Let | vbext_pk_Set

Kind Property Constants

You can use the following constants with the Kind property of the Reference object:

vbext_rk_Project vbext_rk_TypeLib

Conditional Formatting Constants

You can use the following constants with the Type property of the FormatCondition object:

acExpression | acFieldValue
acFieldHasFocus |


 RunCommand Method Constants

RunCommand Method Constants

You can use these constants in Visual Basic when you use the RunCommand method. Using these constants with the RunCommand method is the same as supplying the value for the RunCommand action in a macro.

NotesThe acCmdDebugWindow constant will run the Immediate Window menu command.

Constants listed below with asterisks (* or **) have some specific restriction about when they can be used with the RunCommand method.

  • *Only available when the Object Browser is active.

  • **Menu items are available in both VBE and non-VBE views.

Constants shown in italic are included for backwards compatibility only.

acCmdAboutMicrosoftAccess | acCmdGoContinue | acCmdRename
acCmdAddWatch | acCmdGoForward | acCmdRenameColumn
acCmdAdvancedFilterSort | acCmdHideColumns | acCmdRepairDatabase
acCmdAlignBottom | acCmdHidePane | acCmdReplace**
acCmdAlignLeft | acCmdHideTable | acCmdReportHdrFtr
acCmdAlignRight | acCmdHorizontalSpacingDecrease | acCmdReset
acCmdAlignToGrid | acCmdHorizontalSpacingIncrease | acCmdResolveConflicts
acCmdAlignTop | acCmdHorizontalSpacingMakeEqual | acCmdRowHeight
acCmdAlignToShortest | acCmdHyperlinkDisplayText | acCmdRun
acCmdAlignToTallest | acCmdImport | acCmdRunMacro
acCmdAnalyzePerformance | acCmdIndent | acCmdRunOpenMacro
acCmdAnalyzeTable | acCmdIndexes | acCmdSave**
acCmdAnswerWizard | acCmdInsertActiveXControl | acCmdSaveAllModules
acCmdApplyDefault | acCmdInsertChart | acCmdSaveAs**
acCmdApplyFilterSort | acCmdInsertFile | acCmdSaveAsASP
acCmdAppMaximize | acCmdInsertFileIntoModule | acCmdSaveAsHTML
acCmdAppMinimize | acCmdInsertHyperlink | acCmdSaveAsIDC
acCmdAppMove | acCmdInsertLookupColumn | acCmdSaveAsQuery
acCmdAppRestore | acCmdInsertLookupField | acCmdSaveAsReport
acCmdAppSize | acCmdInsertObject | acCmdSaveLayout
acCmdArrangeIconsAuto | acCmdInsertPage | acCmdSaveModuleAsText
acCmdArrangeIconsByCreated | acCmdInsertPicture | acCmdSaveRecord
acCmdArrangeIconsByModified | acCmdInsertProcedure | acCmdSelectAll
acCmdArrangeIconsByName | acCmdInsertQueryColumn | acCmdSelectAllRecords
acCmdArrangeIconsByType | acCmdInsertRows | acCmDSelectDataAccessPage
acCmdAutoCorrect | acCmdInsertTableColumn | acCmdSelectForm
acCmdAutoDial | acCmdInvokeBuilder | acCmdSelectRecord
acCmdAutoFormat | acCmdJoinProperties | acCmdSelectReport
acCmdBookmarksClearAll | acCmdLastPosition | acCmdSend
acCmdBookmarksNext | acCmdLayoutPreview | acCmdSendToBack
acCmdBookmarksPrevious | acCmdLineUpIcons | acCmdSetControlDefaults
acCmdBookmarksToggle | acCmdLinkTables | acCmdSetDatabasePassword
acCmdBringToFront | acCmdListConstants | acCmdSetNextStatement
acCmdCallStack | acCmdLoadFromQuery | acCmdShowAllRelationships
acCmdChangeToCheckBox | acCmdMacroConditions | acCmdShowDirectRelationships
acCmdChangeToComboBox | acCmdMacroNames | acCmdShowMembers
acCmdChangeToImage | acCmdMicrosoftAccessHelpTopics | acCmdShowNextStatement
acCmdChangeToLabel | acCmdMicrosoftOnTheWeb | acCmdShowOnlyWebToolbar
acCmdChangeToListBox | acCmdMicrosoftScriptEditor | acCmdShowPaneDiagram
acCmdChangeToOptionButton | acCmdMoreWindows | acCmdShowPaneGrid
acCmdChangeToTextBox | acCmdNewDatabase | acCmdShowPaneView
acCmdChangeToToggleButton | acCmdNewObjectAutoDataAccessPage | acCmdShowTable
acCmdClearAll | acCmdNewObjectAutoForm | acCmdSingleStep
acCmdClearAllBreakpoints | acCmdNewObjectAutoReport | acCmdSizeToFit
acCmdClearGrid | acCmdNewObjectClassModule | acCmdSizeToFitForm
acCmdClearItemDefaults | acCmdNewObjectDataAccessPage | acCmdSizeToGrid
acCmdClose | acCmdNewObjectDiagram | acCmdSizeToNarrowest
acCmdCloseWindow | acCmdNewObjectForm | acCmdSizeToWidest
acCmdColumnWidth | acCmdNewObjectMacro | acCmdSnapToGrid
acCmdCompactDatabase | acCmdNewObjectModule | acCmdSortAscending
acCmdCompileAllModules | acCmdNewObjectQuery | acCmdSortDescending
acCmdCompileAndSaveAllModules | acCmdNewObjectReport | acCmdSortingAndGrouping
acCmdCompileLoadedModules | acCmdNewObjectStoredProcedure | acCmdSpelling
acCmdCompleteWord | acCmdNewObjectTable | acCmdSQLView
acCmdControlWizardsToggle | acCmdNewObjectView | acCmdStartupProperties
acCmdConvertDatabase | acCmdObjBrwFindWholeWordOnly* | acCmdStepOut
acCmdConvertMacrosToVisualBasic | acCmdObjBrwGroupMembers* | acCmdStepOver
acCmdCopy** | acCmdObjBrwHelp* | acCmdStepToCursor
acCmdCopyHyperlink | acCmdObjBrwShowHiddenMembers* | acCmdStopLoadingPage
acCmdCreateMenuFromMacro | acCmdObjBrwViewDefinition* | acCmdSubformDatasheet
acCmdCreateRelationship | acCmdObjectBrowser* | acCmdSynchronizeNow
acCmdCreateReplica | acCmdOLEDDELinks | acCmdTabControlPageOrder
acCmdCreateShortcut | acCmdOLEObjectConvert | acCmdTableNames
acCmdCreateShortcutMenuFromMacro | acCmdOLEObjectDefaultVerb | acCmdTabOrder
acCmdCreateToolbarFromMacro | acCmdOpenDatabase | acCmdTestValidationRules
acCmdCut** | acCmdOpenHyperlink | acCmdTileHorizontally
acCmdDataAccessPageBrowse | acCmdOpenNewHyperlink | acCmdTileVertically
acCmdDataAccessPageDesignView | acCmdOpenSearchPage | acCmdToggleBreakpoint
acCmdDatabaseProperties | acCmdOpenStartPage | acCmdToggleFilter
acCmdDataEntry | acCmdOpenTable | acCmdToolbarControlProperties
acCmdDatasheetView | acCmdOpenURL | acCmdToolbarsCustomize**
acCmdDateAndTime | acCmdOptions** | acCmdTransparentBackground
acCmdDebugWindow | acCmdOutdent | acCmdTransparentBorder
acCmdDelete** | acCmdOutputToExcel | acCmdUndo**
acCmdDeletePage | acCmdOutputToRTF | acCmdUnfreezeAllColumns
acCmdDeleteQueryColumn | acCmdOutputToText | acCmdUnhideColumns
acCmdDeleteRecord | acCmdPageHdrFtr | acCmdUserAndGroupAccounts
acCmdDeleteRows | acCmdPageNumber | acCmdUserAndGroupPermissions
acCmdDeleteTab | acCmdPageSetup | acCmdUserLevelSecurityWizard
acCmdDeleteTableColumn | acCmdParameterInfo | acCmdVerticalSpacingDecrease
acCmdDeleteWatch | acCmdPaste** | acCmdVerticalSpacingIncrease
acCmdDesignView | acCmdPasteAppend | acCmdVerticalSpacingMakeEqual
acCmdDiagramAddRelatedTables | acCmdPasteSpecial | acCmdViewCode
acCmdDiagramAutosizeSelectedTables | acCmdPreviewEightPages | acCmdViewDataAccessPages
acCmdDiagramDeleteRelationship | acCmdPreviewFourPages | acCmdViewDetails
acCmdDiagramLayoutDiagram | acCmdPreviewOnePage | acCmdViewDiagrams
acCmdDiagramLayoutSelection | acCmdPreviewTwelvePages | acCmdViewFieldList
acCmdDiagramModifyUserDefinedView | acCmdPreviewTwoPages | acCmdViewForms
acCmdDiagramNewLabel | acCmdPrimaryKey | acCmdViewGrid
acCmdDiagramNewTable | acCmdPrint** | acCmdViewLargeIcons
acCmdDiagramRecalculatePageBreaks | acCmdPrintPreview | acCmdViewList
acCmdDiagramRelationshipLabels | acCmdProcedureDefinition | acCmdViewMacros
acCmdDiagramViewPageBreaks | acCmdProperties | acCmdViewModules
acCmdDocMaximize** | acCmdPublish | acCmdViewQueries
acCmdDocMinimize** | acCmdPublishDefaults | acCmdViewReports
acCmdDocMove** | acCmdQueryAddToOutput | acCmdViewRuler
acCmdDocRestore** | acCmdQueryParameters | acCmdViewSmallIcons
acCmdDocSize** | acCmdQueryTotals | acCmdViewStoredProcedure
acCmdDocumenter | acCmdQueryTypeAppend | acCmdViewTableColumnNames
acCmdDuplicate | acCmdQueryTypeCrosstab | acCmdViewTableColumnProperties
acCmdEditHyperlink | acCmdQueryTypeDelete | acCmdViewTableKeys
acCmdEditingAllowed | acCmdQueryTypeMakeTable | acCmdViewTableNameOnly
acCmdEditRelationship | acCmdQueryTypeSelect | acCmdViewTables
acCmdEditTriggers | acCmdQueryTypeSQLDataDefinition | acCmdViewTableUserView
acCmdEditWatch | acCmdQueryTypeSQLPassThrough | acCmdViewToolbox
acCmdEncryptDecryptDatabase | acCmdQueryTypeSQLUnion | acCmdViewVerifySQL
acCmdEnd | acCmdQueryTypeUpdate | acCmdViewViews
acCmdExit | acCmdQuickInfo | acCmdWindowArrangeIcons
acCmdFavoritesAddTo | acCmdQuickPrint | acCmdWindowCascade
acCmdFavoritesOpen | acCmdQuickWatch | acCmdWindowHide
acCmdFieldList | acCmdRecordsGoToFirst | acCmdWindowSplit
acCmdFilterByForm | acCmdRecordsGoToLast | acCmdWindowUnhide
acCmdFilterBySelection | acCmdRecordsGoToNew | acCmdWordMailMerge
acCmdFilterExcludingSelection | acCmdRecordsGoToNext | acCmdZoom10
acCmdFind** | acCmdRecordsGoToPrevious | acCmdZoom100
acCmdFindNext** | acCmdRecoverDesignMaster | acCmdZoom150
acCmdFindNextWordUnderCursor | acCmdRedo | acCmdZoom200
acCmdFindPrevious | acCmdReference | acCmdZoom25
acCmdFindPrevWordUnderCursor | acCmdRefresh | acCmdZoom50
acCmdFitToWindow | acCmdRefreshPage | acCmdZoom75
acCmdFont | acCmdRegisterActiveXControls | acCmdZoomBox
acCmdFormatCells | acCmdRelationships | acCmdZoomSelection
acCmdFormHdrFtr | acCmdRemove |
acCmdFormView | acCmdRemoveFilterSort |
acCmdFreezeColumn | acCmdRemoveTable |
acCmdGoBack |  |


 Security Constants

Security Constants

You can assign permissions to database objects by using Visual Basic:

acSecFrmRptExecute | acSecMacReadDef
acSecFrmRptReadDef | acSecMacWriteDef
acSecFrmRptWriteDef | acSecModReadDef
acSecMacExecute | acSecModWriteDef

Note The constants beginning with acSec are available to set database object permissions only by using Visual Basic.


Action Query

An action query changes data or copies data. Action queries include append, delete, make-table, and update queries. In contrast, a select query doesn't copy or change data; it asks a question and returns a set of records.

Action query type | Description
Append | Adds the records in a query's result set to the end of an existing table.
Delete | Deletes a set of rows that match the criteria you specify.
Make-table | Creates a new table from the result set of an existing query.
Update | Changes a set of records according to criteria you specify.


 ActiveX Control (Form)

ActiveX Control (Form)

In addition to the built-in controls that appear in the toolbox, Microsoft Access supports ActiveX controls (formerly known as custom or OLE controls). An ActiveX control, like a built-in control, is an object that you place on a form to enable or enhance a user's interaction with an application. ActiveX controls have events and can be incorporated into other controls. These controls have an .ocx file name extension. The Calendar control is an example of an ActiveX control.

Control: | Tool:

Note This control should not be confused with the Dynamic HTML ActiveX control used on a data access page. For information about a ActiveXcontrol on a data access page, see ActiveX Control (Data Access Pages).


 ActiveX Control (Data Access Pages)

ActiveX Control (Data Access Pages)

In addition to the built-in controls that appear in the toolbox, Microsoft Access supports ActiveX controls (formerly known as custom or OLE controls). An ActiveX control, like a built-in control, is an object that you place on a form to enable or enhance a user's interaction with an application. ActiveX controls have events and can be incorporated into other controls. These controls have an .ocx file name extension. The Calendar control is an example of an ActiveX control.

Control: | Tool:
Calendar control | ActiveX control


Bound Control

A bound control is a control on a form or report that gets its contents from a field in the underlying table, query, or SQL statement. (The control's ControlSource property is set to a field name in the table, query, or SQL statement.) For example, a text box that displays an employee's last name is bound to the LastName field in the Employees table.


 Bound HTML Control

Bound HTML Control

The bound HTML control can be used to store HTML code in a field in a table, and when the data access page displays the values in that field, the HTML code performs the actions that you specified.

Tool:
Bound HTML control

When the field or column is placed on a data access page as a bound HTML control, the contents of the field are rendered as HTML and are not editable.

Notes

  • You can make the bound HTML control the default control for a grouped data access page. Set the DefaultControlType property of the data access page to Bound HTML.

  • You can use a bound HTML control to display calculations and all data on a grouped data access page. The page will load faster in Microsoft Internet Explorer 5 if you use HTML controls.

  • You can't use the navigation control to sort or filter on bound HTML controls in Page view or in Internet Explorer 5.


 Bound Hyperlink Control

Bound Hyperlink Control

The bound hyperlink control can add a bound hyperlink to a text field of a data access page.

Tool:
Bound hyperlink control

You can use a bound hyperlink when you want a different hyperlink address for each record in a table. As you move from record to record, you can click on the hyperlink and go to a different Web page for each record.


 Bound Object Frame Control

Bound Object Frame Control

A bound object frame control displays a picture, chart, or any OLE object stored in a table in a Microsoft Access database. For example, if you store pictures of your employees in a table in Microsoft Access, you can use a bound object frame to display these pictures on a form or report.

Control: | Tool:

Remarks

This control type allows you to create or edit the object from within the form or report by using the OLE server.

A bound object frame is bound to a field in an underlying table.

The field in the underlying table to which the bound object frame is bound must be of the OLE Object data type.

The object in a bound object frame is different for each record. The bound object frame can display linked or embedded objects. If you want to display objects not stored in an underlying table, use an unbound object frame or an image control.


 Chart Control (Forms and Reports)

Chart Control (Forms and Reports)

You can use the chart control to embed a chart that displays Microsoft Access data from a form or report. You can then edit the chart by using Microsoft Graph from within the form or report.

Control:

Note This control should not be confused with the Dynamic HTML image, hotspot image, or Office chart, or Office Spreadsheet control used on a data access page. For information about these control on a data access page, see Image, Hotspot, Office Chart, or Office Spreadsheet Control (Data Access Pages).

Remarks

When you place a chart control on a form or report, Microsoft Access displays the Chart Wizard to help you create the chart.

Note To embed or link a chart containing data from other applications, use an unbound object frame or bound object frame control.


 Check Box Control (Forms and Reports)

Check Box Control (Forms and Reports)

A check box on a form or report is a stand-alone control that display a Yes/No value from an underlying record source.

Control: | Tool:

Note This control should not be confused with the Dynamic HTML check box control used on a data access page. For information about a check box control on a data access page, see Check Box Control (Data Access Pages).

Remarks

When you select or clear a check box that's bound to a Yes/No field, Microsoft Access displays the value in the underlying table according to the field's Format property (Yes/No, True/False, or On/Off).

You can also use check boxes in an option group to display values to choose from.

It's also possible to use an unbound check box in a custom dialog box to accept user input.


 Check Box Control (Data Access Pages)

Check Box Control (Data Access Pages)

A check box on a data access page is a bound control that displays a Yes/No value from an underlying record source.

Control: | Tool:
Check box | Check Box control

Remarks

When you select or clear a check box that's bound to a Yes/No field, Microsoft Access displays the value in the underlying table according to the field's Format property (Yes/No, True/False, or On/Off).

You can also use check boxes in an option group to display values to choose from.

It's also possible to use an unbound check box in a custom dialog box to accept user input.


 Combo Box Control (Forms)

Combo Box Control (Forms)

The combo box control combines the features of a text box and a list box. Use a combo box when you want the option of either typing a value or selecting a value from a predefined list.

Control: | Tool:

Note This control should not be confused with the Dynamic HTML drop-down list box control used on a data access page. For information about a drop-down list box control on a data access page, see Drop-down List Box Control (Data Access Page).

Remarks

In Form view, Microsoft Access doesn't display the list until you click the combo box's arrow.

If you have Control Wizards on before you select the combo box tool, you can create a combo box with a wizard. To turn Control Wizards on or off, click the Control Wizards tool [image] in the toolbox.

The setting of the LimitToList property determines whether you can enter values that aren't in the list.

The list can be single- or multiple-column, and the columns can appear with or without headings.


 Command Button Control (Forms)

Command Button Control (Forms)

A command button on a form can start an action or a set of actions. For example, you could create a command button that opens another form. To make a command button do something, you write a macro or event procedure and attach it to the button's OnClick property.

Control: | Tool:

Note This control should not be confused with the Dynamic HTML command button control used on a data access page. For information about a command button control on a data access page, see Command Button Control (Data Access Pages).

Remarks

You can display text on a command button by setting its Caption property, or you can display a picture by setting its Picture property.

Tip You can create over 30 different types of command buttons with the Command Button Wizard. When you use the Command Button Wizard, Microsoft Access creates the button and the event procedure for you.


 Command Button Control (Data Access Pages)

Command Button Control (Data Access Pages)

A command button on a data access page can start an action or a set of actions. On a data access page, code written in either JavaScript or Visual Basic Script is attached to a command button using the Microsoft Visual Script Editor.

Control: | Tool:
Command button | Command Button control

Remarks

You can display text on a command button by setting its Value property.


 Crosstab Query

Crosstab Query

A crosstab query computes summary totals based on values for each row and column. It calculates a sum, average, count, or other type of total on records, and then groups the result by two types of information - one down the left side of the datasheet and the other across the top. For example, the Quarterly Orders by Product query in the Northwind sample database is a crosstab query.


 Drop-down List Box Control (Data Access Pages)

Drop-down List Box Control (Data Access Pages)

The drop-down list box control on a data access page combines some of the features of a text box and a list box. Use a drop-down list box control when you want the option of displaying and selecting a value from a predefined list.

Control: | Tool:
Combo box | ComboBox Tool

Remarks

In Page view, Microsoft Access doesn't display the list until you click the drop-down list box control's arrow.

If you have Control Wizards on before you select the drop-down list box control tool, you can create a drop-down list box with a wizard. To turn Control Wizards on or off, click the Control Wizards tool [image] in the toolbox.

You cannot enter values that aren't in the list.

The list can be single- or multiple-column, and the columns can appear with or without headings.


 Subform/Subreport Control

Subform/Subreport Control

The subform/subreport control embeds a form in a form or a report in a report.

Control: | Tool:

For example, you can use a form with a subform to present one-to-many relationships, such as one product category with the items that fall into that category. In this case, the main form can display the category ID, name, and description; the subform can display the available products in that category.

Tip Instead of creating the main form, and then adding the subform control to it, you can simultaneously create the main form and subform with a wizard. You can also create a subform or subreport by dragging an existing form or report from the Database window to the main form or report.


 Expand Control

Expand Control

The expand control can add a expand/collapse button to a data access page.

Tool:

Remarks

This control allows the user to display or hide records which have been grouped under another record.


 Hotspot Image Control

Hotspot Image Control

The hotspot image control can add an unbound image to a data access page.

Tool:
Hotspot Image control

Remarks

Use the hotspot image control to add an image to a data access page that, when clicked, displays another Web page from your hard drive, the Web, or another location. When you create a hotspot image control, you select the image to display on the page and the address of the file to jump to.

  • The Insert Picture dialog box displays a list of pictures that can be selected as the image.

  • The Insert Hyperlink dialog box allows the user to select the file or web page that will be linked to the image control.

In Page view, as the pointer passes over the image, the pointer changes to a hand, indicating that the image is a link that you can click to go to another page. You can also define ScreenTips and alternate text for the image.


 Hyperlink Control (Data Access Page)

Hyperlink Control (Data Access Page)

The hyperlink control can add a hyperlink to a data access page.

Tool:

When the hyperlink control is placed on a data access page, Microsoft Access displays the Insert Hyperlink dialog box. The Insert Hyperlink dialog box allows the user to select the file or web page that will be linked to the hyperlink control.


 Image Control (Forms and Reports)

Image Control (Forms and Reports)

The image control can add a picture to a form or report. For example, you could include an image control for a logo on an Invoice report.

Control: | Tool:

Note This control should not be confused with the Dynamic HTML image control used on a data access page. For information about a image control on a data access page, see Image Control (Data Access Page).

Remarks

You can use the image control or an unbound object frame for unbound pictures. The advantage of using the image control is that it's faster to display. The advantage of using the unbound object frame is that you can edit the object directly from the form or report.


 Image Control (Data Access Pages)

Image Control (Data Access Pages)

The image control can add a picture to a data access page. For example, you could include an image control for a logo on a Sales entry page.

Control: | Tool:
Image control | Image frame control

Remarks

You can use the image control or an unbound object frame for unbound pictures. The advantage of using the image control is that it's faster to display.


 Label Control (Forms and Reports)

Label Control (Forms and Reports)

Labels on a form or report display descriptive text such as titles, captions, or brief instructions. Labels have certain characteristics:

  • Labels don't display values from fields or expressions.

  • Labels are always unbound.

  • Labels don't change as you move from record to record.

Control: | Tool:

Note This control should not be confused with the Dynamic HTML label control used on a data access page. For information about a label control on a data access page, see Label Control (Data Access Pages).

Remarks

A label can be attached to another control. When you create a text box, for example, it has an attached label that displays a caption for that text box. This label appears as a column heading in the Datasheet view of a form.

When you create a label by using the Label tool, the label stands on its own - it isn't attached to any other control. You use stand-alone labels for information such as the title of a form or report, or for other descriptive text. Stand-alone labels don't appear in Datasheet view.


 Label Control (Data Access Pages)

Label Control (Data Access Pages)

Labels on an data access page display descriptive text such as titles, captions, or brief instructions. Labels have certain characteristics:

  • Labels don't display values from fields or expressions.

  • Labels don't change as you move from record to record.

Control: | Tool:
Label | Label control

Remarks

A label can be attached to another control. When you create a text box, for example, it has an attached label that displays a caption for that text box.

When you create a label by using the Label tool, the label stands on its own it isn't attached to any other control. You use stand-alone labels for information such as the title, or for other descriptive text.


 Line Control (Forms and Reports)

Line Control (Forms and Reports)

The line control displays a horizontal, vertical, or diagonal line on a form or report.

Control: | Tool:

Note This control should not be confused with the Dynamic HTML line control used on a data access page. For information about a line control on a data access page, see Line Control (Data Access Pages).

Remarks

You can use Line/Border Width [image] to change the line width. You can use Line/Border Color [image] to change the color of the border or make it transparent. You can change the line style (dots, dashes, and so on) of the border by using the BorderStyle property.


 Line Control (Data Access Pages)

Line Control (Data Access Pages)

The line control displays a horizontal, vertical, or diagonal line on a data access page.

Control: | Tool:
Line | Line control

Remarks

You can use the Height property to change the line width. You can use Line/Border Color [image] to change the color of the border or make it transparent.


 List Box Control (Forms)

List Box Control (Forms)

The list box control displays a list of values or alternatives. In many cases, it's quicker and easier to select a value from a list than to remember a value to type. A list of choices also helps ensure that the value that's entered in a field is correct.

Control: | Tool:

The list in a list box consists of rows of data. Rows can have one or more columns, which can appear with or without headings.

Note This control should not be confused with the Dynamic HTML list box control used on a data access page. For information about a list box control on a data access page, see List Box Control (Data Access Pages).

Remarks

If a multiple-column list box is bound, Microsoft Access stores the values from one of the columns.

You can use an unbound list box to store a value that you can use with another control. For example, you could use an unbound list box to limit the values in another list box or in a custom dialog box. You could also use an unbound list box to find a record based on the value you select in the list box.

If you don't have room on your form to display a list box, or if you want to be able to type new values as well as select values from a list, use a combo box instead of a list box.


 List Box Control (Data Access Pages)

List Box Control (Data Access Pages)

The list box control displays a list of values or alternatives. In many cases, it's quicker and easier to select a value from a list than to remember a value to type. A list of choices also helps ensure that the value that's entered in a field is correct.

Control: | Tool:
List box | List Box control

The list in a list box consists of rows of data. Rows can have one or more columns, which can appear with or without headings.

Remarks

If a multiple-column list box is bound, Microsoft Access stores the values from one of the columns.

You can use an unbound list box to store a value that you can use with another control. For example, you could use an unbound list box to limit the values in another list box or in a custom dialog box. You could also use an unbound list box to find a record based on the value you select in the list box.

If you don't have room on your form to display a list box, use a dropdown box instead of a list box.


 Movie Control

Movie Control

The movie control can add a video file (.avi or .mov) to a data access page.

Tool:
Movie control

Remarks

When this control is added to a data access page, the Video Browser dialog box is displayed to select the name of the movie file to be bound to this control.

You can specify whether you want the movie tobegin when the data access page is opened or when the mouse paases over the movie control.


 Office Chart Control

Office Chart Control

The Office chart control can add a chart to a data access page.

Tool:
Office Chart control

Remarks

You can use Microsoft Office Chart, a Microsoft Office Web Component, to create dynamic, interactive charts in a data access page that you can make available on Web sites for viewing in a browser. For example, you can create a chart using data in a table that stores sales figures. When you update the sales figures, the chart updates - so users can always see the latest information on their Web pages.

Microsoft Internet Explorer 5 or later is required to create a chart on a data access page, but users with Internet Explorer version 4.x or later can view the chart and see the chart updated in response to changes to data.


 Office Spreadsheet Control

Office Spreadsheet Control

The Office spreadsheet control can add a spreadsheet with some of the features of a Microsoft Excel spreadsheet to a data access page.

Tool:
Office Spreadsheet control

Remarks

You can add a spreadsheet control to a data access page to provide some of the same capabilities you have in a Microsoft Excel worksheet. You can enter values, add formulas, apply filters, and so on. Use the procedure below to create a spreadsheet in which you enter raw data, or import data from a Web page or text file. If within the spreadsheet you want to use data from other controls on the data access page, you need to refer to those controls in the appropriate spreadsheet cells.


 Option Button Control (Forms and Reports)

Option Button Control (Forms and Reports)

An option button on a form or report is a stand-alone control used to display a Yes/No value from an underlying record source

Control: | Tool:

Note This control should not be confused with the Dynamic HTML option button control used on a data access page. For information about a option button control on a data access page, see Option Button Control (Data Access Pages).

Remarks

When you select or clear an option button that's bound to a Yes/No field, Microsoft Access displays the value in the underlying table according to the field's Format property (Yes/No, True/False, or On/Off).

You can also use option buttons in an option group to display values to choose from.

It's also possible to use an unbound option button in a custom dialog box to accept user input.


 Option Button Control (Data Access Pages)

Option Button Control (Data Access Pages)

An option button on a data access page is a stand-alone control used to display a Yes/No value from an underlying record source

Control: | Tool:
Option button |

Remarks

When you select or clear an option button that's bound to a Yes/No field, Microsoft Access displays the value in the underlying table according to the field's Format property (Yes/No, True/False, or On/Off).

You can also use option buttons in an option group to display values to choose from.

It's also possible to use an unbound option button in a custom dialog box to accept user input.


 Option Group Control (Forms and Reports)

Option Group Control (Forms and Reports)

An option group on a form or report displays a limited set of alternatives. An option group makes selecting a value easy since you can just click the value you want. Only one option in an option group can be selected at a time.

An option group consists of a group frame and a set of check boxes, toggle buttons, or option buttons.

Control: | Tool:

Note This control should not be confused with the Dynamic HTML option group control used on a data access page. For information about a option group control on a data access page, see Option Group Control (Data Access Pages).

Remarks

If an option group is bound to a field, only the group frame itself is bound to the field, not the check boxes, toggle buttons, or option buttons inside the frame. Instead of setting the ControlSource property for each control in the option group, you set the OptionValue property of each check box, toggle button, or option button to a number that's meaningful for the field to which the group frame is bound. When you select an option in an option group, Microsoft Access sets the value of the field to which the option group is bound to the value of the selected option's OptionValue property.

Note The OptionValue property is set to a number because the value of an option group can only be a number, not text. Microsoft Access stores this number in the underlying table. In the preceding example, if you want to display the name of the shipper instead of a number in the Orders table, you can create a separate table called Shippers that stores shipper names, and then make the ShipVia field in the Orders table a Lookup field that looks up data in the Shippers table.

An option group can also be set to an expression, or it can be unbound. You can use an unbound option group in a custom dialog box to accept user input and then carry out an action based on that input.


 Option Group Control (Data Access Pages)

Option Group Control (Data Access Pages)

An option group on a data access page displays a limited set of alternatives. An option group makes selecting a value easy since you can just click the value you want. Only one option in an option group can be selected at a time.

An option group consists of a group frame and a set of check boxes, toggle buttons, or option buttons.

Control: | Tool:
Option group |

Remarks

If an option group is bound to a field, only the group frame itself is bound to the field, not the check boxes, toggle buttons, or option buttons inside the frame. Instead of setting the ControlSource property for each control in the option group, you set the Value property of each check box, toggle button, or option button to a number that's meaningful for the field to which the group frame is bound. When you select an option in an option group, Microsoft Access sets the value of the field to which the option group is bound to the value of the selected option's Value property.

Selected option in an option group

Note The Value property is set to a number because the value of an option group can only be a number, not text. Microsoft Access stores this number in the underlying table. In the preceding example, if you want to display the name of the shipper instead of a number in the Orders table, you can create a separate table called Shippers that stores shipper names, and then make the ShipVia field in the Orders table a Lookup field that looks up data in the Shippers table.

An option group can also be set to an expression, or it can be unbound. You can use an unbound option group in a custom dialog box to accept user input and then carry out an action based on that input.


 Page

Page

A Page object corresponds to an individual page on a tab control.

Each Page object can contain one or more controls, such as text boxes or option buttons. Controls on a Page object belong to that Page object's Controls collection. In order to work with a control on a Page object, you must refer to that control within the Page object's Control collection.

With the tab control, you can construct a single form or dialog box that contains several different tabs, and you can group similar options or data on each tab's page. For example, you might use a tab control on an Employees form to separate general and personal information.

Control: | Tool:


 Page Break Control

Page Break Control

The page break control marks the start of a new screen or printed page on a form or report.

Control: | Tool:

Remarks

In a form, a page break is active only when you set the form's DefaultView property to Single Form. Page breaks don't affect a form's datasheet.

In Form view, press the PAGE UP or PAGE DOWN key to move to the previous or next page break.

Position page breaks above or below other controls. Placing a page break on the same line as another control splits that control's data.


Parameter Query

A parameter query, which is a type of select query, extends the flexibility of another query by prompting you to enter certain criteria each time the query is run. A parameter query is not, strictly speaking, a separate kind of query; rather, it extends the flexibility of other queries.


 Office PivotTable Control

Office PivotTable Control

The Office PivotTable control can add a pivot list to a data access page.

Tool:
Office Pivot List control

Create a PivotTable list on a data access page

What is a PivotTable form ?


 Record Navigation Control

Record Navigation Control

The record navigation control can add record navigation to a data access page.

Tool:
Record Navigation control

Remarks

The record navigation control can contain buttons for the following:

First record | Previous record | Next record
Last record | New record | Delete
Save record | Undo | Sort ascending
Sort descending | Filter by selection | Toggle filter


 Rectangle Control (Forms and Reports)

Rectangle Control (Forms and Reports)

The rectangle control displays a rectangle on a form or report.

Control: | Tool:

Note This control should not be confused with the Dynamic HTML rectangle control used on a data access page. For information about a rectangle control on a data access page, see Rectangle Control (Data Access Page).

Remarks

You can move a rectangle and the controls in it as a single unit by dragging the mouse pointer diagonally across the entire rectangle to select all of the controls. The entire selection can then be moved to a new position.


 Rectangle Control (Data Access Pages)

Rectangle Control (Data Access Pages)

The rectangle control displays a rectangle on a data access page.

Control: | Tool:
Rectangle | Rectangle control

Remarks

You can move a rectangle and the controls in it as a single unit by dragging the mouse pointer diagonally across the entire rectangle to select all of the controls. The entire selection can then be moved to a new position.


 Scrolling Text Control

Scrolling Text Control

The scrolling text control can add animated text to a data access page.

Tool:
Scroll Text control

Remarks

You use a scrolling text control, often called a marquee, on a data access page to display moving text or text that scrolls. Scrolling text draws attention to a line of text, such as a headline or an important announcement. You display text that is contained in a field of your database by binding the scrolling text control to the field. You can customize scrolling text by setting options such as direction of travel, speed, and type of motion.

Some Web browsers cannot display scrolling text. In these cases, a normal line of text will be displayed in the control.


Select Query

A select query asks questions about the data stored in your database and returns the result of the query without changing the data. Once the result set is displayed, you can view and, in some cases, change the data in the underlying tables. In contrast, an action query does make changes to your data.


SQL-Specific Query

An SQL-specific query is one that can be created only by writing an SQL statement in SQL view. Union, pass-through, and data-definition queries are SQL-specific queries.

SQL-specific query type | Description
Union | An SQL-specific select query that combines corresponding fields from two or more tables or queries into one field. For example, a union query of the Customers table and the Suppliers table results in a snapshot that contains all the specified records from both the Customers table and the Suppliers table.
Pass-through | An SQL-specific query that sends commands directly to an SQL database server (such as Microsoft SQL Server). With pass-through queries, you work with the tables on the server instead of linking the tables to your Microsoft Access database.
Data-definition | An SQL-specific query that can create or delete an index, or create, alter, or delete a table.


 Tab Control

Tab Control

A tab control contains multiple pages on which you can place other controls, such as text boxes or option buttons. When a user clicks the corresponding tab, that page becomes active.

With the tab control, you can construct a single form or dialog box that contains several different tabs, and you can group similar options or data on each tab's page. For example, you might use a tab control on an Employees form to separate general and personal information.

Control: | Tool:


 Text Box Control (Forms and Reports)

Text Box Control (Forms and Reports)

Text boxes on a form or report display data from a record source. This type of text box is called a bound text box because it's bound to data in a field. Text boxes can also be unbound. For example, you can create an unbound text box to display the results of a calculation, or to accept input from a user. Data in an unbound text box isn't saved with the database.

Control: | Tool:

Note This control should not be confused with the Dynamic HTML text box control used on a data access page. For information about a text box control on a data access page, see Text Box Control (Data Access Pages).


 Text Box Control (Data Access Pages)

Text Box Control (Data Access Pages)

Text boxes on a data access page display data from a record source. This type of text box is called a bound text box because it's bound to data in a field. Text boxes can also be unbound. For example, you can create an unbound text box to display the results of a calculation, or to accept input from a user. Data in an unbound text box isn't saved with the database.

Control: | Tool:
Text box | Text Box control


 Toggle Button Control

Toggle Button Control

A toggle button on a form is a stand-alone control used to display a Yes/No value from an underlying record source.

Control: | Tool:

Remarks

When you click a toggle button that's bound to a Yes/No field, Microsoft Access displays the value in the underlying table according to the field's Format property (Yes/No, True/False, or On/Off).

Toggle buttons are most useful when used in an option group with other buttons.

You can also use a toggle button in a custom dialog box to accept user input.


 Unbound Object Frame Control

Unbound Object Frame Control

The unbound object frame control displays a picture, chart, or any OLE object not stored in a table. For example, you can use an unbound object frame to display a chart that you created and stored in Microsoft Graph.

Control: | Tool:

Remarks

This control allows you to create or edit the object from within a Microsoft Access form or report by using the application in which the object was originally created.

To display objects that are stored in a Microsoft Access database, use a bound object frame control.

The object in an unbound object frame is the same for every record.

The unbound object frame can display linked or embedded objects.

Tip You can use the unbound object frame or an image control to display unbound pictures in a form or report. The advantage of using the unbound object frame is that you can edit the object directly from the form or report. The advantage of using the image control is that it's faster to display.


 Параметры командной строки

Параметры командной строки

При запуске Microsoft Access с указанием параметров командной строки имеется возможность автоматически открыть базу данных, запустить макрос, указать учетную запись или пароль пользователя, а также задать другие параметры.

Параметры командной строки могут быть заданы для Microsoft Access в меню Windows Пуск или для ярлыка. Если задать параметры командной строки в меню Windows Пуск, то Microsoft Access будет запускаться из меню Пуск с этими параметрами. Если параметры запуска заданы для ярлыка, то Microsoft Access будет запускаться с заданными параметрами при использовании этого ярлыка. Для запуска Microsoft Access в нескольких режимах можно создать несколько ярлыков и поместить их на рабочий стол или в папку, либо добавить в меню Windows Пуск. Для получения дополнительных сведений выполните поиск в справочной системе Windows по ключевому слову «ярлыки».

Возврат в раздел Запуск Microsoft Access с параметрами командной строки


Создание базы данных

В Microsoft Access поддерживаются два способа создания базы данных. Имеется возможность создать пустую базу данных, а затем добавить в нее таблицы, формы, отчеты и другие объекты. Этот способ является наиболее гибким, но требует отдельного определения каждого элемента базы данных. Можно также воспользоваться мастером баз данных для создания всех необходимых таблиц, форм и отчетов для базы данных выбранного типа. Это простейший способ начального создания базы данных. В обоих случаях созданную базу данных можно в любое время изменить и расширить.

Возврат в раздел Создание базы данных


Сортировка записей в таблице, запросе или форме

При указании порядка сортировки в режиме формы или таблицы можно выполнить простую сортировку, то есть отсортировать все записи по возрастанию или по убыванию (но не в том и другом порядке одновременно). При указании порядка сортировки в режиме конструктора запроса или в окне расширенного фильтра можно выполнить сложную сортировку. Это означает, что по некоторым полям допускается сортировка по возрастанию, а по другим полям сортировка по убыванию.

Вне зависимости от того, в каком режиме указан порядок сортировки, Microsoft Access сохраняет порядок сортировки при сохранении формы или таблицы и автоматически применяет вновь его при повторном открытии объекта или при создании новой формы или отчета на основе этого объекта.

Возврат в раздел Сортировка записей в таблице, запросе, форме или подчиненной форме


Использование встроенных драйверов, драйверов ODBC и источников данных ODBC

Предполагаемые действия

Сведения по драйверам ODBC и встроенным драйверам доступа к внешним данным

Сведения по источникам данных ODBC

Настройка источников данных ODBC


 Открытие снимка отчета

Открытие снимка отчета

  1. Запустите проводник Windows.

  2. Найдите папку, содержащую снимок отчета.

  3. Дважды щелкните значок снимка отчета.

Дополнительные сведения об открытии снимка отчета.


Работа со снимками отчетов и программа «Просмотр снимков»

Предполагаемые действия

См. сведения по снимкам отчетов и программе «Просмотр снимков»

Создание снимка отчета

Создание снимка отчета с помощью макрокоманды «ВывестиВФормате» (OutputTo) и опубликование его в Web

Отправка снимка отчета по электронной почте с помощью макрокоманды «ОтправитьОбъект» (SendObject)


Добавление присоединенного объекта в форму или отчет

Предполагаемые действия

Создание и вставка объекта

Вставка существующего объекта

Вставка фрагмента существующего объекта

Связывание существующего объекта в форме

Связывание фрагмента существующего объекта

Примеры использования свободных, присоединенных, вставленных и связанных объектов

Не можете сделать выбор?


Добавление полей и работа с ними

Предполагаемые действия

Добавление полей к бланку запроса

Перемещение поля в бланке запроса

Удаление поля из бланка запроса

Вставка поля в бланк запроса

Отображение и скрытие поля в результатах запроса

Изменение имени поля

Установка значений свойств запроса, полей запроса или списков полей

Использование звездочки (*) в бланке запроса

Выполнение вычислений и работа с полями с использованием запроса


Добавление, удаление или форматирование заголовка, примечаний и других разделов формы или страницы

Предполагаемые действия

Добавление и удаление заголовка и примечаний формы или страницы

Изменение размеров заголовка, примечаний и других разделов в форме или отчете

Форматирование отчета, формы, раздела или выделенных элементов управления с помощью заранее определенных форматов


Добавление, удаление или форматирование заголовка и других разделов отчета или страницы

Предполагаемые действия

Добавление или удаление заголовка и примечаний отчета или страницы

Изменение размеров заголовка, примечаний и других разделов в форме или отчете

Форматирование отчета, формы, раздела или выделенных элементов управления с помощью заранее определенных форматов


Добавление, удаление или форматирование колонтитулов и других разделов страницы доступа к данным

Предполагаемые действия

Добавление несвязанного раздела на страницу доступа к данным

Добавление заголовка группы

Слияние заголовков двух групп

Добавление или удаление области примечаний группы

Добавление или удаление раздела подписей группы

Добавление или удаление раздела переходов группы

Изменение размеров колонтитулов и других разделов

Использование темы для форматирования страницы доступа к данным


Добавление свободного объекта в форму или отчет

Предполагаемые действия

Создание и вставка объекта

Вставка существующего объекта

Вставка фрагмента существующего объекта

Связывание существующего объекта

Связывание фрагмента существующего объекта

Примеры использования свободных, присоединенных, вставленных и связанных объектов

Не можете сделать выбор?


 Добавление свободного рисунка в форму, отчет или на страницу доступа к данным

Добавление свободного рисунка в форму, отчет или на страницу доступа к данным.

Добавление рисунка в форму, отчет или на страницу доступа к данным зависит от того, как и где будет использоваться рисунок

Данный раздел содержит справочные сведения по следующим вопросам.

Формы и отчеты

Страницы доступа к данным

Формы и отчеты

Способ добавления свободного рисунка зависит от того, должен ли рисунок включаться в форму или отчет как фоновый рисунок (подложка), занимающий все окно формы или отчета, или выводиться на экран в элементе управления. Если требуется добавить фоновый рисунок, следует использовать свойство Рисунок формы или отчета. Для того чтобы вывести рисунок в элементе управления, следует использовать рамку рисунка или свободную рамку объекта.

Выбор рамки рисунка или свободной рамки объекта зависит от того, требуется ли возможность прямого изменения рисунка в форме или отчете. Если рисунок изменять не нужно, следует добавлять рисунок с помощью рамки рисунка. Если предполагается изменять рисунок, добавляйте рисунок с помощью свободной рамки объекта. В этом случае, чтобы открыть приложение, в котором создавался рисунок, и внести требуемые изменения, установите указатель на объект в форме или отчете и дважды нажмите кнопку мыши. Для большинства свободных рисунков удобнее использовать рамку рисунка, поскольку она загружается намного быстрее, чем свободная рамка объекта.

Рисунок можно вставить в форму или отчет или связать его с ними. При этом вставленный рисунок автоматически сохраняется в файле базы данных и всегда является доступным. Если обновить такой рисунок в форме или отчете, он будет изменен и в базе данных.

Если рисунок связан, его можно просматривать и вносить изменения в форме или отчете. В этом случае изменения сохраняются в исходном файле объекта, а не в файле базы данных. Файл объекта можно обновлять независимо от базы данных. Последние изменения будут выведены на экран при следующем открытии формы или отчета. Связывание рисунков удобно при работе с большими файлами, которые нежелательно включать в файл базы данных, а также с файлами, используемыми в нескольких формах и отчетах. Если связанный файл объекта перемещен, необходимо повторно установить связь.

Возврат в начало

Страницы доступа к данным

Способ добавления свободного рисунка на страницу доступа к данным зависит от того, должен ли рисунок отображаться как фоновый рисунок (подложка), занимающий всю страницу, или выводиться на экран в элементе управления. Если требуется добавить фоновый рисунок, следует использовать меню Формат. Для того, чтобы вывести рисунок в элементе управления, следует использовать рамку рисунка.

После добавления рисунка на страницу доступа к данным, редактирование его становится невозможным. При вставке рисунка на страницу доступа к данным рисунок добавляется к файлам поддержки, сопровождающим страницу доступа к данным. Рисунок не хранится на странице доступа к данным. Поэтому, при перенесении страницы доступа к данным на другое место, не следует ее копировать. Вместо этого рекомендуется сохранить страницу доступа к данным в новом месте, при этом рисунок будет сохранен в нужном месте автоматически.

Возврат в начало

Возврат к добавлению свободного рисунка


Анализ и сопровождение базы данных Access

Предполагаемые действия

Создание кнопочной формы с помощью диспетчера кнопочных форм

Изменение кнопочной формы, созданной мастером баз данных

Управление запуском базы данных Microsoft Access или приложения

Импорт и связывание данных

Разбиение таблицы на несколько связанных таблиц с помощью мастера анализа таблиц

Просмотр и печать описаний объектов базы данных

Повышение производительности базы данных с помощью анализатора быстродействия

Сжатие базы данных для дефрагментации файла и освобождения места на диске

Автоматическое сжатие базы данных при закрытии

Создание реплики базы данных


Вычисление суммы, среднего, числа элементов или других итоговых значений для записей в запросе

Предполагаемые действия

Вычисление итоговых значений для всех записей в запросе

Вычисление итоговых значений для групп записей в запросе

Типы итоговых расчетов и их использование

Не можете сделать выбор?


 Изменение имени поля в запросе

Изменение имени поля в запросе

Поля запроса переименовывают, чтобы точнее описать их содержимое. Это особенно полезно при определении нового вычисляемого поля или при расчетах суммы, количества записей или других итоговых значений по данным существующего поля. В таких случаях, если пользователь не указывает имя, Microsoft Access по умолчанию использует имена типа «Выражение1» или «Sum_Количество». Новое имя поля должно удовлетворять соглашениям об именах объектов.

Предполагаемые действия

Изменение имен полей в бланке

Получение новых имен полей с помощью изменения значений свойства Подпись (Caption)

Не можете сделать выбор?


Создание и управление кнопочной формой

При создании базы данных с помощью мастера автоматически создается кнопочная форма, помогающая перемещаться по базе данных. На кнопочную панель помещаются кнопки, при нажатии которых открываются формы или отчеты (или открываются другие кнопочные формы, с помощью которых открываются дополнительные формы и отчеты), осуществляется выход из Microsoft Access или настраивается сама кнопочная форма. Диспетчер кнопочных форм позволяет создавать кнопочные формы, подобные тем, что создает мастер баз данных.

Предполагаемые действия

Создание кнопочной формы с помощью Диспетчера кнопочных форм

Создание новой кнопочной формы, которая открывается из стартовой кнопочной формы

Изменение существующей кнопочной формы

Выбор кнопочной формы, автоматически открываемой при открытии базы данных

Удаление кнопочной формы


Расчет итоговых значений, другие вычисления и работа со значениями поля

Предполагаемые действия

Выполнение вычислений и работа с полями с использованием запроса

Работа с пустыми полями в запросах

Создание перекрестного запроса без помощи мастера

Пример перекрестного запроса


Преобразование защищенной базы данных из предыдущей версии Microsoft Access

Предполагаемые действия

Преобразование защищенной базы данных из предыдущей версии Microsoft Access

Преобразование защищенной базы данных Microsoft Access версии 2.0, в случае, когда все пользователи имеют возможность запуска Microsoft Access 2000

Преобразование защищенной базы данных Microsoft Access версии 95 или 97, в случае, когда все пользователи имеют возможность запуска Microsoft Access 2000

Совместное использование защищенной базы данных, созданной в предыдущей версии Microsoft Access, в нескольких версиях Microsoft Access

Преобразование файла рабочей группы из ранних версий Microsoft Access


Копирование и перемещение элементов данных

Раздел содержит гиперссылки на следующие темы:

Копирование и перемещение данных

Копирование и вставка нескольких элементов

Копирование и перемещение файла данных Access, объекта базы данных или другого объекта

Копирование и перемещение данных

Копирование или перемещение данных из одного поля в другое

Копирование и перемещение данных из нескольких полей в режиме таблицы

Копирование и перемещение записей в таблицу

Копирование и перемещение записей в форму

Копирование и перемещение записей из Microsoft Access в другое приложение

Копирование и перемещение записей из другого приложения в Microsoft Access

Возврат в начало

Копирование и вставка нескольких элементов

Информация о копировании и вставке нескольких элементов

Копирование и вставка нескольких элементов

Очистка всех элементов в буфере обмена Office

Просмотр содержимого буфера обмена Office

Вставка определенных элементов из буфера обмена Office

Возврат в начало

Копирование и перемещение файла данных Access, объекта базы данных или другого объекта

Копирование и перемещение базы данных или проекта Microsoft Access

Копирование и перемещение поля, элемента управления, текста, макрокоманды или другого элемента

Копирование объектов базы данных

Использование команды Копировать для создания копии объекта базы данных

Использование команды Сохранить как для копирования объекта базы данных

Возврат в начало


Создание учетных записей пользователей и групп и предоставление разрешений на доступ

Работа с учетными записями пользователей и групп

Работа с разрешениями на доступ


Создание запроса на изменение

Предполагаемые действия

Создание запроса на создание таблицы

Создание запроса на удаление

Создание запроса на добавление записей

Создание запроса на обновление записей

Не можете сделать выбор?


Создание диаграммы в форме или отчете

В большинстве случаев для создания диаграммы используется мастер диаграмм. В зависимости от указанных данных мастер определит, должны ли данные из всех полей быть отображены на одной общей диаграмме, или же целесообразно создать диаграмму, связанную с записью. В последнем случае при переходе от одной записи к другой в диаграмме будут отображены только данные текущей записи. Однако, если необходима диаграмма, связанная с записью, а с помощью мастера была создана общая, то ее можно связать с определенной записью.

Для работы с мастером диаграмм на компьютере должен быть установлен Microsoft Graph 2000. Кроме того, можно создать диаграмму из существующей диаграммы во внешнем файле.

Предполагаемые действия

Добавление новой диаграммы в форму или отчет

Связывание существующей диаграммы в форме или отчете с определенной записью

Добавление существующей диаграммы в форму или отчет

Диаграммы в формах, отчетах и на страницах доступа к данным


Создание пользовательской встроенной справочной системы для формы, отчета или элемента управления

Предполагаемые действия

Создание пользовательской всплывающей подсказки для кнопки панели инструментов

Создание всплывающих подсказок для кнопок панели инструментов или команд меню

Создание подсказки для элемента управления в форме

Добавление сообщения, выводимого в строке состояния, для элемента управления или формы

Создание разделов, выводимых при нажатии кнопки Что это такое? на форме

Вставка в форму кнопки Что это такое?

Создание откомпилированного файла справочной системы для вывода справки по форме, отчету или элементу управления при нажатии клавиши F1

Не можете сделать выбор?


Создание формы без помощи мастера

Можно использовать последовательность действий, приведенную в этом разделе, для создания форм от начала и до конца. Некоторые шаги используются при создании любой формы. Остальные используются только при создании форм определенного вида, например отображающих данные из нескольких таблиц. Необходимо использовать только шаги, соответствующие типу создаваемой формы. Описание других задачи, связанных с созданием форм, можно найти с помощью мастера ответов.

Примеры форм

  1. Запустите форму

    Создание пустой формы и выбор источника записей

    Примеры инструментов для разработки формы

  2. Добавьте заголовок и примечания

    Использование разделов формы

    Добавление и удаление заголовка, примечания и колонтитулов формы

    Изменение размеров заголовка, примечаний и других разделов

  3. Отобразите данные, текст и итоги на форме

    Отображение данных, текста и итогов в текстовых полях, надписях и других элементах управления

    Отображение данных из базовой таблицы или запроса в поле

    Отображение названия или другого текста в надписи

    Создание итогового поля для записи

    Отображение списка значений для выбора в окне списке

    Автоматизация открытия другой формы с помощью добавления кнопки

    Дополнительная информация о надписях, текстовых полях и других элементах управления

  4. Отформатируйте, переместите, измените размер и выравнивание надписей, текстовых полей и других элементов управления

    Выделение текста в надписи, текстовом поле или другом элементе управления полужирным шрифтом, курсивом или подчеркиванием

    Изменение шрифта, размера шрифта и толщины линии для всех текстов и линий на форме

    Перемещение текстового поля или другого элемента управления вместе с подписью

    Изменение размера поля

    Выравнивание надписей, текстовых полей и других элементов управления

  5. Отобразите записи из связанной таблицы в подчиненной форме

    Примеры подчиненных форм

    Создание подчиненной формы

  6. Выполните окончательные настройки

    Просмотр спроектированной формы в режиме формы или таблицы


 Создание списка, раскрывающегося списка или поля со списком с подстановочными значениями

Создание списка, раскрывающегося списка или поля со списком с подстановочными значениями

Для того, чтобы создать список, раскрывающийся список, или поле со списком с подстановочными значениями необходимо знать ответы на два вопроса:

  • Откуда будут поступать строки в список?

  • Что будет происходить со значениями, выбранными из списка?

Источником строк для списка, раскрывающегося списка или поля со списком может служить список фиксированных значений, вводимый при создании элемента управления (это удобно, если список меняется редко), а также источник записей (удобно при частом обновлении списка). Например, фиксированный список следует использовать, для выбора обращения «г.» или «г-жа». С другой стороны, если в форме «Товары» требуется создать поле со списком поставщиков товаров, который приходится часто обновлять, поле со списком следует создать на базе источника записей. Это позволит искать значения по таблице «Поставщики» и отображать обновленный список поставщиков в форме «Товары».

Список, отображающий значения из таблицы “Поставщики”

При выборе значения в списке, раскрывающемся списке или поле со списком существует две возможности. Можно сохранить выбранное значение в таблице (но не в той, из которой берутся значения списка) или передавать его другому элементу управления. Например, если в списке «Поставщики» в предыдущей иллюстрации было выбрано значение "Pavlova, Ltd.", то автоматически происходит поиск значения первичного ключа («КодПоставщика») для "Pavlova, Ltd." в таблице «Поставщики», и то же самое значение устанавливается в поле «КодПоставщика» (внешний ключ) для текущей записи в таблице «Товары». Именно это значение и сохраняется. Вследствие того, что хранится значение, основанное на выборе из списка, он является присоединенным. (Следует отметить, что значение поля «Название» из таблицы «Поставщики» отображается в списке, но не сохраняется).

Если значение, выбранное в списке, требуется использовать для определения значения другого элемента управления в форме, следует создать свободный список, свободный раскрывающийся список или свободное поле со списком. Например, список или раскрывающийся список можно использовать для поиска подчиненных записей на странице доступа к данным. Кроме того, список или поле со списком могут применяться для отбора записей в другом списке или поле со списком в форме.

Дополнительные сведения

Создание присоединенных и свободных списков, полей со списком и раскрывающихся списков


Создание или просмотр страницы доступа к данным

Предполагаемые действия

Обзор страниц доступа к данным

Стратегии создания страниц доступа к данным

Создание страницы доступа к данным

Открытие страницы в режиме просмотра страницы или в Internet Explorer

Публикация страницы доступа к данным в папках Web или на Web-сервере

Разрешение вопросов при проектировании страниц доступа к данным


Создание, изменение и просмотр результатов запроса

Предполагаемые действия

Общие сведения о запросах

Создание запроса

Открытие или запуск запроса

Настройка запроса

Разработка и изменение запроса


Создание, изменение и печать отчетов

Предполагаемые действия

Общие сведения об отчетах

Создание отчета

Открытие отчета

Настройка отчета

Предварительный просмотр отчета

Печать отчета


Создание формы на базе нескольких таблиц

Предполагаемые действия

Использование мастера форм для создания обычной, иерархической или синхронизированной формы

Добавление подчиненной формы в существующую форму

Синхронизация записей на двух существующих формах

Создание формы без помощи мастера и использование запроса как источника данных

Не можете сделать выбор?


Создание и изменение макросов

Предполагаемые действия

Общие сведения о макросах

Создание макроса

Создание группы макросов


Создание и изменение процедур в модулях

Предполагаемые действия

Общие сведения о модулях

Информация о процедурах


Создание и изменение связей между таблицами

Предполагаемые действия

Общие сведения о связях между таблицами в базе данных

Определение связей между таблицами

Просмотр существующих связей между таблицами

Управление связями между таблицами с помощью клавиатуры


Создание отчета без помощи мастера

Можно использовать последовательность действий, приведенную в этом разделе, для создания отчетов от начала и до конца. Некоторые шаги используются при создании любого отчета. Остальные используются только при создании отчетов определенного вида, например требующих группирования записей по категориям или вычисляющих итоговые значения. Необходимо использовать только шаги, соответствующие типу создаваемого отчета. Описание других задач, связанных с созданием отчетов, можно найти с помощью мастера ответов.

Примеры отчетов

  1. Начните формирование отчета

    Создание пустого отчета и выбор источника записей

    Примеры инструментов для разработки отчета

  2. Выполните сортировку и группировку данных в отчете

    Примеры группировки записей в отчете

    Сортировка записей

    Группировка записей

    Изменение порядка сортировки или группировки

  3. Добавьте заголовок и примечания

    Использование разделов отчета

    Добавление заголовка и примечаний в отчет и колонтитулов на страницу

    Изменение размеров заголовка, примечаний и других разделов

  4. Отобразите данные, текст и итоги в отчете

    Отображение данных, текста и итогов в текстовых полях, надписях и других элементах управления

    Отображение данных из базовой таблицы или запроса в поле

    Отображение названия или другого текста в надписи

    Создание итогового поля для записи

    Вычисление итоговых значений для групп записей или для всех записей в текстовом поле отчета

    Отображение текущей даты в текстовом поле

    Отображение номера страницы в текстовом поле

    Дополнительная информация о надписях, текстовых полях и других элементах управления

  5. Отформатируйте, переместите, измените размер и выравнивание надписей, текстовых полей и других элементов управления

    Выделение текста в надписи, текстовом поле или другом элементе управления полужирным шрифтом, курсивом или подчеркиванием

    Изменение шрифта, размера шрифта и толщины линии для всех текстов и линий в отчете

    Перемещение текстового поля или другого элемента управления вместе с подписью

    Изменение размера надписи, текстового поля или другого элемента управления

    Выравнивание надписей, текстовых полей и других элементов управления

  6. Просмотрите и распечатайте отчет

    Установка полей и ориентации страницы

    Предварительный просмотр отчета

    Печать отчета


Создание запроса SQL

Предполагаемые действия

Получение дополнительных сведений о запросах SQL

Создание запроса-объединения

Создание запроса к серверу

Создание управляющего запроса

Создание подчиненного запроса


Создание процедуры

Предполагаемые действия

Создание пользовательской процедуры Function

Создание пользовательской процедуры Sub

Создание процедуры обработки события

Определение аргументов при использовании процедуры, инструкции или метода в программе Visual Basic


Создание и изменение паролей

Предполагаемые действия

Информация о создании и изменении паролей

Связывание таблиц из базы данных, защищенной паролем

Установка пароля базы данных

Удаление пароля базы данных

Создание и изменение пароля учетной записи пользователя

Снятие пароля учетной записи пользователя

Защита паролем программы на языке Visual Basic для приложений (VBA)


 Создание новой таблицы на основании уже существующих данных

Создание новой таблицы на основании уже существующих данных

В Microsoft Access существует два способа для создания таблиц на основе уже существующих данных.

  • Данные можно импортировать или связать из другой базы данных Microsoft Access или из файлов в формате других программ.

  • Создать таблицу, основанную на данных текущей таблицы, можно при помощи запроса на создание таблицы. Например, запросы на создание таблиц можно использовать для архивации старых записей, резервного копирования таблиц, выбора групп записей для экспорта в другую базу данных или для использования в качестве основы для отчетов, отражающих данные в определенный момент времени.

Предполагаемые действия

Создание таблицы при помощи импорта или связывания данных

Создание новой таблицы при помощи запроса на создание таблицы


Изменение запроса на поиск повторяющихся записей

Предполагаемые действия

Добавление полей

Удаление полей

Сортировка записей

Примечание. Нельзя удалить повторяющиеся записи путем преобразования запроса на поиск повторяющихся записей в запрос на удаление, так как запрос на поиск повторяющихся записей возвращает как повторяющиеся записи, так и их оригиналы. Если преобразовать этот запрос в запрос на удаление, будут удалены и те, и другие.

Однако существуют способы удаления повторяющихся записей без удаления оригиналов. Для получения дополнительных сведений нажмите кнопку [image] .


Изменение запроса на поиск записей, не имеющих подчиненных

Предполагаемые действия

Добавление полей

Удаление полей

Перемещение полей


Отладка макросов

Предполагаемые действия

Отладка макроса в пошаговом режиме

Устранение неполадок при работе с макросами


Отладка программ Visual Basic

Предполагаемые действия

Дополнительная информация об отладке

Использование точек останова для прерывания работы программы

Выполнение программы Visual Basic в пошаговом режиме

Просмотр значений переменных и выражений

Установка контрольных выражений в программе Visual Basic

Трассировка вызовов процедур при отладке программ Visual Basic

Использование области проверки при работе с Microsoft Visual Basic


Выбор между форматом и маской данных

В Microsoft Access существует два свойства полей, использование которых приводит к похожим результатам: свойство Формат поля (Format) и свойство Маска ввода (InputMask).

Свойство Формат поля (Format) используется для отображения данных в постоянном формате. Например, если свойство Формат поля (Format) для полей типа «Дата/время» установлено на Средний формат даты, то все вводимые данные будут отображаться в следующем формате: 12-янв-96. Если же пользователь базы данных введет число в виде 12.01.96 (или в другом допустимом виде), то при сохранении записи формат даты будет преобразован в Средний формат даты.

Свойство Формат поля (Format) влияет только на отображение значения, но никак не влияет на значение, хранимое в таблице. Формат отображения применяется только после сохранения введенных данных. До этого момента невозможно определить, в каком формате данные были введены в поле. Если вводом данных необходимо управлять, в дополнение к формату отображения данных или вместо него используйте маску ввода. Если требуется, чтобы данные отображались так, как они были введены, не устанавливайте свойство Формат поля (Format).

Для числовых, денежных, логических полей, а также полей даты/времени и счетчика существуют встроенные форматы отображения. Для этих типов полей можно установить и пользовательские форматы. Для текстовых полей, полей МЕМО и гиперссылок встроенных форматов нет, но для них можно указать пользовательские форматы. Для полей объектов OLE форматы отображения данных определить невозможно.

Для отображения текстовых констант в поле, содержащем позиции для заполнения, используйте свойство Маска ввода (InputMask). Например, если все вводимые в поле телефонные номера имеют одинаковый формат, то можно создать маску ввода, как показано на следующей иллюстрации.

Маски ввода обеспечивают позиции для заполнения

Маска ввода обеспечивает соответствие данных определенному формату, а также заданному типу значений, вводимых в каждую позицию. Например, в указанной выше маске ввода требуется, чтобы все вводимые телефонные номера содержали заданное число цифровых знаков и составляли полный номер телефона в США: код штата, код города и номер абонента.

Если для поля определены как формат отображения, так и маска ввода, то при добавлении и редактировании данных используется маска ввода, а параметр Формат поля (Format) определяет отображение данных после сохранения записи. Если используется и свойство Формат поля (Format), и свойство Маска ввода (InputMask), следите за тем, чтобы они не противоречили друг другу.

Дополнительные сведения

Использование свойства Формат поля (Format) для установки форматов отображения данных

Использование свойства Маска ввода (InputMask) для контроля вводимых данных


Редактирование диаграммы в форме или отчете

Предполагаемые действия

Сведения об изменении диаграмм в формах и отчетах

Изменение размера диаграммы в форме или отчете

Изменение внешнего вида диаграммы в форме или отчете

Изменение данных в базовой таблице или другом источнике записей для формы или отчета

Изменение запроса, указанного в свойстве Источник строк (RowSource) в форме или отчете

Повторное создание диаграммы в форме или отчете с помощью мастера диаграмм

Настройка диаграммы в форме или отчете


 Использование клавиш и их сочетаний для редактирования текста или данных

Использование клавиш и их сочетаний для редактирования текста или данных

Замечание. Если курсор не виден, нажмите клавишу F2 для его отображения.

Сочетание клавиш | Перемещение курсора внутри поля
СТРЕЛКА ВПРАВО | Перемещение на один символ вправо
CTRL+ СТРЕЛКА ВПРАВО | Перемещение на одно слово вправо
СТРЕЛКА ВЛЕВО | Перемещение на один символ влево
CTRL+СТРЕЛКА ВЛЕВО | Перемещение на одно слово влево
END | Перемещение в конец поля, размещенного в одну строку
CTRL+END | Перемещение в конец поля, размещенного в несколько строк
HOME | Перемещение в начало поля, размещенного в одну строку
CTRL+HOME | Перемещение в начало поля, размещенного в несколько строк

Сочетание клавиш | Копирование, перемещение и удаление текста
CTRL+C | Копирование выделенного фрагмента в буфер обмена
CTRL+X | Вырезание выделенного фрагмента с копированием в буфер обмена
CTRL+V | Вставка содержимого буфера обмена в место, указываемое курсором
BACKSPACE | Удаление выделенного фрагмента или символа слева от курсора
DELETE | Удаление выделенного фрагмента или символа справа от курсора
CTRL+DELETE | Удаление всех символов справа от курсора

Сочетание клавиш | Отмена изменений
CTRL+Z или ALT+BACKSPACE | Отмена ввода с клавиатуры
ESC | Отмена изменений в текущем поле или в текущей записи. Для отмены изменений и в поле, и в записи, нажмите клавишу ESC два раза. Первое нажатие отменяет изменения в поле, второе — в записи

Сочетание клавиш | Ввод данных в режиме таблицы или режиме формы
CTRL+; (точка с запятой) | Вставка текущей даты
CTRL+: (двоеточие) | Вставка текущего времени
CTRL+ALT+ПРОБЕЛ | Вставка в поле значения по умолчанию
CTRL+' (апостроф) | Вставка значения из того же поля предыдущей записи
CTRL+ПЛЮС (+) | Добавление новой записи
CTRL+МИНУС (-) | Удаление текущей записи
SHIFT+ENTER | Сохранение изменений в текущей записи
ПРОБЕЛ | Переключение значений флажка или переключателя
CTRL+ENTER | Вставка новой строки

Сочетание клавиш | Обновление полей текущими данными
F9 | Пересчет полей в окне
SHIFT+F9 | Обновление запроса к базовым таблицам. Для подчиненной формы обновление коснется только базовых таблиц подчиненной формы
F9 | Обновление содержимого подстановочного поля списка или поля со списком


Экспорт данных и объектов базы данных в базу данных или файл другого формата

Предполагаемые действия

Информация об экспорте

Дополнительная информация об экспорте данных и объектов базы данных в базу данных или файл другого формата

Обзор форматов данных, в которые может быть произведен экспорт

Экспорт и пересылка по электронной почте объектов базы данных

Экспорт объектов базы данных в базу данных или проект Microsoft Access

Пересылка объекта базы данных по электронной почте вложением

Пересылка страницы доступа к данным в тексте сообщения электронной почты

Экспорт во внешний файл или базу данных

Экспорт таблицы или запроса в файл Paradox или dBASE

Экспорт таблицы или запроса в таблицу базы данных SQL или в другой источник данных ODBC

Экспорт таблицы в текстовый файл с разделителями или в текстовый файл с фиксированной длиной записей

Спецификации импорта/экспорта и файлы Schema.ini

Экспорт на Web-страницу

Три типа Web-страниц, которые могут быть созданы в Microsoft Access

Описание программных продуктов в архитектуре клиент/сервер для работы с Web-страницами и поддерживаемых ими операционных систем

Создание страницы доступа к данным

Экспорт таблицы в формате статического HTML

Экспорт таблицы в генерируемый сервером формат HTML

Экспорт отчета в формате статического HTML

Опубликование Web-страниц

Экспорт страницы доступа к данным в формат Microsoft Excel

Экспорт сводного списка со страницы в сводный отчет Microsoft Excel

Экспорт электронной таблицы со страницы в книгу Microsoft Excel

Экспорт и обмен данными с Microsoft Word

Создание составного документа Microsoft Word из таблицы с помощью мастера

Экспорт таблицы в файл данных составного документа Microsoft Word

Сохранение объектов базы данных в файле формата RTF

Загрузка объекта в режиме таблицы, формы или отчета в Microsoft Word

Экспорт в формат Microsoft Excel или других электронных таблиц

Экспорт таблицы в файл электронной таблицы

Сохранение таблицы, формы или отчета в файле в формате Microsoft Excel

Загрузка таблицы, формы или отчета в Microsoft Excel

Автоматизация экспорта

Использование макросов или программ Visual Basic для автоматизации экспорта данных


Поиск и замена данных

Предполагаемые действия

Дополнительные сведения о поиске и замене данных

Поиск записи с помощью прокрутки в таблице или форме

Поиск записи по ее номеру

Использование диалогового окна Поиск

Использование диалогового окна Замена

Использование фильтра в базе данных Access

Использование запроса в базе данных Access

Использование фильтра в проекте Microsoft Access

Использование запроса в проекте Microsoft Access

Оптимизация выполнения операций поиска и замены


Получение справки в редакторе Visual Basic

Предполагаемые действия

Вызов встроенной справки Visual Basic

Копирование примеров программ Visual Basic из окна справки в окно программы


 Группировка записей по каждому значению в поле для группировки на странице доступа к данным

Группировка записей по каждому значению в поле для группировки на странице доступа к данным

См. сведения о группировке записей на странице доступа к данным.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Если поля, которые необходимо отображать, еще не в включены в раздел, то или добавьте поля на страницу в качестве присоединенных элементов HTML, или добавьте поля в качестве присоединенных текстовых полей.

    Примечания

    • Страница будет загружаться быстрее в режиме страницы и в Microsoft Internet Explorer при использовании присоединенных элементов HTML.

    • Если на странице нет ни одного раздела, можно добавить несвязанный раздел.
  3. Убедитесь в том, что элемент управления, по которому производится группировка, выделен.

  4. Выполните одно из следующий действий.
    • Для группировки по полю из таблицы или запроса нажмите кнопку Повысить уровень [image] на панели инструментов.

    • Для группировке по таблице или запросу нажмите кнопку Группировать по таблицам [image] на панели инструментов.

    Microsoft Access добавляет заголовок группы, который содержит элемент развертывания и раздел кнопок перехода с кнопками перехода. При группировании по одному полю Access перемещает элемент управления, по которому произведена группировка, в заголовок группы. При группировании по таблице или запросу Access перемещает в заголовок группы все элементы управления, включая элементы управления, которые в таблице или запросе присоединены к полям подстановки.

  5. Повторите шаги 3 и 4 столько раз, сколько уровней группировки требуется.

Примечания

  • Используйте кнопку Повысить уровень при группировке по элементу управления, который содержит значения, встречающиеся во многих записях. Например, таблица «Заказы» группируется по полю «Страна получателя». При добавлении элементов управления в заголовок группы, Microsoft Access группирует по каждому элементу управления в заголовке группы. Например, при добавлении элемента управления, присоединенного к полю «Область получателя», в заголовок «Заказы-Страна получателя», Access использует значения элементов и «Страна получателя», и «Область получателя» для группировки записей.

  • Используйте кнопку Группировать по таблицам в тех случаях, когда страница содержит поля из двух таблиц или запросов, которые имеют отношение «один-ко-многим», и необходимо сгруппировать таблицу или запрос на одной из сторон отношения. Например, на странице, которая содержит поля из таблиц «Заказы» и «Заказано», производится группировка по таблице «Заказы». При использовании кнопки Группировать по таблицам для группировки записей, Access группирует и сортирует записи с помощью первичного ключа — в данном случае, «КодЗаказа».

  • При группировке по элементу управления Access создает псевдоним элемента управления, добавляя префикс «Группа_» к имени элемента управления в свойстве Данные (ControlSource); например, «Группа_ДатаИсполнения: ДатаИсполнения». При ссылке на элемент управления в выражении или в свойстве, необходимо использовать псевдоним.

  • Имеется возможность задания другого стандартного порядка сортировки для каждого уровня группировки.

  • Если на странице имеются два и более уровня группировки, появляется возможность просмотра данных в режиме страницы или в Internet Explorer. Однако добавлять, редактировать и удалять данные в этом случае нельзя.


 Переименование поля

Переименование поля

Изменение имени поля в бланке запроса приводит к изменению заголовка столбца в запросе в режиме таблицы. Кроме того, если на основе запроса создать новый объект, такой как форма, отчет или страница доступа к данным, в новом объекте будет использовано новое имя поля. Например, если создать элемент управления для вывода значений переименованного поля, то новое имя поля будет использовано для имени элемента управления и в его подписи. Имя поля базовой таблицы при этом не изменяется. Это имя также не изменяется в формах и отчетах, которые были созданы на основе запроса до изменения имени поля.

Примечание. Изменение имени поля в текущем бланке запросе не влияет на запрос в режиме таблицы, если в базовой таблице или запросе было задано значение свойства Подпись (Caption).

Чтобы использовать новое имя поля только в заголовках столбцов в режиме таблицы или как подпись полей в формах, отчетах и страницах доступа к данным, следует установить для этого поля свойство Подпись (Caption), а не переименовывать поле в бланке.

Возврат в изменение имени поля в запросе


Предотвращение появления повторяющихся записей

В Microsoft Access запись считается уникальной, если значение хотя бы одного поля записи отличается от значения того же поля в любой другой записи. В запросе не обязательно выводить все поля записей из базовых таблиц или запросов. Если поле, отличающее одну запись от другой, не включено в бланк запроса, то в результирующем наборе записей могут появиться одинаковые записи. Например, если в бланк запроса добавлены только поля «Фамилия» и «Страна», появятся одинаковые записи, если несколько сотрудников имеют одну и ту же фамилию и живут в одной стране. В базовой таблице эти записи не являются одинаковыми, так как поле «КодСотрудника» является уникальным для каждой записи.

Существует возможность отображения записей, уникальность которых определяется всеми полями в базовой таблице или запросе, а не только полями в бланке запроса, а также уникальных записей, определяемых полями, включенными в бланк запроса. При любом из этих вариантов в запросе будет выведена только одна запись, а не все повторяющиеся.

Возврат в раздел Запрет на вывод в результате запроса повторяющихся записей


Добавление свободного рисунка в форму, отчет или на страницу доступа к данным

Предполагаемые действия

Примеры использования свободных, присоединенных, вставленных и связанных объектов в формах и отчетах

Добавление фоновых рисунков

Добавление фонового рисунка в форму

Добавление фонового рисунка в отчет

Добавление фонового рисунка на страницу доступа к данным

Добавление рисунков в элементы управления

Добавление рисунка в форму, отчет или на страницу доступа к данным с помощью элемента управления «Рисунок»

Создание и вставка рисунка с помощью свободной рамки объекта в форму или отчет

Вставка существующего рисунка с помощью свободной рамки объекта в форму или отчет

Вставка фрагмента существующего рисунка с помощью свободной рамки объекта в форму или отчет

Связывание рисунков

Связывание существующего рисунка с помощью свободной рамки объекта с формой или отчетом

Связывание фрагмента существующего рисунка с помощью свободной рамки объекта с формой или отчетом

Не можете сделать выбор?


 Использование Access для создания запросов

Использование Access для создания запросов

Часто запросы в Microsoft Access создаются автоматически, и пользователю не приходится самостоятельно их создавать.

  • Для создания запроса, являющегося основой формы, отчета или страницы доступа к данным, попытайтесь использовать мастер форм, мастер отчетов или мастер страниц доступа к данным. Мастера создают формы, отчеты и страницы доступа к данным и инструкции SQL для объектов, основанных на нескольких таблицах. Инструкции SQL можно сохранить в качестве запроса.

  • Чтобы упростить создание запросов, которые будут выполняться независимо или использоваться как базовые для нескольких форм или отчетов, пользуйтесь мастерами запросов. Мастера запросов автоматически выполняют основные действия в зависимости от ответов пользователя на поставленные вопросы. Если было создано несколько запросов, мастера можно также использовать для быстрого создания структуры запроса. Для настройки запроса переключитесь в режим конструктора.

  • Для создания запросов на основе обычного фильтра, фильтра по выделенному фрагменту или поля «Фильтр для», сохраните фильтр как запрос.

Если ни один из перечисленных методов не удовлетворяет требованиям, создайте самостоятельно запрос в режиме конструктора.

Возврат в раздел о создании запроса


Импорт и связывание данных и импорт объектов базы данных

Предполагаемые действия

Сведения об импорте и связывании

Дополнительные сведения об импорте и связывании данных и импорте объектов базы данных

Дополнительные сведения для принятия решения об импорте или связывании таблиц

Обзор источников данных, которые Microsoft Access может импортировать или связать

Импорт объектов базы данных

Импорт и связывание объектов из другой базы данных или проекта Microsoft Access.

Импорт объектов базы данных из базы данных или проекта Microsoft Access

Импорт и связывание данных из файлов HTML или Web-компонентов

Импорт и связывание (только для чтения) таблиц и списков HTML

Импорт и связывание данных (только для чтения) на серверах Интернета в протоколах FTP или HTTP

Импорт Web-страницы или текстового файла в электронную таблицу на странице доступа к данным

Импорт и связывание данных из других программ или в других форматах файлов

Сведения о таблице «Ошибки импорта»

Импорт и связывание файлов dBASE

Импорт и связывание таблиц Paradox

Импорт и связывание таблиц базы данных SQL или данных из других источников данных ODBC

Импорт и связывание данных из Microsoft Outlook и с сервера Microsoft Exchange

Импорт или связывание данных из электронных таблиц

Импорт или связывание текстового файла с разделителями и текстового файла с фиксированной длиной записей

Спецификации импорта/экспорта и файлы Schema.ini

Импорт базы данных Microsoft Works

Управление связанными таблицами

Использование таблицы MSysConf в базе данных Microsoft Access со связанными базами данных SQL

Удаление связи с таблицей в базе данных Microsoft Access

Просмотр, обновление и изменение имени файла и пути к связанной таблице в базе данных Microsoft Access

Переименование и настройка свойств связанных таблиц в базе данных Microsoft Access

Повышение производительности при работе со связанной таблицей в базе данных Microsoft Access

Автоматизация импорта

Автоматизация импорта данных с помощью макроса или программы Visual Basic


Отключение и скрытие текста или элемента управления на странице доступа к данным

Предполагаемые действия

Отключение элемента управления и разрешение только чтения данных в текстовом поле или в другом элементе управления

Отображение и скрытие данных в тестовых полях и в других элементах управления


 Изменение фильтра в окне расширенного фильтра

Изменение фильтра в окне расширенного фильтра

Структура фильтра и содержимое бланка могут быть изменены во время работы с таблицей, запросом или формой в окне расширенного фильтра.

Предполагаемые действия с бланком

Добавление поля

Вставка поля между другими полями

Перемещение поля

Добавление столбца

Удаление поля или столбца

Изменение ширины столбца

Вставка или удаление строки условия отбора

Ввод условия отбора

Указание порядка сортировки отобранных записей

Очистка бланка


Изменение фильтра в окне фильтра в таблице, запросе или форме

Пользователь имеет возможность изменить фильтр. Допускается добавление в пустые поля значений, которые должны содержать отобранные записи, удаление и изменение значений в полях, а также любые из перечисленных ниже изменений.

Предполагаемые способы изменения фильтра

Очистка всех полей в окне обычного фильтра

Удаление вкладки Или в нижней части окна обычного фильтра

Введение выражения


 Перемещение, изменение размера, выравнивание и форматирование полей или других элементов управления в форме или отчете

Перемещение, изменение размера, выравнивание и форматирование полей или других элементов управления в форме или отчете

В формах и отчетах для просмотра данных из полей, включения описательного текста и добавления декоративных линий используются поля и другие элементы управления.

Предполагаемые действия

Перемещение элемента управления и его подписи

Независимое перемещение элемента управления и его подписи

Одновременное перемещение нескольких элементов управления

Перевод элементов управления на передний или задний план

Изменение размеров элемента управления

Изменение размеров элемента управления по размерам его содержимого

Выравнивание размеров нескольких элементов управления

Привязка размеров элементов управления к сетке

Выравнивание нескольких элементов управления

Выравнивание элементов управления при помощи сетки

Размещение элементов управления с равными интервалами

Увеличение и уменьшение интервалов между элементами управления

Изменение выравнивания текста в элементе управления

Изменение формата данных в элементе управления

Группирование элементов управления

Форматирование отчета, формы, раздела или выделенных элементов управления с помощью заранее определенных форматов


Перемещение, изменение размера, выравнивание и форматирование полей или других элементов управления на странице доступа к данным

Предполагаемые действия

Выделение текста в надписи, текстовом поле или другом элементе управления полужирным шрифтом, курсивом или подчеркиванием

Перемещение текстового поля или другого элемента управления вместе с подписью

Изменение размера надписи, текстового поля или другого элемента управления

Выравнивание текстовых полей и других элементов управления

Настройка кнопок перехода


 Работа в режиме таблицы с помощью клавиатуры

Работа в режиме таблицы с помощью клавиатуры

Сочетание клавиш | Переход на определенную запись
F5 | Переход в поле номера записи; затем следует ввести номер нужной записи и нажать клавишу ENTER для перехода к этой записи

Сочетание клавиш | Переходы между полями и записями
TAB или СТРЕЛКА ВПРАВО | Перемещение на следующее поле
END | Переход на последнее поле текущей записи (в режиме перемещения)
SHIFT+TAB или СТРЕЛКА ВЛЕВО | Перемещение на предыдущее поле
HOME | Переход на первое поле текущей записи (в режиме перемещения)
СТРЕЛКА ВНИЗ | Переход на текущее поле следующей записи
CTRL+СТРЕЛКА ВНИЗ | Переход на текущее поле последней записи (в режиме перемещения)
CTRL+END | Переход на последнее поле последней записи (в режиме перемещения)
СТРЕЛКА ВВЕРХ | Переход на текущее поле предыдущей записи
CTRL+ СТРЕЛКА ВВЕРХ | Переход на текущее поле первой записи (в режиме перемещения)
CTRL+HOME | Переход на первое поле первой записи (в режиме перемещения)

Сочетание клавиш | Переход на другие экраны с данными
PAGE DOWN | Переход вниз на один экран
PAGE UP | Переход вверх на один экран
CTRL+PAGE DOWN | Переход вправо на один экран
CTRL+PAGE UP | Переход влево на один экран

См. сведения об изменении порядка столбцов.

См. сведения о выборе полей и записей в режиме таблицы.


 Работа в режиме формы с помощью клавиатуры

Работа в режиме формы с помощью клавиатуры

Сочетание клавиш | Переход на определенную запись
F5 | Переход в поле номера записи; затем следует ввести номер нужной записи и нажать клавишу ENTER для перехода к этой записи

Сочетание клавиш | Переходы между полями и записями
TAB | Перемещение на следующее поле
SHIFT+TAB | Перемещение на предыдущее поле
END | Переход на последнее поле текущей записи (в режиме перемещения)
CTRL+END | Переход на последнее поле последней записи (в режиме перемещения)
HOME | Переход на первое поле текущей записи (в режиме перемещения)
CTRL+HOME | Переход на первое поле первой записи (в режиме перемещения)
CTRL+PAGE DOWN | Переход на текущее поле следующей записи
CTRL+PAGE UP | Переход на текущее поле предыдущей записи

Сочетание клавиш | Переходы в форме, состоящей из нескольких страниц
PAGE DOWN | Перемещение вниз на одну страницу; из конца записи перемещает на эквивалентную страницу следующей записи
PAGE UP | Перемещение вверх на одну страницу; из конца записи перемещает на эквивалентную страницу предыдущей записи

Сочетание клавиш | Переходы между главной и подчиненной формами
TAB | Вход в подчиненную форму из предшествующего поля в главной форме
SHIFT+TAB | Вход в подчиненную форму из следующего поля в главной форме
CTRL+TAB | Выход из подчиненной формы и переход на следующее поле или на следующую запись главной формы
CTRL+SHIFT+TAB | Выход из подчиненной формы и переход на предыдущее поле или на предыдущую запись главной формы


Защита приложения Microsoft Access путем сокрытия объектов в окне базы данных и настройки параметров запуска

Предполагаемые действия

Скрытие объектов в окне базы данных

Управление запуском базы данных или приложения


Защита базы данных Microsoft Access (файла .mdb) с помощью пароля и шифрования

Предполагаемые действия

Защита базы данных паролем

Удаление пароля базы данных

Установление связи с таблицами из базы данных, защищенной паролем

Шифрование и дешифрование базы данных


Защита страниц доступа к данным

Предполагаемые действия

Защита страниц доступа к данным

Защита ячеек в электронной таблице на странице доступа к данным


Защита программ Visual Basic для приложений (VBA) с помощью пароля или путем создания MDE-файла

Предполагаемые действия

Защита программ Visual Basic для приложений (VBA)

Защита паролем программы на языке Visual Basic для приложений (VBA)

Работа с MDE-файлами


Защита базы данных Microsoft Access и ее таблиц, запросов, форм, отчетов и макросов средствами защиты на уровне пользователей

Предполагаемые действия

Защита базы данных с помощью мастера защиты

Защита базы данных без требования подключения пользователей

Удаление защиты на уровне пользователей

Работа с файлом рабочей группы

Работа с учетными записями пользователей и групп

Работа с разрешениями на доступ

Преобразование защищенной базы данных из предыдущей версии Microsoft Access


Опубликование Web-страниц

Предполагаемые действия

Три типа Web-страниц, которые могут быть созданы в Microsoft Access

Публикация страницы доступа к данным в папках Web или на Web-сервере

Публикация генерируемых сервером файлов HTML в папках Web или на Web-сервере

Публикация статических файлов HTML в папках Web или на Web-сервере


Сведения о модулях Visual Basic

Предполагаемые действия

Общие сведения о модулях

Информация о процедурах

Запуск программы Visual Basic

Работа с данными и с объектами базы данных с помощью программ Visual Basic


 Исключение кнопки или другого элемента управления из последовательности перехода в форме

Исключение кнопки или другого элемента управления из последовательности перехода в форме

Существует два способа удаления кнопки или другого элемента управления из порядка перехода. Если необходимо из порядка перехода удалить элемент управления, сохраняя при этом возможность его выделения, установите для данного элемента управления свойство Переход по TAB (TabStop) в состояние Нет.

Для того чтобы элемент управления становился недоступным при выполнении определенного условия, используйте свойства Доступ (Enabled) и После обновления (AfterUpdate).

Предполагаемые действия

Удаление элемента управления из порядка перехода, сохраняя возможность его использования

Отключение элемента управления


Восстановление настроек по умолчанию для встроенной панели инструментов или строки меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панели инструментов нажмите кнопку Свойства.

  3. Выберите в списке Панели инструментов название панели инструментов или строки меню, для которой нужно восстановить исходные установки.

  4. Нажмите кнопку Сброс.

Кнопка Сброс будет недоступна до тех пор, пока Microsoft Access не определит, что выбранная встроенная панель инструментов или строка меню была изменена.


Защита базы данных Microsoft Access

Предполагаемые действия

Защита базы данных Microsoft Access

Защита базы данных Microsoft Access (.mdb-файла) с помощью пароля и шифрования

Защита базы данных Microsoft Access и ее таблиц, запросов, форм, отчетов и макросов средствами защиты на уровне пользователей

Защита программ Visual Basic для приложений (VBA) с помощью пароля или путем создания MDE-файла

Защита страниц доступа к данным

Защита приложения Microsoft Access путем сокрытия объектов в окне базы данных и настройки параметров запуска

Создание и изменение паролей


 Клавиши и их сочетания для выделения текста или данных

Клавиши и их сочетания для выделения текста или данных

Сочетание клавиш | Выделение текста в поле
SHIFT+СТРЕЛКА ВПРАВО | Расширение выделения на один символ вправо
CTRL+SHIFT+СТРЕЛКА ВПРАВО | Расширение выделения на одно слово вправо
SHIFT+СТРЕЛКА ВЛЕВО | Расширение выделения на один символ влево
CTRL+SHIFT+СТРЕЛКА ВЛЕВО | Расширение выделения на одно слово влево

Примечание. Для отмены выделения нажмите клавишу со стрелкой противоположного направления.

Сочетание клавиш | Выделение поля или записи
TAB | Выделение следующего поля
F2 | Переключение между режимом редактирования (при отображении курсора) и режимом перемещения
SHIFT+ПРОБЕЛ | Переключение между выделением текущей записи и первого поля текущей записи в режиме перемещения
SHIFT+СТРЕЛКА ВВЕРХ | Расширение выделения на предыдущую запись, если текущая запись была выделена
SHIFT+СТРЕЛКА ВНИЗ | Расширение выделения на следующую запись, если текущая запись была выделена
CTRL+A or CTRL+SHIFT+ПРОБЕЛ | Выделение всех записей

См. сведения о выборе полей и записей в режиме таблицы.

Сочетание клавиш | Расширение выделения
F8 | Включение режима расширения выделения (в правом нижнем углу окна появляется «ВДЛ»);последовательное нажатие F8 выделяет слово, поле, запись (только в режиме таблицы) и все записи
СТРЕЛКА ВЛЕВО или ВПРАВО | Расширение выделения на соседние поля в том же ряду в режиме таблицы
СТРЕЛКА ВВЕРХ или СТРЕЛКА ВНИЗ | Расширение выделения на соседние строки в режиме таблицы
SHIFT+F8 | Отмена предыдущего расширения выделения
ESC | Отмена режима расширения выделения

Сочетание клавиш | Выделение и перемещение столбцов в режиме таблицы
CTRL+ПРОБЕЛ | Выделение текущего столбца или отмена выделения столбца (только в режиме перемещения)
SHIFT+СТРЕЛКА ВПРАВО | Выделение колонки справа от текущей, если она была выделена
SHIFT+СТРЕЛКА ВЛЕВО | Выделение колонки слева от текущей, если она была выделена
CTRL+SHIFT+F8 | Включение режима перемещения; нажмите затем СТРЕЛКА ВПРАВО или СТРЕЛКА ВЛЕВО для перемещения выделенного столбца(столбцов) направо или налево См. сведения о изменении порядка столбцов.


Совместное использование базы данных Access в сети

Предполагаемые действия

Способы организации совместного использования базы данных

Совместное использование базы данных Microsoft Access в сети

Совместное использование базы данных Access на сетевом сервере

Совместное использование базы данных Access без сетевого сервера

Разделение базы данных Access на таблицы и объекты

Три типа Web-страниц, которые могут быть созданы в Microsoft Access

Использование Портфеля для репликации базы данных Access

Работа в многопользовательской среде

Редактирование данных в базе данных Access при работе в многопользовательской среде

Сохранение изменений структуры базы данных Access с общим доступом

Способы открытия базы данных Access

Указание режима открытия базы данных Access (монопольный или общий доступ), используемого по умолчанию

Советы по внесению изменений в объекты базы данных Access при работе в многопользовательской среде

Способы оптимизации быстродействия при многопользовательской работе с базой данных Access

Управление блокировкой записей

Выбор стратегии блокировки записей при работе с базой данных Access в многопользовательской среде

Выбор стратегии блокировки записей, используемой по умолчанию, при работе с базой данных Access в многопользовательской среде

Способы избежания конфликтов блокировки данных при работе с базой данных Access в многопользовательской среде

Выбор уровня блокировки, используемого по умолчанию, при работе с базой данных Access в многопользовательской среде

Задание значений параметров обновления при работе с базой данных Access в сети и по протоколу ODBC

Просмотр текущих данных

Вывод на экран текущего состояния данных в базе данных Access в режиме таблицы или режиме формы

Изменение периода автоматического обновления информации в базе данных Access в режиме таблицы или формы

Автоматический просмотр в форме обновленных записей в базе данных Access

Автоматический вывод обновленных записей в режиме страницы


Сортировка и группировка записей в отчете

Предполагаемые действия

Сортировка записей в отчете

Группировка записей в отчете

Изменение порядка сортировки или группировки в отчете

Добавление дополнительного поля или выражения для сортировки или группировки в отчете

Отмена сортировки или группировки в отчете по конкретному полю или выражению

Объединение данных в группу на странице или в столбце отчета

Повторение заголовка группы на новой странице или в новом столбце

Устранение неполадок при сортировке и группировке в отчете


Группировка и сортировка записей на страницах доступа к данным

Предполагаемые действия

Указание стандартного порядка сортировки для группы записей

Группировка записей на странице

Указание числа записей, отображаемых в группе

Указание режима отображения группы (развернутая или свернутая), используемого по умолчанию


Проверка орфографии

Предполагаемые действия

Проверка орфографии в режиме таблицы

Проверка орфографии в режиме формы

Проверка орфографии для объекта базы данных в окне базы данных

Выбор пользовательского словаря для проверки орфографии


Клавиши и их сочетания для режимов предварительного просмотра

Сочетание клавиш | Операции окна и диалогового окна
P или CTRL+P | Открытие диалогового окна Печать
S | Открытие диалогового окна Параметры страницы
Z | Изменение масштаба части страницы
C или ESC | Выход из режима предварительного просмотра

Сочетание клавиш | Просмотр различных страниц
F5 | Переход в поле номера записи; затем следует ввести номер нужной записи и нажать клавишу ENTER для перехода к этой записи
PAGE DOWN или СТРЕЛКА ВНИЗ | Просмотр следующей страницы (при выбранном параметре Вписать в окно)
PAGE UP или СТРЕЛКА ВВЕРХ | Просмотр предыдущей страницы (при выбранном параметре Вписать в окно)

Сочетание клавиш | Перемещение в режимах предварительного просмотра
СТРЕЛКА ВНИЗ | Прокрутка вниз с небольшой скоростью
PAGE DOWN | Прокрутка вниз на один экран
CTRL+СТРЕЛКА ВНИЗ | Переход к концу страницы
СТРЕЛКА ВВЕРХ | Прокрутка вверх с небольшой скоростью
PAGE UP | Прокрутка вверх на один экран
CTRL+ СТРЕЛКА ВВЕРХ | Переход к началу страницы
СТРЕЛКА ВПРАВО | Прокрутка вправо с небольшой скоростью
END или CTRL+СТРЕЛКА ВПРАВО | Переход к правому краю страницы
CTRL+END | Переход в правый нижний угол страницы
СТРЕЛКА ВЛЕВО | Прокрутка влево с небольшой скоростью
HOME или CTRL+СТРЕЛКА ВЛЕВО | Переход к левому краю страницы
CTRL+HOME | Переход в левый верхний угол страницы


Использование подтаблиц

Предполагаемые действия

Использование подтаблиц

Вставка или изменение подтаблицы в таблице или запросе базы данных Microsoft Access

Развертывание или свертывание подтаблицы

Удаление подтаблицы из таблицы или запроса базы данных Access

Создание одной или нескольких подчиненных форм

Удаление подчиненной формы

Печать подтаблиц


 Проверка значений, вводимых в поле, запись или элемент управления

Проверка значений, вводимых в поле, запись или элемент управления

Значения, вводимые в поля, записи или элементы управления, можно проверять путем создания условий на значения. Для выполнения более сложной проверки значений в форме можно использовать макрос или программу Visual Basic для приложений.

Предполагаемые действия

Создание условия на значение поля

Создание условия на значение записи

Создание условия на значение для элемента управления

Создание более сложных условий, используя макрос или Visual Basic для приложений

Не можете сделать выбор?


 Проверка условий на значения и ограничение ввода данных в таблицах

Проверка условий на значения и ограничение ввода данных в таблицах

Ввод данных в поле таблицы можно контролировать, выбрав подходящие тип данных и размер поля. Также для управления вводом данных в поле можно использовать свойства, такие как маски ввода и условия на значение.

Предполагаемые действия

Получение дополнительных сведений о выборе правильного типа данных для поля

Установление размера для числовых и текстовых полей

Определение поля, требующего обязательного ввода данных

Определение маски ввода для управления вводом данных

Предотвращение повторений в полях

Определение условия на значение поля

Определение условия на значение записи

Не можете сделать выбор?


Начало работы в Microsoft Access 2000 для пользователей, знакомых с предыдущими версиями Access

Рекомендуется просмотреть следующие разделы:

Новые средства Microsoft Access 2000

Способы начала работы в Microsoft Access:

Использование базы данных Microsoft Access в нескольких версиях Microsoft Access

Преобразование баз данных


Начало работы в Microsoft Access 2000 для пользователей, знакомых с другими базами данных или электронными таблицами

Рекомендуется просмотреть следующие разделы:

Отношения в базе данных

Работа с другими приложениями

Способы начала работы в Microsoft Access:

Импорт или связывание данных из других программ и форматов файлов

Разбиение таблицы на связанные таблицы при помощи мастера по анализу таблиц

Создание базы данных


Начало работы в Microsoft Access 2000 для пользователей, не имеющих навыков работы с базами данных

Рекомендуется просмотреть следующие разделы:

Базы данных: что это такое и как они работают

Таблицы: что это такое и как они работают

Запросы: что это такое и как они работают

Формы: что это такое и как они работают

Отчеты: что это такое и как они работают

Страницы доступа к данным: что это такое и как они работают

Макросы: что это такое и как они работают

Модули: что это такое и как они работают

Отношения в базе данных

Способы начала работы в Microsoft Access:

Создание базы данных


 Присоединенные элементы HTML: общие сведения

Присоединенные элементы HTML: общие сведения

Код HTML можно сохранить в поле таблицы, тогда при отображении на странице доступа к данным значений этого поля код HTML будет выполнять заданные действия. Это достигается путем помещения присоединенного элемента HTML в текстовое поле или поле Memo базы данных Microsoft Access (.mdb) или в столбец с типом данных text, ntext или varchar в проекте Microsoft Access (.adp). Если текст HTML имеет большую длину, присоедините элемент управления HTML к полю с типом данных «поле Memo» (база данных Access) или с типом данных text или ntext (проект Access). При помещении такого поля или столбца на страницу доступа к данным в качестве присоединенного элемента управления HTML содержимое этого поля форматируется как HTML и не может быть изменено.

Например, если поле имеет значение <font color=red>Красный текст</font>, а для свойства DataFormatAs задано значение HTML, то при просмотре страницы доступа к данным в режиме страницы будет отображаться красный текст. Если для свойства DataFormatAs задать значение Текст, то в элементе управления будет отображаться значение <font color=red>Красный текст</font>.

Примечания

  • Присоединенный элемент управления HTML на странице доступа к данным можно сделать имеющим фокус по умолчанию. Задайте для свойства DefaultControlType страницы доступа к данным значение Bound HTML.

  • Присоединенный элемент управления HTML можно использовать для отображения результатов вычислений и всех данных на страницах доступа к данным с группировкой. При использовании элементов управления HTML страница будет загружаться в Microsoft Internet Explorer 5 быстрее.

Дополнительные сведения

Создание присоединенного элемента управления HTML на странице доступа к данным


Новые возможности Microsoft Access 2000

Рекомендуется просмотреть следующие разделы:

Работа со страницами доступа к данным

Работа с проектом Microsoft Access

Работа в Интернете или интрасети

Работа с данными и с макетом базы данных

Работа в окне базы данных

Программирование на языке Visual Basic

Защита, сопровождение и преобразование базы данных

Создание и настройка форм и отчетов

Репликация

Работа с учебными приложениями

Использование и пользовательская настройка панелей инструментов, строк меню и контекстных меню

Работа с макросами

Работа с другими приложениями

Новые возможности Microsoft Office 2000


Работа в окне базы данных с помощью клавиатуры

Сочетание клавиш | Редактирование и перемещение по списку «Объекты»
F2 | Переименование выделенного объекта
СТРЕЛКА ВНИЗ | Переход на одну строку вниз
PAGE DOWN | Переход вниз на одно окно
END | Переход к последнему объекту
СТРЕЛКА ВВЕРХ | Переход на одну строку вверх
PAGE UP | Переход вверх на одно окно
HOME | Переход к первому объекту

Сочетание клавиш | Переход и открытие объектов
CTRL+TAB | Циклический переход сверху вниз по списку Объекты
SHIFT+CTRL+TAB | Циклический переход снизу вверх по списку Объекты
ENTER или ALT+О | Открытие выделенной таблицы или запроса в режиме таблицы, либо формы в режиме формы.
ENTER | Открытие выделенного отчета в режиме предварительного просмотра.
ENTER | Открытие выделенной страницы доступа к данным в режиме страницы
ENTER | Запуск выделенного макроса
CTRL+ENTER или ALT+К | Открытие выделенной таблицы, запроса, формы, отчета, страницы доступа к данным, макроса или модуля в режиме конструктора
ALT+С | Создание новой таблицы, запроса, формы, отчета, страницы доступа к данным, макроса или модуля
F5 | Обновление окна базы данных
CTRL+G | Вывод окна проверки в редакторе Visual Basic


Работа с полями со списком

Предполагаемые действия

Перемещение поля со списком

Изменение размеров поля со списком

Определение причин неправильной работы поля со списком

Свойства, позволяющие изменить поле со списком


Работа с кнопками

Предполагаемые действия

Перемещение кнопки

Изменение размеров кнопки

Добавление рисунка на кнопку

Изменение надписи на кнопке

Просмотр процедуры обработки события, определенной для кнопки


Работа с импортированными или связанными данными

Предполагаемые действия

Настройка таблицы

Разрешение вопросов по импорту

Задание свойств для связанных таблиц


Работа со списками

Предполагаемые действия

Перемещение списка

Изменение размеров списка

Определение причин неправильной работы списка

Свойства, позволяющие изменить список


Работа с подстановочными полями

Предполагаемые действия

Сведения о свойствах, используемых для изменения подстановочного поля

Общие сведения о подстановочных полях


Работа с группами параметров

Предполагаемые действия

Перемещение группы параметров

Изменение размеров группы параметров

Определение причин неправильной работы группы параметров


Использование мастера защиты

Предполагаемые действия

Советы по использованию мастера защиты

Сведения о рабочей группе Microsoft Access

Сведения по организации учетных записей

Разрешения на доступ: как они работают и кто может их присваивать

Типы разрешений на доступ

Сведения о создании и изменении паролей


Работа с подчиненными формами

Предполагаемые действия

Перемещение подчиненной формы

Изменение размеров подчиненной формы

Изменение макета подчиненной формы

Определение причин неправильной работы подчиненной формы


Работа с таблицей перекрестного запроса

Предполагаемые действия

Изменение имени, размера, цвета или начертания шрифта

Изменение вида сетки или цвета фона

Изменение размеров строк

Изменение размеров столбцов

Печать всей таблицы или отобранных записей

Примечание. Редактирование данных в перекрестном запросе невозможно.


Работа с данными из нескольких таблиц

Предполагаемые действия

Объединение в запросе данных из нескольких таблиц или запросов

Объединение нескольких таблиц и запросов в запросе

Просмотр типов объединения и их влияние на результаты запроса

Изменение типа объединения между таблицами или запросами в запросе


Работа с данными в режиме страницы

Предполагаемые действия

Добавление, редактирование и удаление данных

Переход между записями в режиме страницы с помощью кнопок перехода

Добавление новой записи в режиме страницы

Выбор полей и записей в режиме страницы

Редактирование данных в полях в режиме страницы

Отмена изменений при добавлении или редактировании записей в режиме страницы

Вывод самых последних данных в режиме страницы

Ввод адреса гиперссылки в режиме страницы

Добавление, изменение или удаление пути к рисунку в режиме страницы

Сохранение и удаление записей

Сохранение записи в режиме страницы

Удаление записи в режиме страницы

Сортировка и фильтрация данных

Сортировка данных в режиме страницы

Поиск конкретных данных с помощью фильтра в режиме страницы

Применение существующего фильтра к данным в режиме страницы

Удаление фильтра для вывода всех записей в режиме страницы

Использование сочетаний клавиш

Использование сочетаний клавиш в режиме страницы


Работа с повторяющимися записями в запросе в режиме таблицы

Предполагаемые действия

Удаление повторяющихся записей

Изменение данных в поле

Печать всей таблицы или отобранных записей


Работа с макросами в Visual Basic

Предполагаемые действия

Преобразование макросов в программы Microsoft Visual Basic

Выполнение макрокоманды в процедуре Visual Basic для приложений (VBA)

Макрокоманды, не имеющие соответствующих методов объекта DoCmd, и эквивалентные им инструкции


Работа с объектами в программах Visual Basic с помощью средства просмотра объектов

Предполагаемые действия

Поиск метода или свойства в окне просмотра объектов

Вставка метода или свойства из окна просмотра объектов в модуль


Работа со связями между таблицами

Предполагаемые действия

Общие сведения о связях между таблицами в базе данных

Просмотр существующих связей между таблицами

Определение связей между таблицами

Определение отношения «многие-ко-многим» между таблицами

Установка типа объединения по умолчанию для связей между двумя таблицами

Изменение существующих связей

Удаление связи

Удаление таблицы из окна «Схема данных»

Изменение структуры таблицы в окне «Схема данных»

Общие сведения о целостности данных

Общие сведения о каскадном обновлении и удалении

Управление связями между таблицами с помощью клавиатуры

Использование подтаблиц

Печать схемы данных


Работа с подчиненными отчетами

Предполагаемые действия

Перемещение элемента управления подчиненного отчета

Изменение размера элемента управления подчиненного отчета


Работа с записями, не имеющими подчиненных, в запросе в режиме таблицы

Предполагаемые действия

Удаление записи, не имеющей подчиненных

Добавление подчиненных записей в другую таблицу

Печать всей таблицы или отобранных записей


Работа с учетными записями пользователей и групп

Предполагаемые действия

Общие сведения об учетных записях системы защиты

Сведения по организации учетных записей

Создание учетных записей, добавление пользователей и печать сведений

Создание учетной записи администратора

Создание учетной записи пользователя

Создание учетной записи группы

Добавление пользователей в группы

Печать сведений о пользователях и группах

Удаление учетных записей и пользователей

Удаление пользователей из групп

Удаление учетной записи пользователя

Удаление учетной записи группы

Работа с паролями

Создание или изменение пароля учетной записи пользователя

Снятие пароля учетной записи пользователя

Просмотр или передача прав владельца

Просмотр и передача прав владельца на отдельные объекты в защищенной базе данных

Передача прав владельца всей базы данных другому администратору


Работа с файлом рабочей группы

Предполагаемые действия

Основные сведения о файлах рабочих групп

Сведения о рабочей группе Microsoft Access

Способы доступа пользователей к защищенному приложению и рабочей группе

Создание и присоединение файла рабочей группы

Создание нового файла рабочей группы Microsoft Access

Присоединение к рабочей группе Microsoft Access с помощью Администратора рабочих групп

Создание нескольких рабочих групп для одной защищенной базы данных

Обеспечение защиты на уровне пользователей для конкретной базы данных Access

Подключение к файлу рабочей группы

Подключение к рабочей группе Microsoft Access

Требование использования процедуры входа при входе пользователей в Microsoft Access

Отключение вывода диалогового окна «Вход»

Восстановление или повторное создание файла рабочей группы

Восстановление поврежденного или удаленного файла рабочей группы Microsoft Access

Повторное создание файла рабочей группы на основе имен и кодов пользователей и групп


 #Const Directive

#Const Directive

In Microsoft Access, you can define a public conditional compiler constant in the Declarations section of a module. A public compiler constant is applicable to all modules in the current database, but not in any other database.

You can also declare a public compiler constant by clicking Options on the Tools menu, then clicking the Advanced tab. Enter the constant in the Conditional Compilation Arguments box.

For example, you might enter the following expression into the Conditional Compilation Arguments box.

conDebug = 1

You can use a public compiler constant in code in any module. For example, you can create an #If...Then...#Else construct to optionally run debug code.

#If conDebug = 1 Then
    .        ' Run debug code.
    .
    .
#Else
    .        ' Run streamlined code.
    .
    .
#End If

To create multiple public conditional compilation constants, declare them on separate lines in the Declaration section. In the Conditional Compilation Arguments box, separate them with colons. For example, you can enter the following conditional compilation constants in the Conditional Compilation Arguments box.

conActiveLanguage = 1 : conDebug = 1

You can use a logical operator to include both constants in an #If...Then...#Else construct. In the following example, the first segment of code runs only if both constants are currently equal to 1, so that the expression containing the constants is true.

#If (conActiveLanguage = 1 And conDebug = 1) Then
    .        ' Run debug code for the active language version.
    .
    .
#Else
    .        ' Run another code segment.
    .
    .
#End If

If either or both constants have a different value, then the code in the #Else portion of the construct runs. To change which block of code runs, you can simply change the values of the constants.

Notes

  • A conditional compilation constant is always evaluated with a text-based string comparison method. This evaluation is equivalent to having an Option Compare Text statement in the module and occurs even if the module contains an Option Compare Database statement.

  • When writing code for conditional compilation, it may be less confusing to view one procedure at a time rather than all procedures in the module. To change how you view your code, click Options on the Tools menu, then click the Module tab. Under Code View, clear the Full Module View check box.


 Activate, Deactivate Events - Event Procedures

Activate, Deactivate Events - Event Procedures

To create an event procedure that runs when the Activate or Deactivate event occurs, set the OnActivate or OnDeactivate property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_Activate( )

Private Sub Report_Activate( )

Private Sub Form_Deactivate( )

Private Sub Report_Deactivate( )

Remarks

You can use Activate and Deactivate event procedures to display and hide custom toolbars. If you use a Deactivate event procedure to hide a custom toolbar on a form, also make sure to hide the toolbar in response to the Unload event for the form, because the Deactivate event doesn't occur when a form is unloaded. Don't use the GotFocus or LostFocus event to display or hide a toolbar on a form, because these events aren't triggered on forms that contain enabled controls.

You can't cancel the Activate or Deactivate event.


Activate, Deactivate Events - Event Procedures Example

The following example shows how to display a custom toolbar named CustomToolbar when a form receives the focus and to hide it when the focus moves to a different window.

To try the example, add the following event procedure to a form that has a custom toolbar called CustomToolbar.

Private Sub Form_Activate()
    ' Display custom toolbar.
    DoCmd.ShowToolbar "CustomToolbar", acToolbarYes
End Sub

Private Sub Form_Deactivate()
    ' Hide custom toolbar.
    DoCmd.ShowToolbar "CustomToolbar", acToolbarNo
End Sub


 Activate, Deactivate Events - Macros

Activate, Deactivate Events - Macros

To run a macro when the Activate or Deactivate event occurs, set the OnActivate or OnDeactivate property to the name of the macro.

Remarks

You can use the ShowToolbar action in an Activate or Deactivate macro to display or hide a custom toolbar. Use the Activate or Deactivate event to display or hide custom toolbars when you have more than one form loaded at a time. If you have only one form loaded at a time, you can use the Open and Close events.

If you use a Deactivate macro to hide a custom toolbar on a form, also make sure to hide the toolbar in response to the Unload event for the form, because the Deactivate event doesn't occur when a form is unloaded. Don't use the GotFocus or LostFocus event to display or hide a custom toolbar on a form, because these events aren't triggered on forms that contain enabled controls.

You can't use the CancelEvent action in an Activate or Deactivate macro.


 ApplyFilter Event - Event Procedures

ApplyFilter Event - Event Procedures

To create an event procedure that runs when the ApplyFilter event occurs, set the OnApplyFilter property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_ApplyFilter(Cancel As Integer, ApplyType As Integer)

The ApplyFilter event procedure has the following arguments.

Argument | Description
Cancel | The setting determines whether to apply the filter. Setting the Cancel argument to True (-1) prevents the filter from being applied. You can also use the CancelEvent method of the DoCmd object to cancel applying the filter.
ApplyType | The action you took that caused the ApplyFilter event to occur. The ApplyType argument can be one of the following intrinsic constants:
 | Constant | Value
 | acShowAllRecords | 0
 | acApplyFilter | 1
 | acCloseFilterWindow | 2
 | acApplyServerFilter | 3
 | acCloseServerFilterWindow | 4

Remarks

You can use the ApplyFilter event procedure to show or hide, enable or disable certain controls on the form when the filter is applied or removed. For example, when a filter is applied to an Orders form to show only orders that have been paid for, you can hide the AmountDue, Tax, and TotalDue fields when the ApplyType argument is acApplyFilter, and show them again when the ApplyType argument is acShowAllRecords.

You can also use the ApplyFilter event procedure to undo actions you took when the Filter event occurred. This is especially useful if the user closed the filter window without creating a filter when the ApplyType argument is acCloseFilterWindow or acCloseServerFilterWindow.


ApplyFilter Event - Event Procedures Example

The following example shows how to hide the AmountDue, Tax, and TotalDue controls on an Orders form when the applied filter restricts the records to only those orders that have been paid for.

To try this example, add the following event procedure to an Orders form that contains AmountDue, Tax, and TotalDue controls. Run a filter that lists only those orders that have been paid for.

Private Sub Form_ApplyFilter(Cancel As Integer, ApplyType As Integer)
    If Not IsNull(Me.Filter) And (InStr(Me.Filter, "Orders.Paid = -1")>0 _
            Or InStr(Me.Filter, "Orders.Paid = True")>0)Then
        If ApplyType = acApplyFilter Then
            Forms!Orders!AmountDue.Visible = False
            Forms!Orders!Tax.Visible = False
            Forms!Orders!TotalDue.Visible = False
        ElseIf ApplyType = acShowAllRecords Then
            Forms!Orders!AmountDue.Visible = True
            Forms!Orders!Tax.Visible = True
            Forms!Orders!TotalDue.Visible = True
        End If
    End If
End Sub


 ApplyFilter Event - Macros

ApplyFilter Event - Macros

To run a macro when the ApplyFilter event occurs, set the OnApplyFilter property to the name of the macro.

Remarks

You can check a filter, or even change the criteria the user has entered, by reading the value of the Filter or ServerFilter property in a macro condition, or setting the value of the property by using the SetValue action in an ApplyFilter macro.

You can use the CancelEvent action in an ApplyFilter macro to cancel applying the filter. You can use a condition to check the value of one or more controls on the form, and apply a filter only when appropriate. For example, if a HasOutstandingOrders check box is selected in an Orders form, you could apply a filter to show these outstanding orders in the records on the form. Otherwise, you can cancel applying the filter, and display a message saying there are no outstanding orders to display.


 BeforeInsert, After Insert Events - Event Procedures

BeforeInsert, AfterInsert Events - Event Procedures

To create an event procedure that runs when the BeforeInsert or AfterInsert event occurs, set the BeforeInsert or AfterInsert property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_BeforeInsert(Cancel As Integer)

Private Sub Form_AfterInsert( )

The BeforeInsert event procedure has the following argument.

Argument | Description
Cancel | The setting determines if the BeforeInsert event occurs. Setting the Cancel argument to True (-1) cancels the BeforeInsert event.

Remarks

You can't cancel the AfterInsert event.


BeforeInsert, AfterInsert Events - Event Procedures Example

This example shows how you can use a BeforeInsert event procedure to verify that the user wants to create a new record, and an AfterInsert event procedure to requery the record source for the Employees form after a record has been added.

To try the example, add the following event procedure to a form named Employees that is based on a table or query. Switch to form Datasheet view and try to insert a record.

Private Sub Form_BeforeInsert(Cancel As Integer)
    If MsgBox("Insert new record here?", _
        vbOKCancel) = vbCancel Then
        Cancel = True
    End If
End Sub

Private Sub Form_AfterInsert()
    Forms!Employees.Requery
End Sub


 BeforeInsert, AfterInsert Events - Macros

BeforeInsert, AfterInsert Events - Macros

To run a macro when the BeforeInsert or AfterInsert event occurs, set the BeforeInsert or AfterInsert property to the name of the macro.

Remarks

You can use these macros to display messages or useful information. For example, you can have the BeforeInsert macro display data the user needs when entering a new record.

You can use the CancelEvent action in a BeforeInsert macro to cancel the creation of the new record. When you use the CancelEvent action in a BeforeInsert macro, the focus returns to the new record, which is blank (the character that the user typed is deleted).

You can't use the CancelEvent action in an AfterInsert macro.


 BeforeUpdate, AfterUpdate Events - Event Procedures

BeforeUpdate, AfterUpdate Events - Event Procedures

To create an event procedure that runs when the BeforeUpdate or AfterUpdate event occurs, set the BeforeUpdate or AfterUpdate property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_BeforeUpdate(Cancel As Integer)

Private Sub controlname_BeforeUpdate(Cancel As Integer)

Private Sub Form_AfterUpdate( )

Private Sub controlname_AfterUpdate( )

The BeforeUpdate event procedure has the following arguments.

Argument | Description
controlname | The name of the control whose BeforeUpdate event procedure you want to run.
Cancel | The setting determines if the BeforeUpdate event occurs. Setting the Cancel argument to True (-1) cancels the BeforeUpdate event.

The AfterUpdate event procedure has the following argument.

Argument | Description
controlname | The name of the control whose AfterUpdate event procedure you want to run.

Remarks

You can't cancel the AfterUpdate event.

You can use an AfterUpdate event procedure to display a different page in the form or move the focus to a particular control or record. For example, when the user enters a value in a Category control on a form, you can use the GoToPage method in the AfterUpdate event procedure for the form to move the focus to the page of the form that contains the controls for that category.


BeforeUpdate, AfterUpdate Events - Event Procedures Example

The following example shows how you can use a BeforeUpdate event procedure to check whether a product name has already been entered in the database. After the user types a product name in the ProductName box, the value is compared to the ProductName field in the Products table. If there is a matching value in the Products table, a message is displayed that informs the user that the product has already been entered.

To try the example, add the following event procedure to a form named Products that contains a text box called ProductName.

Private Sub ProductName_BeforeUpdate(Cancel As Integer)
    If(Not IsNull(DLookup("[ProductName]", _
        "Products", "[ProductName] ='" _
        & Me!ProductName & "'"))) Then
        MsgBox "Product has already been entered in the database."
        Cancel = True
        Me!ProductName.Undo
    End If
End Sub


 BeforeUpdate, AfterUpdate Events - Macros

BeforeUpdate, AfterUpdate Events - Macros

To run a macro when the BeforeUpdate or AfterUpdate event occurs, set the BeforeUpdate or AfterUpdate property to the name of the macro. Microsoft Access runs the macro specified by the BeforeUpdate or AfterUpdate property for a control or form before or after the data in the control or in the current record on the form is updated. If the data in the control or record isn't updated, the macro doesn't run.

Remarks

You can use BeforeUpdate macros if you want to store all the validations for a form in one macro group or if you use a validation expression on several forms.

For example, suppose you have a form on which the user enters the name of a country in a Country control and its corresponding postal code in a Postal Code control. You use conditional expressions in the macro to make sure that the data entered in the Country control corresponds to the data entered in the Postal Code control and to display a message if invalid data is entered in the Postal Code control.

You can use an AfterUpdate macro to display a different page in the form or move the focus to a particular control or record. For example, when the user enters a value in a Category control on a form, you can use the GoToPage action in an AfterUpdate macro to move the focus to the page of the form that contains the controls for that category.

You can use the CancelEvent action in a BeforeUpdate macro to cancel the update. If the BeforeUpdate macro is attached to a control, the CancelEvent action returns the focus to the control, and the data the user entered remains in the control.

If a BeforeUpdate macro is attached to a form (in which it runs each time a record is changed), the CancelEvent action returns the focus to the record.

You can't use the CancelEvent action in an AfterUpdate macro to cancel the AfterUpdate event.


 Change Event - Event Procedures

Change Event - Event Procedures

To create an event procedure that runs when the Change event occurs, set the OnChange property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub controlname_Change( )

The Change event procedure has the following argument.

Argument | Description
controlname | The name of the control whose Change event procedure you want to run.

Remarks

You can't cancel the Change event.

To prevent a cascading event, avoid creating a Change event procedure for a control that alters the control's contents (for example, by setting the control's Text property). If you do create such an event procedure, be sure to set a variable that prevents further changes while the current change is in progress.


Change Event - Event Procedures Example

The following example counts the number of characters entered in a text box. If more than three characters are entered, a message is displayed and the count is reset to 0.

To try the example, add the following event procedure to a form named Orders that contains a text box named ShipRegion.

Private Sub ShipRegion_Change()
    ' Declare variable as static to preserve value between calls.
    Static intLetter As Integer

    ' Check to see how many letters have been entered.
    ' If more than three, reset value of text box.
    If intLetter < 3 Then
        intLetter = intLetter + 1
    Else
        MsgBox "Only three characters are allowed."
        intLetter = 0
        Forms!Orders!ShipRegion.Undo
    End If
End Sub


 Change Event - Macros

Change Event - Macros

To run a macro when the Change event occurs, set the OnChange property to the name of the macro.

Remarks

You can use a Change macro to synchronize data in two controls; when a change occurs in one control, it can be reflected in the other control.

You can't use the CancelEvent action in a Change macro.


 Click Event - Event Procedures

Click Event - Event Procedures

To create an event procedure that runs when the Click event occurs, set the OnClick property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_Click( )

Private Sub controlname_Click( )

The Click event procedure has the following argument.

Argument | Description
controlname | The name of the control whose Click event procedure you want to run.

Remarks

When the user double-clicks a list box, the following events occur, in this order:

MouseDown Ю MouseUp Ю Click Ю DblClick

Other controls have a similar order of events. When you're creating event procedures for these related events, be sure that their event procedure code doesn't conflict. (For example, the DblClick event procedure shouldn't contain code that cancels actions carried out in the Click event procedure.)

You can't cancel the Click event.


Click Event - Event Procedures Example

In the following example, the Click event procedure is attached to the ReadOnly check box. The event procedure sets the Enabled and Locked properties of another control on the form, the Amount text box. When the check box is clicked, the event procedure checks whether the check box is being selected or cleared and then sets the text box's properties to enable or disable editing accordingly.

To try the example, add the following event procedure to a form that contains a check box called ReadOnly and a text box named Amount.

Private Sub ReadOnly_Click()
    With Me!Amount
        If Me!ReadOnly = True Then        ' If checked.
            .Enabled = False                ' Disable editing.
            .Locked = True
        Else                                    ' If cleared.
            .Enabled = True                ' Enable editing.
            .Locked = False
        End If
    End With
End Sub


 Click Event - Macros

Click Event - Macros

To run a macro when the Click event occurs, set the OnClick property to the name of the macro.

Remarks

You often use Click macros to carry out the actions for each command button on a form. For example, by clicking one command button on a form, users can print a report showing the form's records. By clicking another, they can open a related form.

You can't use the CancelEvent action in a Click macro to cancel the Click event.


 Current Event - Event Procedures

Current Event - Event Procedures

To create an event procedure that runs when the Current event occurs, set the OnCurrent property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_Current( )

Remarks

You can't cancel this event by using the CancelEvent method of the DoCmd object. However, you can use the GoToRecord method of the DoCmd object to move to a different record.


Current Event - Event Procedures Examples

In the following example, a Current event procedure checks the status of an option button called Discontinued. If the button is selected, the example sets the background color of the ProductName field to red to indicate that the product has been discontinued.

To try the example, add the following event procedure to a form that contains an option called Discontinued and a text box called ProductName.

Private Sub Form_Current()
    If Me!Discontinued Then
        Me!ProductName.BackColor = 255
    EndIf
End Sub

The next example sets a form's Caption property to the SupplierName field. As the focus moves from record to record, the title bar displays the current supplier name.

To try the example, add the following event procedure to a form that contains a text box called SupplierName.

Private Sub Form_Current()
    Me.Caption = Me!SupplierName
End Sub


 Current Event - Macros

Current Event - Macros

To run a macro when the Current event occurs, set the OnCurrent property to the name of the macro.

Remarks

You can't use the CancelEvent action in a Current macro to cancel the Current event. However, you can use the GoToRecord action to move the focus to a different record.


 DblClick Event - Event Procedures

DblClick Event - Event Procedures

To create an event procedure that runs when the DblClick event occurs, set the OnDblClick property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_DblClick(Cancel As Integer)

Private Sub controlname_DblClick(Cancel As Integer)

The DblClick event procedure has the following arguments.

Argument | Description
controlname | The name of the control whose DblClick event procedure you want to run.
Cancel | The setting determines if the DblClick event occurs. Setting the Cancel argument to True (-1) cancels the DblClick event.

Remarks

You can use a DblClick event procedure to modify a control's default double-click behavior. For example, you can have the event procedure run in response to double-clicking an embedded object before an OLE server is opened. The event procedure could display a message asking if the user wants to print or edit the object. You could use a user-defined function to print the object. If the user decides to print the object instead of editing it, you could print the object, and then use the Cancel argument to cancel opening the OLE server.

When you create event procedures for MouseDown, MouseUp, Click, and DblClick events, make sure that their code doesn't conflict. (For example, the Click event procedure shouldn't contain code that cancels actions carried out in the DblClick event procedure.)

When you double-click a command button, the following events occur in this order:

MouseDown Ю MouseUp Ю Click Ю DblClick Ю MouseUp Ю Click

To prevent the second Click event from occurring, you can set the Cancel argument to True (-1) or use the CancelEvent method of the DoCmd object in the DblClick event procedure. If you don't cancel the second Click event, the code in the Click event procedure runs again. The following example cancels the second Click event:

Private Sub CmdButton_DblClick(Cancel As Integer)
    Cancel = True        ' Cancel the second Click event.
End Sub


DblClick Event - Event Procedures Example

The following example shows how you can use a DblClick event procedure to open a form that displays records from the table that is the row source of a combo box. When the user double-clicks the Salesperson combo box in an Orders form, the Employees form is displayed, showing the record for the employee selected in the combo box.

To try the example, add the following event procedure to a form named Orders that contains a combo box named EmployeeID. The combo box should have as its row source the same table that is the source for the Employees form (or a query based on that table).

Private Sub EmployeeID_DblClick(Cancel As Integer)
    DoCmd.OpenForm "Employees", , , _
        "EmployeeID = Forms!Orders!EmployeeID"
End Sub


 DblClick Event - Macros

DblClick Event - Macros

To run a macro when the DblClick event occurs, set the OnDblClick property to the name of the macro.

Remarks

By running a macro when the DblClick event occurs, you can modify a control's default double-click behavior. For example, you can run a macro before an OLE server is opened in response to double-clicking an embedded object. The macro could display a message asking if the user wants to print or edit the object. You could use a user-defined function to print the object.

You can also use the DblClick event to enable a dialog box to be closed by double-clicking a control instead of clicking the OK button. The DblClick macro would run a Close action for the dialog box. You could also have the macro hide the dialog box by using the SetValue action to set the dialog box's Visible property to No.

You use the CancelEvent action in a DblClick macro to cancel the default double-click behavior of the control. If the user wanted to print the OLE object mentioned earlier in this topic instead of editing it, you would use a user-defined function to print the object, and then use a CancelEvent action to cancel opening of the OLE application.


 Delete, BeforeDelConfirm, AfterDelConfirm Events - Event Procedures

Delete, BeforeDelConfirm, AfterDelConfirm Events - Event Procedures

To create an event procedure that runs when a Delete, BeforeDelConfirm, or AfterDelConfirm event occurs, set the OnDelete, BeforeDelConfirm, or AfterDelConfirm property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_Delete(Cancel As Integer)

Private Sub Form_BeforeDelConfirm(Cancel As Integer, Response As Integer)

Private Sub Form_AfterDelConfirm(Status As Integer)

The Delete event procedure has the following argument.

Argument | Description
Cancel | The setting determines if the Delete event occurs. Setting the Cancel argument to True (-1) cancels the Delete event.

The BeforeDelConfirm event procedure has the following arguments.

Argument | Description
Cancel | The setting determines if the BeforeDelConfirm event occurs. Setting the Cancel argument to True cancels the BeforeDelConfirm event and prevents the Delete Confirm dialog box from being displayed. If the event is canceled, the original records are restored, but the AfterDelConfirm event still occurs. If Cancel is set to True, the Response argument is ignored.
 | If Cancel is set to False (0), which it is by default, the value in the Response argument is used by Microsoft Access to determine the type of response to the delete event.
Response | The setting determines whether Microsoft Access displays the Delete Confirm dialog box asking if the record should be deleted. The Response argument can be set to one of the following intrinsic constants:
 | Constant | Description
 | acDataErrContinue | Continues without displaying the Delete Confirm dialog box. Setting the Cancel argument to False and the Response argument to acDataErrContinue enables Microsoft Access to delete records without prompting the user.
 | acDataErrDisplay | (Default) Displays the Delete Confirm dialog box.

The AfterDelConfirm event procedure has the following argument.

Argument | Description
Status | The setting indicates whether a record has been deleted. The Status argument can be any of the following intrinsic constants:
 | Constant | Description
 | acDeleteOK | Indicates the deletion was successful.
 | acDeleteCancel | Indicates the deletion was canceled in Visual Basic.
 | acDeleteUserCancel | Indicates the deletion was canceled by the user.

Remarks

The AfterDelConfirm event can't be canceled.

You can use these events to customize how records are deleted. For example, when a user deletes a record, such as an employee record, the Delete event occurs. You can place code in the Delete event procedure to save the data from the Employee ID and Name fields in a set of temporary variables. When the BeforeDelConfirm event occurs, you can prevent the Delete Confirm dialog box from being displayed by setting the Response argument to acDataErrContinue. This enables you to display a custom dialog box. When the AfterDelConfirm event occurs and the Status argument is set to acDeleteOK, you can clear the temporary variables, or save the employee information in another table.


Delete, BeforeDelConfirm, AfterDelConfirm Events - Event Procedures Example

The following example shows how you can prevent a user from deleting records from a table.

To try this example, add the following event procedure to a form that is based on a table. Switch to form Datasheet view and try to delete a record.

Private Sub Form_Delete(Cancel As Integer)
    Cancel = True
    MsgBox "This record can't be deleted."
End Sub

The following example shows how you can use the BeforeDelConfirm event procedure to suppress the Delete Confirm dialog box and display a custom dialog box when a record is deleted. It also shows how you can use the AfterDelConfirm event procedure to display a message indicating whether the deletion progressed in the usual way or whether it was canceled in Visual Basic or by the user.

To try the example, add the following event procedure to a form that is based on a table or query:

Private Sub Form_BeforeDelConfirm(Cancel As Integer, _
        Response As Integer)
    ' Suppress default Delete Confirm dialog box.
    Response = acDataErrContinue
    ' Display custom dialog box.
    If MsgBox("Delete this record?", vbOKCancel) = vbCancel Then
        Cancel = True
    End If
End Sub

Private Sub Form_AfterDelConfirm(Status As Integer)
    Select Case Status
        Case acDeleteOK
            MsgBox "Deletion occurred normally."
        Case acDeleteCancel
            MsgBox "Programmer canceled the deletion."
        Case acDeleteUserCancel
            MsgBox "User canceled the deletion."
    End Select
End Sub


 Delete, BeforeDelConfirm, AfterDelConfirm Events - Macros

Delete, BeforeDelConfirm, AfterDelConfirm Events - Macros

To run a macro when a Delete, BeforeDelConfirm, or AfterDelConfirm event occurs, set the OnDelete, BeforeDelConfirm, or AfterDelConfirm property to the name of the macro.

Remarks

You can use a Delete macro to display the Delete Confirm dialog box asking whether the user wants to delete a record before it's deleted.

You can use a BeforeDelConfirm or AfterDelConfirm macro to respond whenever the user deletes a record. However, the BeforeDelConfirm and AfterDelConfirm macros can't set the argument determining whether the Delete Confirm dialog box is displayed and can't return the argument indicating the status of the deletion, so you typically use event procedures with these events.

You can use the CancelEvent action in a Delete macro to cancel the deletion.

You can use the CancelEvent action in a BeforeDelConfirm macro to cancel the deletion of all the deleted records. If you do this, the Delete Confirm dialog box isn't displayed. However, the AfterDelConfirm event occurs even if you cancel the BeforeDelConfirm event.

You can't use the CancelEvent action in an AfterDelConfirm macro.


 Dirty Event - Event Procedures

Dirty Event - Event Procedures

To create an event procedure that runs when the Dirty event occurs, set the OnDirty property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_Dirty(Cancel As Integer )

The Dirty event procedure has the following argument.

Argument | Description
Cancel | The setting determines if the Dirty event occurs. Setting the Cancel argument to True (-1) cancels the Dirty event. You can also use the CancelEvent method of the DoCmd object to cancel the event.

Remarks

Canceling the Dirty event will cause the changes to the current record to be rolled back. It is equivalent to pressing the Esc key.


Dirty Event - Event Procedures Example

The following example enables the btnUndo button when data is changed. The UndoEdits( ) subroutine is called from the Dirty event of text box controls. Clicking the enabled btnUndo button restores the original value of the control by using the OldValue property.

Private Sub Form_Dirty()
    If Me.Dirty Then
        Me!btnUndo.Enabled = True    ' Enable button.
    Else
        Me!btnUndo.Enabled = False    ' Disable button.
    End If
End Sub

Sub btnUndo_Click()
    Dim ctlC As Control
        ' For each control.
        For Each ctlC in Me.Controls
            If ctlC.ControlType = acTextBox Then
                ' Restore Old Value.
                ctlC.Value = ctlC.OldValue
            End If
        Next ctlC
End Sub


 Dirty Event - Macros

Dirty Event - Macros

To run a macro when the Dirty event occurs, set the OnDirty property to the name of the macro.

Remarks

You can use a Dirty macro to check to see if the user has permission to change this record. A message can be displayed to input the user's id for validation.


 Enter, Exit Events - Event Procedures

Enter, Exit Events - Event Procedures

To create an event procedure that runs when the Enter or Exit event occurs, set the OnEnter or OnExit property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub controlname_Enter( )

Private Sub controlname_Exit(Cancel As Integer)

The Enter event procedure has the following argument.

Argument | Description
controlname | The name of the control whose Enter event procedure you want to run.

The Exit event procedure has the following arguments.

Argument | Description
controlname | The name of the control whose Exit event procedure you want to run.
Cancel | The setting determines if the Exit event occurs. Setting the Cancel argument to True (-1) cancels the Exit event

Remarks

You can't cancel the Enter event.


Enter, Exit Events - Event Procedures Example

In the following example, two event procedures are attached to the LastName text box. The Enter event procedure displays a message specifying what type of data the user can enter in the text box. The Exit event procedure displays a dialog box asking the user if changes should be saved before the focus moves to another control. If the user clicks the Cancel button, the Cancel argument is set to True (-1), which moves the focus to the text box without saving changes. If the user chooses the OK button, the changes are saved, and the focus moves to another control.

To try the example, add the following event procedure to a form that contains a text box named LastName.

Private Sub LastName_Enter()
    MsgBox "Enter your last name."
End Sub

Private Sub LastName_Exit(Cancel As Integer)
    Dim strMsg As String

    strMsg = "You entered '" & Me!LastName _
     & "' as your last name." & _
        vbCrLf & "Is this correct?"
    If MsgBox(strMsg, vbYesNo) = vbNo Then
        Cancel = True            ' Cancel exit.
    Else
        Exit Sub                    ' Save changes and exit.
    End If
End Sub


 Enter, Exit Events - Macros

Enter, Exit Events - Macros

To run a macro when the Enter or Exit event occurs, set the OnEnter or OnExit property to the name of the macro.

Remarks

When the Enter or Exit event occurs, you can run a macro that uses a GoToControl action to change the tab order based on current data in a control. For example, if the user enters Single in the MaritalStatus field, you can ensure that the focus doesn't move to the SpouseName field.

You can use the CancelEvent action in an Exit macro to cancel exiting the control. You can't use the CancelEvent action in an Enter macro to cancel the Enter event. However, you can use the GoToControl action in an Enter macro to move the focus to a different control.


 Error Event - Event Procedures

Error Event - Event Procedures

To create an event procedure that runs when the Error event occurs, set the OnError property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_Error(DataErr As Integer, Response As Integer)

Private Sub Report_Error(DataErr As Integer, Response As Integer)

The Error event procedure has the following arguments.

Argument | Description
DataErr | The error code returned by the Err object when an error occurs. You can use the DataErr argument with the Error function to map the number to the corresponding error message.
Response | The setting determines whether or not an error message is displayed. The Response argument can be one of the following intrinsic constants.
 | Constant | Description
 | acDataErrContinue | Ignore the error and continue without displaying the default Microsoft Access error message. You can supply a custom error message in place of the default error message.
 | acDataErrDisplay | (Default) Display the default Microsoft Access error message.

Remarks

You can't cancel the Error event.


Error Event - Event Procedures Example

The following example shows how you can replace a default error message with a custom error message. When Microsoft Access returns an error message indicating it has found a duplicate key (error code 3022), this event procedure displays a message that gives more application-specific information to users.

To try the example, add the following event procedure to a form that is based on a table with a unique employee ID number as the key for each record.

Private Sub Form_Error(DataErr As Integer, Response As Integer)
    Const conDuplicateKey = 3022
    Dim strMsg As String

    If DataErr = conDuplicateKey Then
        Response = acDataErrContinue
        strMsg = "Each employee record must have a unique " _
            & "employee ID number. Please recheck your data."
        MsgBox strMsg
    End If
End Sub


 Error Event - Macros

Error Event - Macros

To run a macro when the Error event occurs, set the OnError property to the name of the macro.

Remarks

You can use an Error macro to display a general message whenever a run-time error occurs. However, macros can't return the error code and determine which error occurred, so you typically use event procedures with this event.

You can't use the CancelEvent action in an Error macro.


 Filter Event - Event Procedures

Filter Event - Event Procedures

To create an event procedure that runs when the Filter event occurs, set the OnFilter property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_Filter(Cancel As Integer, FilterType As Integer)

The Filter event procedure has the following arguments.

Argument | Description
Cancel | The setting determines whether to open the filter window. Setting the Cancel argument to True (-1) prevents the filter window from opening. You can also use the CancelEvent method of the DoCmd object to cancel opening the filter window.
FilterType | The filter window the user is trying to open. The FilterType argument can be one of the following intrinsic constants:
 | Constant | Value
 | acFilterByForm | 0
 | acFilterAdvanced | 1
 | acServerFilterByForm | 2

Remarks

You can use the Filter event procedure to disable or hide certain controls in the Filter By Form or Server Filter By Form window, preventing them from being used in filter criteria. For example, you may want your Orders form always to show records that have a value in the TotalDue control, no matter how small. You can disable or hide this control in the Filter event procedure, then enable or show it in the ApplyFilter event procedure. Disabling and hiding controls in the Filter By Form or Server Filter By Form window is best accomplished in the Filter event procedure rather than the Filter macro, because you can check the FilterType argument to see if the user opened the Filter By Form or Server Filter By Form window. In a Microsoft Access database (.mdb), all of the fields in a form appear in the Advanced Filter/Sort window, even if the controls are disabled or hidden.


Filter Event - Event Procedures Example

The following example shows how to disable the TotalDue control on an Orders form when the user tries to create a filter, so that the user can't filter on this field. Any records that have a TotalDue value and meet the other filter criteria will always be shown on the filtered form. This example also forces the user to use the Filter By Form window and not the Advanced Filter/Sort window.

To try this example, add the following event procedure to an Orders form that contains a TotalDue control. Try to create a filter by using the Advanced Filter/Sort window that uses the TotalDue control. Also try creating the same filter by using the Filter By Form window.

Private Sub Form_Filter(Cancel As Integer, FilterType As Integer)
    If FilterType = acFilterByForm Then
        Forms!Orders!TotalDue.Enabled = False
    ElseIf FilterType = acFilterAdvanced Then
        MsgBox "The best way to filter this form is to use the " _
            & "Filter By Form command or toolbar button.", vbOKOnly + vbInformation
        Cancel = True
    End If
End Sub


 Filter Event - Macros

Filter Event - Macros

To run a macro when the Filter event occurs, set the OnFilter property to the name of the macro.

Remarks

You can set the Filter or ServerFilter property in a Filter macro by using the SetValue action. This enables you to customize the filter criteria that the user sees when the Filter By Form, Advanced Filter/Sort, or the Server Filter By Form window is displayed.

You can use the CancelEvent action in a Filter macro to cancel opening the filter window.


 Format Event - Event Procedures

Format Event - Event Procedures

To create an event procedure that runs when the Format event occurs, set the OnFormat property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub sectionname_Format(Cancel As Integer, FormatCount As Integer)

The Format event procedure has the following arguments.

Argument | Description
sectionname | The name of the report section whose Format event procedure you want to run.
Cancel | The setting determines if the formatting of the section occurs. Setting the Cancel argument to True (-1) cancels formatting of the section.
FormatCount | An Integer value that specifies whether the Format event has occurred more than once for a section. For example, if a section doesn't fit on one page and part of it moves to the next page of the report, Microsoft Access sets the FormatCount argument to 2.

Remarks

If you cancel formatting, Microsoft Access doesn't format the section for printing and prints the next section instead. You can use this event procedure to skip a section in a report without leaving a blank space on the page when the report is printed.


Format Event - Event Procedures Example

The following example displays or hides a congratulatory message next to a calculated control that shows sales totals by salesperson. In report sections where the sales total is greater than the sales goal, a label named Message displays the message "Congratulations! You have met your sales goal" when the section is printed; in sections where the sales total is less than the sales goal, the label is hidden.

To try the example, add the following event procedure to a report that contains a label called Message, a text box called GrandTotal (a calculated control that displays the sales total), and a detail section called SalesDetail.

Private Sub SalesDetail_Format(Cancel As Integer, _
        FormatCount As Integer)
    Const conSalesGoal = 1000
    If Me!GrandTotal > conSalesGoal Then
        Me!Message.Visible = True
    Else
        Me!Message.Visible = False
    End If
End Sub


 Format Event - Macros

Format Event - Macros

To run a macro when the Format event occurs, set the OnFormat property to the name of the macro.

Remarks

You can use the FormatCount property to check whether the Format event has occurred more than once for a section. For example, if a section doesn't fit on one page and part of it moves to the next page of the report, the Format event occurs once for each page, and the FormatCount property is set to 2. You can check the FormatCount property setting to determine how many times a Format macro has run per section.

You can use the CancelEvent action in a Format macro to cancel formatting of a section. If you cancel formatting, Microsoft Access doesn't format the section for printing and prints the next section instead. You can use the CancelEvent action to skip a section in a report without leaving a blank space on the page when the report is printed.


 GotFocus, LostFocus Events - Event Procedures

GotFocus, LostFocus Events - Event Procedures

To create an event procedure that runs when the GotFocus or LostFocus event occurs, set the OnGotFocus or OnLostFocus property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_GotFocus( )

Private Sub controlname_GotFocus( )

Private Sub Form_LostFocus( )

Private Sub controlname_LostFocus( )

The GotFocus and LostFocus event procedures have the following argument.

Argument | Description
controlname | The name of the control whose GotFocus or LostFocus event procedure you want to run.

Remarks

You can use a LostFocus event procedure to validate entered data as the user moves the focus from a control. You can also reverse or change conditions that you set up in the object's GotFocus event procedure.

Other uses for LostFocus and GotFocus event procedures are enabling, disabling, hiding, and displaying other objects.

You can't cancel a GotFocus or LostFocus event.


GotFocus, LostFocus Events - Event Procedures Example

The following example displays a message in a label when the focus moves to an option button.

To try the example, add the following event procedures to a form named Contacts that contains an option button named OptionYes and a label named LabelYes.

Private Sub OptionYes_GotFocus()
    Me!LabelYes.Caption = "Option button 'Yes' has the focus."
End Sub

Private Sub OptionYes_LostFocus()
    Me!LabelYes.Caption = ""        ' Clear caption.
End Sub


 GotFocus, LostFocus Events - Macros

GotFocus, LostFocus Events - Macros

To run a macro when the GotFocus or LostFocus event occurs, set the OnGotFocus or OnLostFocus property to the name of the macro.

Remarks

You can use a LostFocus macro to validate entered data as the user moves the focus from a control. You can also reverse or change conditions that you set up in the object's GotFocus macro.

Other uses for LostFocus and GotFocus macros are enabling, disabling, displaying, and hiding other objects.

You can't use the CancelEvent action in a GotFocus or LostFocus macro.


 Initialize Event - Event Procedure

Initialize Event - Event Procedure

To create the event procedure for the Initialize event, open the class module and click Class in the Object box. Then click Initialize in the Procedure box.

Syntax

Private Sub Class_Initialize( )

Remarks

You can use this event procedure to run code when an instance of the class is created, or to initialize any data used by the instance of the class.

The Initialize event occurs when you create a new instance of a class by using the New keyword. For example, suppose you have a class named CustomObject. You can add code in a standard module that creates a new instance of the class CustomObject, as shown in the following example:

Dim obj As CustomObject
Set obj = New CustomObject

When you run the procedure that contains this code, Visual Basic creates a new instance of the CustomObject class, and the Initialize event occurs.

When declaring an object variable using the New keyword, the Initialize event occurs when you create an instance of a class by setting or returning a property or applying a method defined in the class module. For example, suppose you've defined a Function procedure named ListNames within the CustomObject class module. To run this function from another module, you must qualify it with the name of the class module, as shown in the following example:

CustomObject.ListNames

Qualifying the function with the name of the class module creates an instance of the class module, and the Initialize event occurs.


Initialize, ItemAdded, ItemRemoved, Terminate Event Procedures Example

The following example includes event procedures for the ItemAdded and ItemRemoved events. To try this example, first create a new class module by clicking Class Module on the Insert menu. Paste the following code into the class module and save the module as RefEvents:

' Declare object variable to represent References collection.
Public WithEvents evtReferences As References

' When instance of class is created, initialize evtReferences
' variable.
Private Sub Class_Initialize()
    Set evtReferences = Application.References
End Sub

' When instance is removed, set evtReferences to Nothing.
Private Sub Class_Terminate()
    Set evtReferences = Nothing
End Sub

' Display message when reference is added.
Private Sub evtReferences_ItemAdded(ByVal Reference As _
        Access.Reference)
    MsgBox "Reference to " & Reference.Name & " added."
End Sub

' Display message when reference is removed.
Private Sub evtReferences_ItemRemoved(ByVal Reference As _
        Access.Reference)
    MsgBox "Reference to " & Reference.Name & " removed."
End Sub

The following Function procedure adds a specified reference. When a reference is added, the ItemAdded event procedure defined in the RefEvents class runs.

For example, to set a reference to the calendar control, you could pass the string "C:\Windows\System\Mscal.ocx", if this is the correct location for the calendar control on your computer.

' Create new instance of RefEvents class.
Dim objRefEvents As New RefEvents

' Pass file name and path of type library to this procedure.
Function AddReference(strFileName As String) As Boolean
    Dim ref As Reference

    On Error GoTo Error_AddReference
    ' Create new reference on References object variable.
    Set ref = objRefEvents.evtReferences.AddFromFile(strFileName)
    AddReference = True

Exit_AddReference:
    Exit Function

Error_AddReference:
    MsgBox Err & ": " & Err.Description
    AddReference = False
    Resume Exit_AddReference
End Function

The next Function procedure removes a specified reference. When a reference is removed, the ItemRemoved event procedure defined in the RefEvents class runs.

For example, to remove a reference to the calendar control, you could pass the string "MSACAL", which is the name of the Reference object that represents the calendar control.

Function RemoveReference(strRefName As String) As Boolean
    Dim ref As Reference

    On Error GoTo Error_RemoveReference
    ' Return object representing existing reference.
    Set ref = objRefEvents.evtReferences(strRefName)
    ' Remove reference from collection.
    objRefEvents.evtReferences.Remove ref
    RemoveReference = True

Exit_RemoveReference:
    Exit Function

Error_RemoveReference:
    MsgBox Err & ": " & Err.Description
    RemoveReference = False
    Resume Exit_RemoveReference
End Function


 ItemAdded Event - Event Procedures

ItemAdded Event - Event Procedures

To create an event procedure that runs when the ItemAdded event occurs, follow the steps included in the Remarks section of this topic.

Syntax

Private Sub evtReferences_ItemAdded(reference)

The ItemAdded event procedure has the following arguments.

Argument | Description
evtReferences | An object variable representing the References collection. You must declare this object variable in a class module by using the WithEvents keyword.
reference | The Reference object that has been added to the References collection.

Remarks

The ItemAdded event procedure can contain code that you want to run when a reference to a type library is added to the project. You can add a reference from Visual Basic by using the AddFromFile or AddFromGUID method to add a Reference object to the References collection.

To create the ItemAdded event procedure:

  1. Using the WithEvents keyword, declare an object variable of type References in the Declarations section of a class module. Microsoft Access uses this object variable to define the event procedure for the ItemAdded event. The following line of code shows a typical WithEvents declaration:
    Public WithEvents evtReferences As References
  2. Create an event procedure definition within the class module by selecting the name of the References object variable from the Object box in the Module window. For example, if you use the declaration shown in the preceding step, you'll see evtReferences in the Object drop-down box. Then select the ItemAdded event in the Procedure box.

  3. Add the code that will run when the event occurs. For example, if you want to display a message box stating that a reference has been added to the project, add that code to the event procedure.

  4. Assign the References collection to the References object variable that you declared with the WithEvents keyword. This assignment statement should be within a procedure that runs before the ItemAdded event will occur.

    For example, you could include this statement within the Initialize event of the class module in which you declared the object variable. Then when you create an instance of the class, the object variable is automatically initialized. If you're using the evtReferences object variable, this event procedure would appear as follows:

    Private Sub Class_Initialize()
    Set evtReferences = Application.References
End Sub

Note If you've already followed the preceding steps to create an event procedure for the ItemRemoved event, you don't need to repeat them for the ItemAdded event. You can use the same References object variable for both.

In order to trigger the ItemAdded event, you must create the new reference by using the References object variable that you declared with the WithEvents keyword.

To add a reference and trigger the event:

  1. Within a standard module, create a new instance of the class within which you declared the References object variable. For example, if the name of the class is RefEvents, you can create a new instance of the class and assign it to an object variable with the following declaration statement. This statement can exist at the module level or within a procedure.
    Dim objRefEvents As New RefEvents
  2. Within a Sub or Function procedure, create a new Reference object by using the AddFromFile or AddFromGUID method of the object variable that represents the References collection (evtReferences). Since the ItemAdded event in the class module is defined in association with a particular References object variable, you must create the new Reference object by using this variable. Otherwise, the event won't occur.

Note that you must qualify the References object variable with the name of the class in which it's declared.

Once you've completed all the preceding steps, you can add a new reference with a procedure such as the following:

Function AddReference(strFileName As String)
    Dim ref As Reference
    ' Create new instance of RefEvents class.
    Dim objRefEvents As New RefEvents

    ' Creates reference on References collection
    ' variable defined in RefEvents class.
    Set ref = objRefEvents.evtReferences.AddFromFile(strFileName)
End Function

Notes

  • The procedure that initializes the References object variable must be within the same scope as the object variable declaration. For example, if you declared the References object variable as Private within a class module, then you must initialize the variable in a procedure within that same class module.

  • You can include the ItemAdded event procedure only in a class module.

  • Once you declare a module-level variable to represent the References collection, you can use that variable to create event procedure definitions for both the ItemAdded event and the ItemRemoved event.

  • If you have multiple ItemAdded event procedures within a single project, each one will run when the event occurs, but they won't run in any specified order. Therefore, it's advisable to create only one ItemAdded event procedure in a project and to include all code to be run when the event occurs in that event procedure.

  • The ItemAdded event occurs after the reference has been added to the project.


 ItemRemoved Event - Event Procedures

ItemRemoved Event - Event Procedures

To create an event procedure that runs when the ItemRemoved event occurs, follow the steps included in the Remarks section of this topic.

Syntax

Private Sub evtReferences_ItemRemoved(reference)

The ItemRemoved event procedure has the following arguments.

Argument | Description
evtReferences | An object variable representing the References collection. You must declare this object variable in a class module by using the WithEvents keyword.
reference | The Reference object that has been removed from the References collection.

Remarks

The ItemRemoved event procedure can contain code that you want to run when a reference to a type library is removed from the project. You can remove a reference from Visual Basic by using the Remove method to remove a Reference object from the References collection.

To create the ItemRemoved event procedure:

  1. Using the WithEvents keyword, declare an object variable of type References in the Declarations section of a class module. Microsoft Access uses this object variable to define the event procedure for the ItemRemoved event. The following line of code shows a typical WithEvents declaration:
    Public WithEvents evtReferences As References
  2. Create an event procedure definition within the class module by selecting the name of the References object variable from the Object box in the Module window. For example, if you use the declaration shown in the preceding step, you'll see evtReferences in the Object drop-down box. Then select the ItemRemoved event in the Procedure box.

  3. Add the code that will run when the event occurs. For example, if you want to display a message box stating that a reference has been removed from the project, add that code to the event procedure.

  4. Assign the References collection to the References object variable that you declared with the WithEvents keyword. This assignment statement should be within a procedure that runs before the ItemRemoved event will occur.

    For example, you could include this statement within the Initialize event of the class module in which you declared the object variable. Then when you create an instance of the class, the object variable is automatically initialized. If you're using the evtReferences object variable, this event procedure would appear as follows:

    Private Sub Class_Initialize()
    Set evtReferences = Application.References
End Sub

Note If you've already followed the preceding steps to create an event procedure for the ItemAdded event, you don't need to repeat them for the ItemRemoved event. You can use the same References object variable for both.

In order to trigger the ItemRemoved event, you must remove the existing reference by using the References object variable that you declared with the WithEvents keyword.

To remove a reference and trigger the event:

  1. Within a standard module, create a new instance of the class within which you declared the References object variable. For example, if the name of the class is RefEvents, you can create a new instance of the class and assign it to an object variable with the following declaration statement. This statement can exist at the module level or within a procedure.
    Dim objRefEvents As New RefEvents
  2. Within a Sub or Function procedure, create a new Reference object by using the Remove method of the object variable that represents the References collection (evtReferences). Since the ItemRemoved event in the class module is defined in association with a particular References object variable, you must create the new Reference object by using this variable. Otherwise, the event won't occur.

Note that you must qualify the References object variable with the name of the class in which it's declared.

Once you've completed all the preceding steps, you can remove an existing reference with a procedure such as the following:

Function RemoveReference(strRefName As String)
    Dim ref As Reference
    ' Create new instance of RefEvents class.
    Dim objRefEvents As New RefEvents

    ' Creates reference on References collection
    ' variable defined in RefEvents class.
    Set ref = objRefEvents.evtReferences(strRefName)
    objRefEvents.evtReferences.Remove ref
End Function

Notes

  • The procedure that initializes the References object variable must be within the same scope as the object variable declaration. For example, if you declared the References object variable as Private within a class module, then you must initialize the variable in a procedure within that same class module.

  • You can include the ItemRemoved event procedure only in a class module.

  • Once you declare a module-level variable to represent the References collection, you can use that variable to create event procedure definitions for both the ItemRemoved event and the ItemAdded event.

  • If you have multiple ItemRemoved event procedures within a single project, each one will run when the event occurs, but they won't run in any specified order. Therefore, it's advisable to create only one ItemRemoved event procedure in a project and to include all code to run when the event occurs in that event procedure.

  • The ItemRemoved event occurs after the reference has been removed from the project.


 KeyDown, KeyUp Events - Event Procedures

KeyDown, KeyUp Events - Event Procedures

To create an event procedure that runs when the KeyDown or KeyUp event occurs, set the OnKeyDown or OnKeyUp property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

Private Sub controlname_KeyDown(KeyCode As Integer, Shift As Integer)

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)

Private Sub controlname_KeyUp(KeyCode As Integer, Shift As Integer)

The KeyDown and KeyUp events have the following arguments.

Argument | Description
controlname | The name of the control whose KeyUp or KeyDown event procedure you want to run.
KeyCode | A key code, such as vbKeyF1 (the F1 key) or vbKeyHome (the HOME key). To specify key codes, use the intrinsic constants shown in the Object Browser. You can prevent an object from receiving a keystroke by setting KeyCode to 0.
Shift | The state of the SHIFT, CTRL, and ALT keys at the time of the event. If you need to test for the Shift argument, you can use one of the following intrinsic constants as bit masks:
 | Constant | Description
 | acShiftMask | The bit mask for the SHIFT key.
 | acCtrlMask | The bit mask for the CTRL key.
 | acAltMask | The bit mask for the ALT key.

Remarks

You test for a condition by first assigning each result to a temporary integer variable and then comparing the Shift argument to an intrinsic constant. Use the And operator with the Shift argument to test whether the condition is greater than 0, indicating that the SHIFT, CTRL, or ALT key was pressed, as in the following example:

ShiftDown = (Shift And acShiftMask) > 0

In an event procedure, you can test for any combination of conditions, as in the following example:

If ShiftDown And CtrlDown Then
.    ' Do this if SHIFT and CTRL keys are pressed.
.
.
End If

You can use the KeyDown and KeyUp event procedures to interpret the uppercase and lowercase version of each character by testing for both the KeyCode argument and the Shift argument. The KeyCode argument indicates the physical key pressed (thus, A and a are considered the same key), and the Shift argument indicates the state of SHIFT+key and returns either A or a.

Use the KeyDown and KeyUp event procedures for keyboard handlers if you need to respond to both the pressing and releasing of a key.

You can respond to specific keys pressed in a form, regardless of which control has the focus. For example, you may want the key combination CTRL+X to always perform the same action on a form. To make sure a form receives all keyboard events, even those that occur for controls, before they occur for the controls, set the KeyPreview property of the form to Yes. With this property setting, all keyboard events occur first for the form, and then for the control that has the focus. You can respond to specific keystrokes in the form's KeyDown, KeyPress and KeyUp events. You can prevent a control from receiving keystrokes you've responded to, and prevent the keyboard events from occurring for the control, by setting the KeyCode argument to 0 for both the KeyDown and KeyUp events, and setting the KeyAscii argument to 0 for the KeyPress event (if the key is an ANSI key). You must set all three arguments to 0 if you don't want the control to receive the keystrokes.

You can use the arguments for the KeyDown, KeyPress, and KeyUp events, in conjunction with the arguments for the MouseDown, MouseUp, and MouseMove events, to make your application work smoothly for both keyboard and mouse users.

You can't cancel the KeyDown or KeyUp event.


KeyDown, KeyUp Events - Event Procedures Example

The following example determines whether you have pressed the SHIFT, CTRL, or ALT key.

To try the example, add the following event procedure to a form containing a text box named KeyHandler.

Private Sub KeyHandler_KeyDown(KeyCode As Integer, _
     Shift As Integer)
    Dim intShiftDown As Integer, intAltDown As Integer
    Dim intCtrlDown As Integer

    ' Use bit masks to determine which key was pressed.
    intShiftDown = (Shift And acShiftMask) > 0
    intAltDown = (Shift And acAltMask) > 0
    intCtrlDown = (Shift And acCtrlMask) > 0
    ' Display message telling user which key was pressed.
    If intShiftDown Then MsgBox "You pressed the SHIFT key."
    If intAltDown Then MsgBox "You pressed the ALT key."
    If intCtrlDown Then MsgBox "You pressed the CTRL key."
End Sub


 KeyDown, KeyUp Events - Macros

KeyDown, KeyUp Events - Macros

To run a macro when the KeyDown or KeyUp event occurs, set the OnKeyDown or OnKeyUp property to the name of the macro.

Remarks

You can use a KeyDown or KeyUp macro to respond whenever the user presses or releases a key while a form or control has the focus. However, macros can't return the key code and determine which key was pressed, so you typically use event procedures with these events.

You can't use the CancelEvent action in a KeyDown or KeyUp macro.


 KeyPress Event - Event Procedures

KeyPress Event - Event Procedures

To create an event procedure that runs when the KeyPress event occurs, set the OnKeyPress property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_KeyPress(KeyAscii As Integer)

Private Sub controlname_KeyPress(KeyAscii As Integer)

The KeyPress event has the following arguments.

Argument | Description
controlname | The name of the control whose KeyPress event procedure you want to run.
KeyAscii | Returns a numeric ANSI key code. The KeyAscii argument is passed by reference; changing it sends a different character to the object. Setting the KeyAscii argument to 0 cancels the keystroke so that the object doesn't recognize that a key was pressed.

Remarks

A KeyPress event procedure is useful for intercepting keystrokes entered in a text box or combo box. It enables you to test keystrokes for validity or to format characters as they're typed. Changing the value of the KeyAscii argument changes the character displayed.

You can convert the KeyAscii argument to a character by using the following expression.

Chr(KeyAscii)

You can then perform string operations and translate the character back to an ANSI number that the control can recognize by using the following syntax.

KeyAscii = Asc(character)

Note The ANSI number for the keyboard combination CTRL+@ is 0. Because Microsoft Access recognizes a KeyAscii value of 0 as a zero-length string (" "), you should avoid using CTRL+@ in your applications.

You can respond to specific keys pressed while a form is open, regardless of which control has the focus. For example, you may want the key combination CTRL+X to always perform the same action on a form. To make sure a form receives all keyboard events, even those that occur for controls, before they occur for the controls, set the KeyPreview property of the form to Yes. With this property setting, all keyboard events occur first for the form, and then for the control that has the focus. You can respond to specific keystrokes in the form's KeyDown, KeyPress, and KeyUp events. You can prevent a control from receiving keystrokes you've responded to, and prevent the keyboard events from occurring for the control, by setting the KeyCode argument to 0 for both the KeyDown and KeyUp events, and setting the KeyAscii argument to 0 for the KeyPress event. You must set all three arguments to 0 if you don't want the control to receive the keystrokes.

You can use the arguments for the KeyDown, KeyPress, and KeyUp events, in conjunction with the arguments for the MouseDown, MouseUp, and MouseMove events, to make your application work smoothly for both keyboard and mouse users.

You can't cancel the KeyPress event in an event procedure, but you can cancel it in a macro.


KeyPress Event - Event Procedures Example

The following example converts text entered in a text box to uppercase as the text is typed in, one character at a time.

To try the example, add the following event procedure to a form that contains a text box named ShipRegion.

Private Sub ShipRegion_KeyPress(KeyAscii As Integer)
    Dim strCharacter As String

    ' Convert ANSI value to character string.
    strCharacter = Chr(KeyAscii)
    ' Convert character to upper case, then to ANSI value.
    KeyAscii = Asc(UCase(strCharacter))
End Sub


 Key Press Event - Macros

KeyPress Event - Macros

To run a macro when the KeyPress event occurs, set the OnKeyPress property to the name of the macro.

Remarks

You can use a KeyPress macro to respond whenever the user presses an ANSI key while the focus is on a form or control. However, macros can't return the ANSI key code and determine which key was pressed, so you typically use event procedures with this event.

You can use the CancelEvent action in a KeyPress macro to cancel the key or key combination. For example, you may want to disallow the entry of ANSI keystrokes in a control under certain conditions.


 Load, Unload Events - Event Procedures

Load, Unload Events - Event Procedures

To create an event procedure that runs when the Load or Unload event occurs, set the OnLoad or OnUnload property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_Load( )

Private Sub Form_Unload(Cancel As Integer)

The Unload event has the following argument.

Argument | Description
Cancel | The setting determines whether to unload the form. Setting Cancel to True (-1) prevents the form from being unloaded.

Remarks

You can place initialization code in a form's Load event procedure. For example, you can specify default settings for controls and initialize form-level variables.

You can't cancel the Load event.

In an Unload event procedure, you can include any form-level validation code you might need to close the form or save the data it contains to a file.

If Cancel is set to True for a form that is modal, you may not be able to return control to the rest of the application.


Load, Unload Events - Event Procedures Example

The following example displays the current date in the form's caption when the form is loaded.

To try the example, add the following event procedure to a form:

Private Sub Form_Load()
    Me.Caption = Date
End Sub

The next example prompts the user to verify that the form should close.

To try the example, add the following event procedure to a form. In Form view, close the form to display the dialog box, and then click Yes or No.

Private Sub Form_Unload(Cancel As Integer)
    If MsgBox("Close form?", vbYesNo) = vbYes Then
        Exit Sub
    Else
        Cancel = True
    End If
End Sub


 Load, Unload Events - Macros

Load, Unload Events - Macros

To run a macro when the Load or Unload event occurs, set the OnLoad or OnUnload property to the name of the macro.

Remarks

You can use a Load macro to carry out actions for the controls or records on a form after the form opens. For example, you can specify default settings for controls.

You can't use the CancelEvent action in a Load macro.

You can use the CancelEvent action in an Unload macro to cancel unloading of the records. This also cancels closing of the form.

If a form's Unload macro carries out a CancelEvent action, you won't be able to close the form. You must either correct the condition that caused the CancelEvent action to be carried out or open the macro and delete the CancelEvent action. If the form is modal, you won't be able to open the macro or work in any other windows in the application.


 MouseDown, MouseUp Events - Event Procedures

MouseDown, MouseUp Events - Event Procedures

To create an event procedure that runs when the MouseDown or MouseUp event occurs, set the OnMouseDown or OnMouseUp property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Private Sub controlname_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

Private Sub controlname_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

The MouseDown and MouseUp events have the following arguments.

Argument | Description
controlname | The name of the control whose MouseDown or MouseUp event procedure you want to run.
Button | The button that was pressed (MouseDown) or released (MouseUp) to trigger the event. If you need to test for the Button argument, you can use one of the following intrinsic constants as bit masks:
 | Constant | Description
 | acLeftButton | The bit mask for the left mouse button.
 | acRightButton | The bit mask for the right mouse button.
 | acMiddleButton | The bit mask for the middle mouse button.
Shift | The state of the SHIFT, CTRL, and ALT keys when the button specified by the Button argument was pressed or released. If you need to test for the Shift argument, you can use one of the following intrinsic constants as bit masks:
 | Constant | Description
 | acShiftMask | The bit mask for the SHIFT key.
 | acCtrlMask | The bit mask for the CTRL key.
 | acAltMask | The bit mask for the ALT key.
X, Y | The x and y coordinates for the current location of the mouse pointer. The X and Y arguments are always expressed in twips.

Note If a mouse button is pressed while the pointer is over a form or control, that object receives all mouse events up to and including the last MouseUp event. This means that the X and Y arguments may not always be relative to the object that receives them.

Remarks

You test for a condition by first assigning each result to a temporary Integer variable and then comparing the Shift or Button argument to an intrinsic constant. Use the And operator with the Button argument to test whether the condition is greater than 0, indicating that the left, middle, or right mouse button was pressed, as in the following example:

LeftDown = (Button And acLeftButton) > 0

In an event procedure, you can test for any combination of conditions, as in the following example:

If ShiftDown And CtrlDown Then
    .' Do this if SHIFT and CTRL keys are pressed.
    .
    .
End If

Note The Button argument for the MouseDown and MouseUp events differs from the Button argument used for the MouseMove event. For the MouseDown and MouseUp events, the Button argument indicates exactly one button per event; that is, if you press two mouse buttons, two MouseDown (and MouseUp) events will occur, each with a different Button argument setting. For the MouseMove event, the Button argument indicates the current state of all buttons.

You can use the arguments for the KeyDown, KeyPress, and KeyUp events, in conjunction with the arguments for the MouseDown, MouseUp, and MouseMove events, to make your application work smoothly for both keyboard and mouse users.

You can't cancel the MouseDown or MouseUp events.


MouseDown, MouseUp Events - Event Procedures Example

The following example shows how you can find out which mouse button caused a MouseDown event.

To try the example, add the following event procedure to a form:

Private Sub Form_MouseDown(Button As Integer, _
         Shift As Integer, X As Single, _
         Y As Single)
    If Button = acLeftButton Then
        MsgBox "You pressed the left button."
    End If
    If Button = acRightButton Then
        MsgBox "You pressed the right button."
    End If
    If Button = acMiddleButton Then
        MsgBox "You pressed the middle button."
    End If
End Sub


 MouseDown, MouseUp Events - Macros

MouseDown, MouseUp Events - Macros

To run a macro when the MouseDown or MouseUp event occurs, set the OnMouseDown or OnMouseUp property to the name of the macro.

Remarks

You can use a MouseDown or MouseUp macro to respond whenever the user presses or releases a mouse button in a form or control. However, macros can't return the button code and determine which mouse button was pressed, so you typically use event procedures with this event.

You can't use the CancelEvent action in a MouseDown or MouseUp macro, with one exception: You can use the CancelEvent action in a MouseDown macro to cancel the event that occurs when you press the right mouse button. For example, you can cancel the display of a shortcut menu and display your own custom shortcut menu.


 MouseMove Event - Event Procedures

MouseMove Event - Event Procedures

To create an event procedure that runs when the MouseMove event occurs, set the OnMouseMove property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

Private Sub controlname_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

The MouseMove event has the following arguments.

Argument | Description
controlname | The name of the control whose MouseMove event procedure you want to run.
Button | The state of the mouse buttons when the event occurs. If you need to test for the Button argument, you can use one of the following intrinsic constants as bit masks:
 | Constant | Description
 | acLeftButton | The bit mask for the left mouse button.
 | acRightButton | The bit mask for the right mouse button.
 | acMiddleButton | The bit mask for the middle mouse button.
Shift | The state of the SHIFT, CTRL, and ALT keys when the button specified by the Button argument was pressed or released. If you need to test for the Shift argument, you can use one of the following intrinsic constants as bit masks:
 | Constant | Description
 | acShiftMask | The bit mask for the SHIFT key.
 | acCtrlMask | The bit mask for the CTRL key.
 | acAltMask | The bit mask for the ALT key.
X, Y | The x and y coordinates of the current location of the mouse pointer. The X and Y arguments are always expressed in twips.

Remarks

You test for a condition by first assigning each result to a temporary Integer variable and then comparing the Shift or Button argument to an intrinsic constant. Use the And operator with the Button argument to test whether the condition is greater than 0, indicating that the left, middle, or right mouse button was pressed, as in the following example:

LeftDown = (Button And acLeftButton) > 0

In a procedure, you can test for any combination of conditions, as in the following example:

If ShiftDown And CtrlDown Then
    .' Do this if SHIFT and CTRL keys are pressed.
    .
    .
End If

Note The Button argument for the MouseDown and MouseUp events differs from the Button argument for MouseMove. For the MouseMove event, the Button argument indicates the current state of all buttons; a single MouseMove event can indicate that some, all, or no button is pressed. For example, if you press both the left and right buttons while moving the mouse, the Button argument is set to 3 (1 + 2). For the MouseDown and MouseUp events, the Button argument indicates one button per event.

You can use the arguments for the KeyDown, KeyPress, and KeyUp events, in conjunction with the arguments for the MouseDown, MouseUp, and MouseMove events, to make your application work smoothly for both keyboard and mouse users. For example, you may need to coordinate the keyboard focus with the mouse focus. Normally, these are the same. For example, if you move the mouse pointer to a text box and click the mouse button, both the keyboard focus and the mouse focus move to the text box. However, moving the mouse pointer over a control does not move the keyboard focus to that control. You need to click a mouse button, use one of the keyboard navigation keys, or set the focus to the control in the MouseMove event procedure.

Since the MouseMove event occurs for each area of the form it moves over, you can end up with a multitude of MouseMove events if you don't control them. You may want to make sure that if a control or section has received a MouseMove event, the event doesn't occur for the control or section again while the mouse pointer is still on this area of the form. To do this, set and check a module variable that indicates whether the MouseMove event has already occurred for this control or form section.

You can't cancel the MouseMove event.


MouseMove Event - Event Procedures Example

The following example determines where the mouse is and whether the left mouse button and/or the SHIFT key is pressed. The x and y coordinates of the mouse pointer position are displayed in a label control as you move the mouse.

To try the example, add the following event procedure to a form that contains a label named Coordinates:

Private Sub Detail_MouseMove(Button As Integer, _
     Shift As Integer, X As Single, Y As Single)
    Dim intShiftDown As Integer, intLeftButton As Integer

    Me!Coordinates.Caption = X & ", " & Y
    ' Use bit masks to determine state of
    ' SHIFT key and left button.
    intShiftDown = Shift And acShiftMask
    intLeftButton = Button And acLeftButton
    ' Check that SHIFT key and left button
    ' are both pressed.
    If intShiftDown And intLeftButton > 0 Then
        MsgBox "Shift key and left mouse button were pressed."
    End If
End Sub


 MouseMove Event - Macros

MouseMove Event - Macros

To run a macro when the MouseMove event occurs, set the OnMouseMove property to the name of the macro.

Remarks

You can use a MouseMove macro to respond whenever the user moves the mouse over a form or control. However, macros can't return the button code and determine the state of the mouse buttons or determine the coordinates of the mouse pointer when the movement occurs, so you typically use event procedures with this event.

You can't use the CancelEvent action in a MouseMove macro.


 NoData Event - Event Procedures

NoData Event - Event Procedures

To create an event procedure that runs when the NoData event occurs, set the OnNoData property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Report_NoData(Cancel As Integer)

The NoData event procedure has the following argument.

Argument | Description
Cancel | The setting determines whether to print the report. Setting the Cancel argument to True (-1) prevents the report from printing. You can also use the CancelEvent method of the DoCmd object to cancel printing the report.


NoData Event - Event Procedures Example

The following example shows how to cancel printing a report when it has no data. A message box notifying the user that the printing has been canceled is also displayed.

To try this example, add the following event procedure to a report. Try running the report when it contains no data.

Private Sub Report_NoData(Cancel As Integer)
    MsgBox "The report has no data." _
        & chr(13) & "Printing is canceled. " _
        & chr(13) & "Check the data source for the " _
        & chr(13) & "report. Make sure you entered " _
        & chr(13) & "the correct criteria (for " _
        & chr(13) & "example, a valid range of " _
        & chr(13) & "dates),." vbOKOnly + vbInformation
    Cancel = True
End Sub


 NoData Event - Macros

NoData Event - Macros

To run a macro when the NoData event occurs, set the OnNoData property to the name of the macro.

Remarks

You can use the CancelEvent action in a NoData macro to cancel printing of the blank report.


 NotInList Event - Event Procedures

NotInList Event - Event Procedures

To create an event procedure that runs when the NotInList event occurs, set the OnNotInList property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub controlname_NotInList(NewData As String, Response As Integer)

The NotInList event procedure has the following arguments.

Argument | Description
controlname | The name of the control whose NotInList event procedure you want to run.
NewData | A string that Microsoft Access uses to pass the text the user entered in the text box portion of the combo box to the event procedure.
Response | The setting indicates how the NotInList event was handled. The Response argument can be one of the following intrinsic constants:
 | Constant | Description
 | acDataErrDisplay | (Default) Displays the default message to the user. You can use this when you don't want to allow the user to add a new value to the combo box list.
 | acDataErrContinue | Doesn't display the default message to the user. You can use this when you want to display a custom message to the user. For example, the event procedure could display a custom dialog box asking if the user wanted to save the new entry. If the response is Yes, the event procedure would add the new entry to the list and set the Response argument to acDataErrAdded. If the response is No, the event procedure would set the Response argument to acDataErrContinue.
 | acDataErrAdded | Doesn't display a message to the user but enables you to add the entry to the combo box list in the NotInList event procedure. After the entry is added, Microsoft Access updates the list by requerying the combo box. Microsoft Access then rechecks the string against the combo box list, and saves the value in the NewData argument in the field the combo box is bound to. If the string is not in the list, then Microsoft Access displays an error message.

Remarks

You can create an event procedure for the NotInList event that provides a way for the user to add a new item to the combo box list. For example, you can add a record to the table that supplies the list's values, or add a value to the value list that is the source for the combo box list.

To add a new entry to a combo box list, your event procedure must add the value in the NewData argument to the source of the combo box list. How you do this depends on the type of source the combo box list uses, as determined by the RowSourceType and RowSource properties of the combo box. In the Example in this topic, the event procedure adds the new value to a value list for the combo box.

If you let the user change the value originally typed in the combo box (for example, in a custom dialog box), you must set the combo box value to the new entry entered in the custom dialog box. This saves the new value in the field the combo box is bound to. Set the Response argument to acDataErrContinue, and Microsoft Access will add the new value to the combo box list.


NotInList Event - Event Procedures Example

The following example uses the NotInList event to add an item to a combo box.

To try this example, create a combo box called Colors on a form. Set the combo box's LimitToList property to Yes. To populate the combo box, set the combo box's RowSourceType property to Value List, and supply a list of values separated by semicolons as the setting for the RowSource property. For example, you might supply the following values as the setting for this property: Red; Green; Blue.

Next add the following event procedure to the form. Switch to Form view and enter a new value in the text portion of the combo box.

Private Sub Colors_NotInList(NewData As String, _
        Response As Integer)
    Dim ctl As Control

    ' Return Control object that points to combo box.
    Set ctl = Me!Colors
    ' Prompt user to verify they wish to add new value.
    If MsgBox("Value is not in list. Add it?", _
         vbOKCancel) = vbOK Then
        ' Set Response argument to indicate that data
        ' is being added.
        Response = acDataErrAdded
        ' Add string in NewData argument to row source.
        ctl.RowSource = ctl.RowSource & ";" & NewData
    Else
    ' If user chooses Cancel, suppress error message
    ' and undo changes.
        Response = acDataErrContinue
        ctl.Undo
    End If
End Sub

Note The above example adds an item to an unbound combo box. When you add an item to a bound combo box, you add a value to a field in the underlying data source. In most cases you can't simply add one field in a new record - depending on the structure of data in the table, you probably will need to add one or more fields to fulfill data requirements. For instance, a new record must include values for any fields comprising the primary key. If you need to add items to a bound combo box dynamically, you must prompt the user to enter data for all required fields, save the new record, and then requery the combo box to display the new value.


 NotInList Event - Macros

NotInList Event - Macros

To run a macro when the NotInList event occurs, set the OnNotInList property to the name of the macro.

Remarks

You can use a NotInList macro to add a new value to the combo box list. When the NotInList event occurs, open a custom dialog box and set the value of one of its controls to the new value. This control should be bound to the field in the table or query that is the source for the combo box. Save the record in the custom dialog box, then requery the combo box.

You can't use the CancelEvent action in a NotInList macro.


 Open, Close Events - Event Procedures

Open, Close Events - Event Procedures

To create an event procedure that is run when the Open or Close event occurs, set the OnOpen or OnClose property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_Open(Cancel As Integer)

Private Sub Report_Open(Cancel As Integer)

Private Sub Form_Close( )

Private Sub Report_Close( )

The Open event procedure has the following argument.

Argument | Description
Cancel | The setting determines if the opening of the form or report occurs. Setting the Cancel argument to True (-1) cancels the opening of the form or report.

Remarks

You can't cancel the Close event.

If you want to refer to controls in an Open event procedure, you must first move the focus to the form or to the appropriate control or record by using the SetFocus method or the GoToRecord or GoToControl method of the DoCmd object.

If an application has only one form loaded at a time, you can place code for displaying or hiding a toolbar in the Open event procedure for a form. The following example displays the toolbar MyToolbar when the form is opened.

Sub Form_Open(Cancel As Integer)
    DoCmd.ShowToolbar "MyToolbar", acToolbarYes
End Sub


Open, Close Events - Event Procedures Example

The following example shows how you can cancel the opening of a form when the user clicks a No button. A message box prompts the user to enter order details. If the user clicks No, the Order Details form isn't opened.

To try the example, add the following event procedure to a form.

Private Sub Form_Open(Cancel As Integer)
    Dim intReturn As Integer
    intReturn = MsgBox("Enter order details now?", vbYesNo)
    Select Case intReturn
        Case vbYes
            ' Open Order Details form.
            DoCmd.OpenForm "Order Details"
        Case vbNo
            MsgBox "Remember to enter order details by 5 P.M."
            Cancel = True                    ' Cancel Open event.
    End Select
End Sub


 Open, Close Events - Macros

Open, Close Events - Macros

To run a macro when the Open or Close event occurs, set the OnOpen or OnClose property to the name of the macro.

Remarks

You can use the CancelEvent action in an Open macro to cancel opening of the form or report. You can't use the CancelEvent action in a Close macro to cancel the Close event. However, you can use the CancelEvent action in a macro that runs when the Unload event occurs on a form. This cancels closing of the form.

If you want to refer to controls from an Open macro, you must first move the focus to the appropriate control or record. For example, to use a SetValue action in an Open macro to set the value of a control on a form, you must first use the GoToControl or GoToRecord action to access the control or the record containing the control.


 Page Event - Event Procedures

Page Event - Event Procedures

To create an event procedure that runs when the Page event occurs, set the OnPage property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Report_Page( )

Remarks

You can't cancel the Page event.


Page Event - Event Procedures Example

The following example shows how to draw a rectangle around a report page by using the Line method. The ScaleWidth and ScaleHeight properties by default return the internal width and height of the report.

Private Sub Report_Page()
    Me.Line(0, 0)-(Me.ScaleWidth, Me.ScaleHeight), , B
End Sub


 Page Event - Macros

Page Event - Macros

To run a macro when the Page event occurs, set the OnPage property to the name of the macro.

Remarks

Since you normally use the Line, Circle, or PSet methods in the Page event procedure to create the desired graphics for the page, you typically use the Page event procedure with this event rather than the Page macro.

You can't use the CancelEvent action in a Page macro.


 Print Event - Event Procedures

Print Event - Event Procedures

To create an event procedure that runs when the Print event occurs, set the OnPrint property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub sectionname_Print(Cancel As Integer, PrintCount As Integer)

The Print event procedure has the following arguments.

Argument | Description
sectionname | The name of the report section whose Print event procedure you want to run.
Cancel | The setting determines if the printing of the section occurs. Setting the Cancel argument to True (-1) cancels printing of the section.
PrintCount | An Integer value that specifies whether the Print event has occurred more than once for a record. For example, if part of a record is printed on one page and the rest is printed on the next page, the Print event occurs twice, and Microsoft Access sets the PrintCount argument to 2.

Remarks

To cancel printing of the section, you should set the Cancel argument to True (-1) or use the CancelEvent method of the DoCmd object. Microsoft Access prints a blank area on the page where the section would have been. You can use the CancelEvent method or the Cancel argument to skip a record in a report and leave a blank area on the page in its place when the report is printed.

Note You can't use a Print event procedure to set properties for any object.


Print Event - Event Procedures Example

The following example checks the PrintCount argument to determine the number of times the Print event has occurred. If it has occurred more than once, the Print event is canceled for the section.

To try the example, add the following event procedure to a report that contains a section named CustomerDetail.

Private Sub CustomerDetail_Print(Cancel As Integer, _
        PrintCount As Integer)
    If PrintCount > 1 Then Cancel = True
End Sub


 Print Event - Macros

Print Event - Macros

To run a macro when the Print event occurs, set the OnPrint property to the name of the macro.

Remarks

You can use the PrintCount property to check whether the Print event has occurred more than once for a record. For example, if part of a record is printed on one page and the rest is printed on the next page, the Print event occurs twice, and the PrintCount property is set to 2. You can check the PrintCount property value for Print macros that should run only once for a record, such as a macro that shows totals for the records on a page in a page footer.

You can use the CancelEvent action in a Print macro to cancel printing of a section. Microsoft Access prints a blank area on the page where the section would have been when the report is printed. You can use the CancelEvent action to skip a record in a report and leave a blank area on the page in its place when the report is printed.

A Print macro runs only for sections that are actually printed.

Note You can't use a Print macro to set properties for any object.


 Resize Event - Event Procedures

Resize Event - Event Procedures

To create an event procedure that runs when the Resize event occurs, set the OnResize property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_Resize( )

Remarks

To repaint the screen every time a form is resized, use the Repaint method in a Resize event procedure.

You can't cancel the Resize event.


Resize Event - Event Procedures Example

The following example shows how a Resize event procedure can be used to repaint a form when it is maximized. When the user clicks a command button labeled "Maximize," the form is maximized and the Resize event is triggered.

To try the example, add the following event procedures to a form named Contacts that contains a command button named Maximize:

Private Sub Maximize_Click()
    DoCmd.Maximize
End Sub

Private Sub Form_Resize()
    Forms!Contacts.Repaint
End Sub


 Resize Event - Macros

Resize Event - Macros

To run a macro when the Resize event occurs, set the OnResize property to the name of the macro.

Remarks

To repaint the screen every time a form is resized, use the RepaintObject action in the macro you specify for the Resize event.

You can't use the CancelEvent action in a Resize macro.


 Retreat Event - Event Procedures

Retreat Event - Event Procedures

To create an event procedure that runs when the Retreat event occurs, set the OnRetreat property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub sectionname_Retreat( )

The Retreat event procedure has the following argument.

Argument | Description
sectionname | The name of the report section whose Retreat event procedure you want to run.

Remarks

You can't cancel the Retreat event.


 Retreat Event - Macros

Retreat Event - Macros

To run a macro when the Retreat event occurs, set the OnRetreat property to the name of the macro.

Remarks

You can't use the CancelEvent action in a Retreat macro.


 Terminate Event - Event Procedure

Terminate Event - Event Procedure

To create the event procedure for the Terminate event, open the class module and click Class in the Object box. Then click Terminate in the Procedure box.

Syntax

Private Sub Class_Terminate( )

Remarks

To remove a reference to an instance of a class from memory, you can set the variable to which that reference is assigned to Nothing. For example, suppose you've created an instance of a class named CustomObject and assigned it to an object variable named obj. When you set obj to Nothing, the reference is removed from memory. Once all references to the instance of the class have been removed from memory, the Terminate event occurs.

A reference to an instance of a class will also be removed from memory when the object variable to which it's assigned goes out of scope. For example, if the variable is defined within a procedure, it will go out of scope when the procedure has finished running. If the variable is defined at the module level in a standard module, it will go out of scope when the code is reset. If all references to an instance of a class are removed in this way, the Terminate event also occurs.

The Terminate event isn't triggered if instances of a class were removed from memory because Microsoft Access terminated abnormally. For example, if your code invokes the Quit method of the Microsoft Access Application object before removing all existing instances of the class from memory, the Terminate event isn't triggered for that class.


 Timer Event - Event Procedures

Timer Event - Event Procedures

To create an event procedure that runs when the Timer event occurs, set the OnTimer property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub Form_Timer( )

Remarks

You can't cancel the Timer event.


Timer Event - Event Procedures Example

The following example demonstrates a digital clock you can display on a form. A label control displays the current time according to your computer's system clock.

To try the example, add the following event procedure to a form that contains a label named Clock. Set the form's TimerInterval property to 1000 milliseconds to update the clock every second.

Private Sub Form_Timer()
    Clock.Caption = Time        ' Update time display.
End Sub


 Timer Event - Macros

Timer Event - Macros

To run a macro when the Timer event occurs, set the OnTimer property to the name of the macro.

Remarks

You can't use the CancelEvent action in a Timer macro. However, setting the TimerInterval property of the form to 0 prevents the Timer event from occurring.


 Updated Event - Event Procedures

Updated Event - Event Procedures

To create an event procedure that runs when the Updated event occurs, set the OnUpdated property to [Event Procedure], and click the Build button [image] .

Syntax

Private Sub controlname_Updated(Code As Integer)

The Updated event procedure has the following arguments.

Argument | Description
controlname | The name of the control whose Updated event procedure you want to run.
Code | The setting indicates how the OLE object was updated. The Code argument can be one of the following intrinsic constants:
 | Constant | Description
 | acOLEChanged | Indicates that the object's data has changed.
 | acOLESaved | Indicates that the object's data has been saved by the application that created the object. This usually occurs when the user clicks the application's Update command or whatever command is used for updating.
 | acOLEClosed | Indicates that the file containing the object's data has been closed by the application that created the object.
 | acOLERenamed | Indicates that the file containing the object's data has been renamed by the application that created the object.

Remarks

To see if an object's data has been changed since it was last saved, set a public variable in the Updated event procedure indicating that the object needs to be saved. When you save the OLE object, reset the variable.

You can't cancel the Updated event.


 Updated Event - Macros

Updated Event - Macros

To run a macro when the Updated event occurs, set the OnUpdated property to the name of the macro.

Remarks

You can use an Updated macro to display a message whenever an OLE object's data has been updated. However, macros can't return the code that determines how the OLE object was updated, so you typically use event procedures with this event.

You can't use the CancelEvent action in an Updated macro.


Microsoft Office Assistant Example

The following function creates a custom balloon for the Office Assistant and determines how the user responded to the balloon:

Function AssistantBalloon(Optional varCheck As Variant, Optional varLabel As Variant)
    Dim bch As BalloonCheckbox
    Dim intI As Integer
    Dim intReturn As Integer
    Dim strCheck(5) As String
    Dim strList As String

    ' Create new balloon.
    Set bal = Assistant.NewBalloon
    ' Specify balloon type.
    bal.BalloonType = msoBalloonTypeButtons
    ' Specify that balloon is modal.
    bal.Mode = msoModeModal

    ' Make Assistant visible.
    If Assistant.Visible = False Then Assistant.Visible = True
    ' Check if first argument has been passed.
    If Not IsMissing(varCheck) Then
        ' If too large, set to maximum number of check boxes (5).
        If varCheck > 6 Then
            varCheck = 5
        End If
        ' Set text property to alphabet character.
        For intI = 1 To varCheck
            bal.Checkboxes(intI).Text = Chr(64 + intI)
        Next intI
    End If

    If Not IsMissing(varLabel) Then
        ' If too large, set to maximum number of labels (5).
        If varLabel > 6 Then
            varLabel = 5
        End If
        For intI = 1 To varLabel
            ' Set text property to alphabet character.
            bal.Labels(intI).Text = Chr(64 + intI)
        Next intI
    End If
    ' Store return value.
    intReturn = bal.Show

    intI = 0
    ' Determine which check boxes were checked, if any.
    For Each bch In bal.Checkboxes
        If bch.Checked = True Then
            strCheck(intI) = bch.Text
            strList = strList & "'" & strCheck(intI) & "'" & Chr(32)
        End If
        intI = intI + 1
    Next
    If Len(strList) <> 0 Then
        MsgBox "You selected checkboxes " & strList & "."
    End If
    ' Determine which label was selected, if any.
    If intReturn > 0 Then
        MsgBox "You selected label " & bal.Labels(intReturn).Text & "."
    End If
End Function

You could call this function from the Debug window as follows:

? AssistantBalloon(4, 5)


Copying a Command Bar Example

The following example copies a command bar and its controls to a new command bar. You enter the name of the command bar you want to copy and the name for the new command bar in the EnterNewName procedure. This procedure calls the general function CopyCommandBar, which uses the names you entered to create the new command bar.

Sub EnterNewName()
    CopyCommandBar "Menu Bar", "New Menu Bar"
End Sub

Function CopyCommandBar(strOrigCBName As String, _
        strNewCBName As String) As Boolean
    ' This procedure copies command bar named in
    ' strOrigCBName variable to new command bar
    ' named in strNewCBName variable.
    Dim cbrOriginal As CommandBar, intOrigCount As Integer
    Dim cbrCopy As CommandBar, cbrCtl As CommandBarControl

    On Error GoTo CBCopy_Err

    Set cbrOriginal = CommandBars(strOrigCBName)
    intOrigCount = cbrOriginal.Controls.Count
    Set cbrCopy = CommandBars.Add(strNewCBName)
    ' Make sure new command bar is visible.
    cbrCopy.Visible = True

    For Each cbrCtl In cbrOriginal.Controls
        cbrCtl.Copy cbrCopy
    Next cbrCtl
Exit Function

CBCopy_Err:
    MsgBox Err.Description
    Exit Function
End Function


Creating a Custom Command Button Example

The following example creates a custom command button on a specified command bar. You enter the name of the command bar you want to add the command button to and the name for the new button in the SpecifyCommandBarAndButton procedure. This procedure calls the general function CreateCustomButton, which uses the names you entered to add the custom command button to the command bar.

Sub SpecifyCommandBarAndButton()
    CreateCustomButton "Menu Bar", "My custom button"
End Sub

Function CreateCustomButton(strBarName As String, _
        strName As String) As Integer
    Dim cmdBar As CommandBar, cmdBarCustomButton As _
        CommandBarButton

    Set cmdBar = CommandBars(strBarName)
    ' Show command bar if it's not already visible.
    If cmdBar.Visible = False Then cmdBar.Visible = True

    On Error Resume Next

    Set cmdBarCustomButton = cmdBar.Controls(strName)
    If Err <> 0 Then
        ' Custom button doesn't already exist, so create it.
        Set cmdBarCustomButton = cmdBar.Controls _
            .Add(msoControlButton, , , , True)
    End If
    With cmdBarCustomButton
        .Caption = strName
        .BeginGroup = True
        .OnAction = "=msgbox(""Hello World"")"
        ' Run your macro or custom function here.
        .Style = msoButtonCaption
    End With
End Function


Пример файла HTML-шаблона

<HTML>

<!--Следующий описатель помещает имя объекта в заголовок Web -обозревателя.-->

<TITLE><!--AccessTemplate_Title--></TITLE>

<!--Следующая команда HTML создает цвет фона , отличный от установленного по умолчанию в Web-обозревателе.-->

<BODY BACKGROUND = "gray.jpg">

<!--Следующий описатель размещает все выходные объекты в теге <BODY>.-->

<!--AccessTemplate_Body-->

</BODY>

<BR><BR>

<!--Следующие четыре описателя создают текстовые кнопки для перехода на первую, предыдущую, следующую и последнюю страницы отчета.-->

<A HREF = "<!--AccessTemplate_FirstPage-->">Первая</A>

<A HREF = "<!--AccessTemplate_PreviousPage-->">Предыдущая</A>

<A HREF = "<!--AccessTemplate_NextPage-->">Следующая</A>

<A HREF = "<!--AccessTemplate_LastPage-->">Последняя</A>

<!--Следующий описатель вставляет текст "Страница №", где № - номер текущей страницы отчета.-->

<P ALIGN = CENTER>Страница <!--AccessTemplate_PageNumber-->.</P>

<!--Следующая команда HTML добавляет эмблему компании в нижнюю часть Web-страницы.-->

<IMG SRC = "company_logo.jpg">

</HTML>


AccessError Method Example

The following function returns an error string for any valid error number:

Function ErrorString(lngError As Long) As String
    Const conAppError = "Application-defined or "
        & "object-defined error"

    On Error Resume Next
    Err.Raise lngError
    If Err.Description = conAppError Then
        ErrorString = AccessError(lngError)
    ElseIf Err.Description = "" Then
        MsgBox "No error string associated with this number."
    Else
        ErrorString = Err.Description
    End If
End Function


 Choose Function

Choose Function

You can also use the Choose function in a calculated control on a Microsoft Access form or report. For example, you can use the Choose function to set the value of a control based on the value of another field. Set the ControlSource property of the control to an expression containing the Choose function. The expression in the following example can be used to set the ControlSource property of a control based on the value of a field called ShipVia in an Orders table.

=Choose([ShipVia], "Speedy", "United", "Federal")

    In the preceding example, if ShipVia contains 1, the Choose function returns the first string, "Speedy". If it contains 2, the function returns the second string, "United", and so on. If ShipVia contains 0, the Choose function returns a Null.

    The next example shows how you can ensure that a string is returned even if the field contains 0.

    =Choose([ShipVia] + 1, "none", "Speedy", "United", "Federal")

      Note In a Visual Basic module, you can use the more full-featured Select Case statement to return a value from a set of several choices.


Choose Function Example

You can use the Choose function to create a calculated control whose value is determined by the value of a field in a table in your database. For example, suppose you have a Shippers table that contains a field called ShipperID. You could create a calculated control on a form to display a text name for the shipper based on the value of the ShipperID field.

=Choose([ShipperID], "Speedy", "United", "Federal")


 Command Function

Command Function

To change a command-line argument once a database has been opened, click Options on the Tools menu. On the Advanced tab of the Options dialog box, enter a new argument in the Command-Line Arguments box. The Command function will now return the new argument you've entered.

When the Command function is used anywhere other than in Visual Basic code in a module, you must include empty parentheses after the function. For example, to use the Command function in a text box on a form, you would set the ControlSource property of the text box to an expression like the following:

=Command()


Command Function Example

The following example shows how to launch Microsoft Access with a command-line argument, then shows how to return the value of this argument by using the Command function.

To test this example, click the Windows Start button and click Run. Type the following in the Run dialog box, on a single line. (You must surround the parts of the command line information in quotation marks).

"C:\Program Files\Microsoft Office\Office\Msaccess.exe" _
"C:\Program Files\Microsoft Office\Office\Samples\Northwind.mdb" _
/cmd "Orders"

Next, open a new module in the Northwind sample database and add the following function.

Function CheckCommandLine()
    ' Check value returned by Command function.
    If Command = "Orders" Then
        DoCmd.OpenForm "Orders"
    ElseIf Command = "Employees" Then
        DoCmd.OpenForm "Employees"
    Else
        Exit Function
    End If
End Function

When you call this function, Microsoft Access will open the Orders form.

You can create a macro named AutoExec to call this function automatically when the database is opened. For more information on carrying out an action when a database opens, see Carry out an action when my database first opens.


DateAdd Function Example

The following example shows how you can create a calculated control by using the DateAdd function to display the date by which a particular order must be shipped - in this case, thirty days after the OrderDate. Suppose you have a form based on an Orders table, with a field called OrderDate. You can create another text box on the form to display the shipping date by setting the ControlSource property of this text box as in the following example.

= DateAdd("d", 30, [OrderDate])


DateDiff Function Example

The following examples use the DateDiff function to calculate the number of calendar weeks between the first of the year and today, and the number of days since February 1, 1995 respectively.

Debug.Print DateDiff("ww", "1-1", Now())
Debug.Print DateDiff("y", #1-Feb-1995#, Now())

The next example shows how to use the DateDiff function in a query expression. Suppose you have an Orders table that contains an OrderDate field and a ShippedDate field. You can create a calculated field in a query to display the time elapsed between an order date and a shipped date for each order. In the Query window, create a new query by adding the Orders table and dragging the OrderID field to the query design grid. In an empty Field cell, enter the following to create a calculated field.

DaysElapsed: DateDiff("y", [OrderDate], [ShippedDate])


DatePart Function Example

The following example uses the DatePart function to specify criteria for a select query. For example, suppose you want to create a query based on an Orders table to list all orders placed in the first quarter of 1996. Assuming your Orders table has a OrderID field and an OrderDate field, you can drag the OrderID field to the first cell in the query design grid, and enter the following in the Criteria cell beneath it.

(DatePart("q", [OrderDate]) = 1) and (DatePart("yyyy", [OrderDate]) = 1996)


 Date Function

Date Function

You can insert the current date on a form or report by clicking Date and Time on the Insert menu. This command creates a text box on a form or report and sets the ControlSource property of the text box to an expression containing the Date function. This expression will vary according to the format you have chosen to display the date. This command is available only in form Design view and report Design view.

You can also use the Date function in a query expression or in a macro. However, you must include the parentheses after the function when you use it anywhere other than a Visual Basic module, as in the expression Date().


DateSerial, Day, Month, and Year Function Example

DateSerial, Day, Month, and Year Function Examples

The following example uses the DateSerial function together with the Year, Month, and Day functions to return the number of days in a month. You can pass either a date or a string to the DaysInMonth function.

Function DaysInMonth(dteInput As Date) As Integer
    Dim intDays As Integer

    ' Add one month, subtract dates to find difference.
    intDays = DateSerial(Year(dteInput), _
        Month(dteInput) + 1, Day(dteInput)) _
        DateSerial(Year(dteInput), _
        Month(dteInput), Day(dteInput))
    DaysInMonth = intDays
    Debug.Print intDays
End Function

The following Sub procedure shows several different ways that you might call the DaysInMonth function.

Sub CallDaysInMonth()
    Dim intDays As Integer
    intDays = DaysInMonth(#4/1/96#)
    intDays = DaysInMonth("4-1-96")
    intDays = DaysInMonth("April 1, 1996")
End Sub


Date Function Example

You can use the Date function in a calculated control by setting the ControlSource property of the control as in the following example.

= Date()

You can also use the Date function to set criteria for a query. For example, if you have an Orders table that contains an OrderDate field, you can create a query on the Orders table to return all records that have an OrderDate between 4-1-95 and today's date. Enter the following in the Criteria cell under the OrderDate field.

Between #4-1-95# and Date()


DAvg Function Example

The following example returns the average freight cost for orders shipped to the United Kingdom on or after January 1, 1996. The domain is an Orders table. The criteria argument restricts the resulting set of records to those for which ShipCountry equals UK and ShippedDate is greater than or equal to 1-1-96. Note that the keyword AND is included in the string to separate the multiple fields in the criteria argument. All records included in the DAvg function calculation will have both of these criteria.

Dim dblX As Double
dblX = DAvg("[Freight]", "Orders", _
    "[ShipCountry] = 'UK' AND [ShippedDate] >= #1-1-96#")

The next example calculates an average by using a variable, strCountry, in the criteria argument. Note that single quotation marks (') are included in the string expressions, so that when all of the strings are concatenated, the string literal UK will be enclosed in single quotation marks. In this example, the keyword OR is used to separate the multiple fields. This example will return all records that have either or both criteria.

Dim dblX As Double, strCountry As String
strCountry = "UK"
dblX = DAvg("[Freight]", "Orders", _
    "[ShipCountry] = '" & strCountry & "'OR _
    [ShippedDate] >= #1-1-96#")


DCount Function Example

The following example returns the number of orders shipped to the United Kingdom after January 1, 1995. The domain is an Orders table. The criteria argument restricts the resulting set of records to those for which ShipCountry equals UK and ShippedDate is greater than 1-1-95.

intX = DCount("[ShippedDate]", "Orders", _
    "[ShipCountry] = 'UK' AND [ShippedDate] > #1-1-95#")

In the next example, the criteria argument includes the current value of a combo box called ShipCountry. The values in the ShipCountry combo box come from the field ShipCountry in an Orders table. Note that the reference to the control isn't included in the quotation marks that denote the strings. This ensures that each time the DCount function is called, Microsoft Access will obtain the current value from the control.

intX = DCount("[ShippedDate]", "Orders", "[ShipCountry] = '" _
    & Forms!Orders![ShipCountry] & "'AND [ShippedDate] > #1-1-95#")


 Different Formats for Different String Values (Format Function)

Different Formats for Different String Values (Format Function)

In Microsoft Access versions 1.x and 2.0, you could use the Format function to return one value for a zero-length string and another for a Null value. For example, you could use a format expression such as the following with the Format function to return the appropriate string value from code:

Dim varX As Variant, varStrX As Variant
' Assign some value to varStrX and pass to Format function.
varX = Format(varStrX, "@;ZLS;Null")

In Microsoft Access 97 and Microsoft Access 2000, you must test separately for the Null case, then return the appropriate value based on the result. For example, you could use the IIf function in an expression with the Format function such as the following:

varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))

This change applies only when you use the Format function to format a string dependent on whether it's a zero-length string or a Null value. Other format expressions used with the Format function continue to work as they did in previous versions.

If you convert a database from Microsoft Access version 1.x or 2.0 to Microsoft Access 2000, you'll need to change code to test separately for the Null case.


DLookup Function Example

The following example returns name information from the CompanyName field of the record satisfying criteria. The domain is a Shippers table. The criteria argument restricts the resulting set of records to those for which ShipperID equals 1.

Dim varX As Variant
varX = DLookup("[CompanyName]", "Shippers", "[ShipperID] = 1")

The next example from the Shippers table uses the form control ShipperID to provide criteria for the DLookup function. Note that the reference to the control isn't included in the quotation marks that denote the strings. This ensures that each time the DLookup function is called, Microsoft Access will obtain the current value from the control.

Dim varX As Variant
varX = DLookup("[CompanyName]", "Shippers", "[ShipperID] = " _
    & Forms!Shippers!ShipperID)

The next example uses a variable, intSearch, to get the value.

Dim intSearch As Integer, varX As Variant
intSearch = 1
varX = DLookup("[CompanyName]", "Shippers", _
    "[ShipperID] = " & intSearch)


DMin, DMax Functions Example

The following example returns the lowest and highest values from the Freight field for orders shipped to the United Kingdom. The domain is an Orders table. The criteria argument restricts the resulting set of records to those for which ShipCountry equals UK.

Dim curX As Currency, curY As Currency
curX = DMin("[Freight]", "Orders", "[ShipCountry] = 'UK'")
curY = DMax("[Freight]", "Orders", "[ShipCountry] = 'UK'")

In the next example, the criteria argument includes the current value of a text box called OrderDate. The text box is bound to an OrderDate field in an Orders table. Note that the reference to the control isn't included in the double quotation marks (") that denote the strings. This ensures that each time the DMax function is called, Microsoft Access obtains the current value from the control.

Dim curX As Currency
curX = DMax("[Freight]", "Orders", "[OrderDate] = #" _
    & Forms!Orders!OrderDate & "#")

In the next example, the criteria expression includes a variable, dteOrderDate. Note that number signs (#) are included in the string expression, so that when the strings are concatenated, they will enclose the date.

Dim dteOrderDate As Date, curX As Currency
dteOrderDate = #3/30/95#
curX = DMin("[Freight]", "Orders", _
    "[OrderDate] = #" & dteOrderDate & "#")


DoEvents Function

In Microsoft Access, the DoEvents function is ignored if you use it in:

  • A user-defined function or a procedure that calculates a field in a query, form, or report.

  • A user-defined function that creates a list to fill a combo box, a list box, or an OLE object.

If you include the DoEvents function in any of these, Microsoft Access will not relinquish control to the operating system.


DoEvents Function Example (Microsoft Access)

The following example uses the DoEvents function to return control to the operating system while a loop is executing. The DoEvents function always returns 0.

Sub LongLoop()
    Dim intI As Integer

    For intI = 1 To 1500             ' Start loop.
        If intI Mod 100 = 0 Then    ' If loop has repeated
                                            ' 100 times.
            DoEvents                        ' Yield to operating
                                            ' system.
            Debug.Print intI
        End If
    Next intI                            ' Increment loop counter.
End Sub


DStDev, DStDevP Functions Example

The following example returns estimates of the standard deviation for a population and a population sample for orders shipped to the United Kingdom. The domain is an Orders table. The criteria argument restricts the resulting set of records to those for which the ShipCountry is UK.

Dim dblX As Double, dblY As Double
' Sample estimate.
dblX = DStDev("[Freight]", "Orders", "[ShipCountry] = 'UK'")
' Population estimate.
dblY = DStDevP("[Freight]", "Orders", "[ShipCountry] = 'UK'")

The next example calculates the same estimates by using a variable, strCountry, in the criteria argument. Note that single quotation marks (') are included in the string expression, so that when the strings are concatenated, the string literal UK will be enclosed in single quotation marks.

Dim strCountry As String, dblX As Double, dblY As Double
strCountry = "UK"
dblX = DStDev("[Freight]", "Orders", _
    "[ShipCountry] = '" & strCountry & "'")
dblY = DStDevP("[Freight]", "Orders", _
    "[ShipCountry] = '" & strCountry & "'")


DSum Function Example

The following example totals the values from the Freight field for orders shipped to the United Kingdom. The domain is an Orders table. The criteria argument restricts the resulting set of records to those for which ShipCountry equals UK.

Dim curX As Currency
curX = DSum("[Freight]", "Orders", "[ShipCountry] = 'UK'")

The next example calculates a total by using two separate criteria. Note that single quotation marks (') and number signs (#) are included in the string expression, so that when the strings are concatenated, the string literal will be enclosed in single quotation marks, and the date will be enclosed in number signs.

Dim curX As Currency
curX = DSum("[Freight]", "Orders", _
    "[ShipCountry] = 'UK' AND [ShippedDate] > #1-1-95#")

You can use a domain function in the Update To row of an update query. For example, suppose you want to track current sales by product in a Products table. You could add a new field called SalesSoFar to the Products table, and run an update query to calculate the correct values and update the records. Create a new query based on the Products table, and click Update on the Query menu. Add the SalesSoFar field to the query grid, and enter the following in the Update To row:

DSum("[Quantity]*[UnitPrice]", "Order Details", "[ProductID] = " _
    & [ProductID])

When the query is run, Microsoft Access calculates the total amount of sales for each product, based on information from an Order Details table. The sum of sales for each product is added to the Products table.


DVar, DVarP Functions Example

The following example returns estimates of the variance for a population and a population sample for orders shipped to the United Kingdom. The domain is an Orders table. The criteria argument restricts the resulting set of records to those for which ShipCountry equals UK.

Dim dblX As Double, dblY As Double
' Sample estimate.
dblX = DVar("[Freight]", "Orders", "[ShipCountry] = 'UK'")
' Population estimate.
dblY = DVarP("[Freight]", "Orders", "[ShipCountry] = 'UK'")

The next example returns estimates by using a variable, strCountry, in the criteria argument. Note that single quotation marks (') are included in the string expression, so that when the strings are concatenated, the string literal UK will be enclosed in single quotation marks.

Dim strCountry As String, dblX As Double
strCountry = "UK"
dblX = DVar("[Freight]", "Orders", "[ShipCountry] = '" _
    & strCountry & "'")


Eval Function Example

The following example assumes that you have a series of 50 functions defined as A1, A2, and so on. This example uses the Eval function to call each function in the series.

Sub CallSeries()
    Dim intI As Integer

    For intI = 1 To 50
        Eval("A" & intI & "()")
    Next intI
End Sub

The next example triggers a Click event as if the user had clicked a button on a form. If the value of the button's OnClick property begins with an equal sign (=), signifying that it is the name of a function, the Eval function calls the function, which is equivalent to triggering the Click event. If the value doesn't begin with an equal sign, then the value must name a macro. The RunMacro method of the DoCmd object runs the named macro.

Dim ctl As Control, varTemp As Variant

Set ctl = Forms!Contacts!HelpButton
If (Left(ctl.OnClick, 1) = "=") Then
    varTemp = Eval(Mid(ctl.OnClick,2))
Else
    DoCmd.RunMacro ctl.OnClick
End If


Fix Function

If you use the Fix function to create a new field in a make-table query, the data type of the new field will be dbDouble. You can determine the data type using the DAO Type property.


GUIDFromString Function Example

The following example uses the GUIDFromString function to convert a string to a GUID. The string is a GUID stored in string form in a replicated Employees table. The field, s_GUID, is a hidden field added to every replicated table in a replicated database.

Sub CheckGUIDType()
    Dim dbs As Database, rst As Recordset

    Set dbs = CurrentDb
    Set rst = dbs.OpenRecordset("Employees")
    Debug.Print rst!s_GUID
    Debug.Print TypeName(rst!s_GUID)
    Debug.Print TypeName(GuidFromString(rst!s_GUID))
End Sub


 IIf Function

IIf Function

You can also use the IIf function (immediate if) in a calculated control on a Microsoft Access form or report. You can use the IIf function to evaluate an expression and return either of two other values, depending on whether the expression evaluates to True (-1) or False (0). For example, you can use the IIf function to inspect a field on a form and determine whether its value is Null. If it is, you can force the function return an empty string. If the field has a value that is not Null, the function could return the field's contents.

The following example checks the ShipCountry field in an Orders table, and returns an empty string if it is Null.

=IIf(IsNull(Forms!Orders![ShipCountry]), "", _
     Forms!Orders![ShipCountry])

In Visual Basic, the IIf function evaluates both truepart and falsepart, even though it returns only one of them. In a Microsoft Access form or report, however, the IIf function evaluates either truepart or falsepart, whichever is appropriate. Therefore, you need not be concerned about the undesirable side effects of evaluating both arguments if you use the IIf function in a calculated control, query expression, or macro.

Note The Microsoft Access Nz function converts Null values to zero, a zero-length string, or another value that you specify. If your expression handles Null values, you may be able use the Nz function as an alternative to the IIf function.

The IIf function is most useful within expressions that are in a form or report, rather than in Visual Basic code. In Visual Basic, the more full-featured If...Then...Else statement offers greater versatility.


IIf Function Example

This example uses the IIf function to evaluate an OrderAmount field and returns the word "Large" if the amount is greater than 1000; otherwise, it returns the word "Small". You can enter the following expression in the ControlSource property of a calculated control.

= IIf([OrderAmount] > 1000, "Large", "Small")


InputBox Function

You can't open a Help file from a dialog box created by the InputBox function in Microsoft Access. If you specify values for the helpfile and context arguments, they will be ignored, and no Help button appears on the input box. However, Microsoft Access won't generate an error.


InputBox Function Example

The following example uses the InputBox function to return the user's name. Note that you can't open a Help file from a dialog box created by the InputBox function in Microsoft Access.

Sub Greeting()
    Dim strInput As String, strMsg As String

    strMsg = "Enter your name."
    strInput = InputBox(Prompt:=strMsg, _
        Title:="User Info", XPos:=2000, YPos:=2000)
    MsgBox "Hello, " & strInput
End Sub


IsDate Function Example

The following example prompts the user for a string value, uses the IsDate function to determine whether the string can be converted to a date, and then displays an appropriate message.

Sub CheckDate()
    Dim strDate As String

    strDate = InputBox("Enter string to display as a date.")
    ' Test variable.
    If IsDate(strDate) Then
        ' If string is date, format and display in dialog.
        MsgBox "The date is: " & Format(DateValue(strDate), _
            "Long Date")
    Else
        MsgBox "The value you entered is not a date."
    End If
End Sub


IsNull Function Example

The following example uses the IsNull function to determine whether the value of a control is Null. If it is, a message prompts the user to enter data. If the value is not Null, a message displays the value of the control.

Sub ControlValue(ctlText As Control)
    Dim strMsg As String

    ' Check that control is text box.
    If ctlText.ControlType = acTextBox Then
        ' If value of control is Null, prompt for data.
        If IsNull(ctlText.Value) Then
            strMsg = "No data in the field '" & ctlText.Name _
                    & "'." & vbCrLf & "Please enter data for " _
                    & "this field now."
                If MsgBox(strMsg, vbQuestion) = vbOK Then
                    Exit Sub
                End If
        ' If value is not Null, display value.
        Else
            MsgBox (ctlText.Value)
        End If
    End If
End Sub


IsObject Function Example

The following example uses the IsObject function to check whether an argument passed to the function is an object.

Sub CheckObject(varAny As Variant)
    Dim varX as Variant

    If IsObject(varAny) Then
        Set varX = varAny
    Else
        varX = varAny
    End If
End Sub


LoadPicture Method Example

The following example uses the LoadPicture method to load a metafile into an ActiveX control on an Employees form.

Sub DisplayGraphic()
    Const strConPathToBitmaps = "C:\Program Files\Microsoft Office\Office\Bitmaps\Styles\"

    ' Declare object variables of type Picture and Control.
    Dim objPicture As Object, ctl As Control

    ' Set Control variable to refer to ActiveX control on form.
    Set ctl = Forms!Employees!SomeCustomControl
    ' Assign return value of LoadPicture to Picture object.
    Set objPicture = LoadPicture(strConPathToBitmaps & "Globe.wmf")
    ' Set Picture property of ActiveX control.
    Set ctl.Picture = objPicture
End Sub


 MsgBox Function

MsgBox Function

You can use the MsgBox function in Microsoft Access to create a formatted error message similar to built-in error messages displayed by Microsoft Access.

Note In Acc9TBD, this function does not permit you to separate a string into sections with the at sign (@).

The following example displays a formatted dialog box with a sectioned string.

MsgBox "Wrong button!" & chr(13) _
    & "This button doesn't work." & chr(13) -
    & "Try another.", vbOKOnly + vbExclamation

Note To display a message box without an icon in Microsoft Access, simply omit any constant that would denote an icon, or supply a value of zero for the buttons argument, as in the following example.

    MsgBox "No icons included.", 0


MsgBox Function Example

The following example uses the MsgBox function to create a formatted error message in Microsoft Access. Note the use of the at sign (@) to denote the different sections of the string.

Sub CustomMessage()
    Dim strMsg As String, strInput As String

    ' Initialize string.
    strMsg = "Number outside range.@You entered "
        & "a number that is less than 1 or greater "
        & "than 10.@Press OK to enter the number "
        & "again."
    ' Prompt user for input.
    strInput = InputBox("Enter a number between 1 "
        & "and 10.")
    ' Determine if user chose "Cancel".
    If strInput <> "" Then
        ' Test value of user input.
        Do While strInput < 0 Or strInput > 10
            If MsgBox(strMsg, vbOKCancel, "Error!") = _
                    vbOK Then
                strInput = InputBox("Enter a number between 1 and 10.")
            Else
                Exit Sub
            End If
        Loop
        ' Display user's correct input.
        MsgBox "You entered the number " & strInput & "."
    Else
        Exit Sub
    End If
End Sub


Now Function Example

You can use the Now function in a calculated control to return the current system date and time. For example, you can create a text box and set its ControlSource property to the following expression.

= Now()


Nz Function Example

The following example evaluates a control on a form and returns one of two strings based on the control's value. If the value of the control is Null, the procedure uses the Nz function to convert a Null value to a zero-length string.

Sub CheckValue()
    Dim frm As Form, ctl As Control
    Dim varResult As Variant

    ' Return Form object variable pointing to Orders form.
    Set frm = Forms!Orders
    ' Return Control object variable pointing to ShipRegion.
    Set ctl = frm!ShipRegion
    ' Choose result based on value of control.
    varResult = IIf(Nz(ctl.Value) = "", _
        "No value", "Value is " & ctl.Value)
    ' Display result.
    MsgBox varResult
End Sub


Partition Function Example

Partition Function Example(MDB)

You can use the Partition function in the query design grid as well as in the SQL view of the Query window. In the query design grid, you can use the Partition function in a calculated field or to specify criteria for a select query.

The following example shows how you can use the Partition function to create a calculated field that lists how many records fall into each specified range. Suppose you have an Orders table that contains a Freight field. In the Query window, create a new Totals query by adding the Orders table and clicking on the Totals button in the Query command bar. Drag the Freight field to the first Field cell on the query design grid, and set the value of the Total cell to Count. In another field cell, enter the following expression.

Range: Partition([Freight], 0, 1000, 50)

Set the Total cell below this field to Group By, and run the query. The Partition function returns eleven ranges (0:99, 100:199, 200:299, and so on). The query shows the number of orders with freight charges falling into each range.

The next example shows how you can use the Partition function in the SQL view of the Query window. It creates a crosstab query that evaluates a Freight field in an Orders table. It calculates the number of orders for each customer for which freight cost falls within one of several ranges. The ranges are defined by the arguments to the Partition function: start = 0, stop = 1000, interval = 50.

Enter the following expression in SQL view. When you run this query, each range will appear as a column heading.

TRANSFORM Count(Orders.[OrderID]) AS [CountOfOrderID]
SELECT Orders.[CustomerID]
FROM Orders
GROUP BY Orders.[CustomerID]
PIVOT Partition(Int([Freight]), 0, 1000, 50);


StringFromGUID Function Example

The following example returns the value of the s_GUID control on an Employees form in string form and assigns it to a string variable. The s_GUID control is bound to the s_GUID field, one of the system fields added to each replicated table in a replicated database.

Sub StringValueOfGUID()
    Dim ctl As Control, strGUID As String

    Set ctl = Forms!Employees!s_GUID
    Debug.Print TypeName(ctl.Value)
    strGUID = StringFromGUID(ctl.Value)
    Debug.Print TypeName(strGUID)
End Sub


 Switch Function

Switch Function

You can also use the Switch function in a calculated control on a Microsoft Access form or report. For example, you can use the Switch function to set the value of a control based on the value of another field. Set the ControlSourceproperty of the control to an expression containing the Switch function.

In the following example, the Switch function returns a string that is the name of a shipper based on the value of the Freight field. If the value of the Freight field is less than $25, the Switch function returns "Speedy"; if it is greater than or equal to $25 but less than or equal to $50, the Switch function returns "United"; if it is greater than $50, the Switch function returns "Federal".

=Switch([Freight] < 25, "Speedy", ([Freight] >= 25 _
     and [Freight] <= 50), "United", [Freight] > 50, _
     "Federal")

Note In Visual Basic code, you may want to use the more full-featured Select Case statement to return a value from a set of several choices.


Switch Function Example

The following example uses the Switch function to determine the appropriate language for a specified city based on the values of the ShipCountry and ShipCity fields in an Orders table. You can enter the following expression in a calculated control on a form or report. The expression is shown on multiple lines for clarity; you can also enter it on a single line.

= Switch([ShipCity] = "Madrid", "Spanish", _
    [ShipCity] = "Berlin", "German", _
    [ShipCity] = "Torino", "Italian", _
    [ShipCountry] = "France", "French", _
    True, "English")

If the city is Madrid, the Switch function returns "Spanish"; if it is Berlin, it returns "German"; and so on. If the city is not one of those listed, but the country is France, it returns "French". If the city in question is not in the list, the Switch function returns "English".


Timer Function Example

You can use the Timer function to time operations and events in your Microsoft Access application by placing the Timer function immediately before and after the operation in your code that you wish to time. The following example uses the name of a query as its argument, then calculates how long it takes the query to run.

Sub QueryTimer (strQueryName As String)
    Dim sngStart As Single, sngEnd As Single
    Dim sngElapsed As Single

    sngStart = Timer                            ' Get start time.
    DoCmd.OpenQuery strQueryName, acNormal    ' Run query.
    sngEnd = Timer                                ' Get end time.
    sngElapsed = Format(sngEnd - sngStart, "Fixed")
    ' Elapsed time.
    MsgBox ("The query " & strQueryName & " took " & sngElapsed _
        & " seconds to run.")
End Sub


 Time Function

Time Function

You can insert the current time on a form or report by clicking Date and Time on the Insert menu. This command creates a text box on a form or report and sets the ControlSource property of the text box to an expression containing the Time function. This expression will vary according to the format you have chosen to display the time. This command is available only in form Design view and report Design view.

You can also use the Time function in a query expression or in a macro. However, you must include the parentheses after the function when you use it anywhere other than in a Visual Basic module, as in the expression Time().


Time Function Example

You can use the Time function in a calculated control to return the current system time. For example, you can create a text box and set its ControlSource property to the following expression.

= Time()


TypeName Function Example

The following example creates several object variables and passes them to the TypeName function.

Sub ObjectTypes()
    Dim dbs As Database, tdf As TableDef
    Dim fld As Field

    ' Get current database.
    Set dbs = CurrentDb
    ' Return TableDef object pointing to Orders table.
    Set tdf = dbs.TableDefs("Orders")
    ' Return Field object pointing to OrderDate field.
    Set fld = tdf.Fields("OrderDate")
    ' Print value returned by TypeName for each object.
    Debug.Print TypeName(dbs)
    Debug.Print TypeName(tdf)
    Debug.Print TypeName(fld)

End Sub


 Добавление макрокоманды в макрос

Добавление макрокоманды в макрос

  1. В окне макроса выберите первую пустую ячейку в столбце Макрокоманда. Чтобы вставить макрокоманду между двумя строками макрокоманд, выберите область выделения строки макрокоманды, перед которой требуется вставить новую макрокоманду, и нажмите кнопку Добавить строки [image] на панели инструментов.

  2. В ячейке столбца Макрокоманда нажмите кнопку раскрытия списка макрокоманд.

  3. Выберите имя макрокоманды.

  4. Введите текст комментария к макрокоманде (необязательный).

  5. В нижней половине окна, при необходимости, укажите аргументы макрокоманды. Для получения дополнительных сведений о задании аргументов макрокоманд нажмите кнопку [image] .

Совет. Макрокоманды, значениями аргументов которых являются имена объектов базы данных, допускают задание значений таких аргументов путем перетаскивания объектов из окна базы данных в ячейку аргумента Имя объекта макрокоманды. Например, чтобы в качестве значения аргумента «Имя объекта» макрокоманды «ВыделитьОбъект» (SelectObject) задать имя формы, перетащите эту форму в ячейку аргумента. Для этого выберите в меню Окно команду Слева направо, чтобы расположить окна макроса и базы данных рядом, затем укажите тип объекта в списке Объекты окна базы данных, щелкните объект и перетащите его в ячейку аргумента. При перетаскивании будет также установлено значение аргумента «Тип объекта».


 Добавление в форму кнопки контекстной справки

Добавление в форму кнопки контекстной справки

Приведенные ниже действия можно выполнить для пользовательского диалогового окна или для формы, у которой из строки заголовка была убрана кнопка контекстной справки [image] или вообще был отключен вывод строки заголовка.

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно свойств формы.

  3. Установите свойство Кнопка контекстной справки (WhatsThisButton) в значение Да.

Примечание. Если в ячейке свойства Файл справки (HelpFile) формы не указан пользовательский файл справки, то при попытке получить контекстную справку нажатием кнопки контекстной справки [image] и последующим щелчком формы или расположенного в ней элемента управления будет выведена справка Microsoft Access. См. сведения по созданию пользовательского файла справки для кнопки контекстной справки.


 Создание свободного флажка, переключателя или выключателя

Создание свободного флажка, переключателя или выключателя

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите на панели элементов соответствующую кнопку. Если вы не уверены, какой элемент управления создает конкретная кнопка, установите на нее указатель и подождите появления всплывающей подсказки.

    Примечание. Выключатели на страницах доступа к данным использовать нельзя.

  3. Выберите место в форме, отчете или на странице доступа к данным, в которое нужно поместить верхний левый угол элемента управления. Если элемент управления добавляется в группу параметров в форме или отчете, Microsoft Access выделяет эту группу при наведении на нее указателя мыши, показывая, что элемент управления будет включен в группу.


Добавление столбца в бланк запроса или расширенного фильтра

  1. Щелкните столбец, слева от которого требуется добавить новый столбец.

  2. Выберите команду Столбцы в меню Вставка.


 Добавление кнопки для создания сообщений электронной почты

Добавление кнопки для создания сообщений электронной почты

  1. Откройте форму в режиме конструктора.

  2. Если кнопка Мастера [image] на панели элементов нажата, нажмите ее еще раз, чтобы отключить мастер.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в котором должен находиться верхний левый угол кнопки.

  5. Убедитесь, что кнопка выделена, и нажмите на панели инструментов кнопку Свойства [image] , чтобы вывести на экран окно свойств этого элемента управления.

  6. Для свойства Адрес гиперссылки (HyperlinkAddress) нажмите кнопку построителя [image] .

  7. В диалоговом окне Добавить гиперссылку щелкните значок Электронная почта в области Связать с.

  8. В поле Текст введите текст, описывающий гиперссылку. Microsoft Access автоматически подставляет в это поле значение свойства Подпись (Caption) кнопки.

  9. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя мыши на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать адрес электронной почты.

  10. В поле Электронная почта введите адрес электронной почты. Можно также выбрать адрес из списка Недавно использовавшиеся адреса электронной почты.

  11. В поле Тема введите текст, который должен появляться в строке «Тема» (Subject) сообщения.

    Примечание. Некоторые Web-обозреватели и программы электронной почты могут не распознавать строку «Тема».

  12. Нажмите кнопку OK.

    Чтобы проверить ссылку, щелкните кнопку правой кнопкой мыши и выберите в контекстном меню команду Гиперссылка и подкоманду Открыть. Когда пользователь щелкнет гиперссылку, Access откроет программу электронной почты и создаст новое сообщение, заполнив поля адреса и темы.


 Добавление кнопки, служащей гиперссылкой на существующий файл или Web-страницу

Добавление кнопки, служащей гиперссылкой на существующий файл или Web-страницу

  1. Откройте форму в режиме конструктора.

  2. Если кнопка Мастера [image] на панели элементов нажата, нажмите ее еще раз, чтобы отключить мастер.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в которое помещается верхний левый угол кнопки.

  5. Убедитесь, что кнопка выделена, и нажмите на панели инструментов кнопку Свойства [image] , чтобы вывести на экран окно свойств этого элемента управления.

  6. Для свойства Адрес гиперссылки (HyperlinkAddress) нажмите кнопку построителя [image] .

  7. В диалоговом окне Добавить гиперссылку щелкните значок Имеющийся файл или Web-страница в области Связать с.

  8. В поле Текст введите текст, описывающий гиперссылку. Microsoft Access автоматически подставляет в это поле значение свойства Подпись (Caption) кнопки.

  9. Нажмите кнопку Подсказка и введите текст, который должен отображаться при наведении указателя мыши на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать адрес гиперссылки (и дополнительный адрес).

  10. Укажите нужный файл или Web-страницу одним из следующих способов.
    • В поле Введите имя файла или Web-страницы введите путь к файлу или путь URL.

    • В области Выберите из списка щелкните значок Последние файлы, Просмотренные страницы или Вставленные ссылки. Затем выберите объект из списка.

    • Нажмите кнопку Файл, чтобы найти файл на локальном компьютере, в сети или на любом доступном FTP- или HTTP-сервере.

    • Нажмите кнопку Web-страница, чтобы найти страницу в Интернете или интрасети. После переключения из Microsoft Internet Explorer или другого Web-обозревателя в Microsoft Access, Access подставит путь URL текущей открытой Web-страницы в поле Введите имя файла или Web-страницы.
  11. Чтобы перейти к определенному месту в HTML-файле, либо к объекту базы данных Microsoft Access (.mdb) или проекта Microsoft Access (.adp), нажмите кнопку Закладка. Выберите из списка закладку или объект и нажмите кнопку OK.

  12. В окне Добавить гиперссылку нажмите кнопку OK.

    Для проверки ссылки щелкните кнопку правой кнопкой мыши и выберите из контекстного меню команду Гиперссылка и подкоманду Открыть.


 Создание новой страницы доступа к данным и кнопки, служащей гиперссылкой на эту страницу

Создание новой страницы доступа к данным и кнопки, служащей гиперссылкой на эту страницу

  1. Откройте форму в режиме конструктора.

  2. Если кнопка Мастера [image] на панели элементов нажата, нажмите ее еще раз, чтобы отключить мастер.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в которое помещается верхний левый угол кнопки.

  5. Убедитесь, что кнопка выделена, и нажмите на панели инструментов кнопку Свойства [image] , чтобы вывести на экран окно свойств этого элемента управления.

  6. Для свойства Адрес гиперссылки (HyperlinkAddress) нажмите кнопку построителя [image] .

  7. В диалоговом окне Добавить гиперссылку щелкните значок Создать страницу в области Связать с.

  8. В поле Текст введите текст, описывающий гиперссылку. Microsoft Access автоматически подставляет в это поле значение свойства Подпись (Caption) кнопки.

  9. Нажмите кнопку Подсказка и введите текст, который должен отображаться при наведении указателя мыши на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать адрес, на который указывает гиперссылка.

  10. В поле Имя нового документа введите имя страницы.

    Совет. Можно создавать документы различных типов, например, файл Word или электронную таблицу Excel, указывая трехсимвольное расширение создаваемого файла. Однако нельзя таким образом создать базу данных Microsoft Access (.mdb) или проект Microsoft Access (.adp).

  11. Microsoft Access создает новую страницу в текущей папке. Чтобы указать другую папку, нажмите кнопку Изменить.

  12. Выберите нужный переключатель в области Когда вносить правку в новый документ. Новую страницу можно редактировать либо сейчас, либо позже.

  13. Нажмите кнопку OK.

    Для проверки ссылки щелкните кнопку правой кнопкой мыши и выберите из контекстного меню команду Гиперссылка и подкоманду Открыть.


 Добавление кнопки, служащей гиперссылкой на объект текущей базы данных

Добавление кнопки, служащей гиперссылкой на объект текущей базы данных

  1. Откройте форму в режиме конструктора.

  2. Если кнопка Мастера [image] на панели элементов нажата, нажмите ее еще раз, чтобы отключить мастер.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. Выберите в форме место, в которое помещается верхний левый угол кнопки.

  5. Убедитесь, что кнопка выделена, и нажмите на панели инструментов кнопку Свойства [image] , чтобы вывести на экран окно свойств этого элемента управления.

  6. Для свойства Адрес гиперссылки (HyperlinkAddress) нажмите кнопку построителя [image] .

  7. В диалоговом окне Добавить гиперссылку щелкните значок Объект в этой базе данных в области Связать с.

  8. В поле Текст введите текст, описывающий гиперссылку. Microsoft Access автоматически подставляет в это поле значение свойства Подпись (Caption) кнопки.

  9. Нажмите кнопку Подсказка и введите текст, который должен отображаться при наведении указателя мыши на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать дополнительный адрес гиперссылки.

  10. Выберите из списка объект базы данных.

  11. Нажмите кнопку OK.

    Для проверки ссылки щелкните кнопку правой кнопкой мыши и выберите из контекстного меню команду Гиперссылка и подкоманду Открыть.

Примечание. Чтобы создать ссылку на объект другой базы данных, создайте ссылку на файл базы данных и нажмите кнопку Закладка для выбора объекта.


 Добавление объекта базы данных в группу

Добавление объекта базы данных в группу

  1. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  2. Щелкните правой кнопкой объект базы данных, который нужно добавить в группу. Можно также щелкнуть ярлык объекта из одной группы, чтобы добавить его в другую.

  3. В контекстном меню ярлыка выберите команду Добавить в группу и выберите имя группы, в которую нужно добавить объект.

Примечания

  • При добавлении объекта в группу в ней создается ярлык для него, но физическое местонахождение объекта не изменяется. Например, если в группу добавить форму, а затем щелкнуть значок Формы [image] в списке Объекты окна базы данных, то форма по-прежнему будет присутствовать в списке форм.

  • Объект или ярлык можно также добавить в группу, перетащив его из списка Объекты на значок нужной группы.


 Создание подчиненного отчета путем добавления существующего отчета в другой существующий отчет

Создание подчиненного отчета путем добавления существующего отчета в другой существующий отчет

Если подчиненный отчет должен быть связан с главным отчетом, то перед выполнением следующих действий следует убедиться в правильности установления связей между таблицами. Для получения дополнительных сведений нажмите кнопку [image] .

  1. Откройте отчет, который должен быть главным отчетом, в режиме конструктора.

  2. Убедитесь, что кнопка Мастера [image] на панели элементов нажата.

  3. Нажмите клавишу F11 для переключения в окно базы данных.

  4. Перетащите отчет или таблицу из окна базы данных в тот раздел главного отчета, в который требуется поместить подчиненный отчет.

Microsoft Access добавит в отчет элемент управления подчиненного отчета.

Примечания

  • Для получения сведений о ссылках на значение элемента управления в подчиненном отчете нажмите кнопку [image] .

  • Для получения сведений об разрешении вопросов, возникающих при работе с подчиненными отчетами, нажмите кнопку [image] .


 Добавление полей в бланк запроса или расширенного фильтра

Добавление полей в бланк запроса или расширенного фильтра

В запрос следует добавлять только те поля, данные из которых выводятся на просмотр, обновляются или используются для задания условий отбора, группировки и сортировки. В расширенный фильтр следует добавлять только поля, используемые при сортировке или задании условий отбора. После применения фильтра на экран автоматически выводятся все поля, содержащие отобранные данные.

  1. Откройте запрос в режиме конструктора, либо откройте форму или таблицу и вызовите окно расширенного фильтра.

  2. При работе с запросом проверьте, что список полей таблицы или запроса, содержащих добавляемые поля, открыт в верхней части окна. Если требуемый список полей не выводится на экран, добавьте таблицу или запрос.

    Инструкции

    В окне расширенного фильтра Microsoft Access автоматически выводит список полей базовой таблицы, запроса или SQL-выражения. В это окно нельзя добавить другие таблицы или запросы.

  3. Выберите из списка полей одно или несколько полей и перетащите их в столбцы бланка.

    Инструкции


Добавление или изменение порядка сортировки

Предполагаемые действия

Сортировка записей с помощью бланка запроса

Указание порядка сортировки при использовании звездочки (*) в бланке

Факторы, которые нужно учитывать при сортировке записей

Удаление порядка сортировки в таблице, запросе или форме


 Создание формы, содержащей несколько страниц (экранов)

Создание формы, содержащей несколько страниц (экранов)

  1. Откройте форму в режиме конструктора.

  2. Нажмите кнопку Разрыв страницы [image] на панели элементов.

  3. Выберите в форме место, в которое необходимо поместить разрыв страниц. Поместите разрыв страницы над или под элементом управления, чтобы избежать разрыва данных в нем.

    Разрыв страницы обозначается небольшой точечной линией на левой границе формы.

    Примечание. Если требуется, чтобы все страницы были одного размера и в окне одновременно отображалась только одна страница, создайте форму таким образом, чтобы интервалы между всеми разрывами страниц были одинаковыми. Этого можно добиться, размещая элементы разрыва страниц с помощью вертикальной линейки.

  4. Дважды щелкните область выделения формы, чтобы открыть окно свойств, и установите значение Текущая страница в ячейке свойства Цикл табуляции (Cycle). Если свойство Цикл табуляции (Cycle) имеет значение Текущая страница, то с помощью клавиши TAB нельзя будет переходить на другие страницы.

  5. Удалите вертикальную полосу прокрутки, установив свойство Полосы прокрутки (ScrollBars) в значение Только по горизонтали или Отсутствуют.

  6. Переключитесь в режим формы, чтобы протестировать форму, и измените ее размер так, чтобы в ней помещалась только одна страница. Для перехода с одной страницы на другую пользуйтесь клавишами PAGE DOWN или PAGE UP.

Примечания

  • Можно также задать другие свойства в режиме конструктора. Например, можно установить для свойства Тип границы (BorderStyle) значение Тонкая, чтобы размер формы нельзя было изменять, а для свойства Кнопки размеров окна (MinMaxButtons) — значение Отсутствуют, чтобы форма не имела кнопок Свернуть и Развернуть. Кроме того, на каждую страницу можно добавить кнопку, которая передает фокус следующей или предыдущей странице. Пример кнопки такого типа можно найти в форме «Сотрудники (с переводом страницы)» учебной базы данных «Борей». Для просмотра этой формы откройте базу данных «Борей», находящуюся в подкаталоге Samples каталога Office, и откройте форму «Сотрудники (с переводом страницы)» в режиме конструктора.

  • Элемент управления «Разрыв страницы» будет активен в режиме формы, только если в ячейке свойства Режим по умолчанию (DefaultView) формы установлено значение Простая форма.

  • Для форм, используемых в режиме формы, разделители страниц показывают положение, до которого будет прокручена форма при нажатии клавиш PAGE UP и PAGE DOWN. Для печатных форм разделители страниц обозначают начало новой страницы в разделе. Чтобы начало страницы приходилось на начало раздела, используйте свойство Конец страницы (ForceNewPage).


 Добавление рисунка для создания сообщений электронной почты

Добавление рисунка для создания сообщений электронной почты

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Для формы или отчета нажмите кнопку Рисунок Рисунок на панели элементов. Для страницы доступа к данным нажмите кнопку Гиперрисунок Гиперрисунок .

  3. Выберите место, в котором должен находиться верхний левый угол рисунка.

  4. В диалоговом окне Выбор рисунка укажите рисунок, который нужно добавить, и нажмите кнопку OK.

    В форму или отчет будет добавлен рисунок.

    Примечание. Если добавляется гиперрисунок на страницу доступа к данным, перейдите к пункту 6.

  5. Для формы или отчета убедитесь, что рисунок выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств рисунка.

  6. Нажмите для свойства Адрес гиперссылки кнопку построителя [image] , открывающую диалоговое окно Добавить гиперссылку.

  7. В диалоговом окне Добавить гиперссылку щелкните значок Электронная почта в области Связать с.

  8. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя мыши на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать адрес электронной почты.

  9. В поле Электронная почта введите адрес электронной почты. Можно также выбрать адрес из списка Недавно использовавшиеся адреса электронной почты.

  10. В поле Тема введите текст, который должен появляться в строке «Тема» (Subject) сообщения.

    Примечание. Некоторые Web-обозреватели и программы электронной почты могут не распознавать строку «Тема».

  11. Нажмите кнопку OK.

    Чтобы проверить ссылку в форме или отчете, щелкните правой кнопкой рисунок и выберите из контекстного меню команду Гиперссылка и подкоманду Открыть. Чтобы проверить ссылку на странице доступа к данным, переключитесь в режим страницы и щелкните рисунок. Microsoft Access откроет программу электронной почты и создаст новое сообщение с заполненными полями адреса и темы.


 Добавление рисунка, служащего гиперссылкой на существующий файл или Web-страницу

Добавление рисунка, служащего гиперссылкой на существующий файл или Web-страницу

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Для формы или отчета нажмите кнопку Рисунок Рисунок на панели элементов. Для страницы доступа к данным нажмите кнопку Гиперрисунок Гиперрисунок .

  3. Выберите место, в котором должен находиться верхний левый угол рисунка.

  4. В диалоговом окне Выбор рисунка укажите рисунок, который нужно добавить, и нажмите кнопку OK.

    В форму или отчет будет добавлен рисунок.

    Примечание. Если добавляется гиперрисунок на страницу доступа к данным, перейдите к пункту 6.

  5. Для формы или отчета убедитесь, что рисунок выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств рисунка.

  6. Нажмите для свойства Адрес гиперссылки кнопку построителя [image] , открывающую диалоговое окно Добавить гиперссылку.

  7. В диалоговом окне Добавить гиперссылку щелкните значок Имеющийся файл или Web-страница в области Связать с.

  8. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя мыши на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать адрес гиперссылки и/или дополнительный адрес.

  9. Выберите файл или Web-страницу одним из следующих способов.
    • В поле Введите имя файла или Web-страницы введите путь к файлу или путь URL.

    • В области Выберите из списка щелкните значок Последние файлы, Просмотренные страницы или Вставленные ссылки. Затем выберите объект из списка.

    • Нажмите кнопку Файл, чтобы найти файл на локальном компьютере, в сети или на любом доступном FTP- или HTTP-сервере.

    • Нажмите кнопку Web-страница, чтобы найти страницу в Интернете или интрасети. После переключения из Microsoft Internet Explorer или другого Web-обозревателя в Microsoft Access, Access подставит путь URL текущей открытой Web-страницы в поле Введите имя файла или Web-страницы.
  10. Чтобы перейти к определенному месту в HTML-файле, либо к объекту базы данных Microsoft Access (.mdb) или проекта Microsoft Access (.adp), нажмите кнопку Закладка. Выберите из списка закладку или объект и нажмите кнопку OK.

  11. В окне Добавить гиперссылку нажмите кнопку OK.

    Чтобы проверить ссылку в форме или отчете, щелкните правой кнопкой рисунок и выберите из контекстного меню команду Гиперссылка и подкоманду Открыть. Чтобы проверить ссылку на странице доступа к данным, переключитесь в режим страницы и щелкните рисунок.


 Создание новой страницы доступа к данным и рисунка, служащего гиперссылкой на эту страницу

Создание новой страницы доступа к данным и рисунка, служащего гиперссылкой на эту страницу

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страниц.

  2. Для формы или отчета нажмите кнопку Рисунок Рисунок на панели элементов. Для страницы доступа к данным нажмите кнопку Гиперрисунок Гиперрисунок .

  3. Выберите место, в котором должен находиться верхний левый угол рисунка.

  4. В диалоговом окне Выбор рисунка укажите рисунок, который нужно добавить, и нажмите кнопку OK.

    В форму или отчет будет добавлен рисунок.

    Примечание. Если добавляется гиперрисунок на страницу доступа к данным, перейдите к пункту 6.

  5. Для формы или отчета убедитесь, что рисунок выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств рисунка.

  6. Нажмите для свойства Адрес гиперссылки (HyperlinkAddress) кнопку построителя [image] , открывающую диалоговое окно Добавить гиперссылку.

  7. В диалоговом окне Добавить гиперссылку щелкните значок Создать страницу в области Связать с.

  8. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя мыши на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать адрес гиперссылки и/или дополнительный адрес.

  9. В поле Имя нового документа введите имя новой страницы доступа к данным.

    Совет. Можно создавать документы различных типов, например, файл Microsoft Word или электронную таблицу Microsoft Excel, указывая трехсимвольное расширение создаваемого файла. Однако нельзя таким образом создать базу данных Microsoft Access (.mdb) или проект Microsoft Access (.adp).

  10. Microsoft Access создает новый документ в текущей папке. Чтобы указать другую папку, нажмите кнопку «Изменить».

  11. Выберите нужный переключатель в области Когда вносить правку в новый документ. Новый документ можно редактировать либо сейчас, либо позже.

  12. Нажмите кнопку OK.

    Чтобы проверить ссылку в форме или отчете, щелкните рисунок правой кнопкой и выберите из контекстного меню команду Гиперссылка и подкоманду Открыть. Чтобы проверить ссылку на странице доступа к данным, переключитесь в режим страницы и щелкните рисунок.


 Добавление рисунка, служащего гиперссылкой на объект текущей базы данных

Добавление рисунка, служащего гиперссылкой на объект текущей базы данных

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Нажмите кнопку Рисунок Рисунок на панели элементов и выберите место, в которое нужно поместить рисунок.

  3. В диалоговом окне Выбор рисунка укажите рисунок, который нужно добавить, и нажмите кнопку OK.

    В форму или отчет будет добавлен рисунок.

  4. Убедитесь, что рисунок выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств рисунка.

  5. Нажмите для свойства Адрес гиперссылки (HyperlinkAddress) кнопку построителя [image] , открывающую диалоговое окно Добавить гиперссылку.

  6. В диалоговом окне Добавить гиперссылку щелкните значок Объект в этой базе данных в области Связать с.

  7. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя мыши на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать имя объекта.

  8. Выберите из списка объект базы данных, на который должна указывать ссылка.

  9. Нажмите кнопку OK.

    Чтобы проверить гиперссылку, щелкните рисунок правой кнопкой мыши и выберите из контекстного меню команду Гиперссылка и подкоманду Открыть.

Примечание. Чтобы создать ссылку на объект другой базы данных, создайте ссылку на файл базы данных и нажмите кнопку Закладка для выбора объекта.


 Добавление формы в другую существующую форму в качестве подчиненной формы

Добавление формы в другую существующую форму в качестве подчиненной формы

Перед тем, как приступать к этой процедуре, проверьте правильность установления связей между таблицами.

  1. Откройте форму, которая должна быть главной формой, в режиме конструктора. Обычно это форма, основанная на таблице или запросе, находящихся на стороне «один» отношения «один-ко-многим».

  2. Убедитесь, что нажата кнопка Мастера [image] на панели элементов.

  3. Нажмите клавишу F11 для переключения в окно базы данных.

  4. Перетащите форму, таблицу или запрос из окна базы данных в главную форму.

    Microsoft Access добавит в форму подчиненную форму. Если перетаскиваемая форма выводилась в режиме формы, Microsoft Access выводит подчиненную форму в этом режиме. Если же перетаскивается таблица, запрос или форма, которая использовалась в режиме таблицы, то подчиненная форма будет также выведена в режиме таблицы.

Примечания

  • Для получения дополнительных сведений об изменении макета подчиненной формы нажмите кнопку [image] .

  • Для получения справки по устранению неполадок с подчиненными формами нажмите кнопку [image] .


 Добавление в запрос таблицы или запроса

Добавление в запрос таблицы или запроса

  1. Откройте запрос в режиме конструктора.

  2. Нажмите кнопку Отобразить таблицу [image] на панели инструментов.

  3. В диалоговом окне Добавление таблицы выберите вкладку, содержащую нужные объекты. Если нужная таблица находится в другой базе данных или другом приложении, сначала свяжите эту таблицу с активной базой данных.

    Инструкции

  4. Выберите имя объекта, добавляемого в запрос. Для одновременного выбора нескольких объектов выбирайте объекты при нажатой клавише CTRL. Чтобы выбрать группу соседних объектов, выберите имя первого объекта, нажмите клавишу SHIFT и, удерживая ее, выберите имя последнего объекта группы.

  5. Нажмите кнопку Добавить, а затем кнопку Закрыть.

Примечания

  • Можно также добавить в запрос таблицу или запрос путем перетаскивания имени таблицы или запроса из окна базы данных в верхнюю половину окна запроса в режиме конструктора.

  • Если запрос содержит несколько таблиц или запросов, необходимо их объединить. Для получения сведений об объединении таблиц нажмите кнопку [image] .


 Добавление текстового поля или другого элемента управления в существующую группу

Добавление текстового поля или другого элемента управления в существующую группу

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Удерживая нажатой клавишу SHIFT, выберите элемент управления, который нужно добавить в группу, и выберите группу, щелкнув любой элемент из нее.

  3. В меню Формат выберите команду Группировать.


 Добавление контрольного выражения в окне отладки редактора Visual Basic

Добавление контрольного выражения в окне отладки редактора Visual Basic

  1. Откройте процедуру в окне программы (Code).

  2. Выберите в меню Debug команду Add Watch.

  3. Если выражение в окне программы уже выделено, оно автоматически будет занесено в поле «Expression» диалогового окна «Add Watch». Если это поле пусто, то введите в него выражение, значение которого нужно вычислять. Выражение может быть переменной, свойством, вызовом функции или любым другим допустимым выражением.

    Можно не набирать выражение, а выделить его в окне программы и перетащить в окно Watches.

  4. Чтобы указать область программы, в которой должно вычисляться это выражение, выберите контекст модуля и процедуры в группе параметров Context диалогового окна «Add Watch».

    Примечание. Выбирайте минимально необходимую область программы. Выбор всех процедур или всех модулей может замедлить выполнение программы.

  5. Для того, чтобы определить реакцию системы на значение контрольного выражения, выберите нужный параметр в группе Watch Type:
    • Для вывода значения контрольного выражения выберите переключатель Watch Expression.

    • Для прерывания программы, если выражение имеет значение True, выберите переключатель Break When Value Is True.

    • Для прерывания программы при изменении значения выражения выберите переключатель Break When Value Changes.

При выполнении программы в окне «Watches» будет показываться значение заданного выражения. Чтобы изменить это выражение, выделите его в окне «Watches» и выберите команду Edit Watch в меню Debug. Чтобы удалить выражение из окна «Watches», нажмите кнопку Delete в диалоговом окне Edit Watch.


 Изменение направления текста бегущей строки на странице доступа к данным

Изменение направления текста бегущей строки на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите бегущую строку и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств этого элемента управления.

  3. Выполните одно из следующий действий.
    • Чтобы текст бегущей строки перемещался справа налево, выберите в ячейке свойства Direction значение left.

    • Чтобы текст бегущей строки перемещался слева направо, выберите в ячейке свойства Direction значение right.

    • Чтобы текст бегущей строки перемещался сверху вниз, выберите в ячейке свойства Direction значение down.

    • Чтобы текст бегущей строки перемещался снизу вверх, выберите в ячейке свойства Direction значение up.


 Изменение размера рисунка, расположенного в элементе управления «Рисунок» на странице доступа к данным

Изменение размера рисунка, расположенного в элементе управления «Рисунок» на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите рисунок.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы вывести окно свойств.

  4. В ячейках свойств Height и Width введите число пикселов (px), сантиметров (cm), дюймов (in) или пунктов (pt) для задания высоты и ширины рисунка, выводимого в элементе управления «Рисунок».


 Повышение производительности базы данных Access с помощью анализатора быстродействия

Повышение производительности базы данных Access с помощью анализатора быстродействия

Для оптимизации быстродействия базы данных Microsoft Access можно пользоваться анализатором быстродействия. Можно оптимизировать и проект Microsoft Access; однако анализатор быстродействия доступен только для базы данных Access.

  1. Откройте базу данных Access, быстродействие которой необходимо повысить.

  2. Выберите в меню Сервис команду Анализ и подкоманду Быстродействие.

  3. Выберите вкладку, соответствующую типу объекта базы данных, который нужно оптимизировать. Выберите вкладку Все типы объектов для просмотра списка всех объектов базы данных.

  4. Выберите имена оптимизируемых объектов базы данных. Чтобы выбрать все объекты из списка, нажмите кнопку Выделить все.

  5. Повторите шаги 3 и 4 для выбора всех объектов, которые требуется оптимизировать, и нажмите кнопку OK.

    Анализатор быстродействия выдает три типа рекомендаций по оптимизации производительности: советы, предложения и мысли. При выделении элемента в списке Результаты анализа сведения о предлагаемом решении выводятся в области Примечания, расположенной под списком. Операции оптимизации, как правило, подразумевают определенные компромиссы, которые следует иметь в виду, приступая к оптимизации. Для получения дополнительных сведений о рекомендации выберите ее в списке и просмотрите информацию в области Примечания. Microsoft Access может автоматически выполнять рекомендации типа «совет» и «предложение». Рекомендации типа «мысль» выполняются вручную.

  6. Выделите одну или несколько предлагаемых рекомендаций типа «совет» или «предложение», и нажмите кнопку Оптимизировать. Анализатор быстродействия выполнит оптимизацию, после чего выбранные рекомендации будут помечены как исправленные. Таким образом можно выполнить все нужные рекомендации по оптимизации.

    Чтобы выполнить все рекомендации типа «совет» и «предложение», нажмите кнопку Выделить все, а затем — кнопку Оптимизировать.

    Чтобы выполнить все рекомендации типа «мысль», выберите рекомендацию и следуйте инструкциям в области Примечания.

Примечание. Анализатор быстродействия не дает советов по повышению производительности Microsoft Access или системы, на которой он выполняется. Для получения дополнительных сведений о повышении производительности в областях, не затрагиваемых анализатором быстродействия, нажмите кнопку [image] .


 Изменение темы для страницы доступа к данным

Изменение темы для страницы доступа к данным

  1. Откройте страницу доступа к данным, тему которой нужно изменить, в режиме конструктора.

  2. В меню Формат выберите команду Тема.

  3. В списке Выберите тему укажите тему.


 Применение темы к существующей странице доступа к данным

Применение темы к существующей странице доступа к данным

  1. Откройте страницу доступа к данным, к которой нужно применить тему, в режиме конструктора.

  2. В меню Формат выберите команду Тема.

  3. В списке Выберите тему укажите тему.

  4. Выберите нужные параметры.

    Для получения дополнительных сведений по каждому параметру нажмите кнопку с вопросительным знаком [image] и щелкните нужный параметр.


 Применение темы к новой странице доступа к данным

Применение темы к новой странице доступа к данным

  1. В окне базы данных щелкните значок Страницы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новая страница доступа к данным выберите Мастер страниц и следуйте инструкциям мастера.

  4. На последнем экране мастера установите флажок Применить тему к странице.


 Назначение клавиши доступа для подписи или кнопки в форме или отчете

Назначение клавиши доступа для подписи или кнопки в форме или отчете

Если для подписи или кнопки была назначена клавиша доступа, то нажатие клавиш ALT + «подчеркнутая буква» будет переводить фокус на элемент управления, присоединенный к этой подписи, или на кнопку.

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что подпись или кнопка, которой нужно назначить клавишу доступа, выделена, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств элемента управления.

  3. В окне свойств введите в ячейке свойства Подпись (Caption) символ амперсанд (&) перед символом, клавиша которого должна быть клавишей доступа.


Работа с разрешениями на доступ

Предполагаемые действия

Разрешения на доступ: как они работают и кто может их присваивать

Типы разрешений на доступ

Присваивание и удаление разрешений на доступ к базе данных и существующим таблицам, запросам, формам, отчетам и макросам

Присваивание стандартных разрешений новым таблицам, запросам, формам, отчетам и макросам

Разрешение другим пользователям просматривать или выполнять запрос без изменения данных или его структуры

Изменение прав по умолчанию для всех новых запросов

Свойство RunPermissions


 Создание откомпилированного файла справки, вызываемой при нажатии клавиши F1

Создание откомпилированного файла справки, вызываемой при нажатии клавиши F1

  1. Создайте исходный файл с помощью любого текстового редактора или текстового процессора. Дополнительные сведения о создании исходного файла см. в документации Windows Help Workshop. Сохраните исходный файл в формате RTF.

  2. Откомпилируйте файл справочной системы с помощью компилятора Windows Help Workshop.

  3. Откройте окно свойств формы или отчета и введите имя откомпилированного файла справочной системы в ячейку свойства Файл справки (HelpFile).

    Примечание. Для упрощения работы поместите файл справочной системы в одну папку с приложением. Это позволит использовать одно и то же значение свойства Файл справки (HelpFile) во всех экземплярах приложения и не помешает установке приложения в любую папку пользователя. Если в значении этого свойства не указан путь, Microsoft Access будет искать файл справочной системы в каталоге приложения.

  4. В ячейку свойства Идентификатор справки (HelpContextID) формы или отчета введите номер (отличный от 0) раздела справочной системы, который должен выводиться при нажатии клавиши F1. В этот раздел справочной системы обычно помещают общие сведения о форме или отчете.

  5. В ячейке свойства Идентификатор справки (HelpContextID) любого элемента управления формы, который может получать фокус, введите номер раздела справки, который будет выводиться при нажатии клавиши F1. В таких разделах обычно содержатся сведения о конкретном элементе управления.

Примечания

  • Значения, установленные для свойства Идентификатор справки должны соответствовать контекстным строкам справки. Для получения дополнительных сведений см. файл справки, поставляемый с Windows Help Workshop.

  • Если в момент нажатия клавиши F1 фокус находится на элементе управления, для которого не был создан пользовательский раздел справочной системы, то будет выведен раздел пользовательской справки для формы. Если раздел пользовательской справки для формы также отсутствует, открывается окно помощника по Office.

  • Раздел пользовательской справки не может быть выведен на экран с помощью помощника.

  • Для создания файла справки можно использовать также Microsoft HTML Help Workshop. Дополнительные сведения о создании пользовательского файла справки см. в главе «Adding Help to Your Custom Solution» книги Руководство программиста по Visual Basic для Microsoft Office 2000. Как получить копию этой книги.


 Автоматизация импорта, экспорта и связывания данных с помощью макроса

Автоматизация импорта, экспорта и связывания данных с помощью макроса

  1. Создайте макрос.

    Инструкции

  2. Выполните одно из следующий действий.

    Для выполнения операции импорта, экспорта или связывания данных между текущей базой данных Microsoft Access и другой базой данных выберите макрокоманду ПреобразоватьБазуДанных (TransferDatabase) из списка макрокоманд в пустой строке макрокоманды.

    Для выполнения операции импорта, экспорта или связывания данных между текущей базой данных Access и файлом электронной таблицы выберите макрокоманду ПреобразоватьЭлектроннуюТаблицу (TransferSpreadsheet) из списка макрокоманд в пустой строке макрокоманды.

    Для выполнения операции импорта, экспорта или связывания данных между текущей базой данных Access и текстовым файлом выберите макрокоманду ПреобразоватьТекст (TransferText) из списка макрокоманд в пустой строке макрокоманды.

  3. Задайте значения аргументов макрокоманды.

  4. Нажмите кнопку Сохранить [image] для записи макроса.

  5. Запустите макрос.

    Инструкции

Для получения дополнительных сведений о макрокоманде «ПреобразоватьБазуДанных» (TransferDatabase) нажмите кнопку [image] .

Для получения дополнительных сведений о макрокоманде «ПреобразоватьЭлектроннуюТаблицу» (TransferSpreadsheet) нажмите кнопку [image] .

Для получения дополнительных сведений о макрокоманде «ПреобразоватьТекст» (TransferText) нажмите кнопку [image] .


Автоматизация импорта, экспорта и связывания данных с помощью программы Visual Basic

  1. Создайте процедуру Visual Basic.

    Инструкции

  2. Выполните одно из следующих действий.

    Для выполнения операции импорта, экспорта или связывания данных между текущей базой данных Microsoft Access и другой базой данных используйте метод TransferDatabase, который выполнит макрокоманду «ПреобразоватьБазуДанных» (TransferDatabase) в процедуре.

    Инструкции

    Для выполнения операции импорта, экспорта или связывания данных между текущей базой данных Microsoft Access и файлом электронной таблицы используйте метод TransferSpreadsheet, который выполнит макрокоманду «ПреобразоватьЭлектроннуюТаблицу» (TransferSpreadsheet) в процедуре.

    Для выполнения операции импорта, экспорта или связывания данных между текущей базой данных Microsoft Access и текстовым файлом используйте метод TransferText, который выполнит макрокоманду «ПреобразоватьТекст» (TransferText) в процедуре.

  3. Запустите процедуру.

    Инструкции

Для получения дополнительных сведений о методе TransferDatabase нажмите кнопку [image] .

Для получения дополнительных сведений о методе TransferSpreadsheet нажмите кнопку [image] .

Для получения дополнительных сведений о методе TransferText нажмите кнопку [image] .


 Автоматическое сжатие базы данных Access или проекта Access при их закрытии

Автоматическое сжатие базы данных Access или проекта Access при их закрытии

Microsoft Access может автоматически выполнять сжатие базы данных Microsoft Access или проекта Microsoft Access при каждом их закрытии.

  1. Откройте базу данных Access или проект Access, который требуется сжимать автоматически.

  2. Выберите команду Параметры в меню Сервис.

  3. Выберите вкладку Общие.

  4. Установите флажок Сжимать при закрытии.

Примечание. Сжатие не будет выполняться при закрытии сетевой (общей) базы данных, если она открыта другими пользователями.


 Автоматический вывод в форме обновленных записей с помощью макроса

Автоматический вывод в форме обновленных записей с помощью макроса

  1. Создайте макрос.

    Инструкции

  2. В пустой строке макрокоманды выберите макрокоманду Обновление (Requery) из списка макрокоманд.

    Для обновления записей, выводящихся в элементе управления, основанном на таблице или запросе, укажите имя этого элемента управления в агрументе Имя элемента. Для обновления записей во всей форме, оставьте аргумент Имя элемента пустым.

  3. Нажмите кнопку Сохранить [image] для записи макроса.

  4. Запустите макрос.

    Инструкции

Для получения дополнительных сведений о макрокоманде «Обновление» (Requery) нажмите кнопку [image] .


 Автоматический вывод в форме обновленных записей с помощью программы Visual Basic

Автоматический вывод в форме обновленных записей с помощью программы Visual Basic

  1. Создайте процедуру Visual Basic.

    Инструкции

  2. Добавьте метод Requery в процедуру, определенную для формы или элемента управления, записи в которых требуется обновить. Например, для вывода в поле со списком «КодТипа» свежих данных включите в процедуру следующую конструкцию вызова метода:
    КодТипа.Requery

  3. Запустите процедуру.

    Инструкции

Для получения дополнительных сведений о методе Requery нажмите кнопку [image] .


 Присоединение пустой формы или отчета к данным таблицы или другого источника записей

Присоединение пустой формы или отчета к данным таблицы или другого источника записей

  1. В режиме конструктора формы или в режиме конструктора отчета дважды щелкните область выделения формы или область выделения отчета для открытия окна свойств.

  2. Нажмите кнопку со стрелкой рядом с ячейкой свойства Источник записей (RecordSource) и выберите из списка нужную таблицу или запрос.

  3. Используйте список полей для добавления в форму или отчет элементов управления, присоединенных к полям источника записей.

Для просмотра данных в форме переключитесь в режим формы или режим таблицы. Чтобы просмотреть данные в отчете, переключитесь в режим предварительного просмотра.


 Вычисление сумм, средних, числа элементов или других итоговых значений для всех записей в запросе

Вычисление сумм, средних, числа элементов или других итоговых значений для всех записей в запросе

  1. В режиме конструктора запроса создайте запрос на выборку. Добавьте таблицы, записи которых требуется использовать в расчетах, затем добавьте поля, над которыми требуется выполнять вычисления, и задайте условие отбора.

  2. Нажмите кнопку Групповые операции [image] на панели инструментов.

    В бланке запроса появится строка Групповая операция.

  3. В ячейках строки Групповая операция для каждого поля выберите одну из следующих статистических функций: Sum, Avg, Min, Max, Count, StDev или Var.

    Статистические функции в строке «Групповая операция»

    Для получения сведений о каждой статистической функции нажмите кнопку [image] . Для получения сведений об особенностях использования функций First и Last нажмите кнопку [image] .

  4. При необходимости, введите условие отбора.

    Инструкции

  5. При необходимости, укажите порядок сортировки.

    Инструкции

  6. Нажмите кнопку Вид [image] на панели инструментов для просмотра результатов.

Если получены не те результаты, которые требовались, нажмите кнопку [image] .

Примечания

  • При использовании в поле статистической функции Microsoft Access создает имя, под которым поле будет выводиться в режиме таблицы, путем объединения имени функции и имени поля (например, SumOfКоличество). Для получения сведений о том, как присвоить полю имя, лучше отражающее его содержимое, нажмите кнопку [image] .

  • Если в запрос добавляется вычисляемое поле, использующее одну или несколько статистических функций, в котором вычисляются итоговые значения по всем записям, необходимо выбрать в ячейке Групповая операция этого поля значение Выражение.


 Вычисление суммы, среднего, числа элементов или других итоговых значений для групп записей в запросе

Вычисление суммы, среднего, числа элементов или других итоговых значений для групп записей в запросе

  1. В режиме конструктора запроса создайте запрос на выборку. Добавьте таблицы, записи из которых требуется использовать в вычислениях, а затем добавьте поля, над которыми требуется выполнять вычисления, и задайте условия группировки и условия отбора.

  2. Нажмите кнопку Групповые операции [image] на панели инструментов.

    В бланке запроса появится строка Групповая операция.

  3. Для поля или полей, по которым выполняется группировка, оставьте значение Группировка в ячейке Групповая операция.

  4. Для каждого поля, которое следует сделать вычисляемым, выберите его ячейку в строке Групповая операция, а затем выберите одну из следующих статистических функций: Sum, Avg, Min, Max, Count, StDev или Var.

    Статистические функции в строке «Групповая операция»

    Для получения сведений о каждой статистической функции нажмите кнопку [image] . Для получения сведений об особенностях использования функций First и Last нажмите кнопку [image] .

  5. При необходимости, введите условие отбора.

    Инструкции

  6. При необходимости, укажите порядок сортировки.

    Инструкции

  7. Нажмите кнопку Вид [image] на панели инструментов для просмотра результатов.

Если получены не те результаты, которые требовались, нажмите кнопку [image] .

Примечания

  • При использовании в поле статистической функции Microsoft Access создает имя, под которым поле будет выводиться в режиме таблицы, путем объединения имени функции и имени поля (например, SumOfКоличество). Для получения сведений о том, как присвоить полю имя, лучше отражающее его содержимое, нажмите кнопку [image] .

  • Если вычисляемое поле определяется с помощью выражения, которое включает одну или несколько статистических функций, необходимо выбрать в ячейке строки Групповая операция элемент Выражение.

  • Для создания перекрестного запроса, в котором вычисляются итоговые значения для групп записей, нажмите кнопку [image] .

  • Запрос «Продажи по типам в 1995» в учебной базе данных «Борей» содержит пример вычисления суммы по группе записей. Чтобы просмотреть этот запрос, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте запрос «Продажи по типам в 1995» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Вычисление итогового или другого значения для одной записи на странице доступа к данным

Вычисление итогового или другого значения для одной записи на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Если выражение будет содержать ссылки на имена полей, то эти поля должны присутствовать в определении данных страницы. Добавьте поля на страницу с помощью присоединенных элементов HTML, либо с помощью присоединенных текстовых полей.

    Совет. Страница будет загружаться быстрее в режиме страницы и в обозревателе Microsoft Internet Explorer, если использовать присоединенные (связанные) элементы HTML.

  3. Создайте новый элемент управления, нажав кнопку Связанный HTML Связанный HTML или кнопку Поле Поле на панели элементов и выбрав мышью место на странице, в которое следует поместить верхний левый угол элемента управления.

  4. Чтобы открыть окно свойств убедитесь, что элемент управления выбран, и нажмите кнопку Свойства [image] на панели инструментов.

  5. В ячейке свойства Данные (ControlSource) введите псевдоним и соответствующее выражение. Чтобы обращаться со страницы к полям, используйте в выражении имена полей. Например, если нужно вычислить общую стоимость товара для записи из таблицы «Заказано», введите:

    ОбщаяСтоимость: Цена*Количество

    Если псевдоним не указан, необходимо ввести перед выражением знак равенства (=). Access автоматически подставит псевдоним, например, Expr1.

Примечания

  • Чтобы запретить вывод значений полей, используемых в выражении, в режиме страницы или в обозревателе Internet Explorer, можно скрыть элементы управления или удалить элементы управления. Даже если элементы управления после задания выражения будут удалены, поля останутся в определении данных страницы.

  • Если страница основана на запросе, можно поместить выражение в базовый запрос страницы. Если будут вычисляться общие значения для групп записей, проще использовать имя вычисляемого поля.

  • См. примеры выражений, используемых для вычисления значений для одной записи.

  • См. сведения о создании выражений в базе данных Microsoft Access (.mdb).

  • См. сведения о создании выражений в проекте Microsoft Access (.adp).

  • Для выполнения сложных вычислений с помощью электронной таблицы, используйте элемент «Электронная таблица».


 Изменение, добавление или удаление параметров условного форматирования элемента управления в форме или отчете

Изменение, добавление или удаление параметров условного форматирования элемента управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или в режиме формы, или отчет в режиме конструктора отчета.

  2. Убедитесь, что элемент управления выбран, и выберите в меню Формат команду Условное форматирование.

  3. Выполните одно из следующих действий.
    • Чтобы изменить существующее условие, выберите начертание шрифта, цвет и другие параметры применяемого форматирования.

    • Чтобы добавить новое условие, нажмите кнопку Добавить.

    • Чтобы удалить одно или несколько условий, нажмите кнопку Удалить, а затем установите флажки, соответствующие удаляемым условиям.
  4. Нажмите кнопку OK.

Примечание. Параметры условного форматирования не сохраняются при выводе или экспорте формы или отчета в другой файловый формат.


 Изменение в форме цвета элемента управления, получающего фокус

Изменение в форме цвета элемента управления, получающего фокус

  1. Откройте форму в режиме конструктора или в режиме формы.

  2. Убедитесь, что элемент управления выбран, и выберите в меню Формат команду Условное форматирование.

  3. В группе Условие x диалогового окна Условное форматирование выберите в первом поле строку Фокус в поле.

  4. Выберите начертание шрифта, цвет и другие параметры форматирования, которые должно иметь поле при получении им фокуса.

Примечание. При открытии диалогового окна Условное форматирование оно содержит текущие параметры форматирования по умолчанию для выбранного элемента управления, включая цвета, начертания шрифтов и любые выражения, которые могли быть определены для поля.


 Изменение ширины столбца в бланке запроса или расширенного фильтра

Изменение ширины столбца в бланке запроса или расширенного фильтра

  1. В режиме конструктора запроса или в окне расширенного фильтра подведите указатель к правой границе области выделения столбца, ширину которого нужно изменить; указатель должен принять вид двусторонней стрелки.

  2. Чтобы сделать столбец более узким, перетащите границу влево; чтобы расширить столбец, перетащите границу вправо. Чтобы установить длину столбца равной самой длинной видимой записи бланка, дважды щелкните границу мьшью.

    Изменение ширины столбца путем перетаскивания его правой границы

Примечания

  • Для того чтобы одновременно изменить ширину нескольких столбцов, сначала выделите столбцы, проводя указателем по их областям выделения при нажатой кнопке мыши, а затем выполните описанные выше действия.

  • Изменение ширины столбцов в режиме конструктора запроса или в окне расширенного фильтра не влияет на ширину столбцов таблицы результатов запроса или фильтрации.


 Изменение стандартных свойств для новых элементов управления при помощи существующего элемента управления в форме или отчете

Изменение стандартных свойств для новых элементов управления при помощи существующего элемента управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите элемент управления, свойства которого нужно сделать стандартными.

  3. Выберите в меню Формат команду Задать стандартные свойства.

    Свойства выделенного элемента управления станут стандартными свойствами для элементов этого типа.

Совет. Можно скопировать параметры форматирования из одного элемента управления в другой с помощью кнопки Формат по образцу [image] на панели инструментов. Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение стандартных свойств новых элементов управления при помощи окна свойств в форме или отчете

Изменение стандартных свойств новых элементов управления при помощи окна свойств в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. На панели элементов выберите тип элемента управления, стандартные свойства которого нужно изменить. Например, если нужно изменить стандартные свойства для полей, нажмите кнопку Поле Поле .

  3. Откройте окно свойств нажатием кнопки Свойства [image] на панели инструментов.

    Microsoft Access изменит заголовок окна свойств, показывая, что задаются стандартные значения свойств для всех элементов управления данного типа.

  4. В окне свойств установите нужные значения свойств.


Выбор кнопочной формы, автоматически открываемой при открытии базы данных

  1. Откройте базу данных.

  2. Для открытия диалогового окна Диспетчер кнопочных форм выполните одно из следующих действий.
    • Если кнопочная форма была создана с помощью мастера баз данных, нажмите кнопку Изменение элементов кнопочной формы в кнопочной форме, открывающейся при запуске.

    • Если кнопочная форма была создана с помощью диспетчера кнопочных форм выберите в меню Сервис команду Служебные программы и подкоманду Диспетчер кнопочных форм.
  3. Если имя кнопочной формы, которую требуется назначить стартовой кнопочной формой, присутствует в списке Страницы кнопочной формы, выберите его. В противном случае создайте кнопочную форму.

    Инструкции

  4. Нажмите кнопку По умолчанию.

    При следующем открытии базы данных указанная кнопочная форма откроется автоматически.


Изменение существующей кнопочной формы

  1. Откройте базу данных.

  2. Для открытия диалогового окна Диспетчер кнопочных форм выполните одно из следующих действий.
    • Если кнопочная форма была создана с помощью мастера баз данных, нажмите кнопку Изменение элементов кнопочной формы в кнопочной форме, открывающейся при запуске.

    • Если кнопочная форма была создана с помощью диспетчера кнопочных форм, выберите в меню Сервис команду Служебные программы и подкоманду Диспетчер кнопочных форм.
  3. Выберите кнопочную форму, которую нужно отредактировать, и нажмите кнопку Изменить.

  4. Выберите элемент кнопочной формы, который нужно изменить, и выполните одно из следующих действий.
    • Чтобы изменить текст подписи кнопки, команду, выполняемую при нажатии кнопки, или объект, который открывается или запускается при нажатии кнопки, нажмите кнопку Изменить.

    • Чтобы добавить кнопку, нажмите кнопку Создать, введите текст подписи кнопки и выберите команду в поле со списком Команда. В зависимости от выбранной команды Microsoft Access может вывести еще одно поле со списком под полем Команда. При необходимости, выберите элемент в этом поле. Например, если в поле Команда была выбрана одна из команд для работы с формой, выберите в нижнем поле имя формы, которую нужно открыть.

    • Для удаления кнопки нажмите кнопку Удалить.

    • Чтобы изменить порядок кнопок, пользуйтесь кнопками Вверх и Вниз.
  5. Закончив изменение кнопочной формы, нажмите кнопку Закрыть.


 Изменение подписи поля в запросе

Изменение подписи поля в запросе

  1. Откройте запрос в режиме конструктора.

  2. Выберите в бланке столбец, содержащий поле, подпись которого нужно изменить, и нажмите кнопку Свойства [image] на панели инструментов.

  3. Введите текст подписи поля в ячейку свойства Подпись (Caption).


 Изменение имени поля в режиме таблицы

Изменение имени поля в режиме таблицы

  1. Откройте таблицу в режиме таблицы.

  2. Дважды щелкните область выделения поля, которое нужно изменить.

    Примечание. Если для свойства Подпись (Caption) этого поля было задано некоторое значение, то текст, выводимый в области выделения поля, может не совпадать с настоящим именем поля. В таком случае при двойном щелчке области выделения поля текст заголовка будет заменен на имя поля. При продолжении редактирования редактироваться будет имя поля, и после нажатия клавиши ENTER текст подписи будет удален. Если удалять этот текст не нужно, нажмите клавишу ESC сразу после двойного щелчка области выделения поля, чтобы прервать редактирование. Для получения дополнительных сведений об использовании свойства Подпись (Caption) нажмите кнопку [image] .

  3. Введите новое имя поля, следуя соглашениям об именах объектов Microsoft Access.

  4. Для сохранения нового имени нажмите клавишу ENTER.

Осторожно! Если в базе данных есть выражения или программы Visual Basic для приложений, содержащие ссылки на поля, имена которых были изменены, то все эти ссылки необходимо обновить с учетом новых имен полей.


 Изменение имени поля в режиме конструктора

Изменение имени поля в режиме конструктора

  1. Откройте таблицу в режиме конструктора.

  2. Дважды щелкните имя поля, которое необходимо изменить.

  3. Введите новое имя поля, следуя соглашениям об именах объектов Microsoft Access.

  4. Для сохранения изменений нажмите кнопку Сохранить [image] на панели инструментов.

Осторожно! Если в базе данных есть выражения или программы Visual Basic для приложений, содержащие ссылки на поля, имена которых были изменены, то все эти ссылки необходимо обновить с учетом новых имен полей.


 Изменение формата данных в текстовых полях или других элементах управления в форме или отчете

Изменение формата данных в текстовых полях или других элементах управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. В ячейке свойства Формат поля (Format) выберите один из стандартных форматов. Если стандартные форматы не подходят, можно создать свой собственный формат. Для получения дополнительных сведений нажмите кнопку [image] .

Примечания

Для обеспечения целостности данных в приложениях Microsoft Access использует настройки языка и стандартов, заданные в панели управления Microsoft Windows, для денежных и числовых значений, а также для значений даты и времени. Для получения дополнительных сведений нажмите кнопку [image] .

Для элементов управления, отображающих числовые данные, можно также установить свойство Число десятичных знаков (DecimalPlaces).


 Изменение формата текстового поля или другого элемента управления в форме или отчете, когда его значение отвечает определенным критериям

Изменение формата текстового поля или другого элемента управления в форме или отчете, когда его значение отвечает определенным критериям

  1. Откройте форму в режиме конструктора формы или в режиме формы, или отчет в режиме конструктора отчета.

  2. Убедитесь, что элемент управления выделен, и выберите в меню Формат команду Условное форматирование.

  3. Выполните одно из следующих действий.
    • Чтобы использовать значение выделенного элемента управления в качестве условия форматирования, выберите строку Значение поля в первом поле, выберите операцию сравнения во втором поле и введите значение в третье (и, в некоторых случаях, в четвертое) поле. Можно ввести как константу, так и выражение.

    • Чтобы использовать выражение в качестве условия форматирования (для оценки данных и условий вне выделенных элементов управления), выберите строку Выражение в первом поле и введите выражение во втором поле. Выражение должно возвращать логическое значение TRUE или FALSE. См. сведения о создании выражения.
  4. Выберите начертание шрифта, цвет и другие параметры применяемого форматирования.

    Microsoft Access применяет выбранное форматирование только если значение элемента управления удовлетворяет условию или если выражение возвращает значение TRUE.

  5. Чтобы добавить еще одно условие, нажмите кнопку Добавить и повторите шаги 3 и 4.

    Можно задать до трех условий. Если ни одно из них не выполняется, элемент управления сохраняет существующее форматирование.

Примечание. Если одновременно выполняется несколько условий, Access применяет форматирование, заданное для первого выполняющегося условия.


 Оптимизация обычного фильтра для всех таблиц, запросов и форм

Оптимизация обычного фильтра для всех таблиц, запросов и форм

Перечисленные ниже настройки распространяются на все таблицы и запросы, а также на все элементы управления «Поле», свойство Применение автофильтра (FilterLookup) которых установлено в значение Параметр базы данных. Для получения дополнительных сведений об установке этого свойства нажмите кнопку [image] .

  1. Выберите в меню Сервис команду Параметры.

  2. Откройте вкладку Правка и поиск и задайте соответствующие параметры в группе Параметры фильтра по умолчанию.
    • Если списки значений неиндексированных полей выводятся слишком медленно, попробуйте ограничить списки только индексированными полями. Для этого можно сбросить флажки в локальных неиндексированных полях и в полях ODBC. Если слишком долго выводятся списки значений индексированных полей, сбросьте флажок в локальных индексированных полях, поскольку в индексах для списков находится слишком много записей, что препятствует быстрому отображению списков.

      Примечание. Если одно и то же неиндексированное поле постоянно используется в фильтре для отбора записей, то рекомендуется по возможности сделать его индексированным, так как это позволит ускорить поиск и отбор записей по этому полю. Для получения дополнительных сведений нажмите кнопку [image] .

    • Если в списках не отображаются значения индексированных или неиндексированных полей, проверьте, установлены ли в группе Отображать список значений соответствующие флажки, или попытайтесь увеличить число в поле Не отображать списки, в которых число строк превышает: таким образом, чтобы оно было больше или равно максимальному количеству записей в любом неиндексированном поле базовой таблицы.

Примечание. Для получения сведений о различии способов, которыми Microsoft Access пользуется для считывания записей в индексированных и в неиндексированных полях, и о связи этого различия с полем Не отображать списки, в которых число строк превышает: нажмите кнопку [image] .


 Оптимизация обычного фильтра для конкретной формы

Оптимизация обычного фильтра для конкретной формы

Для каждого элемента управления «Поле» в форме можно указать, должны ли значения, хранящиеся в поле, выводиться в его списке в окне обычного фильтра.

  1. Откройте форму в режиме конструктора.

  2. Выведите на экран окно свойств для любого элемента управления «Поле».

    Инструкции

  3. В ячейке свойства Применение автофильтра (FilterLookup) установите значение, соответствующее нужному режиму.
    • Если список в окне обычного фильтра выводится слишком медленно, установите свойство Применение автофильтра (FilterLookup) в значение Никогда или Параметр базы данных и выполните соответствующие изменения в диалоговом окне Параметры (меню Сервис). Для получения дополнительных сведений нажмите кнопку [image] .

    • Если значения поля не выводится в списке в окне обычного фильтра, проверьте, что для свойства Применение автофильтра (FilterLookup) не задано значение Никогда. Если свойство Применение автофильтра (FilterLookup) имеет значение Параметр базы данных или Всегда, выполните соответствующие изменения в диалоговом окне Параметры (меню Сервис). Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение запроса в свойстве «Источник строк» (RowSource) диаграммы в форме или отчете

Изменение запроса в свойстве «Источник строк» (RowSource) диаграммы в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что нужная диаграмма выделена, и нажмите кнопку Свойства [image] .

  3. Щелкните ячейку свойства Источник строк (RowSource) и нажмите кнопку построителя [image] справа от ячейки свойства Источник строк (RowSource), чтобы открыть построитель запросов.

    Построитель запросов выведет на экран запрос для свойства «Источник строк» (RowSource) в режиме конструктора.

  4. Измените запрос.

    Чтобы просмотреть изменения, выберите команду Режим таблицы в меню Вид.

  5. Закройте построитель запросов.

  6. Чтобы просмотреть изменения в диаграмме, нужно открыть форму в режиме формы или отчет в режиме отчета.

Если изменение запроса для свойства «Источник строк» (RowSource) не работает как нужно, можно попытаться изменить данные в базовой таблице или в другом источнике записей. Для получения сведений об изменении данных в базовой таблице или в другом источнике записей, нажмите кнопку [image] .


 Изменение начального значения поля счетчика с последовательной нумерацией

Изменение начального значения поля счетчика с последовательной нумерацией

В новой таблице, еще не содержащей записей, можно изменить начальное значение для поля счетчика, у которого в свойстве Новые значения (NewValues) задан тип Последовательные , на значение, отличное от 1. В таблице, содержащей записи, описанные ниже действия позволяют изменить значение счетчика в следующей новой записи.

  1. Создайте временную таблицу, содержащую одно поле типа «Числовой»; задайте для него в свойстве Размер поля (FieldSize) тип Длинное целое и присвойте этому полю имя, совпадающее с именем поля счетчика, значение которого требуется изменить.

    Инструкции

  2. В режиме таблицы введите в числовое поле временной таблицы значение, на единицу меньшее, чем требуемое начальное значение для поля счетчика. Например, чтобы начать нумерацию счетчика с числа 100, введите в числовое поле значение 99.

  3. Создайте и выполните запрос на добавление записей, добавляющий временную таблицу в таблицу, содержащую поле счетчика, которое нужно изменить.

    Инструкции

    Примечание. Если изменяемая таблица содержит ключевое поле, то перед выполнением запроса на добавление это поле необходимо временно удалить. Кроме того, если в исходной таблице содержатся поля, у которых свойство Обязательное поле (Required) имеет значение Да или свойство Индексированное поле (Indexed) имеет значение Да (Совпадения не допускаются), либо если для поля и/или записи определено свойство Условие на значение (ValidationRule), запрещающее пустые (Null) значения полей, то необходимо также временно отключить эти настройки.

  4. Удалите временную таблицу.

  5. Удалите запись, добавленную в исходную таблицу с помощью запроса на добавление.

  6. Если на шаге 3 были отключены какие-либо настройки, восстановите исходные значения свойств.

При вводе следующей записи в оставшуюся таблицу поле счетчика получит значение, на 1 превышающее значение, введенное во временную таблицу.

Примечание. Если после изменения начального значения счетчика планируется выполнить сжатие базы данных, то необходимо предварительно добавить в таблицу по крайней мере одну запись. Если этого не сделать, то при сжатии базы данных значение поля счетчика в первой пустой записи будет сброшено до значения, на 1 превышающего максимальное имеющееся значение счетчика. Например, если в таблице нет записей, то при сжатии базы данных поле счетчика в следующей записи получит значение 1; если максимальное значение счетчика в существующих записях равняется 50, то после сжатия поле счетчика в следующей записи получит значение 51.


 Изменение макета подчиненной формы, отображаемой в режиме таблицы

Изменение макета подчиненной формы, отображаемой в режиме таблицы

В режиме формы главной формы в подчиненной форме можно выполнить любое из перечисленных действий.

  • Для изменения ширины столбца перетащите правую границу области выделения столбца. Для того чтобы автоматически изменить ширину столбца по размеру данных, дважды щелкните правую границу области выделения столбца.

  • Для изменения порядка столбцов сначала щелкните заголовок столбца. После этого снова щелкните его и, удерживая кнопку мыши, перетащите столбец на новое место.

  • Для изменения высоты строк перетащите нижнюю границу области выделения строки.

  • Чтобы скрыть столбец, щелкните его и выберите в меню Формат команду Скрыть столбцы.

  • Чтобы отобразить скрытый столбец, выберите в меню Формат команду Отобразить столбцы и установите флажок того столбца, который нужно отобразить.

  • Чтобы закрепить столбец, щелкните его и выберите в меню Формат команду Закрепить столбцы.

Примечания

  • Чтобы изменить размер самой подчиненной формы, измените размер элемента управления подчиненной формы в режиме конструктора главной формы.

  • Если свойство Разрешить изменения макета (AllowDesignChanges) главной формы имеет значение Все режимы, то изменить макет таблицы подчиненной формы можно и в окне свойств в режиме формы.


 Изменение макета подчиненной формы, отображаемой в виде простой или ленточной формы

Изменение макета подчиненной формы, отображаемой в виде простой или ленточной формы

  1. Откройте главную форму в режиме конструктора. Подчиненная форма будет выведена в режиме конструктора в элементе управления «подчиненная форма».

  2. Убедитесь, что элемент управления подчиненной формы выделен. Когда элемент выделен, можно щелкнуть его снова, чтобы выделить форму, раздел или элемент управления, как если бы подчиненная форма была открыта в режиме конструктора из окна базы данных.

  3. Внесите изменения в макет подчиненной формы.

  4. Для изменения элемента управления подчиненной формы (размеров и других его свойств) сначала выделите этот элемент, щелкнув его границу.

  5. Переключитесь в режим формы для просмотра изменений.

Примечания

  • При изменении ширины формы, отображаемой в виде подчиненной формы, необходимо также изменить ширину элемента управления подчиненной формы в главной форме.

  • Если свойство Разрешить изменения макета (AllowDesignChanges) главной формы имеет значение Все режимы, то изменить макет подчиненной формы можно и в окне свойств в режиме формы. Внести изменения в элемент управления подчиненной формы будет нельзя.


Изменение структуры таблицы в окне «Схема данных»

  1. В окне схемы данных щелкните правой кнопкой таблицу, которую необходимо изменить, а затем выберите команду Конструктор таблиц.

  2. Внесите в описание таблицы необходимые изменения.


 Изменение текста строки заголовка формы в режиме формы

Изменение текста строки заголовка формы в режиме формы

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Подпись (Caption) введите текст заголовка.

  4. Для просмотра текста заголовка переключитесь в режим формы.

Совет. Если в форме не должно быть заголовка, введите пробел в ячейку свойства Подпись (Caption).


 Изменение типа связи для рисунка или другого объекта в форме или отчете

Изменение типа связи для рисунка или другого объекта в форме или отчете

При связывании объекта, созданного в другом приложении, Microsoft Access по умолчанию создает автоматически обновляемую связь. Можно изменить ее на связь, обновляемую по запросу, и обратно.

Примечание. Этот тип связи отличается от гиперссылки, используемой в форме или отчете для перехода к другому документу, объекту или странице. Для получения дополнительных сведений о гиперссылках нажмите кнопку [image] .

  1. Выполните одно из следующих действий.
    • Если объект является свободным, выберите объект в режиме конструктора формы или конструктора отчета.

    • Если объект является присоединенным, откройте форму в режиме формы (или в режиме таблицы), найдите запись, которую нужно изменить, и выберите объект.
  2. Выберите в меню Правка команду Связи OLE/DDE.

  3. В списке Связи выберите связь, которую требуется изменить. Для того чтобы выбрать несколько связей, выбирайте каждую связь при нажатой клавише CTRL.

  4. Выберите тип обновления: автоматическое или по запросу.

Примечания

  • При любых изменениях связи для присоединенной рамки объекта изменяется только связь в текущей записи. Для того чтобы внести изменения в другую запись, перейдите на эту запись и повторите все действия.

  • Эта процедура применяется только к рисункам в свободной рамке объекта и присоединенной рамке объекта. Фоновые рисунки и рисунки в элементах управления всегда обновляются автоматически.


 Выбор полей новой таблицы из существующих таблиц

Выбор полей новой таблицы из существующих таблиц

  • В мастере таблиц выберите поля для новой таблицы из различных образцов таблиц, таких, как деловые контакты, личное имущество и т. п..

    Создание таблицы при помощи мастера таблиц


 Изменение скорости текста бегущей строки на странице доступа к данным

Изменение скорости текста бегущей строки на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите бегущую строку и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств этого элемента управления.

  3. В ячейке свойства TrueSpeed установите значение True.

  4. В ячейке свойства ScrollDelay введите число миллисекунд, определяющее период между двумя операциями вывода бегущего текста.

  5. В ячейке свойства ScrollAmount укажите число пикселов, на которое будет перемещаться бегущий текст за время, указанное в ячейке свойства ScrollDelay. Свойство ScrollAmount задает шаг бегущего текста.

Примечание. Когда свойство TrueSpeed имеет значение True, скорость перемещения текста определяется свойствами ScrollDelay и ScrollAmount. Например, если свойство ScrollDelay имеет значение 65, а свойство ScrollAmount установлено в значение 10, то бегущий текст каждые 65 миллисекунд продвигается на 10 пикселов. Если же свойство TrueSpeed имеет значение False, то минимальная задержка между операциями вывода текста будет составлять 60 миллисекунд.


 Очистка всех полей в окне обычного фильтра

Очистка всех полей в окне обычного фильтра

  • Нажмите кнопку Очистить бланк [image] на панели инструментов.


 Очистка бланка запроса или расширенного фильтра

Очистка бланка запроса или расширенного фильтра

  • В режиме конструктора запроса или в окне расширенного фильтра выберите в меню Правка команду Очистить бланк.


 Комбинирование данных из полей двух или нескольких таблиц с помощью запроса на объединение

Комбинирование данных из полей двух или нескольких таблиц с помощью запроса на объединение

Запросы на объединение позволяют вводить в одно поле данные из соответствующих полей двух или нескольких таблиц или запросов. При запуске запроса на объединение возвращаются соответствующие поля отобранных записей из всех включенных в запрос таблиц или запросов.

  1. В окне базы данных выберите Запросы [image] в списке Объекты и нажмите кнопку Создать на панели инструментов окна базы данных.

  2. В диалоговом окне Новый запрос выберите в списке строку Конструктор и нажмите кнопку OK.

  3. Не добавляя таблицы или запросы, нажмите в диалоговом окне Добавление таблицы кнопку Закрыть.

  4. В меню Запрос выберите команду Запрос SQL и подкоманду Объединение.

  5. Введите инструкции SQL SELECT, которые комбинируются с помощью операции UNION, если не требуется возвращать повторяющиеся записи, или с помощью операции UNION ALL, если нужно возвращать все записи, в том числе и повторяющиеся.

    Примечание. Все инструкции SELECT должны возвращать одинаковое число полей, в одном и том же порядке. Соответствующие поля должны иметь совместимые типы данных, за одним исключением: допускается объединение в одном поле значений полей типа «Числовой» и «Текстовый».

    Запрос на объединение, объединяющий данные из нескольких таблиц

    Для получения дополнительных сведений об инструкции SELECT нажмите кнопку [image] . Для получения дополнительных сведений об операциях UNION и UNION ALL нажмите кнопку [image] .

  6. Для выполнения сортировки в запросе на объединение добавьте вслед за последней инструкцией SELECT предложение ORDER BY. В предложении ORDER BY укажите поле, по которому проводится сортировка; это поле должно быть указано в первой инструкции SELECT. Для получения дополнительных сведений о предложении ORDER BY нажмите кнопку [image] .

  7. Для просмотра результатов запроса нажмите кнопку Вид [image] на панели инструментов.

Осторожно! При преобразовании запроса на объединение в запрос другого типа, например, в запрос на выборку, введенная инструкция SQL будет потеряна.

Примечания

  • Примером запроса на объединение является запрос «Клиенты и поставщики по городам» учебной базы данных «Борей». Чтобы просмотреть этот запрос, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте запрос «Клиенты и поставщики по городам» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .

  • В запросах на объединение именами столбцов становятся имена полей из первой таблицы или из первой инструкции SELECT. Если нужно переименовать поля в результирующей таблице, следует воспользоваться предложением AS для создания псевдонимов полей. Для просмотра примеров нажмите кнопку [image] .


 Сжатие закрытой базы данных Access или проекта Access

Сжатие закрытой базы данных Access или проекта Access

  1. Закройте текущую базу данных Microsoft Access или проект Microsoft Access. При сжатии сетевой (общей) базы данных, расположенной на сервере или в общей папке, убедитесь, что она закрыта у всех пользователей.

  2. В меню Сервис выберите команду Служебные программы и подкоманду Сжать и восстановить базу данных.

  3. В диалоговом окне Базы данных для сжатия выберите базу данных Access или проект Access, которые нужно сжать, и нажмите кнопку Сжать.

  4. В диалоговом окне Сжатие базы данных под именем укажите имя, диск и папку для сжатой базы данных Access или проекта Access.

  5. Нажмите кнопку Сохранить.

    Если для сжатой базы данных или проекта были указаны те же имя, диск и папка, которые соответствуют исходной базе данных или проекту, и сжатие было выполнено успешно, то Microsoft Access замещает исходный файл сжатой версией.

Примечание. Процесс сжатия можно прервать нажатием клавиш CTRL+BREAK или ESC.


 Сжатие текущей базы данных Access или проекта Access

Сжатие текущей базы данных Access или проекта Access

  1. При сжатии сетевой (общей) базы данных, расположенной на сервере или в общей папке, убедитесь, что она закрыта всеми пользователями.

  2. В меню Сервис выберите команду Служебные программы и подкоманду Сжать и восстановить базу данных.

Примечание. Процесс сжатия можно прервать нажатием клавиш CTRL+BREAK или ESC.


 Преобразование баз данных предыдущих версий к формату Microsoft Access 2000

Преобразование баз данных предыдущих версий к формату Microsoft Access 2000

  1. Создайте резервную копию базы данных Access, подлежащей преобразованию, и храните ее до тех пор, пока не будет осуществлен окончательный переход к базе данных Microsoft Access 2000.

  2. Закройте базу данных Microsoft Access, которая будет преобразовываться.

    Если база данных Access является сетевой (общей) базой данных, расположенной на сервере или в общей папке, убедитесь, что она закрыта всеми пользователями.

  3. В Microsoft Access 2000 выберите в меню Сервис команду Служебные программы и подкоманды Преобразовать базу данных и к текущей версии базы данных Access.

  4. В диалоговом окне База данных для преобразования выберите базу данных и нажмите кнопку Преобразовать.

  5. В диалоговом окне Преобразование в базу данных выполните одно из следующих действий.
    • Введите с клавиатуры новое имя (без расширения .mdb) файла базы данных Microsoft Access 2000.

    • Укажите другую папку файла базы данных Microsoft Access 2000. (В этом случае можно как оставить старое имя, так и задать новое).

    Нельзя преобразовать базу данных Access в файл, имеющий то же имя и местоположение, что и исходный файл базы данных.

  6. Нажмите кнопку Сохранить.

Microsoft Access преобразует базу данных к формату Access 2000.

См. сведения о преобразовании реплицированных баз данных.

Примечания

  • Допускается преобразование защищенных баз данных Access. Однако защита на уровне пользователей больше не распространяется на модули. Для защиты модулей в преобразованной базе данных Access защитите программы Visual Basic для приложений (VBA) с помощью пароля.

  • При преобразовании базы данных, которая создана в предыдущей версии Microsoft Access и использует связанные таблицы, убедитесь, что внешние таблицы находятся в той же папке, где они были изначально. Если Microsoft Access не сможет найти связанные с преобразуемой базой данных таблицы, использовать преобразованную базу данных будет нельзя. После преобразования базы данных Access можно переместить эти таблицы и изменить связь с ними с помощью диспетчера связанных таблиц. Преобразование базы данных, использующей связанные таблицы, не вызывает преобразования этих таблиц.

  • Также можно преобразовать базу данных предыдущей версии Access путем импортирования ее объектов в новую базу данных Access 2000. Этот метод можно использовать, если не все объекты базы данных предыдущей версии Access нужно сохранить в версии для Access 2000.


 Convert Code That Calls a DLL

Convert Code That Calls a DLL

Calling Procedures in the Windows Application Programming Interface

If a database created in previous versions of Microsoft Access called procedures in the Microsoft Windows application programming interface (API), you will need to make some changes in your code when you convert a version 2.0 or earlier database to Microsoft Access 2000.

The Windows API consists of a set of dynamic-link libraries (DLLs) containing system-related procedures that include functions, messages, data structures, data types, and statements you can use in creating applications that run under Windows 95 or the Windows NT platform. In order to call these procedures from Visual Basic, you must first declare them by using a Declare statement. You can then call them as you would any other procedure.

In versions 1.x and 2.0 of Microsoft Access were 16-bit applications and ran on 16-bit versions of Windows. Microsoft Access 2000 is a 32-bit application and runs only under Windows 95 and the Windows NT platform. If your existing Access Basic code made calls to a 16-bit Windows API, you will need to modify these calls when you convert your database to Microsoft Access 2000. The following list provides some tips for converting your code.

  • Check any Declare statements to ensure that they refer to the correct DLLs. The following table shows the new names for the 32-bit Windows DLLs.

    16-bit Windows DLL | 32-bit Windows DLL
    User.dll | User32.dll
    Kernel.dll | Kernel32.dll
    GDI.dll | GDI32.dll

  • The names of some functions in the 32-bit Windows API have changed. Additionally, functions in the 32-bit Windows API are case-sensitive. Check to make sure that you've entered the procedure name and alias name correctly.

  • Some functions have new parameter data types in the 32-bit Windows API. Consult one of the references listed later in this topic to determine which function calls you must update.

  • If a16-bit version of a DLL with the same name as a 32-bit DLL exists on your computer, Microsoft Access may try to call a function in that DLL if the directory in which it resides precedes the directory that contains the new version in your path.

  • Some 32-bit DLLs contain functions with slightly different versions to accommodate both Unicode and ANSI strings. An A at the end of the function name specifies the ANSI version. A W at the end of the function name specifies the Unicode version. If the function takes string-type arguments, try appending an A to the function name.

For more information on using 32-bit Windows API procedures and on porting your existing database applications to 32-bit Microsoft Access 2000, consult the following resources:

  • The Windows API Viewer, available in the Microsoft Office 2000 Developer, includes Visual Basic syntax for all 32-bit declarations, data types, and constants.

  • The Microsoft Office 2000 Resource Kit contains information on porting your 16-bit Microsoft Office-based solutions, including applications developed with previous versions of Microsoft Access, to 32-bit solutions.

  • The Microsoft Win32 Software Development Kit provides complete reference information on 32-bit Windows API procedures.

Calling Code in Other DLLs

If your database application calls procedures in other DLLs, you must create or obtain 32-bit versions of those DLLs and make any necessary modifications to your code when you convert your database to Microsoft Access 2000.

If you can't obtain a 32-bit version of a DLL, then you'll need an intermediary DLL that can convert 32-bit calls to 16-bit calls. For more information, see the preceding resources list.


 Преобразование глобальных макросов в процедуры Visual Basic

Преобразование глобальных макросов в процедуры Visual Basic

  1. В окне базы данных выберите значок Макросы [image] в списке Объекты.

  2. Выберите макрос, который нужно преобразовать.

  3. Выберите в меню Файл команду Сохранить как.

  4. В диалоговом окне Сохранение выберите строку Модуль и нажмите OK.

  5. В диалоговом окне Преобразование макроса выберите нужные параметры и нажмите кнопку Преобразовать.


 Преобразование макросов в форме или отчете в процедуры Visual Basic

Преобразование макросов в форме или отчете в процедуры Visual Basic

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите в меню Сервис команду Макрос и подкоманду Преобразовать макросы формы или Преобразовать макросы отчета.


 Преобразование объекта OLE в форме или отчете в объект OLE более поздней версии

Преобразование объекта OLE в форме или отчете в объект OLE более поздней версии

  1. Выполните одно из следующих действий.
    • Если объект является свободным, выберите его в режиме конструктора формы или режиме конструктора отчета.

    • Если объект является присоединенным, откройте форму в режиме формы (или в режиме таблицы), найдите запись, которую нужно изменить, и выберите объект.
  2. В меню Правка установите указатель на соответствующую команду Объект ... (например, на команду Объект Лист для объекта Microsoft Excel) и выберите подкоманду Преобразовать.

  3. В диалоговом окне Преобразование выберите новый тип, к которому нужно преобразовать данный объект. Например, можно преобразовать объект Graph 3.0 в объект Graph 5.0.


 Преобразование присоединенного рисунка или другого объекта в форме в рисунок

Преобразование присоединенного рисунка или другого объекта в форме в рисунок

  1. Откройте форму в режиме формы.

  2. Выберите объект и нажмите кнопку Копировать [image] на панели инструментов.

  3. В меню Правка выберите команду Специальная вставка.

  4. В списке Как выберите Рисунок или один из точечных форматов (bitmap), в зависимости от того, что нужно создать: метафайл или точечный рисунок.

  5. Microsoft Access преобразует объект в рисунок. Присоединенная рамка объекта остается в форме, но открыть из формы приложение, в котором был создан объект (приложение-сервер OLE), будет теперь невозможно. Если объект является звукозаписью, от него останется только значок. От объекта видеозаписи останется только первый кадр. Воспроизвести звук или видеозапись теперь будет нельзя.

Примечания

  • При любых изменениях объекта в присоединенной рамке объекта изменяется только объект в текущей записи. Для того чтобы внести изменения в другую запись, перейдите на эту запись и повторите все действия.

  • После преобразования объекта в рисунок описанным выше способом форма будет открываться быстрее. Если нужно просто запретить пользователям редактировать объект, а быстродействие не является приоритетным вопросом, можно не преобразовывать объект, а установить свойства Блокировка (Locked) и Доступ (Enabled) присоединенной рамки объекта в значения Да и Нет соответственно.


 Преобразование свободного рисунка или другого объекта в форме или отчете в нередактируемый

Преобразование свободного рисунка или другого объекта в форме или отчете в нередактируемый

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите нужный объект.

  3. Выберите в меню Формат команду Преобразовать элемент в и подкоманду Изображение.

    Свободная рамка объекта преобразуется в рамку рисунка. Объект остается в форме или отчете, но открыть из них приложение, в котором был создан объект (приложение-сервер OLE), будет невозможно. От объекта звукозаписи остается только значок. От объекта видеозаписи остается только первый кадр. Воспроизведение звукозаписи или видеозаписи в этом случае становится невозможным.


 Копирование и перемещение базы данных Access или проекта Access

Копирование и перемещение базы данных Access или проекта Access

  1. Закройте базу данных Microsoft Access или проект Microsoft Access. При работе с сетевой (общей) базой данных убедитесь, что все пользователи закрыли ее.

  2. В окне «Мой компьютер» или в проводнике Windows найдите и выберите файл этой базы данных (.mdb) или проекта (.adp).

    Чтобы выбрать для копирования или перемещения несколько файлов, выбирайте их при нажатой клавише CTRL.

  3. Чтобы скопировать файл, выберите команду Копировать в меню Правка.

    Чтобы переместить файл выберите команду Вырезать в меню Правка.

  4. Откройте папку или диск, где нужно разместить файл.

  5. Выберите в меню Правка команду Вставить.

    Чтобы отменить вставку, выберите в меню Правка команду Отменить копирование или Отменить перемещение.

Примечания

  • При копировании или перемещении базы данных Access или проекта Access, содержащих ссылки на страницы доступа к данным, Access оставляет страницы в исходной папке и автоматически обновляет ссылки на них, обеспечивая их нормальную работу.

  • При копировании или перемещении файла проекта Access база данных Microsoft SQL Server, к которой подключен этот проект Access, не копируется и не перемещается.

Совет. Если место, в которое нужно поместить файл, уже отображено на экране, можно просто перетащить в него файл (если нужно скопировать файл, перетаскивайте его при нажатой клавише CTRL).


 Использование команды «Копировать» для создания копии объекта базы данных

Использование команды «Копировать» для создания копии объекта базы данных

  1. В окне базы данных выберите в списке Объекты тип объекта базы данных, который нужно скопировать.

  2. Выберите объект в списке объектов и нажмите кнопку Копировать [image] на панели инструментов.

  3. Если объект копируется в другую базу данных Microsoft Access или в другой проект Microsoft Access, закройте текущую базу данных Access или текущий проект Access и откройте базу данных Access или проект Access, куда нужно скопировать объект.

  4. При открытом окне базы данных нажмите кнопку Вставить [image] на панели инструментов.

  5. Введите информацию в диалоговое окно Вставка. Имя нового объекта должно быть уникальным и должно соответствовать соглашениям об именах объектов, принятым в Microsoft Access. Если объект вставляется в основную реплику базы данных Access и должен реплицироваться в остальные реплики базы данных, установите флажок Сделать объект реплицируемым.

Примечания

  • При копировании таблицы в диалоговом окне Вставка таблицы предлагается выбрать один из трех вариантов: вставку только структуры таблицы, вставку структуры и данных или добавление данных в существующую таблицу.

  • При создании с помощью описанной здесь процедуры копии страницы доступа к данным, Microsoft Access запросит имя нового HTML-файла.

  • См. сведения о сохранении изменений в сетевой (общей) базе данных Access.

  • Если при копировании данных таблицы возникли трудности, нажмите кнопку [image] . Большое количество записей в базе данных Access проще скопировать с помощью запроса на добавление. Для получения дополнительных сведений нажмите кнопку [image] .


 Создание гиперссылки путем копирования ее из документа Microsoft Office

Создание гиперссылки путем копирования ее из документа Microsoft Office

  1. Откройте документ Microsoft Office, содержащий определенную гиперссылку.

  2. Щелкните правой кнопкой определенную гиперссылку, которую нужно скопировать. Выберите в контекстном меню команду Гиперссылка и подкоманду Копировать гиперссылку.

    Примечание. При копировании определенной гиперссылки из документа Office следует убедиться, что копируется только сама гиперссылка. Если будут также скопированы символы, окружающие гиперссылку, но не являющиеся ее частью, то Microsoft Access вместо адреса гиперссылки будет пытаться перейти по адресу, задаваемому выделенным текстом.

  3. Переключитесь в Microsoft Access и откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  4. В меню Правка выберите команду Вставить как гиперссылку.

    Надпись будет добавлена в форму или отчет. Для проверки ссылки щелкните надпись правой кнопкой мыши и выберите в контекстном меню команду Гиперссылка и подкоманду Открыть.


 Изменение положения макрокоманды в макросе

Изменение положения макрокоманды в макросе

  1. В окне макроса щелкните область выделения строки макрокоманды.

  2. Еще раз щелкните область выделения строки и перетащите строку в новое положение.


 Переименование базы данных Access или проекта Access

Переименование базы данных Access или проекта Access

  1. Закройте базу данных Microsoft Access или проект Microsoft Access. При работе с сетевой (общей) базой данных убедитесь, что все пользователи закрыли ее.

  2. Нажмите кнопку Открыть [image] на панели инструментов.

  3. В диалоговом окне Открытие файла базы данных найдите файл базы данных Access или проекта Access, который нужно переименовать, и щелкните его правой кнопкой мыши.

  4. Выберите в контекстном меню команду Переименовать.

  5. Введите новое имя. Расширение .mdb или .adp следует указывать только в случае, если система Microsoft Windows настроена на вывод файлов с расширениями MS-DOS. Нажмите клавишу ENTER.

    Имя файла не должно быть длиннее 255 символов, включая пробелы.

Примечание. Можно также переименовать базу данных Access или проект Access вне приложения Access. Закройте файл, щелкните его правой кнопкой мыши в проводнике Windows или в папке «Мой компьютер» и выберите в контекстном меню команду Переименовать.


 Ввод гиперссылки путем копирования текста из документа Microsoft Office

Ввод гиперссылки путем копирования текста из документа Microsoft Office

  1. Откройте документ Microsoft Office, содержащий текст ссылки. Например, откройте документ Microsoft Word.

  2. Выделите текст адреса гиперссылки.

    Примечание. Для создания гиперссылки можно использовать текст, выделенный на страницах доступа к данным, но не в других объектах Microsoft Access.

  3. Выберите в меню Правка команду Копировать.

  4. Переключитесь в Microsoft Access и выполните одно из следующих действий.
    • В базе данных Microsoft Access (.mdb) откройте таблицу или запрос в режиме таблицы.

    • В базе данных Access или в проекте Microsoft Access (.adp) откройте форму в режиме таблицы или в режиме формы.
  5. Поместите курсор в поле гиперссылки таблицы или в текстовое поле или другой элемент управления, который может содержать гиперссылки в форме.

  6. Выберите в меню Правка команду Вставить.

    В поле или элемент управления будет добавлена гиперссылка. При щелчке этой гиперссылки в форме или в режиме таблицы открывается требуемый документ или Web-страница.


 Создание гиперссылки путем копирования текста из документа Microsoft Office

Создание гиперссылки путем копирования текста из документа Microsoft Office

  1. Откройте документ Microsoft Office, содержащий текст ссылки. Например, откройте документ Microsoft Word.

    Примечание. Для создания гиперссылки можно использовать текст, выделенный на страницах доступа к данным, но не в других объектах Microsoft Access.

  2. Выделите текст адреса гиперссылки.

  3. Выберите в меню Правка команду Копировать.

  4. Переключитесь в Microsoft Access и откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  5. В меню Правка выберите команду Вставить как гиперссылку.

    Надпись будет добавлена в форму или отчет. Для проверки ссылки щелкните надпись правой кнопкой мыши и выберите в контекстном меню команду Гиперссылка и подкоманду Открыть.


 Создание поля со списком значений в режиме таблицы

Создание поля со списком значений в режиме таблицы

  1. Откройте таблицу в режиме таблицы.

  2. Чтобы вставить поле со списком значений в таблицу, выберите столбец, слева от которого нужно добавить поле, и выберите в меню Вставка команду Столбец подстановок.

  3. В первом диалоговом окне мастера подстановок щелкните переключатель, определяющий ввод фиксированных значений.

  4. Нажмите кнопку Далее и следуйте инструкциям остальных диалоговых окон мастера подстановок.

    После завершения работы мастера подстановок в таблицу будет добавлено подстановочное поле. По умолчанию подстановочному полю будет присвоено имя «Поле#», где # является каким-либо числом. При желании имя этого поля можно изменить. Для получения дополнительных сведений об изменении имен полей в режиме таблицы нажмите кнопку [image] .

Примечание. При создании списка фиксированных значений с помощью мастера подстановок Microsoft Access устанавливает некоторые свойства поля на основании выбранных в мастере параметров. Если созданное поле добавляется в форму, то Microsoft Access копирует в форму его определение. Таким образом, поля со списками и списки создаются для формы автоматически. Однако, если определение поля со списком значений в таблице изменится после добавления этого поля в форму, эти изменения не будут отражены в этой форме. Чтобы справиться с этой проблемой, удалите поле из формы и добавьте его снова. Для получения дополнительных сведений о свойствах, устанавливаемых мастером подстановок, нажмите кнопку [image] .


 Создание поля со списком значений в режиме конструктора

Создание поля со списком значений в режиме конструктора

  1. Откройте таблицу в режиме конструктора.

  2. Чтобы вставить в таблицу поле, щелкните строку, над которой его нужно поместить, и нажмите кнопку Добавить строки [image] на панели инструментов.

    Чтобы добавить поле в конец таблицы, щелкните первую пустую строку.

  3. В столбце Имя поля введите имя, следуя соглашениям об именах объектов Microsoft Access.

  4. В столбце Тип данных щелкните стрелку и выберите строку Мастер подстановок.

  5. В первом диалоговом окне мастера подстановок выберите переключатель, определяющий ввод фиксированных значений.

  6. Нажмите кнопку Далее и следуйте инструкциям остальных диалоговых окон мастера подстановок.

Примечание. При создании списка фиксированных значений с помощью мастера подстановок Microsoft Access устанавливает некоторые свойства поля на основании выбранных в мастере параметров. Если созданное поле добавляется в форму, то Microsoft Access копирует в форму его определение. Таким образом, поля со списками и списки создаются для формы автоматически. Однако, если определение поля со списком значений в таблице изменится после добавления этого поля в форму, эти изменения не будут отражены в этой форме. Чтобы справиться с этой проблемой, удалите поле из формы и добавьте его снова. Для получения дополнительных сведений о свойствах, устанавливаемых мастером подстановок, нажмите кнопку [image] .


Создание всех таблиц, форм и отчетов базы данных одной операцией

  • Для создания одной операцией всех таблиц, форм и отчетов, необходимых для базы данных, используйте мастер баз данных. Мастер баз данных создает новую базу данных; с его помощью нельзя добавлять новые таблицы, формы или отчеты в существующую базу данных.

    Создание базы данных с помощью мастера


 Работа с таблицами или индексами с помощью управляющих запросов SQL

Работа с таблицами или индексами с помощью управляющих запросов SQL

Управляющие запросы SQL используются для создания, удаления или изменения таблиц или для создания индексов в текущей базе данных.

  1. В окне базы данных выберите значок Запросы [image] в списке Объекты и нажмите кнопку Создать на панели инструментов окна базы данных.

  2. В диалоговом окне Новый запрос выберите в списке строку Конструктор и нажмите кнопку OK.

  3. Не добавляя таблицы или запросы, нажмите в диалоговом окне Добавление таблицы кнопку Закрыть.

  4. В меню Запрос выберите команду Запрос SQL и подкоманду Управление.

  5. Введите инструкцию SQL для управляющего запроса. Каждый управляющий запрос может содержать только одну управляющую инструкцию. Microsoft Access поддерживает следующие управляющие инструкции.
    • CREATE TABLE — создает таблицу. Для получения дополнительных сведений нажмите кнопку [image] .

    • ALTER TABLE — добавляет новое поле или ограничение в существующую таблицу. Для получения дополнительных сведений нажмите кнопку [image] .

    • DROP — удаляет таблицу из базы данных или удаляет индекс, определенный для поля или группы полей. Для получения дополнительных сведений нажмите кнопку [image] .

    • CREATE INDEX — создает индекс для поля или группы полей. Для получения дополнительных сведений нажмите кнопку [image] .
  6. Чтобы запустить запрос, нажмите кнопку Запуск [image] на панели инструментов.

Осторожно! При преобразовании управляющего запроса в запрос другого типа, например, в запрос на выборку, введенная инструкция SQL будет потеряна.

Примечания

  • Для просмотра примеров управляющих запросов нажмите кнопку [image] .

  • Для создания или изменения объектов серверов баз данных ODBC, например, Microsoft FoxPro, следует использовать запросы к серверу, а не управляющие запросы.


 Создание запроса с параметрами, значения которых задаются в специальном диалоговом окне

Создание запроса с параметрами, значения которых задаются в специальном диалоговом окне

Для ввода условий запроса, на котором базируется форма, отчет или Web-страница, можно применять пользовательские диалоговые окна. Например, с помощью пользовательского диалогового окна можно указать, какие записи должен содержать печатаемый отчет.

  1. Создайте или откройте запрос, параметры которого будут вводиться в диалоговом окне.

  2. Убедитесь, что запрос содержит необходимые таблицы.

  3. Добавьте в бланк запроса поля, связанные с каждым из элементов управления диалоговых окон, в которых будут вводиться значения для условий отбора. Введите в ячейки свойства Условие отбора (Criteria) каждого из этих полей выражение, указывающее, что за значениями условий необходимо обращаться к соответствующему элементу управления диалогового окна. Если при создании выражения понадобится помощь, используйте построитель выражений. Для получения дополнительных сведений нажмите кнопку [image] .

  4. Добавьте в бланк запроса поля, значения которых должны возвращаться.

Например, можно создать форму диалогового окна «Сведения о клиенте», содержащую элемент управления для поля «КодКлиента». При вводе кода клиента в диалоговое окно запрос возвращает соответствующее название фирмы клиента, его адрес и город. Для создания такого запроса выполните следующие действия.

  • Добавьте поле «КодКлиента» в бланк запроса. В ячейку Условие отбора (Criteria) введите выражение, указывающее Microsoft Access, что за значением условия отбора, используемым запросом, следует обращаться к элементу управления «КодКлиента» в диалоговом окне. В этом случае необходимо ввести выражение Forms![Сведения о клиенте]![КодКлиента].

  • Добавьте в бланк запроса поля, в которых должны возвращаться значения, соответствующие значению поля «КодКлиента» (поля «Название», «Адрес» и «Город»).

Дополнительные сведения об использовании форм для получения и отображения информации см. в главе «Using Forms to Collect, Filter, and Display Information» руководства Building Applications with Forms and Reports.


 Создание новой страницы доступа к данным

Создание новой страницы доступа к данным

  1. В окне базы данных щелкните значок Страницы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новая страница доступа к данным выберите строку Конструктор.

  4. Нажмите кнопку OK.

Microsoft Access откроет страницу доступа к данным в режиме конструктора, в котором можно редактировать страницу.


 Создание присоединенного списка, поля со списком или раскрывающегося списка, получающего данные из таблицы или запроса в проекте Microsoft Access или на странице доступа к данным

Создание присоединенного списка, поля со списком или раскрывающегося списка, получающего данные из таблицы или запроса в проекте Microsoft Access или на странице доступа к данным

  1. Создайте новую форму, отчет или страницу доступа к данным, основанную на источнике записей, имеющем поле внешнего ключа.

  2. Убедитесь, что на панели элементов нажата кнопку Мастера [image] .

    Примечание. Мастера недоступны для обособленных страниц доступа к данным или для страниц, указывающих на другую базу данных. В обоих случаях список или раскрывающийся список придется создавать без помощи мастера.

  3. Нажмите кнопку Список Список , Поле со списком или Раскрывающийся список, а затем выберите в форме, отчете или на странице доступа к данным место, в которое следует поместить элемент управления.

  4. Следуйте инструкциям, выводимым в диалоговых окнах мастера. Когда мастер попросит указать способ заполнения списка значениями, выберите переключатель, определяющий использование значений из таблицы или запроса.

  5. В форме или отчете, когда мастер спросит, нужно ли сохранять значение в поле, выберите переключатель «Сохранить в поле» и выберите поле из списка.

  6. В последнем диалоговом окне мастера нажмите кнопку Готово.

  7. На странице доступа к данным нажмите кнопку Свойства [image] на панели инструментов, чтобы вывести окно свойств элемента управления. В ячейке свойства Данные (ControlSource) выберите поле, к которому нужно присоединить список или раскрывающийся список.

Примечания

  • Для получения дополнительных сведений о свойствах, определяющих работу списков и полей со списком в форме, нажмите кнопку [image] .

  • Для получения дополнительных сведений о свойствах, определяющих работу списков и раскрывающихся списков на странице доступа к данным, нажмите кнопку [image] .


 Создание присоединенного списка или поля со списком, выводящего данные, в форме в базе данных Access

Создание присоединенного списка или поля со списком, выводящего данные, в форме в базе данных Access

Можно создать список или поле со списком, получающее данные из поля подстановок в таблице в базе данных Microsoft Access (.mdb). В проектах Microsoft Access (.adp) нет подстановочных полей, но можно создать присоединенные список, поле со списком или раскрывающийся список, которые выводят данные без использования поля подстановок.

  1. Создайте подстановочное поле в режиме конструктора таблицы.

    Инструкции

    Примечание. Список подстановок или поле со списком подстановок можно создать без использования подстановочного поля, но если в таблице создано поле подстановок, то список или поле со списком достаточно будет создать только один раз. Затем один и тот же список подстановок можно будет использовать в любой другой форме. Если список нужно использовать только в одной форме, то для его создания можно воспользоваться мастером списков или мастером полей со списком в режиме конструктора формы.

  2. Выполните одно из следующих действий.
    • Создайте новую форму, основанную на источнике записей, который содержит поле подстановок, созданное на шаге 1. Microsoft Access автоматически создаст список подстановок или поле со списком подстановок.

    • Откройте существующую форму, основанную на источнике записей, который содержит подстановочное поле, созданное на шаге 1. В режиме конструктора формы нажмите кнопку Список полей [image] на панели инструментов, чтобы вывести список полей, а затем перетащите поле подстановок из списка полей в форму. Microsoft Access автоматически создаст список подстановок или поле со списком подстановок.
  3. Переключитесь в режим формы, чтобы проверить работу списка или поля со списком.

Примечания

  • Для получения дополнительных сведений о свойствах, определяющих работу списка или поля со списком, нажмите кнопку [image] .

  • При создании списка или поля со списком, основанного на таблице или запросе, с помощью мастера, Microsoft Access создает инструкцию SQL на основании выбранных полей, и заносит эту инструкцию в ячейку свойства Источник строк (RowSource) элемента управления. Если список или поле со списком отсортировано не в том порядке, в которым нужно, можно модифицировать инструкцию SQL, нажав кнопку построителя [image] справа от ячейки свойства Источник строк (RowSource). Для получения дополнительных сведений об указании порядка сортировки в построителе инструкций SQL нажмите кнопку [image] .

  • Для получения дополнительных сведений об устранении проблем со списками и полями со списком нажмите кнопку [image] .


 Добавление в форму или отчет присоединенной рамки объекта

Добавление в форму или отчет присоединенной рамки объекта

  1. Создайте поле в таблице и присвойте ему тип поле объекта OLE в базе данных Microsoft Access (.mdb) или image в проекте Microsoft Access (.adp).

    Инструкции

  2. Создайте форму или отчет (или откройте существующую форму или отчет), базовый источник записей которой включает поле объекта OLE или поле типа «image».

  3. В режиме конструктора формы или режиме конструктора отчета нажмите кнопку Список полей [image] на панели инструментов, чтобы вывести список полей.

  4. Перетащите поле объекта OLE или столбец типа «image» из списка полей в форму или отчет.

    Microsoft Access создаст присоединенную рамку объекта, связанную с полем объекта OLE или столбцом типа «image».

Примечание. Если присоединенная рамка объекта уже создана, то для присоединения ее к полю базового источника записей следует указать имя этого поля в свойстве Данные (ControlSource) присоединенной рамки объекта.


 Создание присоединенной бегущей строки, отображающей данные на странице доступа к данным

Создание присоединенной бегущей строки, отображающей данные на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Бегущая строка Бегущая строка на панели элементов.

  3. Для вывода на экран списка полей нажмите кнопку Список полей [image] на панели инструментов.

  4. Перетащите нужное поле из списка полей на страницу доступа к данным. Поместите верхний левый угол значка в позицию, в которой должен располагаться верхний левый угол элемента управления «Бегущая строка».


 Создание присоединенного текстового поля

Создание присоединенного текстового поля

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Список полей [image] на панели инструментов. Появится список полей. Если в форме или отчете список полей недоступен, необходимо присоединить форму или отчет к источнику записей. Если список полей на странице доступа к данным пуст, нужно подключить страницу к базе данных.

  3. Выполните одно из следующих действий.
    • Выберите одно или несколько полей в списке полей формы или отчета.
    Выделение | Действие
    Одно поле | Выберите поле.
    Группа соседних полей | Выберите первое поле группы, нажмите клавишу SHIFT и, удерживая ее, выберите последнее поле группы.
    Произвольная группа полей | Нажмите клавишу CTRL и, удерживая ее, выберите нужные поля.
    Все поля | Дважды щелкните заголовок списка полей.

    • Выделите поле, таблицу или запрос в списке полей на странице доступа к данным.
    Выделение | Действие
    Одно поле | Выберите поле.
    Таблица или запрос | Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата, и щелкните таблицу или запрос.
  4. Выполните одно из следующих действий.
    • Перетащите поле (поля) из списка полей в форму или отчет.

    • Перетащите поле, таблицу или запрос из списка полей на страницу доступа к данным. В диалоговом окне Мастер макета выберите переключатель Отдельные элементы.

    Примечание. Поле или поля нужно именно перетаскивать из списка полей. Если выбрать поле или поля в списке полей, а затем щелкнуть форму, отчет или страницу доступа к данным, Microsoft Access не создаст элемент управления.

    Для каждого выбранного в списке полей поля Access создает текстовое поле в форме, отчете или на странице доступа к данным. Каждое текстовое поле присоединено к одному полю базового источника записей. Каждое текстовое поле по умолчанию имеет присоединенную подпись.

  5. Измените размер поля в соответствии с размером отображаемых в нем данных.

  6. Измените при необходимости текст подписи.

  7. Переключитесь в режим формы, режим таблицы, режим страницы или режим предварительного просмотра, чтобы протестировать работу элемента управления.

Примечание. Для текстовых полей формы, содержащих большое число строк текста, можно добавить вертикальную полосу прокрутки.

Инструкции


 Создание флажка, выключателя или переключателя, присоединенных к данным

Создание флажка, выключателя или переключателя, присоединенных к данным

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите на панели элементов соответствующую кнопку. Если вы не уверены, какой элемент управления создает конкретная кнопка, установите на нее указатель и подождите появления всплывающей подсказки.

    Примечание. Выключатели на страницах доступа к данным использовать нельзя.

  3. Нажмите кнопку Список полей [image] на панели инструментов. Появится список полей. Если в форме или отчете список полей недоступен, необходимо присоединить форму или отчет к источнику записей. Если список полей на странице доступа к данным пуст, нужно подключить страницу к базе данных.

  4. Выберите подходящее поле (поле, имеющее Логический тип данных в базе данных Microsoft Access, или столбец, имеющий тип данных Bit в проекте Microsoft Access) в списке полей, и перетащите его в форму, отчет или на страницу доступа к данным.

    Примечание. Поля нужно именно перетаскивать из списка полей. Если выбрать поле в этом списке, а затем щелкнуть форму, отчет или страницу доступа к данным, то элемент управления не будет присоединен.

  5. Измените при необходимости текст подписи.

  6. Переключитесь в режим формы, режим таблицы, режим страницы или режим предварительного просмотра, чтобы протестировать работу элемента управления.

Совет. Если какое-то поле типа Логический или столбец типа Bit в различных формах и отчетах базы данных часто отоюбражается в виде флажка, можно установить свойство Тип элемента управления (DisplayControl) этого поля в значение «Флажок», чтобы при перетаскивании этого поля из списка полей автоматически создавался флажок (не требуя предварительного нажатия кнопки Флажок на панели элементов). Для получения дополнительных сведений нажмите кнопку [image] .


Create Column Example

The following example creates a new table with two new columns. One of the columns is set to AutoNumber. The procedure also makes the Autonumber column the primary key in the table.

Note Auto increment property not available in an ADP via the SQL provider shipped with Microsoft Access 2000. A reference to "Microsoft ADO ext. 2.1 for DDL and Security" must be set to use this example.

Sub NewTable()
    Dim tbl As New ADOX.Table
    Dim cat As New ADOX.Catalog
    Dim idx As New ADOX.Index

    ' Return reference to current database.
    Set cat.ActiveConnection = CurrentProject.Connection
       With tbl
        .Name = "Contacts"
        With .Columns
            .Append "ContactID", adInteger
            .Append "ContactName", , 50

        'If in an ADP omit the following with clause.
          With !ContactID
                Set .ParentCatalog = cat
                .Properties("AutoIncrement")=True
         End With
        End With
    End With

    ' Create primary key index.
    idx.Name = "PrimaryKey"

    ' Append index Column.
    idx.Columns.Append "ContactID", adInteger

     ' Set PrimaryKey property.
    idx.PrimaryKey = True
    ' Append index.
    tbl.Indexes.Append idx
    ' Append TableDef object.
    cat.Tables.Append tbl

    Set tbl = Nothing
    Set cat = Nothing
End Sub


Создание кнопки, служащей гиперссылкой на форму или отчет

Предполагаемые действия

Добавление ссылки на существующий файл или Web-страницу

Создание ссылки на таблицу, запрос, форму, отчет или страницу доступа к данным в текущей базе данных

Создание новой страницы доступа к данным и гиперссылки на эту страницу

Создание гиперссылки, которая открывает программу электронной почты и создает сообщение, посылаемое по заданному адресу электронной почты


 Создание кнопки без помощи мастера

Создание кнопки без помощи мастера

  1. Откройте форму в режиме конструктора формы или страницу доступа к данным в режиме конструктора страницы.

  2. Если кнопка Мастера [image] на панели элементов нажата, нажмите ее еще раз, чтобы отключить мастера.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. В форме или на странице доступа к данным выберите место, в которое следует поместить кнопку.

  5. Убедитесь, что кнопка выделена, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств кнопки.

  6. В ячейке свойства Нажатие кнопки (OnClick) кнопки в форме введите имя макроса или процедуры обработки события, которые должны запускаться при нажатии кнопки, либо нажмите кнопку построителя [image] , чтобы использовать построитель макросов или программ. На странице доступа к данным можно присоединить к кнопке программу, написанную на языке JScript или на языке VBScript (Microsoft Visual Basic Scripting Edition) с помощью редактора сценариев Microsoft Script Editor. См. сведения о создании процедуры обработки события для кнопки на странице доступа к данным.

  7. Если нужно вывести на кнопке текст, введите этот текст в ячейку свойства Подпись (Caption) (в форме) или свойства Value (на странице доступа к данным). В форме вместо текста на кнопке можно вывести рисунок.

    Инструкции

Совет. Чтобы создать в форме кнопку, запускающую макрос, перетащите макрос из окна базы данных в форму, открытую в режиме конструктора.

Для обзорного просмотра событий и процедур обработки событий нажмите кнопку [image] .


 Создание кнопки с помощью мастера

Создание кнопки с помощью мастера

  1. Откройте форму в режиме конструктора формы или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата.

  3. На панели элементов нажмите кнопку Кнопка Кнопка .

  4. В форме или на странице доступа к данным выберите место, в которое следует поместить кнопку.

  5. Следуйте инструкциям, выводимым в диалоговых окнах мастера. В последнем диалоговом окне нажмите кнопку Готово; кнопка появится в режиме конструктора.

Примечание. Мастера недоступны для обособленных страниц доступа к данным и для страниц, указывающих на другую базу данных. Мастер кнопок будет также недоступен, если страница доступа к данным не присоединена к таблице или запросу. Если мастер недоступен, придется создавать кнопку без помощи мастера.


 Создание пользовательского диалогового окна

Создание пользовательского диалогового окна

  1. Создайте форму. Форма может включать любую комбинацию элементов управления.

  2. В режиме конструктора формы дважды щелкните область выделения формы, чтобы открыть окно свойств формы.

  3. В ячейке свойства Всплывающее окно (PopUp) выберите значение Да.

  4. В ячейке свойства Модальное окно (Modal) выберите значение Да.

  5. В ячейке свойства Тип границы (BorderStyle) выберите значение Окно диалога. При использовании значения Окно диалога форма имеет широкую границу и может содержать только строку заголовка и оконное меню. Нельзя будет сворачивать и разворачивать форму и изменять ее размер.

  6. Создайте макрос или процедуру обработки события для открытия формы.

  7. Свяжите с формой или отчетом макрос или процедуру обработки события, указав имя макроса или процедуры обработки события в ячейке соответствующего свойства события. Например, введите имя макроса или процедуры обработки события в ячейку свойства Нажатие кнопки (OnClick) кнопки.

Примечания

  • Пользовательские диалоговые окна часто содержат одну или несколько кнопок для запуска макросов или процедур обработки событий, которые используют введенную в диалоговом окне информацию для выполнения других действий. Эти кнопки обычно имеют названия OK и Отмена (Cancel). Можно назначить кнопку, которая по умолчанию будет иметь фокус, и кнопку, которая будет играть роль кнопки Отмена (Cancel), с помощью свойств По умолчанию (Default) и Отмена (Cancel) этих кнопок. Для получения дополнительных сведений о свойстве По умолчанию (Default) нажмите кнопку [image] . Для получения дополнительных сведений о свойстве Отмена (Cancel) нажмите кнопку [image] .

  • Чтобы расположить пользовательское диалоговое окно в нужном месте экрана, откройте форму в режиме конструктора, разверните окно Microsoft Access, размесите нужным образом диалоговое окно и сохраните форму. Диалоговое окно будет открываться в выбранном месте (если свойство Выравнивание по центру (AutoCenter) установлено в значение Нет).

  • Для получения дополнительных сведений о других свойствах, которые можно настроить для пользовательского диалогового окна, нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании пользовательского диалогового окна, предназначенного для ввода условий отбора, нажмите кнопку [image] .

  • Для получения дополнительных сведений о создании запроса, получающего условия отбора с помощью пользовательского диалогового окна в базе данных Microsoft Access (.mdb), нажмите кнопку [image] . Для получения дополнительных сведений о создании сохраненной процедуры, получающей условия отбора с помощью пользовательского диалогового окна в проекте Microsoft Access (.adp), нажмите кнопку [image] .

  • Чтобы использовать форму и как обычную форму, и как диалоговое окно, можно воспользоваться режимом окна «Окно диалога» макрокоманды «ОткрытьФорму» (OpenForm) для временного открытия формы в виде диалогового окна, а не применять эту процедуру. Для получения дополнительных сведений нажмите кнопку [image] .


 Создание группы

Создание группы

  1. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  2. Нажмите кнопку Группы.

  3. Щелкните правой кнопкой мыши область под кнопкой Группы. В контекстном меню выберите команду Новая группа.

  4. Введите имя группы в поле Имя новой группы.


Создание пользовательских свойств базы данных для поиска базы данных Microsoft Access или проекта Microsoft Access

  1. При открытой базе данных выберите в меню Файл команду Свойства базы данных.

  2. Выберите вкладку Прочие и введите значения для нового свойства в поля Название, Тип и Значение.

  3. Нажмите кнопку Добавить.

  4. Закончив добавление свойств, нажмите кнопку OK.


 Вычисление итогового или другого значения для одной записи на странице доступа к данным, используемой для ввода данных

Вычисление итогового или другого значения для одной записи на странице доступа к данным, используемой для ввода данных

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Добавьте элементы управления, которые будут содержать данные, используемые для вычислений.

  3. Нажмите кнопку Электронная таблица Office Электронная таблица Office на панели элементов и щелкните то место на странице доступа к данным, в которое нужно поместить верхний левый угол электронной таблицы.

  4. В любой ячейке электронной таблицы введите формулу, использующую функцию Document HTML для обращения к полям, участвующим в вычислениях, и действие, которое нужно выполнить над значениями поля, выраженное с помощью комбинации операторов, идентификаторов и значений.

    Пример. Чтобы умножить значение поля «Количество» на значение поля «Цена», введите:

    =document.Количество.value*document.Цена.value

    Пример. Чтобы умножить значение поля «Цена» на значение, содержащееся в ячейке с индексом C1, введите:

    =$C$1*document.Цена.value

Примечания

  • Чтобы просмотреть имя электронной таблицы, выделите ее элемент управления и откройте окно его свойств. В заголовке окна свойств будет показано имя электронной таблицы.

  • См. другие примеры формул, ссылающихся на элементы управления на страницах доступа к данным.

  • Можно пользоваться функциями электронной таблицы, которые в Microsoft Access доступны только в этом элементе управления.

  • Скорее всего, удобнее будет выводить вычисляемое поле в таком же виде, который имеют остальные элементы управления на странице доступа к данным. Для этого можно изменить внешний вид элемента управления «Электронная таблица», чтобы он выглядел как текстовое поле.


 Создание страницы доступа к данным с помощью автостраницы

Создание страницы доступа к данным с помощью автостраницы

Мастер автостраниц создает страницу доступа к данным, содержащую все поля (кроме полей, в которых хранятся рисунки) и записи базовых таблицы, запроса или представления.

  1. В окне базы данных щелкните значок Страницы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новая страница доступа к данным выберите Автостраница: в столбец. На готовой странице доступа к данным каждое поле будет располагаться на отдельной строке; слева от каждого из полей будет находиться его метка.

  4. Выберите таблицу, запрос или представление, содержащие данные, на которых должна быть основана страница.

  5. Нажмите кнопку OK.

    Если получилась не та страница, которая была нужна, можно изменить страницу в режиме конструктора.

Примечания

  • Microsoft Access применяет к странице тему, определенную для использования по умолчанию. Если тема по умолчанию не определена, то Access будет использовать тему Прямая грань (Straight Edge).

  • При создании страницы при помощи автостраницы Microsoft Access автоматически сохраняет страницу в виде HTML-файла в текущей папке и добавляет ярлык для этой страницы в окно базы данных. Чтобы узнать путь к файлу страницы, наведите указатель на ярлык страницы в окне базы данных и подождите появления всплывающей подсказки.


 Преобразование существующей Web-страницы в страницу доступа к данным

Преобразование существующей Web-страницы в страницу доступа к данным

  1. В окне базы данных щелкните значок Страницы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новая страница доступа к данным выберите строку Существующая Web-страница.

  4. Нажмите кнопку OK.

  5. В диалоговом окне Поиск Web-страницы найдите Web-страницу или HTML-файл, которые нужно открыть.

  6. Нажмите кнопку Открыть.

Microsoft Access откроет страницу в режиме конструктора, в котором можно изменить страницу.

Примечания

  • При сохранении Web-страницы в Microsoft Access, Access создает в окне базы данных ярлык для HTML-файла.

  • При поиске Web-страницы в диалоговом окне Поиск Web-страницы можно пользоваться кнопкой Найти в Web. Сохраните копию найденной страницы с помощью команды Сохранить как меню Файл обозревателя Internet Explorer, а затем снова воспользуйтесь этой процедурой, чтобы открыть страницу в режиме конструктора.


 Создание страницы доступа к данным с помощью мастера

Создание страницы доступа к данным с помощью мастера

  1. В окне базы данных щелкните значок Страницы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новая страница доступа к данным выберите строку Мастер страниц.

  4. Выберите имя таблицы, запроса или представления, содержащих данные, которые будут служить базовыми для страницы доступа к данным.

    Примечание. Это не обязательно делать сейчас — источник записей для страницы можно задать в мастере.

  5. Нажмите кнопку OK.

  6. Следуйте инструкциям, содержащимся в диалоговых окнах мастера.

    Если получилась не та страница, которая была нужна, можно изменить страницу в режиме конструктора.

Примечание. При создании страницы с помощью мастера Microsoft Access автоматически сохраняет страницу в текущей папке в виде HTML-файла и добавляет ярлык для этой страницы в окно базы данных. Чтобы узнать путь к файлу страницы, наведите указатель на ярлык страницы в окне базы данных и подождите появления всплывающей подсказки.


Создание страницы доступа к данным без помощи мастера

Процедуры, приведенные в этом разделе, описывают все аспекты процесса создания страниц доступа к данным — с самого начала и до самого конца. Многие из этих процедур выполняются при создании каждой страницы; некоторые предназначены для создания специальных страниц — например, страниц, на которых используется группировка записей по категориям или вычисляются общие значения. При создании конкретной страницы необходимо использовать только те процедуры, которые для этого нужны. Ответы на другие вопросы, касающиеся создания страниц доступа к данным, можно найти в Мастере ответов.

Прочитайте обзор страниц доступа к данным.

См. сведения о группировке записей на странице доступа к данным.

См. сведения об использовании страниц доступа к данным для ввода данных.

  1. Создание страницы доступа к данным

    Создание новой страницы доступа к данным

  2. Вывод данных, текста и итоговых значений на странице доступа к данным

    Вывод данных, текста и итоговых значений в текстовых полях, надписях и других элементах управления

    Использование списка полей для вывода данных

    Вывод данных из таблицы или запроса

    Вывод названия страницы или другого текста

    Вычисление итогового значения для одной записи

    Вычисление итогового значения для группы записей

    Вычисление общего значения

    Дополнительная информация о надписях, текстовых полях и других элементах управления

  3. Сортировка и группировка данных на странице доступа к данным

    Установка порядка сортировки записей по умолчанию

    Изменение размеров заголовка, примечаний и других разделов

    Группировка записей на странице, используемой только для просмотра данных

  4. Форматирование, перемещение, изменение размера и выравнивание надписей, текстовых полей и других элементов управления

    Выделение текста в надписи, текстовом поле или другом элементе управления полужирным шрифтом, курсивом или подчеркиванием

    Перемещение текстового поля или другого элемента управления вместе с подписью

    Изменение размера надписи, текстового поля или другого элемента управления

    Выравнивание текстовых полей и других элементов управления

    Настройка кнопок перехода

  5. Просмотр страницы доступа к данным в режиме страницы или в обозревателе Microsoft Internet Explorer

    Открытие страницы в режиме страницы или в обозревателе Internet Explorer

    Переключение между режимами отображения открытой страницы

  6. Публикация страницы доступа к данным с целью предоставить доступ к ней другим пользователям

    Совместное использование базы данных, подключенной к странице доступа к данным

    Публикация страницы доступа к данным в папках Web или на Web-сервере


 Создание базы данных с помощью мастера

Создание базы данных с помощью мастера

  1. При запуске Microsoft Access открывается диалоговое окно, в котором предлагается создать новую базу данных или открыть существующую. Выберите в этом диалоговом окне переключатель Мастера, страницы и проекты баз данных, а затем нажмите кнопку ОК.

    Если база данных уже была открыта или если было закрыто диалоговое окно, выводимое при запуске Microsoft Access, нажмите кнопку Создать [image] на панели инструментов.

  2. Дважды щелкните значок подходящего шаблона базы данных во вкладке Базы данных.

  3. Укажите имя и каталог для создаваемой базы данных.

  4. Чтобы начать создание новой базы данных, нажмите кнопку Создать.


 Создание базы данных без помощи мастера

Создание базы данных без помощи мастера

  1. При запуске Microsoft Access открывается диалоговое окно, в котором предлагается создать новую базу данных или открыть существующую. Выберите в этом диалоговом окне переключатель Новая база данных и нажмите кнопку ОК.

    Если база данных уже была открыта или если было закрыто диалоговое окно, выводимое при запуске Microsoft Access, нажмите кнопку Создать [image] на панели инструментов и дважды щелкните значок «База данных» на вкладке Общие.

  2. Укажите имя и каталог базы данных и нажмите кнопку Создать.

После создания пустой базы данных необходимо создать объекты этой базы данных.


 Создание и вставка присоединенного объекта в форму

Создание и вставка присоединенного объекта в форму

  1. Создайте в форме присоединенную рамку объекта, если это еще не сделано.

    Инструкции

  2. Перейдите в режим формы или таблицы.

  3. Перейдите на запись, в которую нужно встроить объект, и щелкните поле объекта OLE в базе данных Microsoft Access (.mdb) или столбец типа «image» в проекте Microsoft Access (.adp).

  4. В меню Вставка выберите команду Объект.

  5. В диалоговом окне Вставка объекта выберите переключатель Создать новый и выберите в списке Тип объекта тип создаваемого объекта.

  6. Чтобы объект выводился в виде значка, установите флажок В виде значка. Представление объекта в виде значка удобно, когда объект содержит дополнительные сведения, которые не должны все время выводиться на экран; кроме того, это значительно экономит место на диске.

  7. Нажмите кнопку OK.

  8. Создайте объект в приложении, выбранном на шаге 5, и выполните одно из следующих действий.
    • Если объект редактируется по месту, выберите в форме любое место вне присоединенной рамки объекта. Если выбрать команду Выход в меню Файл, будет осуществлен выход из Microsoft Access.

    • Если созданный объект открыт в отдельном окне, выберите команду Выход (Exit) в меню Файл (File) приложения-сервера OLE. Если появится запрос на сохранение изменений, нажмите кнопку OK.
  9. Если текущим режимом является режим формы, Microsoft Access отобразит объект. Если же в данный момент используется режим таблицы, Microsoft Access покажет имя объекта, например, «Точечный рисунок».

  10. Для редактирования объекта дважды щелкните его.

Примечания

  • После вставки объекта можно изменять его размеры и пропорции.

    Инструкции

  • Можно также вставить присоединенный объект в таблицу или запрос в режиме таблицы. Выберите поле, в которое нужно вставить объект (это должно быть либо поле объекта OLE, либо столбец типа «image») и выполните пункты с 4 по 9. Для просмотра объекта нужно создать присоединенную рамку объекта в форме или отчете.


 Создание и вставка свободного объекта в форму или отчет

Создание и вставка свободного объекта в форму или отчет

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Нажмите кнопку Свободная рамка объекта [image] на панели элементов.

  3. Выберите в форме или отчете место, в которое нужно поместить вставляемый объект.

  4. В диалоговом окне Вставка объекта выберите переключатель Создать новый и выберите в поле Тип Объекта тип объекта, который нужно создать.

  5. Чтобы объект выводился в виде значка, установите флажок В виде значка. Представление объекта в виде значка удобно, когда объект содержит дополнительные сведения, которые не должны все время выводиться на экран; кроме того, это значительно экономит место на диске.

  6. Нажмите кнопку OK. Microsoft Access создаст свободную рамку объекта.

  7. Создайте объект в приложении, выбранном на шаге 4, и выполните одно из следующих действий.
    • Если объект редактируется по месту, выберите в форме любое место вне присоединенной рамки объекта. Если выбрать команду Выход в меню Файл, будет осуществлен выход из Microsoft Access.

    • Если созданный объект открыт в отдельном окне, выберите команду Выход (Exit) в меню Файл (File) приложения-сервера OLE. Если появится запрос на сохранение изменений, нажмите кнопку OK.

Для редактирования объекта дважды щелкните его.

Примечания

  • После вставки объекта можно изменять его размеры и пропорции.

    Инструкции

  • В большинстве случаев свободный объект редактируется в режиме конструктора формы или отчета. Если требуется возможность редактирования объекта также и в режиме формы, установите свойство Доступ (Enabled) свободной рамки объекта в значение Да, а свойство Блокировка —в значение Нет.


 Создание поля, выполняющего вычисления или манипулирующего значениями поля в запросе

Создание поля, выполняющего вычисления или манипулирующего значениями поля в запросе

Можно создать поле, в котором будут отображаться результаты вычислений, определенных в выражении.

  1. Откройте запрос в режиме конструктора.

  2. Выполните одно из следующих действий.
    • Введите выражение в пустую ячейку в строке Поле. Если выражение содержит имя поля, то это имя необходимо заключить в скобки.

    Имя поля в выражении, заключенное в скобки

    • Если при создании выражения потребуется помощь, воспользуйтесь построителем выражений. Чтобы вызвать его, щелкните правой кнопкой ячейку Поле, в которую нужно добавить вычисляемое поле, и выберите команду Построить. Для получения дополнительных сведений об использовании построителя выражений нажмите кнопку [image] .

      После нажатия клавиши ENTER или перехода в другую ячейку Microsoft Access задаст имя поля по умолчанию в формате «ВыражениеN», где N представляет собой целое число, увеличивающееся для каждого нового поля в запросе, содержащего выражение. Имя находится перед выражением; после имени добавляется двоеточие. В режиме таблицы это имя служит заголовком столбца.

    Замените «Выражение1», чтобы изменить стандартное имя поля выражения

    Подстроку «ВыражениеN» можно выделить и ввести вместо нее более содержательное имя, например, «НоваяЦена».

  3. Если выражение содержит одну или несколько статистических функций (Sum, Avg, Count, Min, Max, StDev или Var) и если бланк запроса включает другое поле или поля, которые необходимо использовать для группировки, нажмите кнопку Групповые операции [image] на панели инструментов (если строка Групповая операция еще не отображена на экране). Оставьте в ячейке Групповая операция группируемого поля значение Группировка, а в вычисляемом поле измените значение Группировка на Выражение.

    Для группировки записей установите значения «Группировка» и «Выражение» в строке «Групповая операция»

  4. Для завершения запроса можно выполнить одно из следующих действий.
    • Введите условия отбора. Для получения дополнительных сведений нажмите кнопку [image] .

    • Выполните сортировку результатов. Для получения дополнительных сведений нажмите кнопку [image] .

    • Установите такие свойства полей, как Формат поля (Format) (так как поля не наследуют свойства базовой таблицы). Для получения дополнительных сведений нажмите кнопку [image] .

Примечания

  • Запрос «Сведения о заказах» в учебной базе данных «Борей» содержит пример использования вычисляемого поля (поле «ОтпускнаяЦена»). Запрос «Промежуточная сумма заказа» содержит пример использования вычисляемого поля (поле «ПромежуточнаяСумма»), в котором вычисляются значения для групп записей. Чтобы просмотреть эти запросы, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office и откройте запрос «Сведения о заказах» или «Промежуточная сумма заказа» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .

  • Чтобы ввести или просмотреть большое выражение не прибегая к прокрутке, нажмите клавиши SHIFT+F2 для вывода на экран окна Область ввода.

  • Для просмотра примеров выражений нажмите кнопку [image] .


 Создание поля с подстановкой значений из другой таблицы в режиме конструктора

Создание поля с подстановкой значений из другой таблицы в режиме конструктора

  1. Откройте таблицу, в которую нужно добавить поле с подстановкой значений, в режиме конструктора.

  2. Выполните одно из следующих действий.
    • Чтобы добавить в таблицу новое поле, выделите строку, над которой нужно добавить поле, и нажмите кнопку Добавить строки [image] на панели инструментов. Чтобы добавить новое поле в конец таблицы, щелкните первую пустую строку. Введите в столбце Имя поля имя, следуя соглашениям об именах объектов Microsoft Access.

    • Если поле, которое будет использоваться как внешний ключ для поля подстановок, уже существует, выберите строку этого поля. Например, если имеется таблица «Товары», содержащая поле «КодПоставщика», которое требуется превратить в поле подстановок, выбирающее названия поставщиков из таблицы «Поставщики», то необходимо выбрать строку поля «КодПоставщика».
  3. В столбце Тип данных нажмите кнопку со стрелкой и выберите Мастер подстановок.

  4. Выберите переключатель для создания столбца подстановки, использующего значения из таблицы или запроса.

  5. Нажмите кнопку Далее и следуйте инструкциям остальных диалоговых окон мастера подстановок.

    После нажатия кнопки Готово Microsoft Access создаст поле подстановок и установит некоторые свойства этого поля на основании значений, выбранных в мастере. Если после того, как поле подстановок будет создано, добавить его в форму, то Microsoft Access скопирует в форму его определение. Поля со списком и списки создаются в форме автоматически. Однако, если после добавления в форму поля подстановок или списка значений их описание будет изменено, эти изменения не будут отражены в форме. В таком случае нужно удалить поле из формы, а затем добавить его снова. Для получения дополнительных сведений о свойствах, которые устанавливает мастер подстановок, нажмите кнопку [image] .

Примечание. Также допускается добавление в таблицу поля подстановок, которое выводит значения из других полей этой же таблицы. Например, в таблице «Сотрудники» учебной базы данных «Борей» поле «Подчиняется» является полем подстановки, в котором выводятся значения полей «Имя» и «Фамилия» этой же таблицы, определяемые соответствующим кодом сотрудника из поля «КодСотрудника».


 Создание поля с подстановкой значений из другой таблицы в режиме таблицы

Создание поля с подстановкой значений из другой таблицы в режиме таблицы

  1. Откройте таблицу, в которую нужно добавить поле с подстановкой значений, в режиме таблицы.

  2. Чтобы вставить поле подстановок в таблицу, выберите столбец, слева от которого нужно добавить поле, и выберите в меню Вставка команду Столбец подстановок.

  3. В первом диалоговом окне мастера подстановок выберите переключатель для создания столбца подстановок, использующего значения из таблицы или запроса.

  4. Нажмите кнопку Далее и следуйте инструкциям остальных диалоговых окон мастера подстановок.

    После завершения работы мастера подстановок в таблицу будет добавлено подстановочное поле. По умолчанию новому подстановочному полю присваивается имя «Поле#», где # является каким-либо числом. При желании имя этого поля можно изменить. Для получения дополнительных сведений об изменении имен полей в режиме таблицы нажмите кнопку [image] .

Примечания

  • При создании списка подстановок при помощи мастера подстановок, Microsoft Access устанавливает некоторые свойства поля на основании значений, выбранных в мастере. При добавлении созданного поля подстановок в форму, Microsoft Access копирует в форму его определение. Поле со списком или список создаются в форме автоматически. Однако, если после добавления поля в форму его определение в таблице изменилось, то эти изменения не будут отражены в форме. В таком случае нужно удалить поле из формы, а затем добавить его снова. Для получения дополнительных сведений о свойствах, которые устанавливает мастер подстановок, нажмите кнопку [image] .

  • Также допускается добавление в таблицу поля подстановок, которое выводит значения из других полей этой же таблицы. Например, в таблице «Сотрудники» учебной базы данных «Борей» поле «Подчиняется» является полем подстановки, в котором выводятся значения полей «Имя» и «Фамилия» этой же таблицы, определяемые соответствующим кодом сотрудника из поля «КодСотрудника».


 Создание поля для хранения путей к рисункам

Создание поля для хранения путей к рисункам

  1. Создайте в таблице поле, имеющее тип данных «Текстовый» в базе данных Microsoft Access или «varchar» в проекте Microsoft Access. См. сведения о добавлении поля в таблицу в режиме конструктора в базе данных Microsoft Access. См. сведения о добавлении столбца в таблицу в проекте Access.

  2. В режиме таблицы введите путь к рисунку (файлу с расширением .bmp, .jpeg, .gif, .dib, .wmf или .emf) в созданное поле.


 Создание фильтра для поиска записей на странице доступа к данным, не использующей группировку

Создание фильтра для поиска записей на странице доступа к данным, не использующей группировку

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Если поля, которые нужно отображать, еще не добавлены в раздел, добавьте поля в качестве присоединенных текстовых полей. Обязательно добавьте поле, которое должно использоваться для отбора записей.

    Примечание. Если на странице нет раздела, добавьте несвязанный раздел.

  3. Нажмите кнопку Раскрывающийся список на панели элементов.

  4. В списке полей с помощью правой кнопки мыши перетащите поле, значение которого должны использоваться при отборе записей.

  5. В контекстном меню выберите команду Фильтр группы.

  6. Настройте кнопки перехода по записям. Например, на странице, получающей по одной записи за один раз, будут доступны не все кнопки. Можно разрешить лишь кнопки Новая запись, Удалить запись, Сохранить запись, Отменить запись и Справка панели перехода.

    Протестируйте фильтр в режиме страницы или в обозревателе Microsoft Internet Explorer. При выборе значения из раскрывающегося списка на странице будут выведены записи, содержащие это значение, и будет доступна панель перехода по записям.


 Создание формы с помощью автоформы

Создание формы с помощью автоформы

С помощью автоформ можно создавать формы, в которых выводятся все поля и записи базовой таблицы или запроса. Если выбранный источник записей имеет связанные таблицы или запросы, то в форме также будут присутствовать все поля и записи этих источников записей.

  1. В окне базы данных щелкните значок Формы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новая форма выберите один из следующих мастеров.
    • Автоформа: в столбец — каждое поле располагается на отдельной строке; подпись находится слева от поля.

    • Автоформа: ленточная — поля, образующие одну запись, расположены в одной строке; их подписи выводятся один раз в верхней части формы.

    • Автоформа: табличная — Поля записей расположены в формате таблицы, где каждой записи соответствует одна строка, а каждому полю — один столбец. Имена полей служат заголовками столбцов.
  4. Выберите таблицу или запрос, содержащие данные, на которых нужно основать форму.

  5. Нажмите кнопку OK.

Microsoft Access применяет к форме автоформат, который использовался последним. Если до этого формы с помощью мастера не создавались и не использовалась команда Автоформат в меню Формат, будет применяться стандартный автоформат.

Совет. Можно также создать автоформу в столбец, базирующуюся на открытом источнике записей или на источнике записей, выделенном в окне базы данных. Выберите команду Автоформа в меню Вставка или щелкните стрелку рядом с кнопкой Новый объект на панели инструментов и выберите команду Автоформа. Если выбранный источник записей имеет связанные таблицы, автоформа добавит элемент управления «Подчиненная форма», выводящий связанные таблицы в виде таблиц и подтаблиц.


 Создание формы с подчиненной формой, содержащей другую подчиненную форму

Создание формы с подчиненной формой, содержащей другую подчиненную форму

Перед тем как приступать к этой процедуре, проверьте правильность установления связей между таблицами.

Приведенная здесь процедура служит для создания формы и вложенных друг в друга подчиненных форм, которые связаны отношением «один-ко-многим». Главная форма связана отношением «один-ко-многим» с первой подчиненной формой, а первая подчиненная форма связана отношением «один-ко-многим» со второй подчиненной формой.

  1. Создайте форму, содержащую подчиненную форму.

    Инструкции

    Примечание. В диалоговом окне выбора внешнего вида подчиненной формы в мастере необходимо выбрать переключатель ленточный (эквивалент режима формы). Если выбрать переключатель табличный, то в подчиненную форму нельзя будет добавить вложенную подчиненную форму.

  2. В режиме конструктора главной формы убедитесь, что элемент управления «Подчиненная форма» выделен. Снова щелкните этот элемент управления, чтобы выбрать форму, раздел или элемент управления, подобно тому, как это можно было бы сделать при открытии подчиненной формы в режиме конструктора из окна базы данных.

  3. Выполните одно из следующих действий.
    • С помощью мастера подчиненных форм создайте вторую подчиненную форму.

      Инструкции

    • Перетащите форму, таблицу или запрос из окна базы данных в подчиненную форму.

      Microsoft Access создаст подчиненную форму в первой подчиненной форме и форму для нее

  4. Переключитесь в режим формы для просмотра формы и подчиненных форм.

Примечания

  • Для получения дополнительных сведений об изменении макета подчиненной формы нажмите кнопку [image] .

  • Для получения справки по устранению неполадок с подчиненными формами нажмите кнопку [image] .


 Создание пустой формы и выбор источника записей

Создание пустой формы и выбор источника записей

  1. В окне базы данных щелкните значок Формы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новая форма выберите строку Конструктор.

  4. Выберите имя таблицы или другого источника записей, содержащего данные, на которых нужно основать форму. Если форма не будет содержать данные (например, если нужно создать кнопочную форму для открытия других форм или отчетов, или если нужно создать пользовательское диалоговое окно), не выбирайте ничего из этого списка.

    Примечание. Чтобы создаваемая форма использовала значения из нескольких таблиц, она должна быть основана на запросе.

  5. Нажмите кнопку OK.

Форма будет открыта в режиме конструктора. Для получения дополнительных сведений о работе в режиме конструктора формы нажмите кнопку [image] .


 Одновременное создание формы и подчиненной формы

Одновременное создание формы и подчиненной формы

Перед тем, как приступать к этой процедуре, проверьте правильность установления связей между таблицами.

  1. В окне базы данных щелкните значок Формы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В списке диалогового окна Новая форма дважды щелкните строку Мастер форм.

  4. В первом диалоговом окне мастера выберите в списке таблицу или запрос. Например, чтобы создать форму «Типы», которая выводит в подчиненной форме список товаров, относящихся к конкретной категории, выберите таблицу «Типы» (сторона «один» отношения «один-ко-многим»).

  5. Дважды щелкните поля таблицы или запроса, которые нужно включить в форму.

  6. В том же диалоговом окне мастера выберите из списка другую таблицу или запрос. В рассматриваемом примере выберите таблицу «Товары» (сторона «многие» отношения «один-ко-многим»).

    Примечание. Порядок выбора таблиц или запросов не имеет значения.

  7. Дважды щелкните поля таблицы или запроса, которые нужно включить в форму.

  8. Если до запуска мастера связи были установлены правильно, то после нажатия кнопки Далее предлагается выбрать таблицу или запрос, которые будут использоваться для представления данных. Используя тот же пример формы «Типы», выберите строку по Типы.

  9. В том же окне диалога выберите переключатель Подчиненные формы.

  10. Следуйте инструкциям остальных диалоговых окон мастера. После нажатия кнопку Готово, Microsoft Access создаст две формы: одну для формы и элемента управления «Подчиненная форма», а другую для подчиненной формы.

Примечания

  • Для получения дополнительных сведений об изменении макета подчиненной формы, созданной с помощью мастера, нажмите кнопку [image] .

  • Для получения справки по устранению неполадок с подчиненными формами нажмите кнопку [image] .


 Создание формы с двумя подчиненными формами

Создание формы с двумя подчиненными формами

Перед тем, как приступать к этой процедуре, проверьте правильность установления связей между таблицами.

Приведенную здесь последовательность действий можно использовать для создания формы и двух подчиненных форм, связанных отношением «один-ко-многим-ко-многим». Главная форма связана отношением «один-ко-многим» с первой подчиненной формой, а та, в свою очередь, связана отношением «один-ко-многим» со второй подчиненной формой.

  1. В окне базы данных щелкните значок Формы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В списке диалогового окна Новая форма дважды щелкните строку Мастер форм.

  4. В первом диалоговом окне мастера выберите таблицу или запрос для главной формы. Например, предположим, что требуется создать форму «Клиенты», имеющую две подчиненные формы — подчиненную форму «Заказы» и подчиненную форму «Заказано». Выберите таблицу «Клиенты» (сторона «один» первого отношения «один-ко-многим»).

  5. Дважды щелкните поля таблицы или запроса, которые нужно включить в форму.

  6. В том же окне диалога мастера выберите таблицу или запрос для первой подчиненной формы. В рассматриваемом примере, выберите таблицу «Заказы» (сторона «многие» первого отношения «один-ко-многим»), а затем выберите двойным щелчком те поля этой таблицы, которые нужно использовать.

    Примечание. Порядок выбора таблицы или запроса не имеет значения.

  7. В том же окне диалога мастера выберите таблицу или запрос для второй подчиненной формы. В рассматриваемом примере, выберите таблицу «Заказано» (сторона «многие» второго отношения «один-ко-многим»), а затем выберите двойным щелчком те поля этой таблицы, которые нужно использовать.

  8. Если до запуска мастера связи установлены правильно, то после нажатия кнопки Далее мастер предложит выбрать таблицу или запрос, используемые для представления данных. В рассматриваемом примере, для создания формы «Клиенты» выберите в списке строку по Клиенты.

  9. В том же диалоговом окне выберите переключатель Подчиненные формы.

  10. Следуйте инструкциям остальных диалоговых окон мастера. После нажатия кнопки Готово Microsoft Access создаст главную форму с двумя элементами управления «Подчиненная форма». Также будут созданы две другие формы — по одной на каждую подчиненную форму.

Примечания

  • При создании формы с двумя подчиненными формами с помощью мастера синхронизация подчиненных форм осуществляется путем определения процедуры обработки события для свойства Текущая запись (OnCurrent) первой подчиненной формы. Если требуется синхронизовать несколько подчиненных форм в одной и той же форме, можно скопировать и соответствующим образом изменить эту процедуру обработки события. Для просмотра этой процедуры обработки события откройте первую подчиненную форму в режиме конструктора, дважды щелкните область выделения формы и нажмите кнопку построителя [image] рядом с ячейкой свойства Текущая запись.

  • Форма «Заказы клиентов» учебной базы данных «Борей» содержит две подчиненные формы. Чтобы просмотреть эту форму, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office и откройте форму «Заказы клиентов» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .

  • Для получения дополнительных сведений об изменении макета подчиненной формы, созданной с помощью мастера, нажмите кнопку [image] .

  • Для получения справки по устранению неполадок с подчиненными формами нажмите кнопку [image] .


 Создание формы с помощью мастера

Создание формы с помощью мастера

  1. В окне базы данных щелкните значок Формы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новая форма выберите нужного мастера. Описание мастера появляется в левой части диалогового окна.

  4. Выберите имя таблицы или другого источника записей, содержащего данные, на которых должна быть основана форма.

    Примечание. Если в списке выбран Мастер форм, то этот шаг не обязателен — можно указать источник записей для формы в мастере.

  5. Нажмите кнопку OK.

  6. Если на шаге 3 были выбраны Мастер форм, Диаграмма или Сводная таблица, то при создании формы следуйте инструкциям, выводимым в диалоговых окнах соответствующего мастера. При выборе элементов Автоформа: в столбец, Автоформа: ленточная или Автоформа: табличная форма будет создана автоматически.

    Созданную форму можно изменить в режиме конструктора.

    Инструкции

Примечание. Если была выбрана одна из Автоформ, Microsoft Access применит для новой формы автоформат, который использовался последним (либо в Мастере форм, либо с помощью команды Автоформат меню Формат в режиме конструктора).


 Создание фильтра для поиска записей на странице доступа к данным, использующей группировку

Создание фильтра для поиска записей на странице доступа к данным, использующей группировку

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Если поля, которые нужно отображать, еще не добавлены в раздел, добавьте поля на страницу в виде присоединенных элементов HTML или добавьте поля в виде присоединенных текстовых полей. Обязательно добавьте поле, которое должно использоваться для отбора записей.

    Примечания

    • Страница будет загружаться быстрее в режиме страницы и в обозревателе Microsoft Internet Explorer, если использовать присоединенные элементы HTML.

    • Если на странице нет ни одного раздела, добавьте несвязанный раздел.
  3. Убедитесь, что элемент управления, присоединенный к полю, значения которого нужно использовать для отбора записей, выделен.

  4. Выполните одно из следующих действий.
    • Чтобы выполнить группировку только по этому полю, нажмите кнопку Повысить уровень [image] на панели инструментов.

    • Для группировки по всей таблице или запросу, где содержится это поле, нажмите кнопку Группировать по таблицам [image] на панели инструментов.

    Microsoft Access добавляет заголовок группы, содержащий элемент развертывания, и раздел кнопок перехода, содержащий кнопки перехода по записям. Если выполняется группировка по одному полю, Access перемещает элемент управления, служащий для группировки, в заголовок группы. Если группировка выполняется по таблице или запросу, Access перемещает все элементы управления, включая элементы, присоединенные к полям этой таблицы или запроса, и элементы, присоединенные к полям подстановки, в заголовок группы.

  5. Нажмите кнопку Раскрывающийся список на панели элементов.

  6. Перетащите с помощью правой кнопки мыши те поля из списка полей, значения которых нужно использовать для отбора записей, в заголовок группы, созданный на шаге 4.

  7. В контекстном меню выберите команду Фильтр группы.

Следующие шаги не обязательны. Они служат для удаления элементов, добавленных по умолчанию на страницу, использующую группировку, но не требующихся при использовании фильтра группы.

  8. Выделите элемент развертывания в заголовке, содержащем элемент фильтра, и нажмите клавишу DELETE.

  9. Выделите раздел кнопок перехода для уровня группировки, содержащего элемент фильтра, и нажмите клавишу DELETE. Access удалит раздел и содержащиеся в нем кнопки перехода.

  10. Настройте кнопки перехода для нижнего уровня группировки. Например, скройте кнопки для добавления и удаления записей.

Примечания

  • Если заголовок группы содержит также элемент управления, вычисляющий сумму или другое общее значение, то при выборе группы в фильтре группы вычисляемый элемент управления отобразит правильную сумму или другое общее значение для этой группы записей.

  • Допускается наличие нескольких уровней группировки, в каждом из которых задан один фильтр группы. Например, можно создать в одном уровне группировки фильтр группы для поля «Страна», в следующем нижнем уровне группировки — для поля «Город», и т. д.


 Создание маски ввода для элемента управления

Создание маски ввода для элемента управления

  1. Откройте форму в режиме конструктора.

  2. Выделите поле или поле со списком и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств элемента управления.

  3. Выполните одно из следующих действий.
    • Введите определение маски ввода. Для получения дополнительных сведений об определении маски ввода нажмите кнопку [image] .

    • В базе данных Microsoft Access (.mdb) нажмите кнопку построителя [image] рядом с ячейкой свойства Маска ввода, чтобы запустить мастер масок ввода, и следуйте инструкциям диалоговых окон мастера.


 Одновременное создание новой страницы доступа к данным и гиперссылки на нее

Одновременное создание новой страницы доступа к данным и гиперссылки на нее

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. В меню Вставка выберите команду Гиперссылка.

  3. В диалоговом окне Добавить гиперссылку щелкните значок Создать страницу в области Связать с.

  4. В поле Текст введите текст, который должен отображаться в поле или текстовом поле. Если оставить это поле пустым, то Microsoft Access будет в качестве текста выводить адрес гиперссылки и/или дополнительный адрес.

  5. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать адрес гиперссылки и/или дополнительный адрес.

  6. В поле Имя нового документа введите имя новой страницы.

    Совет. Можно создавать документы различных типов, например, файл Microsoft Word или электронную таблицу Microsoft Excel, указывая трехсимвольное расширение создаваемого файла. Однако нельзя таким образом создать базу данных Microsoft Access (.mdb) или проект Microsoft Access (.adp).

  7. Microsoft Access создает новую страницу в текущей папке. Чтобы указать другую папку, нажмите кнопку Изменить.

  8. Выберите нужный переключатель в области Когда вносить правку в новый документ. Новую страницу можно редактировать либо сейчас, либо позже.

  9. Нажмите кнопку OK.

    Microsoft Access добавляет на страницу доступа к данным гиперссылку в элементе управления «Гиперссылка». В форме или отчете гиперссылка добавляется в надписи. Чтобы проверить действие ссылки на странице доступа к данным, переключитесь в режим страницы и щелкните гиперссылку. Чтобы проверить ссылку в форме или отчете, щелкните надпись правой кнопкой и выберите в контекстном меню команду Гиперссылка и подкоманду Открыть.


 Создание гиперссылки на объект текущей базы данных

Создание гиперссылки на объект текущей базы данных

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Нажмите кнопку Добавить гиперссылку [image] на панели инструментов.

  3. В диалоговом окне Добавить гиперссылку щелкните значок Объект в этой базе данных в области Связать с.

  4. В поле Текст введите текст, который должен отображаться в поле или текстовом поле. Если оставить это поле пустым, то Microsoft Access будет в качестве текста выводить тип и имя объекта.

  5. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя на гиперссылку. Если оставить поле Текст подсказки пустым, то Microsoft Access в качестве подсказки будет показывать тип и имя объекта.

  6. Выберите из списка объект базы данных, на который должна указывать ссылка.

  7. Нажмите кнопку OK.

    Microsoft Access добавит гиперссылку в надпись. Чтобы проверить гиперссылку, щелкните надпись правой кнопкой мыши и выберите в контекстном меню команду Гиперссылка и подкоманду Открыть.

Примечание. Чтобы создать ссылку на объект другой базы данных, создайте ссылку на файл базы данных и нажмите кнопку Закладка для выбора объекта.


 Добавление гиперссылки для создания сообщений электронной почты

Добавление гиперссылки для создания сообщений электронной почты

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. В меню Вставка выберите команду Гиперссылка.

  3. В диалоговом окне Добавить гиперссылку щелкните значок Электронная почта в области Связать с.

  4. В поле Текст введите текст, который должен отображаться в поле или текстовом поле. Если оставить это поле пустым, то Microsoft Access будет в качестве текста выводить адрес электронной почты.

  5. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать адрес электронной почты.

  6. В поле Электронная почта введите адрес электронной почты. Можно также выбрать адрес из списка Недавно использовавшиеся адреса электронной почты.

  7. В поле Тема введите текст, который должен появляться в строке «Тема» (Subject) сообщения.

    Примечание. Некоторые Web-обозреватели и программы электронной почты могут не распознавать строку «Тема».

  8. Нажмите кнопку OK.

    Microsoft Access добавляет на страницу доступа к данным гиперссылку в элементе управления «Гиперссылка». В форме или отчете гиперссылка добавляется в надписи. Чтобы проверить действие ссылки на странице доступа к данным, переключитесь в режим страницы и щелкните гиперссылку. Чтобы проверить ссылку в форме или отчете, щелкните надпись правой кнопкой и выберите в контекстном меню команду Гиперссылка и подкоманду Открыть. Microsoft Access откроет почтовую программу и создаст новое сообщение с заполненными полями адреса и темы.


 Создание гиперссылки на Web-страницу с использованием рисунка на странице доступа к данным

Создание гиперссылки на Web-страницу с использованием рисунка на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Гиперрисунок Гиперрисунок на панели элементов.

  3. На странице доступа к данным выберите место, в которое следует поместить рисунок.

  4. В диалоговом окне Выбор рисунка выберите рисунок, который нужно поместить на страницу. Можно использовать файлы форматов .bmp, .wmf, .emf, .gif и .jpeg.

  5. Нажмите кнопку OK.

  6. В диалоговом окне Добавить гиперссылку введите Интернет-адрес, на который будет указывать рисунок, или выберите его из списка.

  7. Нажмите кнопку OK.


 Создание макроса

Создание макроса

  1. В окне базы данных выберите значок Макросы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В столбце Макрокоманда щелкните первую ячейку и нажмите кнопку раскрытия списка, открывающую список макрокоманд.

  4. Выберите имя макрокоманды.

  5. Введите текст комментария к макрокоманде (необязательно). Комментарии облегчают понимание и сопровождение макросов.

  6. В нижней части окна при необходимости укажите аргументы макрокоманды. Для получения дополнительных сведений о задании аргументов макрокоманд нажмите кнопку [image] .

  7. Для добавления в макрос других макрокоманд перейдите на следующую строку и повторите шаги с 3 по 6. Макрокоманды выполняются в порядке их расположения в бланке.

Совет. Чтобы быстро создать макрос, выполняющий действие над конкретным объектом базы данных, перетащите этот объект из окна базы данных в строку макрокоманды окна макроса. Например, можно создать макрос, открывающий форму, путем перетаскивания формы в строку макрокоманды. Для этого выберите в меню Окно команду Слева направо, чтобы расположить окно макроса и окно базы данных на экране рядом, граница к границе; в окне базы данных выберите нужный тип объекта в списке Объекты, щелкните объект и перетащите его в строку макрокоманды. Перетаскивание макроса или сохраненной процедуры добавляет макрокоманду для запуска макроса или процедуры, а перетаскивание объектов базы данных других типов добавляет макрокоманду для открытия объекта.


 Создание немодальных всплывающих форм

Создание немодальных всплывающих форм

  1. Создайте форму. Форма может содержать любую комбинацию элементов управления.

  2. В режиме конструктора формы дважды щелкните область выделения формы, чтобы открыть окно свойств формы.

  3. В ячейке свойства Всплывающее окно (PopUp) выберите значение Да.

  4. В ячейке свойства Тип границы (BorderStyle) выберите значение Тонкая, если нужно запретить изменение размеров форм; в противном случае, перейдите к следующему шагу. Если выбрано значение Тонкая, то форму можно перемещать, но нельзя изменять ее размеры.

  5. Создайте макрос или процедуру обработки события, открывающие форму.

    Примечание. Чтобы просмотреть пример процедуры обработки события, которая вызывает немодальную всплывающую форму, нажмите кнопку построителя [image] рядом с ячейкой свойства Нажатие кнопки (OnClick) кнопки «Просмотр товаров» в форме «Поставщики» учебной базы данных «Борей».

  6. Свяжите макрос или процедуру обработки события с формой или отчетом, указав имя макроса или процедуры обработки события в ячейке соответствующего свойства события. Например, введите имя макроса или процедуры обработки события в ячейку свойства Нажатие кнопки (OnClick) кнопки.

Примечания

  • Чтобы разместить всплывающую форму на экране нужным образом, откройте форму в режиме конструктора, разверните окно Microsoft Access, выберите местоположение формы и сохраните форму. При открытии форма появится в этом месте (предполагается, что свойство Выравнивание по центру (AutoCenter) имеет значение Нет и что положение формы не задается в открывающей ее процедуре обработки события).

  • Для получения сведений о других свойствах всплывающей формы нажмите кнопку [image] .


 Создание составного индекса

Создание составного индекса

  1. Откройте таблицу в режиме конструктора.

  2. На панели инструментов нажмите кнопку Индексы [image] .

  3. В первой пустой строке столбца Индекс введите имя индекса. Для индекса можно использовать либо имя одного из индексируемых полей, либо другое подходящее имя.

  4. В поле Имя поля нажмите кнопку раскрытия списка и выберите первое поле, для которого необходимо создать индекс.

  5. В следующей строке столбца Имя поля укажите второе индексируемое поле. (Для данной строки поле Индекс оставьте пустым.) Повторите эти действия для всех полей, которые необходимо включить в индекс. Допускается использовать до 10 полей.

Примечание. По умолчанию будет использоваться порядок сортировки По возрастанию. Чтобы сортировать некоторые поля по убыванию, установите для этих полей в столбце Порядок сортировки значение По убыванию.


Создание новой кнопочной формы, которая открывается из стартовой кнопочной формы

  1. Откройте базу данных.

  2. Для открытия диалогового окна Диспетчер кнопочных форм выполните одно из следующих действий.
    • Если кнопочная форма была создана с помощью мастера баз данных, нажмите кнопку Изменение элементов кнопочной формы в кнопочной форме, открывающейся при запуске.

    • Если кнопочная форма была создана с помощью диспетчера кнопочных форм, выберите в меню Сервис команду Служебные программы и подкоманду Диспетчер кнопочных форм.
  3. Нажмите кнопку Создать.

  4. Введите имя новой кнопочной формы и нажмите кнопку OK.

    Имя новой кнопочной формы добавляется в поле Страницы кнопочной формы.

  5. Выберите имя новой кнопочной формы и нажмите кнопку Изменить.

  6. Нажмите кнопку Создать.

  7. В поле Текст введите текст для первой кнопки кнопочной формы, а затем выберите для нее команду в поле Команда. Например, введите текст Просмотр заказов, а затем выберите в поле Команда команду Открыть форму для изменения.

  8. Для большинства выбранных команд под полем Команда открывается новое поле со списком. При необходимости, выберите нужный элемент в этом поле. Например, если на шаге 7 была выбрана команда Открыть форму для изменения, выберите в поле Форма имя нужной формы, например, Заказы, и нажмите кнопку OK.

  9. Повторите шаги с 6 по 8 для создания всех нужных кнопок кнопочной формы. Чтобы изменить или удалить какую-либо из созданных кнопок, выберите имя этой кнопки в списке Элементы данной кнопочной формы и нажмите кнопку Изменить или Удалить. Если нужно изменить порядок элементов, выберите элемент в списке и воспользуйтесь кнопками Вверх или Вниз.

  10. Закончив создание кнопочной формы, нажмите кнопку Закрыть.


 Создание группы параметров без помощи мастера

Создание группы параметров без помощи мастера

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Если кнопка Мастера [image] на панели элементов нажата, нажмите ее еще раз, чтобы отключить мастера.

  3. Нажмите кнопку Группа переключателей [image] на панели элементов.

  4. Выполните одно из следующих действий.
    • Чтобы создать свободную группу параметров, выберите место, в которое следует ее поместить.

    • Чтобы создать присоединенную группу параметров, нажмите кнопку Список полей [image] на панели инструментов, чтобы вывести список полей, и перетащите соответствующее поле или столбец из списка полей в форму, отчет или на страницу доступа к данным. Поля и столбцы помещаются в группу параметров в виде текстовых полей. Если в форме или отчете кнопка или команда для вызова списка полей недоступна, необходимо связать форму или отчет с источником записей. Если на странице доступа к данным список полей пуст, необходимо подключить страницу к базе данных.

    Примечание. Поле или столбец нужно именно перетаскивать из списка полей. Если выбрать поле в этом списке, а затем щелкнуть форму, отчет или страницу доступа к данным, то элемент управления не будет присоединен.

  5. На панели элементов формы или отчета нажмите кнопку Флажок Флажок , Переключатель [image] или Выключатель [image] . На панели элементов страницы доступа к данным нажмите кнопку Переключатель [image] . Затем выберите внутри рамки группы место, где должен помещаться верхний левый угол флажка, переключателя или выключателя. При наведении указателя на группу в форме или отчете, Microsoft Access выделит группу, показывая, что содержащиеся в ней элементы управления являются ее частью.

    Когда Access создает первый элемент управления в группе параметров в форме или отчете, он устанавливает свойство Значение параметра (OptionValue) элемента управления в значение 1. На страницах доступа к данным нужно установить свойство Value каждого переключателя в числовое или текстовое значение, являющееся допустимым для поля, к которому присоединена рамка группы.

  6. Повторите шаг 5 для каждого элемента управления, добавляемого в группу параметров. В форме или отчете Access устанавливает свойство Значение параметра (OptionValue) второго параметра в значение 2, третьего — в значение 3, и так далее.

Примечания

  • Для получения дополнительных сведений о выравнивании элементов управления друг относительно друга в рамке группы в формах и отчетах нажмите кнопку [image] . Для получения дополнительных сведений о выравнивании элементов управления друг относительно друга в рамке группы на страницах доступа к данным нажмите кнопку [image] .

  • Для получения дополнительных сведений о задании равных интервалов между элементами управления в формах и отчетах нажмите кнопку [image] .

  • Параметр, который будет выбираться чаще всего, удобно назначить используемым по умолчанию.

    Инструкции

  • Если нужно включить в группу параметров флажок, переключатель или кнопку, созданные вне группы, необходимо вырезать элемент управления и вставить его в группу (перед вставкой нужно выделить рамку группы). При вырезании и вставке элемента управления Microsoft Access устанавливает его свойство Значение параметра (OptionValue) в форме или отчете в значение -1, поэтому обязательно нужно указать вручную новое значение. При перетаскивании существующего элемента управления в рамку группы элемент управления не будет включен в группу параметров.


 Создание группы параметров с помощью мастера в форме или отчете

Создание группы параметров с помощью мастера в форме или отчете

Для достижения лучших результатов, в базе данных Microsoft Access следует создавать группы параметров только для полей, имеющих тип данных Числовой (со свойством Размер поля (FieldSize), установленным в значение Целое или Длинное целое) или Логический. В проекте Microsoft Access следует создавать группы параметров только для столбцов, имеющих тип данных Int, SmallInt, TinyInt или Bit. Для полей или столбцов других типов данных используйте списки, раскрывающиеся списки или поля со списком.

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Нажмите кнопку Мастера [image] на панели элементов, если она еще не нажата.

  3. Нажмите кнопку Группа переключателей [image] на панели элементов.

  4. Выберите в форме или отчете место, в котором должен находиться левый верхний угол группы.

  5. Следуйте инструкциям диалоговых окон мастера. В последнем диалоговом окне нажмите кнопку Готово, чтобы вывести группу параметров в режиме конструктора.


 Создание рисунка, служащего гиперссылкой

Создание рисунка, служащего гиперссылкой

В формах, отчетах или на страницах доступа к данным можно в качестве гиперссылки использовать рисунки. При просмотре отчетов в Microsoft Access гиперссылки работать не будут — они будут доступны при выводе отчета в формат Microsoft Word, Microsoft Excel или HTML.

Предполагаемые действия

Добавление ссылки на существующий файл или Web-страницу

Создание новой страницы доступа к данным и гиперссылки на эту страницу

Создание гиперссылки в одной странице доступа к данным на другую, расположенную в текущей базе данных

Создание ссылки на таблицу, запрос, форму, отчет или страницу доступа к данным в текущей базе данных

Создание гиперссылки, которая открывает программу электронной почты и создает сообщение, посылаемое по заданному адресу электронной почты


Create Views/Procedures/Queries Example

This example creates and executes both an action query and a standard select query by creating an ADO command object and appending it to the ADO procedures and views collections.

Notes

Currently creating procedures and views is not supported in ADPs with the version of the SQL provider shipped with Microsoft Access 2000. A reference to "Microsoft ADO ext. 2.1 for DDL and Security" must be set to use this example.

The RunQuery function is required for this procedure to run.

Sub CreateQueryX()
    Dim catNorthwind As New ADOX.Catalog
    Dim cdView As New ADODB.Command
    Dim cdProc As New ADODB.Command
    Dim tblTemp As New ADOX.Table

    Set catNorthwind.ActiveConnection = CurrentProject.Connection

    With catNorthwind
        Set cdProc.ActiveConnection = CurrentProject.Connection
        Set cdView.ActiveConnection = CurrentProject.Connection

        With tblTemp
            .Name = "tblTemp"
            With .Columns
                .Append "EmpID", adInteger
                .Append "LastName", adVarWChar
                .Append "FirstName", adVarWChar
            End With
        End With
        .Tables.Append tblTemp

        ' Create a new action Query.
        cdProc.CommandText = "Insert Into tbltemp " _ & "(EmpID, LastName, FirstName) Select EmployeeID, " _ & "LastName, FirstName From Employees Where Title =" _ & "'Sales Representative'"

        ' Append to database
        .Procedures.Append "PopulateTmptbl", cdProc

        RunQuery "PopulateTmptbl"

        ' Create new select Query
        cdView.CommandText = "SELECT * FROM tblTemp"
        .Views.Append "NewQuery", cdView

        RunQuery "NewQuery"

 ' Delete new objects because this is a demonstration.
        .Views.Delete "NewQuery"
        .Procedures.Delete "PopulateTmptbl"
        .Tables.Delete tblTemp.Name
    End With
    Set catNorthwind = Nothing
End Sub

Function RunQuery(qryName As String)
    Dim qryTemp As Object
    Dim cat As New ADOX.Catalog
    Dim intNumRecs As Integer

    Set cat.ActiveConnection = CurrentProject.Connection

    On Error Resume Next
    Set qryTemp = cat.Procedures(qryName)
    If Err.Number <> 0 Then
        Set qryTemp = cat.Views(qryName)
        Err.Number = 0
    End If
    On Error GoTo 0

    If TypeOf qryTemp Is ADOX.View Then
        'If Select query display number of records
        Debug.Print "Number records in " & qryName
          Debug.Print DLookup("Count(*)", qryName)
    Else
        'If Action query display affected records
        qryTemp.Command.Execute intNumRecs
        Debug.Print "Number of Records affected"
          Debug.Pring intNumRecs
    End If

    Set cat = Nothing
    Set qryTemp = Nothing

End Function


 Создание отчета с помощью автоотчета

Создание отчета с помощью автоотчета

Автоотчет служит для создания отчета, в котором выводятся все поля и записи базовой таблицы или запроса.

  1. В окне базы данных выберите значок Отчеты [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новый отчет выберите одного из следующих мастеров.
    • Автоотчет: в столбец — каждое поле находится на отдельной строке; подпись располагается слева.

    • Автоотчет: ленточный — поля каждой записи находятся на отдельной строке; подписи печатаются сверху, один раз для каждой страницы.
  4. Выберите таблицу или запрос, содержащие данные, на которых должен быть основан отчет.

  5. Нажмите кнопку OK.

    Microsoft Access применяет последний автоформат, использовавшийся для создания отчета. Если до этого отчет с помощью мастера не создавался, и не использовалась команда Автоформат в меню Формат, то будет применен стандартный автоформат.

Совет. Можно также создать отчет с полями, размещенными в один столбец, базовым источником данных которого являются открытые таблица или запрос, или таблица или запрос, выделенные в окне базы данных. Выберите команду Автоотчет в меню Вставка, или нажмите стрелку рядом с кнопкой Новый объект на панели инструментов и выберите команду Автоотчет. Созданные таким образом отчеты не имеют заголовка, примечания и колонтитулов.


 Создание пустого отчета и выбор источника записей

Создание пустого отчета и выбор источника записей

  1. В окне базы данных выберите значок Отчеты [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новый отчет выберите пункт Конструктор.

  4. Выберите имя таблицы или запроса, содержащих данные, на которых должен быть основан отчет. (Если нужно создать свободный отчет, не выбирайте ничего из этого списка.)

    Совет. Чтобы использовать в отчете данные из нескольких таблиц, создайте отчет на основе запроса.

  5. Нажмите кнопку OK.

    Microsoft Access откроет отчет в режиме конструктора. Для получения дополнительных сведений о работе в режиме конструктора нажмите кнопку [image] .


 Создание отчета с помощью мастера

Создание отчета с помощью мастера

  1. В окне базы данных выберите значок Отчеты [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новый отчет выберите нужного мастера. Описание действий, выполняемых мастером, выводится в левой половине диалогового окна.

  4. Выберите таблицу или запрос, содержащие данные, на которых должен быть основан отчет.

    Примечание. Microsoft Access по умолчанию использует эту таблицу или запрос как источник данных для отчета. Однако мастер позволяет изменить источник данных, а также выбрать поля из других таблиц или запросов.

  5. Нажмите кнопку OK.

  6. Если на шаге 3 были выбраны Мастер отчетов, Мастер диаграмм или Почтовые наклейки, следуйте инструкциям диалоговых окон этих мастеров. Если же были выбраны Автоотчет: ленточный или Автоотчет: в столбец, Microsoft Access создаст отчет автоматически.

    Если получился не тот отчет, который был нужен, можно изменить его в режиме конструктора.


 Создание свободного элемента управления «Бегущая строка» на страницах доступа к данным

Создание свободного элемента управления «Бегущая строка» на страницах доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Нажмите кнопку Бегущая строка Бегущая строка на панели элементов.

  3. Выберите на странице доступа к данным место, в котором должен находится верхний левый угол элемента управления «Бегущая строка»; Microsoft Access создаст элемент управления стандартного размера. Чтобы создать бегущую строку определенного размера, щелкните страницу доступа к данным и, удерживая кнопку мыши нажатой, протащите указатель, задавая нужный размер элемента управления.

  4. Выделите текст бегущей строки, предлагаемый по умолчанию, и введите вместо него нужное сообщение.


 Создание отдельных таблиц для различных наборов записей, возвращаемых запросом к серверу

Создание отдельных таблиц для различных наборов записей, возвращаемых запросом к серверу

  1. После создания запроса к серверу создайте запрос на создание таблицы, основанный на запросе к серверу.

    Инструкции

  2. Включите в запрос на создание таблицы все поля из запроса к серверу, перетащив символ звездочки (*) в бланк запроса.

    При запуске запроса на создание таблицы для каждого возвращаемого набора записей будет создана отдельная таблица. Первая созданная таблица получит имя, указанное в запросе; последующие таблицы получат то же имя с добавлением порядкового номера, начинающегося с 1. Например, если требуется создать таблицы для четырех возвращаемых наборов записей и указано имя «НоваяТаблица», то создаваемые таблицы получат имена «НоваяТаблица», «НоваяТаблица1», «НоваяТаблица2» и «НоваяТаблица3».


 Создание индекса для одного поля

Создание индекса для одного поля

  1. Откройте таблицу в режиме конструктора.

  2. В верхней части окна выберите поле, для которого необходимо создать индекс.

  3. В нижней части окна на вкладке Общие выделите ячейку свойства Индексированное поле и установите значение Да (Допускаются совпадения) или Да (Совпадения не допускаются).

    Если требуется, чтобы ни для каких двух записей значения этого поля не совпадали, установите значение Да (Совпадения не допускаются).


 Создание подчиненной формы и добавление ее в существующую форму

Создание подчиненной формы и добавление ее в существующую форму

Перед тем как приступать к этой процедуре, проверьте правильность установления связей между таблицами.

  1. Откройте форму, в которую нужно добавить подчиненную форму, в режиме конструктора.

  2. Убедитесь, что кнопка Мастера [image] на панели элементов нажата.

  3. Нажмите кнопку Подчиненная форма/отчет [image] на панели элементов.

  4. В форме выберите место, в которое следует поместить подчиненную форму.

  5. Следуйте инструкциям диалоговых окон мастера.

  6. После нажатия кнопки Готово Microsoft Access добавит элемент управления подчиненной формы в форму. Он также создаст отдельную форму для подчиненной формы.

Примечания

  • Для получения дополнительных сведений об изменении макета подчиненной формы, созданной с помощью мастера, нажмите кнопку [image] .

  • Для получения справки по устранению неполадок с подчиненными формами нажмите кнопку [image] .


 Создание подчиненного отчета в существующем отчете

Создание подчиненного отчета в существующем отчете

Если подчиненный отчет должен быть связан с главным отчетом, то перед выполнением следующих действий следует убедиться в правильности установления связей между таблицами. Для получения дополнительных сведений нажмите кнопку [image] .

  1. Откройте отчет, который должен быть главным отчетом, в режиме конструктора.

  2. Убедитесь, что кнопка Мастера [image] на панели элементов нажата.

  3. Нажмите кнопку Подчиненная форма/отчет [image] на панели элементов.

  4. Выберите в отчете место, в которое нужно поместить подчиненный отчет.

  5. Следуйте инструкциям диалоговых окон мастера.

После нажатия кнопки Готово Microsoft Access добавит элемент управления подчиненного отчета в отчет. Он также создаст отдельный отчет, который будет выводиться как подчиненный отчет.

Примечания

  • Для получения сведений о ссылках на значение элемента управления в подчиненном отчете нажмите кнопку [image] .

  • Для получения сведений об устранении неполадок с подчиненными отчетами нажмите кнопку [image] .


 Создание кнопочной формы с помощью диспетчера кнопочных форм

Создание кнопочной формы с помощью диспетчера кнопочных форм

При создании базы данных с помощью мастера автоматически создается кнопочная форма, позволяющая легко перемещаться по формам и отчетам базы данных. В существующей базе данных создать кнопочную форму можно с помощью диспетчера кнопочных форм.

  1. Выберите в меню Сервис команду Служебные программы и подкоманду Диспетчер кнопочных форм.

  2. Если выводится запрос на подтверждение создания кнопочной формы, нажмите кнопку Да.

  3. В диалоговом окне Диспетчер кнопочных форм нажмите кнопку Изменить.

  4. В диалоговом окне Изменение страницы кнопочной формы введите имя кнопочной формы в поле Название кнопочной формы и нажмите кнопку Создать.

  5. В диалоговом окне Изменение элемента кнопочной формы введите в поле Текст текст для первого элемента кнопочной формы и выберите команду в поле со списком Команда. Например, введите в поле Текст строку Список товаров и выберите в поле Команда команду Открыть форму для изменения.

  6. Для большинства выбранных команд под полем Команда открывается новое поле со списком. При необходимости, выберите нужный элемент в этом поле. Например, если на шаге 5 в поле Команда была выбрана команда Открыть форму для изменения, то следует выбрать в поле со списком Форма имя открываемой формы, например, Список товаров, и нажать кнопку OK.

  7. Повторите шаги с 4 по 6 для создания остальных кнопок кнопочной формы. Чтобы изменить или удалить какую-либо из созданных кнопок, выберите ее имя в списке Элементы данной кнопочной формы и нажмите кнопку Изменить или Удалить. Если требуется изменить порядок элементов кнопочной формы, выберите элемент в списке и воспользуйтесь кнопками Вверх или Вниз.

  8. Нажмите кнопку Закрыть.

Примечания

  • Диспетчер кнопочных форм позволяет создавать кнопочные формы, которые открывают другие кнопочные формы. Используйте описанную выше процедуру для создания одной или нескольких кнопочных форм. Чтобы назначить кнопочную форму стартовой (то есть, автоматически открывающейся при открытии базы данных), выберите имя кнопочной формы в диалоговом окне Диспетчер кнопочных форм и нажмите кнопку По умолчанию. Чтобы по нажатию кнопки это кнопочной формы открывалась другая кнопочная форма, на шаге 5 описанной выше процедуры выберите команду Перейти к кнопочной форме в поле Команда и укажите кнопочную форму, на которую нужно перейти.

  • При создании кнопочной формы с помощью диспетчера кнопочных форм Microsoft Access создает таблицу «Switchboard Items», которая описывает текст и действия кнопок формы. Если затем изменить кнопочную форму в режиме конструктора формы, приложение может перестать работать. Если потребуется значительно изменить кнопочную форму, лучше всего создать ее заново и назначить стартовой. Дополнительные сведения о создании стартовых форм см. в главе «Creating an Application» книги Building Applications with Forms and Reports.


 Создание таблиц путем ввода данных в таблицу

Создание таблиц путем ввода данных в таблицу

  1. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  2. Выберите значок Таблицы [image] в списке Объекты и нажмите кнопку Создать на панели инструментов окна базы данных.

  3. Дважды щелкните строку Режим таблицы. Появится пустая таблица. По умолчанию ее поля имеют имена «Поле1», «Поле2» и т. д.

  4. Переименуйте используемые столбцы. Для этого дважды щелкните имя столбца, введите имя столбца, следуя соглашениям об именах объектов Microsoft Access, и нажмите клавишу ENTER.

  5. Дополнительные столбцы можно добавлять в любое время: выберите столбец, слева от которого нужно добавить новый столбец, и выберите в меню Вставка команду Столбец. Переименуйте столбец, как описано на шаге 4.

  6. Введите данные в таблицу.

    Вводите в каждый столбец данные определенного типа ( в таблицах Microsoft Access каждый столбец называют полем). Например, вводите в один столбец фамилии, а в другой имена. При вводе чисел и значений дат и времени необходимо использовать согласованные форматы, чтобы Microsoft Access мог автоматически определить соответствующий тип данных и формат отображения столбца. Все столбцы с неизмененными именами, оставленные пустыми, будут удалены при сохранении таблицы.

  7. Введя данные во все нужные столбцы, нажмите кнопку Сохранить [image] на панели инструментов, чтобы сохранить таблицу.

  8. При сохранении таблицы выводится приглашение создать ключевое поле. Если данные, которые могут однозначно идентифицировать каждую запись в таблице, такие, как инвентарные номера или коды, еще не были введены, то рекомендуется нажать кнопку Да. Если данные, которые могут однозначно идентифицировать каждую запись, уже введены, то это поле можно определить как ключевое.

    Инструкции

Microsoft Access присвоит каждому полю (столбцу) тип данных на основании введенной в это поле информации. Если в дальнейшем нужно будет изменить описание поля — например, изменить тип данных, или наложить условие на значение, используйте режим конструктора.

Примечание. Кроме переименования и вставки столбцов можно в любой момент, как до, так и после сохранения таблицы удалять столбцы и изменять их положение в таблице. Для получения дополнительных сведений об удалении столбца нажмите кнопку [image] . Для получения дополнительных сведений об изменении порядка столбцов нажмите кнопку [image] .


 Создание таблицы с нуля в режиме конструктора

Создание таблицы с нуля в режиме конструктора

  1. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  2. Выберите значок Таблицы [image] в списке Объекты и нажмите кнопку Создать на панели инструментов окна базы данных.

  3. Дважды щелкните строку Режим конструктора.

  4. Определите все нужные поля в таблице.

    Инструкции

  5. До того, как сохранить таблицу, определите первичный ключ.

    Инструкции

    Примечание. Поле первичного ключа определять не обязательно, но желательно. Если первичный ключ не был определен, Microsoft Access при сохранении таблицы спросит, нужно ли создать ключевое поле. Для получения дополнительных сведений о первичных ключах нажмите кнопку [image] .

  6. Для сохранения таблицы нажмите кнопку Сохранить [image] на панели инструментов, а затем введите имя таблицы, следуя соглашениям об именах объектов Microsoft Access.

Примечание. Для получения дополнительных сведений о свойствах, которые можно использовать для настройки полей в таблицах, нажмите кнопку [image] .


Создание таблицы без помощи мастера

Процедуры, приведенные в этом разделе, описывают все аспекты процесса создания таблицы — с самого начала и до самого конца. Многие из этих процедур выполняются при создании каждой таблицы; некоторые используются при создании таблиц, в которых хранятся данные определенного формата, и при настройке представления полей. При создании таблицы необходимо использовать только те процедуры, которые предназначены для используемых в таблице типов данных и определений полей. Ответы на другие вопросы, касающиеся создания таблиц, можно найти в Мастере ответов.

Примеры таблиц

1. Создание таблицы

Быстрое создание таблицы в режиме конструктора

Примеры инструментов для разработки таблиц

2. Добавление полей в таблицу, содержащую данные

Создание текстового поля или поля МЕМО

Создание числовых или денежных полей

Создание полей даты и времени

Создание в таблице поля со списком подстановок или списком значений

3. Настройка представления поля и обработки данных в нем

Указание числа десятичных разрядов для отображения в поле

Создание маски ввода для управления вводом данных в поле

Примеры масок ввода

Определение значения, вводимого в поле по умолчанию

Примеры значений, используемых по умолчанию в полях

Определение условий на значения для контроля вводимых в поле данных

Примеры условий на значение поля

4. Создание ключевого поля для однозначной идентификации записей

Определение или изменение ключевого поля

5. Создание индекса для ускорения поиска и сортировки записей

Создание индекса для одного поля

Создание составного индекса

6. Определение связей для соединения данных из двух или нескольких таблиц

Определение связей между таблицами

Установка типа объединения по умолчанию для связей между двумя таблицами

7. Настройки

Изменение имени поля в режиме конструктора

Перемещение поля в режиме конструктора таблицы

Удаление поля из таблицы в режиме конструктора


 Автоматическое создание таблиц по имеющимся данным

Автоматическое создание таблиц по имеющимся данным

  • Введите данные непосредственно в пустую таблицу. При сохранении таблицы Microsoft Access проанализирует данные и автоматически присвоит каждому полю соответствующий тип данных и формат.

    Создание таблиц путем ввода данных в таблицу


 Создание таблицы при помощи мастера таблиц

Создание таблицы при помощи мастера таблиц

  1. Переключитесь в окно базы данных. Для переключения в окно базы данных из других окон нажмите клавишу F11.

  2. Выберите значок Таблицы [image] в списке Объекты и нажмите кнопку Создать на панели инструментов окна базы данных.

  3. Дважды щелкните строку Мастер таблиц.

  4. Следуйте инструкциям диалоговых окон мастера Создание таблиц.

Примечание. Если в дальнейшем потребуется изменить или расширить созданную с помощью мастера таблицу, можно сделать это в режиме конструктора.


Create New Table Example

Create Table Example

The following example creates a new Table object and appends it to the Tables collection of the current database.

Note A reference to "Microsoft ADO ext. 2.1 for DDL and Security" must be set to use this example.

Sub NewTable()
    Dim cat As New ADOX.Catalog, tbl As New ADOX.Table

    ' Return reference to current database.
    Set cat.ActiveConnection = CurrentProject.connection

    tbl.Name = "Contacts"

    ' Define column to table.
    tbl.Columns.Append "ContactName", adVarWChar, 40

    ' Append Table object to Tables collection of Catalog.
    cat.Tables.Append tbl
    cat.Tables.Refresh
    Set cat = Nothing
End Sub


 Создание свободного списка, раскрывающегося списка или поля со списком с фиксированными значениями

Создание свободного списка, раскрывающегося списка или поля со списком с фиксированными значениями

  1. Откройте форму в режиме конструктора формы или страницу доступа к данным в режиме конструктора страницы.

  2. Убедитесь, что кнопка Мастера [image] на панели элементов нажата.

    Примечание. Мастера недоступны для обособленных страниц доступа к данным или для страниц, указывающих на другую базу данных. В обоих случаях список или раскрывающийся список придется создавать без помощи мастера.

  3. Нажмите кнопку Список Список , Раскрывающийся список или Поле со списком на панели элементов.

  4. В форме или на странице доступа к данным выберите место, в которое нужно поместить список, раскрывающийся список или поле со списком.

  5. Следуйте инструкциям диалоговых окон мастера. В ответ на вопрос о способе ввода значений в список, выберите переключатель, соответствующий списку фиксированных значений. В ответ на вопрос, следует ли сохранить выбранное значение или запомнить его для дальнейшего использования, выберите переключатель, обеспечивающий запоминание значения.

Примечания

  • Для получения дополнительных сведений о свойствах, определяющих функционирование списка или поля со списком в форме, нажмите кнопку [image] . Для получения дополнительных сведений о свойствах, определяющих функционирование списка или раскрывающегося списка на странице доступа к данным, нажмите кнопку [image] .

  • Для получения дополнительных сведений об устранении неполадок со списками, раскрывающимися списками и полями со списком, нажмите кнопку [image] .


 Создание свободного списка, раскрывающегося списка или поля со списком, отображающих значения из таблицы или запроса

Создание свободного списка, раскрывающегося списка или поля со списком, отображающих значения из таблицы или запроса

  1. Откройте форму в режиме конструктора формы или страницу доступа к данным в режиме конструктора страницы.

  2. Убедитесь, что кнопка Мастера [image] на панели элементов нажата.

    Примечание. Мастера недоступны для обособленных страниц доступа к данным или для страниц, указывающих на другую базу данных. В обоих случаях список или раскрывающийся список придется создавать без помощи мастера.

  3. Нажмите кнопку Список Список , Раскрывающийся список или Поле со списком на панели элементов.

  4. В форме или на странице доступа к данным выберите место, в которое нужно поместить список, раскрывающийся список или поле со списком.

  5. Следуйте инструкциям диалоговых окон мастера. В ответ на вопрос о способе ввода значений в список, выберите переключатель для использования значений из таблицы или запроса. В ответ на вопрос, следует ли сохранить выбранное значение или запомнить его для дальнейшего использования, выберите переключатель, обеспечивающий запоминание значения.

Примечания

  • Для получения дополнительных сведений о свойствах, определяющих функционирование списка или поля со списком в форме, нажмите кнопку [image] . Для получения дополнительных сведений о свойствах, определяющих функционирование списка или раскрывающегося списка на странице доступа к данным, нажмите кнопку [image] .

  • При создании в форме списка или поля со списком, основанного на таблице или запросе, с помощью мастера, Microsoft Access создает инструкцию SQL на основании выбранных полей, и заносит эту инструкцию в ячейку свойства Источник строк (RowSource) элемента управления. Если список или поле со списком отсортированы не в том порядке, в котором нужно, можно модифицировать инструкцию SQL, нажав кнопку построителя [image] справа от ячейки свойства Источник строк (RowSource). Для получения дополнительных сведений об указании порядка сортировки в построителе инструкций SQL нажмите кнопку [image] .

  • При создании на странице доступа к данным раскрывающегося списка, основанного на таблице или запросе, с помощью мастера, Access устанавливает свойство ListRowSource в имя таблицы, выбранной в мастере. Если раскрывающийся список отсортирован не в том порядке, в котором нужно, можно создать запрос, использующий другой порядок сортировки, и указать его в ячейке свойства ListRowSource.

  • Для получения дополнительных сведений об устранении неполадок со списками, раскрывающимися списками и полями со списком, нажмите кнопку [image] .


 Создание свободного поля

Создание свободного поля

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. Нажмите кнопку Поле Поле на панели элементов.

  3. Чтобы создать в форме, отчете или на странице доступа к данным поле стандартного размера, щелкните подходящее место; если же нужно создать поле определенного размера, нажмите кнопку мыши и, удерживая ее, перетаскивайте указатель до тех пор, пока поле не примет нужный размер.


 Создание профиля пользователя Microsoft Access

Создание профиля пользователя Microsoft Access

Чтобы создать профиль пользователя Microsoft Access

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в раздел \HKEY_LOCAL_MACHINE\SOFTWARE.

  3. Добавьте три вложенных раздела, используя следующий формат для обеспечения уникальности: \Ваша_Организация\Ваше_Приложение\Номер_Версии_Вашего_Приложения.

  4. В разделе \Номер_Версии_Вашего_Приложения создайте все подразделы, имеющиеся в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\9.0\Access и содержащие значения, которые нужно изменить (кроме подраздела \Profiles, который будет создан на шаге 7), и скопируйте в него соответствующие значения параметров каждого подраздела.

  5. Измените необходимые значения.

  6. Перейдите в раздел \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\9.0\Access.

  7. Добавьте новый подраздел с именем \Profiles.

  8. Добавьте в подраздел \Profiles строковый параметр с именем, которое нужно использовать в командной строке.

  9. В качестве значения параметра введите строку, которая указывает на расположение подразделов, созданных на шаге 3: \SOFTWARE\Ваша_Организация\Ваше_Приложение\Номер_Версии_Вашего_Приложения

  10. Создайте командную строку для приложения, определяющую имя, введенное на шаге 8, и заключите имя в двойные кавычки ("). Например: MSAccess.exe /profile "Ваш_Профиль" "Ваше_Приложение.mdb"

Чтобы заменить стандартные значения параметров ядра базы данных Microsoft Jet 4.0 для Access

  1. Перейдите в подраздел профиля \HKEY_LOCAL_MACHINE\SOFTWARE\Ваша_Организация\Ваше_Приложение\Номер_Версии_Вашего_Приложения.

  2. Создайте подраздел с именем \Jet\4.0\Engines.

  3. Для каждого параметра встроенного драйвера, значение которого нужно заменить:

    Добавьте подраздел с соответствующим именем в подраздел, созданный на шаге 2; например, для замены параметров Jet Paradox добавьте подраздел с именем "Paradox".

    Добавьте в этот подраздел параметры, имеющие соответствующие имена и типы, а затем задайте их значения.

    • В качестве образца используйте подразделы и параметры из раздела \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines.

Примечания

  • Чтобы проверить, правильно ли приложение загрузило профиль пользователя (например, пользователь мог по ошибке открыть приложение через проводник Windows и обойти параметр командной строки /profile), можно использовать аргумент acSysCmdProfile метода SysCmd. Для получения дополнительных сведений нажмите кнопку [image] .

  • Можно также использовать метод DAO DBEngine.SetOption для динамического изменения значений реестра Jet только для одного сеанса работы, не изменяя при этом значений реестра Windows. Для получения дополнительных сведений нажмите кнопку [image] .

  • В базе данных Microsoft Access или в проекте Microsoft Access для одного и того же параметра реестра можно определить значение тремя различными способами; при этом использовать можно будет только одно значение. В таком случае параметр профиля пользователя Access имеет приоритет над параметром базы данных Access или проекта Access, который, в свою очередь, имеет приоритет над параметром Microsoft Jet. В следующей таблице показан порядок приоритетов на примере параметра ODBC ConnectionTimeout.
    Приоритет | Расположение | Параметры реестра в разделе \HKEY_LOCAL_MACHINE\SOFTWARE…
    1 | Профиль пользователя | \Ваша_Организация\Ваше_Приложение\Номер_Версии_Вашего_Приложенияr\ODBC\ConnectionTimeout=100
    2 Microsoft Access \Microsoft\Office\9.0\Access\Jet\4.0\Engines
    \ODBC\ConnectionTimeout=300
    3 Microsoft Jet \Microsoft\Jet\4.0\Engines
    \ODBC\ConnectionTimeout=600

    Если запустить приложение с помощью командной строки, задающей профиль пользователя Access, Access в качестве значения параметра ConnectionTimeout примет число 100. Если приложение запущено без использования профиля пользователя Access, Access будет считать параметр ConnectionTimeout равным 300.


 Создание условия на значение для элемента управления

Создание условия на значение для элемента управления

  1. Откройте форму в режиме конструктора.

  2. Убедитесь, что нужный элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. В ячейку свойства Условие на значение (ValidationRule) введите условие на значение; либо, в базе данных Microsoft Access (.mdb), нажмите кнопку построителя [image] , чтобы создать условие на значение с помощью построителя выражений.

    Для просмотра примеров условий на значение нажмите кнопку [image] .

  4. В ячейку свойства Сообщение об ошибке (ValidationText) введите текст сообщения об ошибке, которое должно выводиться при попытке ввести данные, нарушающие условие на значение.

Примечания

  • Если для ввода значения свойства требуется больше места, нажмите клавиши SHIFT+F2 для открытия окна Область ввода.

  • Если в базе данных Access задать свойство Условие на значение (ValidationRule) для поля в режиме конструктора таблицы и задать также свойство Условие на значение (ValidationRule) для элемента управления, присоединенного к этому полю, Microsoft Access будет использовать оба условия — условие элемента управления не отменит условие поля.

  • Условие на значение проверяется при изменении данных и попытке выхода из поля, при сохранении записи, переключении режимов или закрытии формы.


 Создание контекстной справки для форм и элементов управления

Создание контекстной справки для форм и элементов управления

  1. Создайте исходный файл с помощью любого текстового редактора или текстового процессора. Дополнительные сведения о создании исходного файла см. в справке Windows Help Workshop. Сохраните исходный файл в формате RTF.

  2. Откомпилируйте файл справочной системы с помощью компилятора Windows Help Workshop.

  3. Откройте окно свойств формы или отчета и введите имя откомпилированного файла справки в ячейку свойства Файл справки (HelpFile).

    Примечание. Для упрощения работы поместите файл справочной системы в одну папку с приложением. Это позволит использовать одно и то же значение свойства Файл справки (HelpFile) во всех экземплярах приложения, допуская установку приложения в любую папку пользователя. Если в значении этого свойства не указан путь, Microsoft Access будет искать файл справочной системы в каталоге приложения.

  4. В ячейку свойства формы Идентификатор справки (HelpContextID) введите номер (отличный от 0) раздела справки, который должен выводиться на экран, когда пользователь нажимает кнопку контекстной справки [image] , а затем выбирает фон формы. В этот раздел справки обычно помещают общие сведения о форме.

  5. В ячейку свойства Идентификатор справки (HelpContextID) для каждого элемента управления формы, который может получить фокус, введите номер раздела справки, который должен выводиться на экран, когда пользователь нажимает кнопку контекстной справки [image] , а затем выбирает элемент управления.

Примечания

  • Значения, установленные для свойства Идентификатор справки, должны соответствовать контекстным строкам справки. Для получения дополнительных сведений см. файл справки, поставляемый с Windows Help Workshop.

  • Если для элемента управления не был создан специальный раздел справки, то при нажатии пользователем кнопки контекстной справки [image] с последующим выбором элемента управления, будет открыт раздел специальной справки по форме. Если же отсутствует и этот раздел справки, Microsoft Access откроет диалоговое окно помощника по Office.

  • Если ввести положительный идентификатор раздела справки, этот раздел будет открыт в полном окне раздела справки. Если же перед идентификатором поставить знак «минус» (–), раздел будет открыт во всплывающем окне. Важно знать, что создаваемый в Microsoft Help Workshop раздел справки не может иметь отрицательный идентификатор. Чтобы вывести раздел во всплывающем окне, знак «минус» нужно добавить при установке свойства.

  • Разделы контекстной справки нельзя выводить на экран, используя помощник по Office.


 Создание выражения без помощи построителя выражений

Создание выражения без помощи построителя выражений

Выражение создается с помощью комбинации идентификаторов, операторов и значений, обеспечивающей получение необходимого результата. Например, следующее выражение увеличивает значение элемента управления «СтоимостьДоставки» формы «Заказы» на 10 процентов:

= [Forms]![Заказы]![СтоимостьДоставки] * 1.1

В данном выражении:

  • Forms![Заказы]![СтоимостьДоставки] является идентификатором, который ссылается на значение элемента управления «СтоимостьДоставки» в форме «Заказы».

  • * является оператором умножения.

  • 1.1 — число, на которое умножается значение элемента управления «СтоимостьДоставки».

При создании выражения, в зависимости от требуемого результата, идентификаторы, операторы и значения комбинируются различными способами. Выражения используются для слияния текстовых строк, сложения или умножения чисел, вызова функций, ссылок на объекты и их значения и выполнения многих других операций.

Некоторые выражения дают логические результаты ИСТИНА или ЛОЖЬ. Например, при вводе выражения в ячейку столбца Условие в строке макрокоманды эта макрокоманда будет выполнена только в том случае, если выражение истинно. Следующее выражение является истинным, когда поле «Страна» в форме «Сотрудники» содержит значение «Австрия»:

Forms![Сотрудники]![Страна] = "Австрия"

Для получения дополнительных сведений об использовании идентификаторов в выражениях нажмите кнопку [image] .

Для получения дополнительных сведений об операторах нажмите кнопку [image] .

Для получения дополнительных сведений об использовании значений в выражениях нажмите кнопку [image] .


 Изменение настроек драйвера Microsoft Excel

Изменение настроек драйвера Microsoft Excel

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в подраздел \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Jet\4.0\Engines\Excel и внесите необходимые изменения.

    Для получения дополнительных сведений о настройках драйвера Microsoft Excel нажмите кнопку [image] .

  3. Закройте редактор реестра.

  4. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.

Важно! Изменения параметров этих подразделов распространяются на все установленные на компьютере программы, которые используют ядро базы данных Microsoft Jet для доступа к данным Microsoft Excel. Кроме Microsoft Access 2000 в их число входят Microsoft Excel 2000, Microsoft Visual Basic версии 6.0 или новее и, возможно, некоторые другие. Если изменения должны действовать только для Access 2000, их нужно выполнить в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Office\9.0\Access\Jet\4.0\Engines
\Excel. Если подраздела \Excel не существует, создайте его и добавьте в него параметры.

Примечание. Можно также использовать метод DAO, Application.DBEngine.SetOption, для динамического изменения значений параметров реестра Microsoft Jet только для одного сеанса работы, не изменяя при этом значений в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение настроек драйвера Exchange

Изменение настроек драйвера Exchange

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в подраздел \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Jet\4.0\Engines\Exchange и внесите требуемые изменения.

    Для получения сведений о настройке драйвера Exchange нажмите кнопку [image] .

  3. Закройте редактор реестра.

  4. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.

Важно! Изменения параметров этого подраздела распространяются на все установленные на компьютере программы, которые используют ядро базы данных Microsoft Jet для доступа к данным Microsoft Exchange. Помимо Microsoft Access 2000 в их число входят Microsoft Excel 2000, Microsoft Visual Basic версии 6.0 или новее и, возможно, некоторые другие. Если изменения должны действовать только для Access 2000, их нужно выполнить в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Office\9.0\Access\Jet\4.0\Engines
\Exchange. Если подраздела \Exchange не существует, создайте подраздел и добавьте в него параметры.

Примечание. Можно также использовать метод DAO, Application.DBEngine.SetOption, для динамического изменения значений параметров реестра Microsoft Jet только для одного сеанса работы, не изменяя при этом значений в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение настроек драйвера dBASE

Изменение настроек драйвера dBASE

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в подраздел \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Jet\4.0\Engines\Xbase и внесите необходимые изменения.

    Для получения сведений о настройке драйверов dBASE нажмите кнопку [image] .

  3. Закройте редактор реестра.

  4. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.

Важно! Изменения параметров этого подраздела распространяются на все установленные на компьютере программы, которые используют ядро базы данных Microsoft Jet для доступа к данным dBASE. Помимо Microsoft Access 2000 в их число входят Microsoft Excel 2000, Microsoft Visual Basic версии 6.0 или новее и, возможно, некоторые другие. Если изменения должны действовать только для Access 2000, их нужно выполнить в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Office\9.0\Access\Jet\4.0\Engines
\Xbase. Если подраздела \Xbase не существует, создайте подраздел и добавьте в него параметры.

Примечание. Можно также использовать метод DAO, Application.DBEngine.SetOption, для динамического изменения значений параметров реестра Microsoft Jet только для одного сеанса работы, не изменяя при этом значений в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение настроек драйвера HTML

Изменение настроек драйвера HTML

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в подраздел \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Jet\4.0\Engines\Text и внесите необходимые изменения.

    Для получения дополнительных сведений о настройках драйвера HTML нажмите кнопку [image] .

  3. Закройте редактор реестра.

  4. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.

Важно! Изменения параметров этого подраздела распространяются на все установленные на компьютере программы, которые используют ядро базы данных Microsoft Jet для доступа к данным HTML. Помимо Microsoft Access 2000 в их число входят Microsoft Excel 2000, Microsoft Visual Basic версии 6.0 или новее и, возможно, некоторые другие. Если изменения должны действовать только для Access 2000, их нужно выполнить в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Office\9.0\Access\Jet\4.0\Engines
\Text. Если подраздела \Text не существует, создайте подраздел и добавьте в него параметры.

Примечание. Можно также использовать метод DAO, Application.DBEngine.SetOption, для динамического изменения значений параметров реестра Microsoft Jet только для одного сеанса работы, не изменяя при этом значений в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение настроек ядра базы данных Microsoft Jet версии 2.x

Изменение настроек ядра базы данных Microsoft Jet версии 2.x

Примечание. Действие параметров ядра базы данных Microsoft Jet распространяется только на базы данных Microsoft Access, но не на проекты Microsoft Access.

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в подраздел \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Jet\4.0\Engines\Jet 2.x и внесите необходимые изменения.

    Для получения дополнительных сведений об именах, типах и значениях по умолчанию параметров ядра базы данных Microsoft Jet 2.x нажмите кнопку [image] .

  3. Закройте редактор реестра.

  4. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.

Важно! Изменения параметров этого подраздела распространяются на все установленные на компьютере программы, которые используют ядро базы данных Microsoft Jet для доступа к базам данных Microsoft Access 1.x и 2.0. Помимо Microsoft Access в их число входят Microsoft Excel, Microsoft Visual Basic и, возможно, некоторые другие. Если изменения должны действовать только для Access 2000, их нужно выполнить в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Office\9.0\Access\Jet\4.0\Engines
\Jet 2.x. Если подраздела \Jet 2.x не существует, создайте подраздел и добавьте в него параметры.

Примечание. Можно также использовать метод DAO, Application.DBEngine.SetOption, для динамического изменения значений параметров реестра Microsoft Jet только для одного сеанса работы, не изменяя при этом значений в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение настроек ядра базы данных Microsoft Jet версии 4.0

Изменение настроек ядра базы данных Microsoft Jet версии 4.0

Примечание. Действие параметров ядра базы данных Microsoft Jet распространяется только на базы данных Microsoft Access, но не на проекты Microsoft Access (за исключением операций импорта, связывания или экспорта данных или объектов базы данных из проекта Access).

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в подраздел \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft \Jet\4.0\Engines\Jet 4.0 и внесите необходимые изменения.

    Для получения дополнительных сведений об именах, типах и значениях по умолчанию параметров ядра базы данных Microsoft Jet 4.0 нажмите кнопку [image] .

  3. Закройте редактор реестра.

  4. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.

Важно! Изменения параметров этого подраздела распространяются на все установленные на компьютере программы, которые используют ядро базы данных Microsoft Jet для доступа к базам данных Microsoft Access 2000. Помимо Microsoft Access в их число входят Microsoft Excel 2000, Microsoft Visual Basic версии 6.0 или новее и, возможно, некоторые другие. Если изменения должны действовать только для Microsoft Access, их нужно выполнить в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Office\9.0\Access\Jet\4.0\Engines
\Jet 4.0. Если подраздела \Jet 4.0 не существует, создайте подраздел и добавьте в него параметры.

Примечание. Можно также использовать метод DAO, Application.DBEngine.SetOption, для динамического изменения значений параметров реестра Microsoft Jet только для одного сеанса работы, не изменяя при этом значений в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение настроек ядра базы данных Microsoft Jet версии 3.x

Изменение настроек ядра базы данных Microsoft Jet версии 3.x

Примечание. Действие параметров ядра базы данных Microsoft Jet распространяется только на базы данных Microsoft Access, но не на проекты Microsoft Access.

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в подраздел \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Jet\4.0\Engines\Jet 3.x и внесите необходимые изменения.

    Для получения дополнительных сведений об именах, типах и значениях по умолчанию параметров ядра базы данных Microsoft Jet 3.0 нажмите кнопку [image] .

  3. Закройте редактор реестра.

  4. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.

Важно! Изменения параметров этого подраздела распространяются на все установленные на компьютере программы, которые используют ядро базы данных Microsoft Jet для доступа к базам данных Microsoft Access 95 или Microsoft Access 97. Помимо Microsoft Access в их число входят Microsoft Excel, Microsoft Visual Basic и, возможно, некоторые другие. Если изменения должны действовать только для Microsoft Access, их нужно выполнить в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Office\9.0\Access\Jet\4.0\Engines
\Jet 3.x. Если подраздела \Jet 3.x не существует, создайте подраздел и добавьте в него параметры.

Примечание. Можно также использовать метод DAO, Application.DBEngine.SetOption, для динамического изменения значений параметров реестра Microsoft Jet только для одного сеанса работы, не изменяя при этом значений в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение настроек драйвера Lotus

Изменение настроек драйвера Lotus

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в подраздел \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Jet\4.0\Engines\Lotus и внесите необходимые изменения.

    Для получения дополнительных сведений о настройках драйвера Lotus нажмите кнопку [image] .

  3. Закройте редактор реестра.

  4. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.

Важно! Изменения параметров этого подраздела распространяются на все установленные на компьютере программы, которые используют ядро базы данных Microsoft Jet для доступа к данным Lotus 1-2-3. Помимо Microsoft Access 2000 в их число входят Microsoft Excel 2000, Microsoft Visual Basic версии 6.0 или новее и, возможно, некоторые другие. Если изменения должны действовать только для Access 2000, их нужно выполнить в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Office\9.0\Access\Jet\4.0\Engines
\Lotus. Если подраздела \Lotus не существует, создайте подраздел и добавьте в него параметры.

Примечание. Можно также использовать метод DAO, Application.DBEngine.SetOption, для динамического изменения значений параметров реестра Microsoft Jet только для одного сеанса работы, не изменяя при этом значений в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение настроек драйвера ODBC

Изменение настроек драйвера ODBC

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в подраздел \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Jet\4.0\Engines\ODBC и внесите необходимые изменения.

    Для получения дополнительных сведений об именах, типах и значениях по умолчанию параметров драйвера ODBC нажмите кнопку [image] .

  3. Закройте редактор реестра.

  4. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.

Важно! Изменения параметров этого подраздела распространяются на все установленные на компьютере программы, которые используют ядро базы данных Microsoft Jet для доступа к данным ODBC. Помимо Microsoft Access 2000 в их число входят Microsoft Excel 2000, Microsoft Visual Basic версии 6.0 или новее и, возможно, некоторые другие. Если изменения должны действовать только для Access 2000, их нужно выполнить в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Office\9.0\Access\Jet\4.0\Engines
\ODBC. Если подраздела \ODBC не существует, создайте подраздел и добавьте в него параметры.

Примечание. Можно также использовать метод DAO, Application.DBEngine.SetOption, для динамического изменения значений параметров реестра Microsoft Jet только для одного сеанса работы, не изменяя при этом значений в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Указание формата версии OLE (2.x или 1.x), в котором будут сохранены связи OLE

Указание формата версии OLE (2.x или 1.x), в котором будут сохранены связи OLE

Можно выбрать формат, в котором Microsoft Access сохраняет связи OLE: формат OLE версии 2.x, который сохраняет как относительные, так и абсолютные ссылки на источники, или формат OLE 1.x, который сохраняет только абсолютные ссылки. (По абсолютной ссылке можно получить данные из объекта, сохраненного в виде файла. По относительной ссылке получаются данные из объекта, который может быть внедрен в документ.) В тех средах, где используются и Microsoft Access 2000, и Microsoft Access версии 1.x, установите этот параметр в 1, чтобы обеспечить целостность операций обращения по связям OLE в базах данных Microsoft Access 1.x.

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в подраздел реестра \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Office\9.0\Access.

  3. Дважды щелкните подраздел \Options. Если имя параметра AllowOLE1LinkFormat уже присутствует в столбце Name на правой панели окна редактора реестра, перейдите к шагу 6.

  4. В меню Правка выберите команду Создать и подкоманду Параметр DWORD.

  5. Наберите AllowOLE1LinkFormat и нажмите клавишу ENTER.

  6. Дважды щелкните параметр AllowOLE1LinkFormat и введите в поле Значение значение 1, чтобы выбрать формат связей OLE 1.x, или 0, чтобы выбрать формат OLE 2.x.

  7. Закройте редактор реестра.

  8. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.


 Изменение настроек драйвера Paradox

Изменение настроек драйвера Paradox

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в подраздел \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Jet\4.0\Engines\Paradox и внесите необходимые изменения.

    Для получения сведений о настройке драйверов Paradox нажмите кнопку [image] .

  3. Закройте редактор реестра.

  4. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.

Важно! Изменения параметров этого подраздела распространяются на все установленные на компьютере программы, которые используют ядро базы данных Microsoft Jet для доступа к данным Paradox. Помимо Microsoft Access 2000 в их число входят Microsoft Excel 2000, Microsoft Visual Basic 6.0 версии или новее и, возможно, некоторые другие. Если изменения должны действовать только для Access 2000, их нужно выполнить в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Office\9.0\Access\Jet\4.0\Engines
\Paradox. Если подраздела \Paradox не существует, создайте подраздел и добавьте в него параметры.

Примечание. Можно также использовать метод DAO, Application.DBEngine.SetOption, для динамического изменения значений параметров реестра Microsoft Jet только для одного сеанса работы, не изменяя при этом значений в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Изменение настроек текстового драйвера

Изменение настроек текстового драйвера

  1. Запустите редактор реестра.

    Инструкции

  2. Перейдите в раздел \HKEY_LOCAL_MACHINE
    \SOFTWARE\Microsoft\Jet\4.0\Engines\Text и внесите необходимые изменения.

    Для получения дополнительных сведений о настройках текстовых драйверов нажмите кнопку [image] .

  3. Закройте редактор реестра.

  4. Чтобы новые настройки вступили в силу, закройте и перезапустите Microsoft Access.

Важно! Изменения параметров этого подраздела распространяются на все установленные на компьютере программы, которые используют ядро базы данных Microsoft Jet для доступа к текстовым данным. Помимо Microsoft Access 2000 в их число входят Microsoft Excel 2000, Microsoft Visual Basic версии 6.0 или новее и, возможно, некоторые другие. Если изменения должны действовать только для Access 2000, их нужно выполнить в подразделе \HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Office\9.0\Access\Jet\4.0\Engines
\Text. Если подраздела \Text не существует, создайте подраздел и добавьте в него параметры.

Примечание. Можно также использовать метод DAO, Application.DBEngine.SetOption, для динамического изменения значений параметров реестра Microsoft Jet только для одного сеанса работы, не изменяя при этом значений в реестре Windows. Для получения дополнительных сведений нажмите кнопку [image] .


 Определение формата отображения данных для поля в режиме конструктора запросов

Определение формата отображения данных для поля в режиме конструктора запросов

  1. Откройте запрос в режиме конструктора.

  2. В бланке запроса поместите курсор в столбец поля, которое нужно отформатировать. Курсор можно поместить в любую строку этого столбца.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств этого поля.

  4. На вкладке Общие нажмите кнопку со стрелкой рядом с ячейкой свойства Формат поля(Format), и выберите один из стандартных форматов. Если ни один из стандартных форматов не подходит, можно ввести в ячейке свойства Формат поля собственный формат для любого поля, кроме поля объекта OLE. Для получения дополнительных сведений о создании собственного формата нажмите кнопку [image] .

Примечание. Для обеспечения согласованности в работе приложений, Microsoft Access использует региональные настройки, задаваемые в компоненте «Язык и стандарты» (Regional Settings) панели управления Windows, для вывода чисел и значений даты и времени. Для получения дополнительных сведений нажмите кнопку [image] .


 Определение маски ввода для поля в таблице

Определение маски ввода для поля в таблице

  1. Откройте таблицу в режиме конструктора.

  2. В верхней части окна выберите поле, для которого необходимо задать маску ввода.

  3. В нижней части окна на вкладке Общие нажмите кнопку построителя [image] рядом с ячейкой свойства Маска ввода (InputMask), чтобы запустить мастер масок ввода, и следуйте инструкциям диалоговых окон этого мастера.

Примечание.. Ввести маску ввода в окно свойств можно также и без использования мастера. В большинстве случаев проще всего создать маску с помощью мастера, но для полей типа «Числовой» и «Денежный» маску ввода необходимо задавать вручную. Для получения дополнительных сведений о задании маски ввода вручную нажмите кнопку [image] .


 Установка числа десятичных разрядов для отображения в элементе управления

Установка числа десятичных разрядов для отображения в элементе управления

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что элемент управления, который нужно изменить, выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. Выберите ячейку свойства Число десятичных знаков (DecimalPlaces), нажмите кнопку со стрелкой и выберите нужное число десятичных разрядов.

    Свойство Число десятичных знаков (DecimalPlaces) по умолчанию установлено в значение Авто; имеющийся список позволяет выбрать от 0 до 15 десятичных знаков. Когда это свойство установлено в значение Авто, поля, свойство Формат поля (Format) которых имеет значение Денежный, Фиксированный, С разделителями разрядов, Процентный или Экспоненциальный, будут выводится с двумя десятичными разрядами. Свойство Число десятичных знаков (DecimalPlaces) действует только тогда, когда установлено свойство Формат поля (Format) элемента управления. Для получения дополнительных сведений об установке формата отображения данных нажмите кнопку [image] .

Примечание. Свойство Число десятичных знаков (DecimalPlaces) определяет только число отображаемых десятичных разрядов, но не влияет на число разрядов, сохраняемых в поле. Например, если установить свойство Число десятичных знаков (DecimalPlaces) в значение 2 для поля типа «Числовой», свойство Размер поля (FieldSize) которого имеет значение Целое, то оно будет отображаться с двумя десятичными разрядами, но так как в этом поле хранятся только целые значения, в этих десятичных разрядах всегда будут нули. Чтобы изменить число сохраняемых десятичных разрядов, нужно изменить значение свойства Размер поля (FieldSize) числового поля. Для получения дополнительных сведений об установке свойства Размер поля (FieldSize) поля нажмите кнопку [image] .


 Установка числа десятичных разрядов, отображаемых в поле, в режиме конструктора запроса

Установка числа десятичных разрядов, отображаемых в поле, в режиме конструктора запроса

  1. Откройте запрос в режиме конструктора.

  2. В бланке запроса поместите курсор в столбец поля, которое нужно изменить. Курсор можно поместить в любую строку этого поля.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств этого поля.

  4. На вкладке Общие нажмите кнопку со стрелкой рядом с ячейкой свойства Число десятичных знаков (DecimalPlaces) и выберите нужное число десятичных разрядов.

    Свойство Число десятичных знаков (DecimalPlaces) по умолчанию установлено в значение Авто; имеющийся список значений позволяет использовать от 0 до 15 десятичных разрядов. Когда это свойство имеет значение Авто, поля, свойство Формат поля (Format) которых имеет значение Денежный, Фиксированный, С разделителями разрядов, Процентный или Экспоненциальный, будут выводиться с двумя десятичными разрядами. Свойство Число десятичных знаков (DecimalPlaces) действует только тогда, когда установлено свойство Формат поля (Format). Для получения дополнительных сведений об установке формата отображения данных поля нажмите кнопку [image] .

Примечание. Свойство Число десятичных знаков (DecimalPlaces) определяет только число отображаемых десятичных разрядов, но не влияет на число разрядов, сохраняемых в поле. Например, если установить свойство Число десятичных знаков (DecimalPlaces) в значение 2 для поля типа «Числовой», свойство Размер поля (FieldSize) которого имеет значение Целое, то оно будет отображаться с двумя десятичными разрядами, но так как в этом поле хранятся только целые значения, в этих десятичных разрядах всегда будут нули. Чтобы изменить число сохраняемых десятичных разрядов, нужно изменить значение свойства Размер поля (FieldSize) числового поля. Для получения дополнительных сведений об установке свойства Размер поля (FieldSize) поля нажмите кнопку [image] .


 Определение формата отображения данных для поля в режиме конструктора таблицы

Определение формата отображения данных для поля в режиме конструктора таблицы

  1. Откройте таблицу в режиме конструктора.

  2. В верхней части окна выберите поле, формат которого необходимо изменить.

  3. В нижней части окна на вкладке Общие нажмите кнопку со стрелкой рядом с ячейкой свойства Формат поля (Format) и выберите один из стандартных форматов. Если ни один из стандартных форматов не подходит, можно задать собственный формат в ячейке свойства Формат поля (Format) любого поля, кроме поля объекта OLE. Для получения дополнительных сведений об определении собственного формата нажмите кнопку [image] .

Примечание. Для обеспечения согласованности в работе приложений Microsoft Access использует региональные настройки, установленные в компоненте «Язык и стандарты» (Regional Settings) панели управления Windows, при выводе чисел и значений даты и времени. Для получения дополнительных сведений нажмите кнопку [image] .


 Определение маски ввода для поля в запросе

Определение маски ввода для поля в запросе

  1. Откройте запрос в режиме конструктора.

  2. В бланке запроса поместите курсор в столбец поля, которое нужно изменить. Курсор можно поместить в любую строку этого столбца.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств этого поля.

  4. На вкладке Общие нажмите кнопку построителя [image] рядом с ячейкой свойства Маска ввода, чтобы запустить мастер масок ввода, и следуйте инструкциям диалоговых окон этого мастера.

Примечание.. Ввести маску ввода в окно свойств можно также и без использования мастера. В большинстве случаев проще всего создать маску с помощью мастера, но для полей типа «Числовой» и «Денежный» маску ввода необходимо задавать вручную. Для получения дополнительных сведений о задании маски ввода вручную нажмите кнопку [image] .


 Установка числа десятичных разрядов для отображения в поле в режиме конструктора таблицы

Установка числа десятичных разрядов для отображения в поле в режиме конструктора таблицы

  1. Откройте таблицу в режиме конструктора.

  2. В верхней части окна выберите поле, для которого необходимо задать число десятичных разрядов.

  3. В нижней части окна на вкладке Общие нажмите кнопку со стрелкой рядом с ячейкой свойства Число десятичных знаков (DecimalPlaces) и выберите нужное число разрядов.

    Свойство Число десятичных знаков (DecimalPlaces) по умолчанию установлено в значение Авто; имеющийся список значений позволяет использовать от 0 до 15 десятичных разрядов. Когда это свойство имеет значение Авто, поля, свойство Формат поля (Format) которых имеет значение Денежный, Фиксированный, С разделителями разрядов, Процентный или Экспоненциальный, будут выводиться с двумя десятичными разрядами. Свойство Число десятичных знаков (DecimalPlaces) действует только тогда, когда установлено свойство Формат поля (Format). Для получения дополнительных сведений об установке формата отображения данных поля нажмите кнопку [image] .

Примечание. Свойство Число десятичных знаков (DecimalPlaces) определяет только число отображаемых десятичных разрядов, но не влияет на число разрядов, сохраняемых в поле. Например, если установить свойство Число десятичных знаков (DecimalPlaces) в значение 2 для поля типа «Числовой», свойство Размер поля (FieldSize) которого имеет значение Целое, то оно будет отображаться с двумя десятичными разрядами, но так как в этом поле хранятся только целые значения, в этих десятичных разрядах всегда будут нули. Чтобы изменить число сохраняемых десятичных разрядов, нужно изменить значение свойства Размер поля (FieldSize) числового поля. Для получения дополнительных сведений об установке свойства Размер поля (FieldSize) поля нажмите кнопку


Изменение или удаление пользовательских свойств базы данных

  1. При открытой базе данных выберите в меню Файл команду Свойства базы данных.

  2. Откройте вкладку Прочие.

  3. Выберите имя свойства, которое необходимо изменить или удалить, в столбце Название области Свойства.

  4. Чтобы изменить свойство, измените значения полей Тип или Значение и нажмите кнопку Изменить.

    Чтобы удалить свойство, нажмите кнопку Удалить.

Примечание. Если попытаться изменить название свойства, будет добавлено новое свойство. Чтобы изменить название свойства, удалите существующее свойство и добавьте его под другим названием.


 Удаление базы данных Access или проекта Access

Удаление базы данных Access или проекта Access

  1. Закройте базу данных Microsoft Access или проект Microsoft Access. При работе с сетевой (общей) базой данных убедитесь, что все пользователи закрыли ее.

  2. Нажмите кнопку Открыть [image] на панели инструментов.

  3. В диалоговом окне Открытие файла базы данных найдите файл базы данных Access или проекта Access, который нужно удалить, и щелкните его правой кнопкой мыши.

  4. Выберите в контекстном меню команду Удалить.

Примечания

  • Удаленный файл будет находиться в корзине (Recycle Bin), пока она не будет очищена.

  • При удалении базы данных Access или проекта Access, содержащих страницы доступа к данным, HTML-страницы не удаляются.

  • При удалении проекта Access база данных Microsoft SQL Server, к которой он подключен, не удаляется.

  • Можно также удалить базу данных Access или проект Access вне приложения Access. Закройте файл, щелкните его правой кнопкой мыши в проводнике Windows или в папке «Мой компьютер» и выберите в контекстном меню команду Удалить.


 Автоматическое удаление из таблицы повторяющихся записей

Автоматическое удаление из таблицы повторяющихся записей

Чтобы удалить из таблицы повторяющиеся записи, можно воспользоваться предлагаемой процедурой. Скопируйте структуру исходной таблицы, создайте ключ, содержащий все поля с повторяющимися значениями, и выполните запрос на добавление записей из исходной таблицы в новую таблицу. Так как повторяющиеся значения ключа недопустимы, повторяющиеся записи в новую таблицу включены не будут.

Создание новой таблицы

  1. В окне базы данных выберите значок Таблицы [image] в списке Объекты.

  2. Выберите имя таблицы, из которой требуется удалить повторяющиеся записи.

  3. Нажмите кнопку Копировать [image] на панели инструментов.

  4. Нажмите кнопку Вставить [image] на панели инструментов.

  5. В диалоговом окне Вставка таблицы введите имя новой таблицы, выберите переключатель только структура и нажмите кнопку OK.

  6. Откройте новую таблицу в режиме конструктора и выделите поле или поля, содержащие повторяющиеся значения в скопированной таблице.

  7. Нажмите кнопку Ключевое поле [image] на панели инструментов для создания ключа, содержащего выделенные поля.

  8. Сохраните и закройте таблицу.

Добавление в новую таблицу уникальных записей

  1. Создайте новый запрос на основе таблицы, содержащей повторяющиеся записи.

  2. В режиме конструктора запроса нажмите кнопку Тип запроса [image] на панели инструментов и выберите команду Добавление.

  3. В диалоговом окне Добавление выберите в раскрывающемся списке имя таблицы имя новой таблицы-получателя и нажмите кнопку OK.

  4. Перетащите звездочку (*) из списка полей в бланк запроса для включения в запрос всех полей исходной таблицы.

  5. Нажмите кнопку Запуск [image] на панели инструментов.

  6. Нажмите кнопку Да в ответ на вопрос о подтверждении добавления строк.

  7. Нажмите кнопку Да при получении сообщения о том, что будут добавлены не все записи. После этого в новую таблицу будут вставлены только уникальные записи.

  8. Чтобы просмотреть результаты, откройте таблицу, выбрав значок Таблицы [image] в списке Объекты окна базы данных и нажав кнопку Открыть на панели инструментов окна базы данных.

  9. Проверьте, правильно ли добавлены записи в новую таблицу. После этого можно удалить исходную таблицу и присвоить новой таблице имя исходной.


 Удаление поля из таблицы в режиме таблицы

Удаление поля из таблицы в режиме таблицы

  1. Откройте таблицу в режиме таблицы.

  2. Щелкните область выделения поля, которое нужно удалить.

  3. В меню Правка выберите команду Удалить столбец.

Примечания

  • Если другие объекты базы данных содержат ссылки на удаленное поле, эти ссылки также нужно удалить. Например, если отчет содержит элемент управления, присоединенный к удаленному полю, Microsoft Access не сможет получить данные этого поля и выдаст сообщение об ошибке.

  • Нельзя удалить поле, которое используется в связи. Сначала необходимо удалить связь.


 Удаление поля из таблицы в режиме конструктора

Удаление поля из таблицы в режиме конструктора

  1. Откройте таблицу в режиме конструктора.

  2. Выделите одно или несколько полей, которые необходимо удалить.

    Для выделения одного поля щелкните область выделения строки этого поля.

    Для выделения нескольких полей протащите указатель по областям выделения строк этих полей при нажатой кнопке мыши.

  3. На панели инструментов нажмите кнопку Удалить строки [image] .

Примечания

  • Если другие объекты базы данных содержат ссылки на удаленное поле, эти ссылки также нужно удалить. Например, если отчет содержит элемент управления, присоединенный к удаленному полю, Microsoft Access не сможет получить данные этого поля и выдаст сообщение об ошибке.

  • Нельзя удалить поле, которое используется в связи. Сначала необходимо удалить связь.


 Удаление рисунка или другого объекта из формы или отчета

Удаление рисунка или другого объекта из формы или отчета

  1. Выполните одно из следующих действий.
    • Если объект расположен в свободной рамке объекта или в рамке рисунка, выделите его в режиме конструктора формы или в режиме конструктора отчета.

    • Если объект является присоединенным, откройте форму в режиме формы (или в режиме таблицы), найдите запись, которую требуется изменить, и щелкните объект.
  2. Нажмите клавишу DELETE.

    Если объект является присоединенным, Microsoft Access удаляет его из присоединенной рамки объекта и отключает его от базового источника записей, но сама присоединенная рамка объекта остается в форме или отчете. Если объект находится в свободной рамке объекта или в элементе управления «Рисунок», Microsoft Access удаляет объект и элемент управления.

Примечание. Если нужно удалить присоединенную рамку объекта и все объекты, хранящиеся в базовом поле, удалите присоединенную рамку объекта в режиме конструктора формы или отчета, а затем, в базе данных Microsoft Access (.mdb), удалите поле объекта OLE в режиме конструктора таблицы; в случае же проекта Microsoft Access (.adp) удалите столбец типа «image» в режиме свойств столбцов в схеме базы данных.


 Удаление записей из одной таблицы или из нескольких таблиц, связанных отношением «один-к-одному»

Удаление записей из одной таблицы или из нескольких таблиц, связанных отношением «один-к-одному»

Для получения сведений, которые необходимо учитывать при использовании запроса на удаление записей, нажмите кнопку [image] .

  1. Создайте новый запрос, содержащий таблицы, из которых необходимо удалить записи.

    Инструкции

  2. В режиме конструктора запроса щелкните стрелку рядом с кнопкой Тип запроса [image] на панели инструментов и выберите команду Удаление.

  3. Для таблиц, из которых необходимо удалить записи, перетащите символ «звездочка» (*) из списка полей в бланк запроса.

    В ячейке Удаление этих полей появится значение Из, как показано на приведенном ниже рисунке.

  4. Чтобы задать условия отбора удаляемых записей, перетащите поля, для которых необходимо установить условия отбора, в бланк запроса.

    В ячейке Удаление этих полей появляется значение Условие, как показано на приведенном ниже рисунке.

    Задание условий отбора для удаления записей

  5. Введите условия отбора в ячейки Условие отбора соответствующих полей в бланке запроса.

    Для получения дополнительных сведений об определении условий отбора нажмите кнопку [image] .

  6. Чтобы просмотреть записи перед их удалением, нажмите кнопку Вид [image] на панели инструментов. Чтобы вернуться в режим конструктора, снова нажмите кнопку Вид [image] на панели инструментов. Внесите необходимые изменения в режиме конструктора.

  7. Чтобы удалить записи, нажмите кнопку Запуск [image] на панели инструментов.

Примечание. Чтобы прервать выполнение запроса, нажмите клавиши CTRL+BREAK.


 Удаление записей с помощью запроса, включающего обе таблицы, связанные отношением «один-ко-многим»

Удаление записей с помощью запроса, включающего обе таблицы, связанные отношением «один-ко-многим»

Для получения сведений, которые необходимо учитывать при использовании запроса на удаление записей, нажмите кнопку [image] .

  1. Создайте новый запрос, содержащий таблицы, из которых необходимо удалить записи или установить условие отбора.

    Инструкции

  2. В режиме конструктора запроса щелкните стрелку рядом с кнопкой Тип запроса [image] на панели инструментов и выберите команду Удаление.

  3. Для таблицы, содержащей связанные записи (на стороне «многие» отношения «один-ко-многим»), перетащите символ «звездочка» (*) из списка полей в бланк запроса.

    В ячейке Удаление этого поля появляется значение Из, как показано на следующем рисунке.

  4. Из главной таблицы (на стороне «один» отношения «один-ко-многим») перетащите поля, для которых необходимо установить условие отбора, в бланк запроса.

    В ячейке Удаление в этом поле появляется значение Условие, как показано на следующем рисунке.

    Задание условия отбора для удаления записей на обеих сторонах отношения «один-ко-многим»

  5. Введите условия отбора в ячейки Условие отбора соответствующих полей в бланке запроса.

    Для получения дополнительных сведений об определении условий отбора нажмите кнопку [image] .

  6. Чтобы просмотреть записи, которое будут удалены, нажмите кнопку Вид [image] на панели инструментов. Чтобы вернуться в режим конструктора запроса, снова нажмите кнопку Вид [image] на панели инструментов. Внесите в режиме конструктора необходимые изменения.

  7. Нажмите кнопку Запуск [image] на панели инструментов, чтобы удалить записи из таблицы, находящейся на стороне «многие».

  8. Выделите список полей для каждой таблицы на стороне «многие» и нажмите клавишу DELETE, чтобы удалить их из запроса.

  9. Когда в запросе останется лишь главная таблица, а в бланке запроса — поле, для которого нужно установить условие отбора, снова нажмите кнопку Запуск [image] . Microsoft Access удалит отобранные записи из таблицы, находящейся на стороне «один».

Примечание. Чтобы прервать выполнение запроса, нажмите клавиши CTRL+BREAK.


 Удаление записей с помощью запроса, включающего только таблицу на стороне «один» отношения «один-ко-многим»

Удаление записей с помощью запроса, включающего только таблицу на стороне «один» отношения «один-ко-многим»

Если при выполнении запроса на удаление, включающего только таблицу на стороне «один» отношения «один-ко-многим», для данного отношения было включено каскадное удаление, то будут удаляться также и связанные записи на стороне «многие». Для получения сведений, которые необходимо учитывать при использовании запроса на удаление записей, нажмите кнопку [image] .

  1. Создайте запрос, содержащий таблицу на стороне «один», из которой необходимо удалить записи.

    Инструкции

  2. В режиме конструктора запроса щелкните стрелку рядом с кнопкой Тип запроса [image] на панели инструментов и выберите команду Удаление.

  3. Перетащите символ «звездочка» (*) из списка полей данной таблицы в бланк запроса.

    В ячейке Удаление в этом поле появляется значение Из, как показано на следующем рисунке.

  4. Чтобы задать условия отбора удаляемых записей, перетащите поля, для которых необходимо установить условия отбора, в бланк запроса.

    В ячейке Удаление в этом поле появляется значение Условие, как показано на следующем рисунке.

    Задание условий отбора для удаления записей

  5. Введите условия отбора в ячейки Условие отбора соответствующих полей в бланке запроса.

    Для получения дополнительных сведений об определении условий отбора нажмите кнопку [image] .

  6. Чтобы просмотреть записи перед их удалением, нажмите кнопку Вид [image] на панели инструментов. Чтобы вернуться в режим конструктора, снова нажмите кнопку Вид [image] на панели инструментов. Внесите необходимые изменения в режиме конструктора.

  7. Чтобы удалить записи, нажмите кнопку Запуск [image] на панели инструментов.

Примечание. Чтобы прервать выполнение запроса, нажмите клавиши CTRL+BREAK.


Удаление кнопочной формы

  1. Откройте базу данных.

  2. Для открытия диалогового окна Диспетчер кнопочных форм выполните одно из следующих действий.
    • Если кнопочная форма была создана с помощью мастера баз данных, нажмите кнопку Изменение элементов кнопочной формы в кнопочной форме, открывающейся при запуске.

    • Если кнопочная форма была создана с помощью диспетчера кнопочных форм, выберите в меню Сервис команду Служебные программы и подкоманду Диспетчер кнопочных форм.
  3. Выберите удаляемую кнопочную форму в списке Страницы кнопочной формы и нажмите кнопку Удалить.


Удаление вкладки «Или» окна обычного фильтра

  1. Выберите вкладку Или, которую нужно удалить.

  2. В меню Правка выберите команду Удалить вкладку.


 Удаление текстового поля или другого элемента управления, расположенного в группе параметров в форме или отчете

Удаление текстового поля или другого элемента управления, расположенного в группе параметров в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Чтобы выделить группу, щелкните любой элемент управления из этой группы.

  3. Выделите элемент управления, который нужно удалить.

  4. Нажмите клавишу DELETE.

Примечание. Группа существует, пока в ней не останется всего лишь один элемент управления. Если в группе всего два элемента управления и один из них удаляется, группа будет также удалена.


 Отключение текстового поля или другого элемента управления в режиме формы, или запрет на изменение данных элемента управления

Отключение текстового поля или другого элемента управления в режиме формы, или запрет на изменение данных элемента управления

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно его свойств.

  3. Выполните одно из следующих действий.
    • Чтобы полностью отключить элемент управления, в результате чего он будет недоступен и не сможет получать фокус, установите свойство Доступ (Enabled) в значение Нет.

    • Чтобы разрешить пользователям чтение данных элемента управления, но запретить изменять их, установите свойство Блокировка (Locked) в значение Да. Если установить свойство Доступ (Enabled) в значение Нет, а свойство Блокировка (Locked) в значение Да, то элемент управления не будет отображаться, как недоступный, но не сможет получать фокус.

Примечания

  • Свойство Доступ (Enabled) можно использовать совместно со свойством После обновления (AfterUpdate), чтобы отключить элемент управления, пока пользователь не введет текст или не выберет значение в другом элементе. Например, можно отключить кнопку до тех пор, пока в поле не будет введено значение. В таком случае, свойство После обновления (AfterUpdate) поля используется для вызова процедуры обработки события или макроса, которые включают кнопку.

  • Для получения дополнительных сведений о свойствах Доступ (Enabled) и Блокировка (Locked) и их совместном использовании нажмите кнопку [image] .

  • Чтобы исключить элемент управления из последовательности перехода, но сохранить возможность его выбора пользователем, задайте для свойства Переход по Tab (TabStop) значение Нет.


 Автоматический вывод в запросе всех полей базовой таблицы или запроса

Автоматический вывод в запросе всех полей базовой таблицы или запроса

Все поля можно вывести на экран, не добавляя их в бланк запроса.

  1. Откройте запрос в режиме конструктора.

  2. Выделите запрос, щелкнув любую область его окна в режиме конструктора вне бланка запроса и списков полей.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств запроса.

  4. Установите свойство Вывод всех полей (OutputAllFields) в значение Да.

Примечания

  • Если требуется ограничить записи, возвращаемые в запросе, с помощью условий отбора, либо создать вычисляемое поле или задать порядок сортировки, следует добавить в бланк запроса необходимые для этого поля. Флажки в строке Вывод на экран для любого из этих полей должны быть сброшены; в противном случае эти поля будут выводиться в результирующем наборе записей дважды.

  • Можно изменить значение свойства Вывод всех полей (OutputAllFields), которое устанавливается по умолчанию для всех новых запросов. Для получения дополнительных сведений нажмите кнопку [image] .


 Отображение пользовательского описания поля в строке состояния запроса

Отображение пользовательского описания поля в строке состояния запроса

Можно создать пользовательское описание поля, которое будет выводиться при выборе поля в результирующем наборе записей.

  1. Откройте запрос в режиме конструктора.

  2. Выберите в бланке запроса поле, описание которого нужно изменить, и нажмите кнопку Свойства [image] на панели инструментов для вывода окна свойств поля.

  3. Введите в ячейку свойства Описание (Description) текст, который будет выводиться в строке состояния при выборе этого поля в результирующем наборе записей. Максимальная длина текста описания составляет 255 символов.

Новое описание будет появляться в строке состояния при выборе поля в запросе, открытом в режиме таблицы.


 Запрет на вывод в запросе повторяющихся записей на основании значений полей базовой таблицы

Запрет на вывод в запросе повторяющихся записей на основании значений полей базовой таблицы

  1. Откройте запрос в режиме конструктора.

  2. Выделите запрос, щелкнув любую область его окна в режиме конструктора вне бланка запроса и списков полей.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств запроса.

  4. Установите для свойства Уникальные записи (UniqueRecords) значение Да.

Примечания

  • Свойство Уникальные записи (UniqueRecords) действует только в тех случаях, когда в запросе используются несколько таблиц и выбираются поля из этих таблиц.

  • Если свойство Уникальные записи (UniqueRecords) устанавливается в значение Да, то свойство Уникальные значения (UniqueValues) автоматически получает значение Нет.

  • В качестве альтернативы использованию свойства Уникальные записи (UniqueRecords) можно добавить в бланк запроса поле, по которому одна запись будет отличаться от другой.


 Запрет на вывод в запросе повторяющихся записей на основании значений полей в бланке

Запрет на вывод в запросе повторяющихся записей на основании значений полей в бланке

  1. Откройте запрос в режиме конструктора.

  2. Выделите запрос, щелкнув любую область его окна в режиме конструктора вне бланка запроса и списков полей.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств запроса.

  4. Установите свойство Уникальные значения (UniqueValues) в значение Да.

    Если результат запроса содержит несколько полей, то для включения записи в результирующий набор комбинация значений этих полей должна быть уникальной.

  5. Для просмотра результатов запроса нажмите кнопку Вид [image] на панели инструментов.

Примечание. Если свойство Уникальные значения (UniqueValues) устанавливается в значение Да, то свойство Уникальные записи (UniqueRecords) автоматически принимает значение Нет.


 Отображение или скрытие системных объектов в окне базы данных по умолчанию

Отображение или скрытие системных объектов в окне базы данных по умолчанию

Microsoft Access автоматически создает системные объекты при создании новой базы данных.

  1. В меню Сервис выберите команду Параметры.

  2. Откройте вкладку Вид.

  3. В группе Отображать установите или сбросьте флажок системные объекты.


 Повторное применение фильтра для получения самых свежих записей

Повторное применение фильтра для получения самых свежих записей

При работе с отобранными с помощью фильтра данными в сетевой (общей) базе данных требуется время от времени повторно применять фильтр, чтобы просмотреть записи, которые были добавлены, удалены или изменены с момента открытия формы или таблицы или с последнего применения фильтра.

  • Когда отобранные записи выведены в таблице, подтаблице, форме или подчиненной форме, выберите команду Применить фильтр в меню Записи.


 Вывод окна сообщения с помощью макроса

Вывод окна сообщения с помощью макроса

  1. Создайте макрос.

    Инструкции

  2. В пустой строке бланка выберите макрокоманду Сообщение (MsgBox) в списке макрокоманд и укажите аргументы макрокоманды.

  3. Нажмите кнопку Сохранить [image] для записи макроса.

  4. Запустите макрос.

    Инструкции

Для получения дополнительных сведений о макрокоманде «Сообщение» (MsgBox) нажмите кнопку [image] .


Вывод окна сообщения с помощью программы Visual Basic

  1. Создайте процедуру Visual Basic.

    Инструкции

  2. Добавьте в процедуру инструкцию, присваивающую переменной значение, возвращаемое функцией MsgBox. Значение, возвращаемое функцией, определяется кнопкой, которую пользователь нажимает в окне сообщения. В дальнейшем в процедуре можно определить различные действия, выполняемые в зависимости от возвращаемого значения.

    Например, следующая инструкция вызывает функцию MsgBox, выводящую сообщение, и присваивает возвращаемое значение переменной RetValue:

    RetValue = MsgBox("Продолжить?", vbOKCancel)

  3. Запустите процедуру.

    Инструкции

Для получения дополнительных сведений о функции MsgBox нажмите кнопку [image] .


 Вывод на экран таблицы «Ошибки вставки»

Вывод на экран таблицы «Ошибки вставки»

  1. В окне базы данных в базе данных Microsoft Access выберите значок Таблицы [image] в списке Объекты.

  2. Дважды щелкните таблицу «Ошибки вставки».


 Отображение рисунка или другого объекта в форме или отчете в виде значка

Отображение рисунка или другого объекта в форме или отчете в виде значка

  1. Выполните одно из следующих действий.
    • Если объект является свободным, выберите его в режиме конструктора формы или режиме конструктора отчета.

    • Если объект является присоединенным, откройте форму в режиме формы (или в режиме таблицы), найдите запись, которую нужно изменить, и выберите объект.
  2. В меню Правка установите указатель на соответствующую команду Объект ... (например, на команду Объект Лист для объекта Microsoft Excel) и выберите подкоманду Преобразовать.

  3. В диалоговом окне Преобразование установите флажок В виде значка.

Примечание. Вывод объекта в виде значка может значительно сэкономить объем занимаемого дискового пространства, так как OLE-сервер (приложение, использовавшееся для создания объекта) посылает лишь описание объекта, состоящее из значка, а не сам объект.


 Просмотр значения переменной или выражения для приостановленной программы в окне программы редактора Visual Basic

Просмотр значения переменной или выражения для приостановленной программы в окне программы редактора Visual Basic

  1. В меню Tools выберите команду Options.

  2. Откройте вкладку Editor.

  3. Убедитесь, что в группе Code Settings установлен флажок Auto Data Tips.

Если флажок Auto Data Tips установлен, то будет возможен просмотр значений переменных или выражений в приостановленной программе. Для просмотра текущего значения переменной или выражения наведите на них указатель.


 Отображение Web-страницы в форме

Отображение Web-страницы в форме

Для того чтобы можно было добавить в форму элемент управления «Microsoft Web Browser», необходимо, чтобы на компьютере был установлен обозреватель Microsoft Internet Explorer версии 3.0 или более новый. См. сведения об установке обозревателя Microsoft Internet Explorer.

  1. Откройте форму в режиме конструктора.

  2. На панели элементов нажмите кнопку Другие элементы Элемент ActiveX .

    На экране появится меню, содержащее список всех зарегистрированных в системе элементов ActiveX.

  3. В меню элементов ActiveX выберите команду Обозреватель веб-страниц Microsoft.

  4. В форме укажите место, куда необходимо поместить данный элемент управления.

  5. При необходимости измените положение и размер элемента управления.


 Создание гиперссылки путем перетаскивания ярлыка Интернета

Создание гиперссылки путем перетаскивания ярлыка Интернета

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Перейдите на ярлык Интернета (значок на рабочем столе или элемент в подкаталоге History каталога Windows).

  3. Выделите ярлык Интернета.

  4. Перетащите правой кнопкой мыши выделенный ярлык в форму или отчет.

    Надпись будет добавлена в форму или отчет. Для проверки ссылки щелкните надпись правой кнопкой мыши и выберите в контекстном меню команду Гиперссылка и подкоманду Открыть.


 Изменение присоединенного рисунка или другого объекта в форме

Изменение присоединенного рисунка или другого объекта в форме

  1. Откройте форму в режиме формы (или в режиме таблицы).

  2. Перейдите на запись, содержащую объект, который требуется изменить.

  3. Дважды щелкните нужный объект.

    Microsoft Access откроет приложение, в котором был создан объект (приложение-сервер OLE), если оно доступно. Приложение может быть открыто в отдельном окне, либо объект будет доступен для редактирования по месту.

    Примечание. При двойном щелчке объекта звукозаписи или видеозаписи этот объект воспроизводится. Чтобы открыть объекты этих типов для редактирования, выделите объект и выберите соответствующую команду Объект... в меню Правка. Например, выберите команду Объект Звукозапись и подкоманду Воспроизвести или Изменить.

  4. Внесите необходимые изменения, затем выполните одно из следующих действий.
    • Если объект редактируется по месту, выберите в форме любое место вне присоединенной рамки объекта . Если выбрать команду Выход в меню Файл , будет осуществлен выход из Microsoft Access.

    • Если объект редактируется в отдельном окне, выберите в меню Файл (File) приложения-сервера OLE команду Выход (Exit). В ответ на просьбу подтвердить обновление документа нажмите кнопку OK.

Примечания

  • Чтобы можно было редактировать объект в присоединенной рамке объекта, свойство Доступ (Enabled) присоединенной рамки должно иметь значение Да, а свойство Блокировка (Locked) — значение Нет.

  • Чтобы определить действие, выполняемое при двойном щелчке объекта, воспользуйтесь свойствами Команда (Verb) и Автоматический запуск (AutoActivate) присоединенной рамки объекта. Например, можно вместо открытия по месту открыть объект в отдельном окне. Для получения дополнительных сведений о свойстве Команда (Verb) нажмите кнопку [image] . Для получения дополнительных сведений о свойстве Автоматический запуск (AutoActivate) нажмите кнопку [image] .


 Изменение свободного рисунка или другого объекта в форме или отчете

Изменение свободного рисунка или другого объекта в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Дважды щелкните нужный объект.

  3. Microsoft Access откроет приложение, в котором был создан этот объект (приложение-сервер OLE), если оно доступно.

    Примечание. При двойном щелчке объекта звукозаписи или видеозаписи этот объект воспроизводится. Чтобы открыть объекты этих типов для редактирования, выделите объект и выберите соответствующую команду Объект... в меню Правка. Например, выберите команду Объект Звукозапись и подкоманду Воспроизвести или Изменить.

  4. Внесите в объект необходимые изменения, а затем выполните одно из следующих действий.
    • Если объект редактируется по месту, выберите в форме любое место вне свободной рамки объекта. Если выбрать команду Выход в меню Файл, будет осуществлен выход из Microsoft Access.

    • Если объект редактируется в отдельном окне, выберите в меню Файл (File) приложения-сервера OLE команду Выход (Exit). В ответ на просьбу подтвердить обновление документа нажмите кнопку OK.

Примечания

  • В большинстве случаев изменения в свободный объект вносятся в режиме конструктора формы или отчета. Чтобы можно было также изменять объект и в режиме формы, установите свойство Доступ (Enabled) свободной рамки объекта в значение Да, а свойство Блокировка (Locked) — в значение Нет.

  • Эта процедура применима только к рисункам, находящимся в свободной рамке объекта, а не в элементах управления «Рисунок». Рисунок в элементе управления «Рисунок» не связан с приложением, использовавшимся для его создания.


 Добавление существующего присоединенного объекта в форму

Добавление существующего присоединенного объекта в форму

  1. Создайте в форме присоединенную рамку объекта, если это еще не сделано.

    Инструкции

  2. Переключитесь в режим формы или режим таблицы.

  3. Перейдите на запись, в которую нужно встроить объект, и щелкните поле объекта OLE в базе данных Microsoft Access (.mdb) или столбец типа «image» в проекте Microsoft Access (.adp).

  4. В меню Вставка выберите команду Объект.

  5. В диалоговом окне Вставка объекта выберите переключатель Создать из файла, а затем укажите путь к файлу. Если точный путь неизвестен, нажмите кнопку Обзор.

  6. Чтобы объект выводился в виде значка, установите флажок В виде значка. Представление объекта в виде значка удобно, когда объект содержит дополнительные сведения, которые не должны все время выводиться на экран; кроме того, это значительно экономит место на диске.

  7. Нажмите кнопку OK.

    В режиме формы объект автоматически отображается на экране. В режиме таблицы отображается только имя объекта, например, «Точечный рисунок».

  8. Для редактирования объекта дважды щелкните его.

Примечания

  • Если приложение, из которого производится копирование, поддерживает операцию перетаскивания («drag-and-drop») OLE, то можно перетаскивать файлы прямо из проводника Windows или с рабочего стола, а не использовать команду Объект.

  • После вставки объекта можно изменять его размеры и пропорции.

    Инструкции

  • Можно также вставить присоединенный объект в таблицу или в запрос в режиме таблицы. Просто выделите поле, в которое нужно вставить объект (оно должно быть полем объекта OLE или столбцом типа «image»), и выполните шаги с 4 по 7. Для просмотра этого объекта нужно создать присоединенную рамку объекта в форме или отчете.


 Добавление существующего свободного объекта в форму или отчет

Добавление существующего свободного объекта в форму или отчет

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Нажмите кнопку Свободная рамка объекта [image] на панели элементов.

  3. Выберите в форме или отчете место, в которое нужно поместить вставляемый объект.

  4. В диалоговом окне Вставка объекта выберите переключатель Создать из файла и укажите путь к файлу. Если точный путь неизвестен, нажмите кнопку Обзор.

  5. Чтобы объект выводился в виде значка, установите флажок В виде значка. Представление объекта в виде значка удобно, когда объект содержит дополнительные сведения, которые не должны все время выводиться на экран; кроме того, это значительно экономит место на диске.

  6. Нажмите кнопку OK.

Microsoft Access создает свободную рамку объекта и выводит объект в этой рамке. Если нужно отредактировать объект, дважды щелкните его.

Примечания

  • Если приложение, из которого производится копирование, поддерживает операцию перетаскивания («drag-and-drop») OLE, то можно перетаскивать файлы прямо из проводника Windows или с рабочего стола, а не использовать инструмент Свободная рамка объекта.

  • После вставки объекта можно изменять его размеры и пропорции.

    Инструкции

  • В большинстве случаев свободный объект редактируется в режиме конструктора формы или отчета. Если нужно иметь возможность редактирования объекта и в режиме формы, установите свойство Доступ (Enabled) свободной рамки объекта в значение Да, а свойство Блокировка — в значение Нет.


 Добавление части существующего присоединенного объекта в форму

Добавление части существующего присоединенного объекта в форму

Следующие действия могут быть выполнены только в том случае, если исходное приложение поддерживает копирование части существующего объекта с помощью механизма OLE.

  1. Создайте в форме присоединенную рамку объекта, если это еще не сделано.

    Инструкции

  2. Откройте файл в исходном приложении и выделите вставляемый фрагмент. Например, откройте Microsoft Excel и выделите в таблице диапазон ячеек.

  3. Выберите в меню Правка команду Копировать.

  4. Вернитесь в Microsoft Access, переключитесь в режим формы или режим таблицы, перейдите на запись, в которую нужно вставить объект, и щелкните поле объекта OLE в базе данных Microsoft Access (.mdb) или столбец типа «image» в проекте Microsoft Access (.adp).

  5. Нажмите кнопку Вставить [image] на панели инструментов.

    Примечание. Чтобы отобразить объект в виде значка или указать тип вставляемого объекта, выберите команду Специальная вставка в меню Правка. Для получения дополнительных сведений о параметрах команды Специальная вставка нажмите кнопку [image] .

    В режиме формы объект автоматически отображается на экране. В режиме таблицы отображается только имя объекта, например, «Лист Microsoft Excel».

  6. Для редактирования объекта дважды щелкните его.

Примечания

  • Если приложение, из которого производится копирование, поддерживает операцию перетаскивания («drag-and-drop») OLE, можно перетащить выделенные данные из этого приложения в поле в режиме формы.

  • После вставки объекта можно изменять его размеры и пропорции.

    Инструкции

  • Присоединенный объект можно также вставить в таблицу или запрос в режиме таблицы. Просто выделите поле, в которое нужно вставить объект (оно должно быть полем объекта OLE или столбцом типа «image»), и нажмите кнопку Вставить [image] на панели инструментов. Для просмотра объекта нужно создать присоединенную рамку объекта в форме или отчете.


 Добавление части существующего свободного объекта в форму или отчет

Добавление части существующего свободного объекта в форму или отчет

Следующие действия могут быть выполнены только в том случае, если исходное приложение поддерживает копирование части существующего объекта с помощью механизма OLE.

  1. Откройте файл в исходном приложении и выделите вставляемые данные. Например, откройте Microsoft Excel и выделите в таблице диапазон ячеек.

  2. Выберите в меню Правка команду Копировать.

  3. Переключитесь в Microsoft Access.

  4. В режиме конструктора формы или в режиме конструктора отчета нажмите кнопку Вставить [image] на панели инструментов.

Microsoft Access создает свободную рамку объекта и выводит объект в этой рамке. Если нужно отредактировать объект, дважды щелкните его.

Примечание. Чтобы отобразить объект в виде значка или указать тип вставляемого объекта, выберите команду Специальная вставка в меню Правка. Для получения дополнительных сведений о параметрах команды Специальная вставка нажмите кнопку [image] .

Примечания

  • Если приложение, из которого производится копирование, поддерживает операцию перетаскивания («drag-and-drop») OLE, то можно перетащить выбранные данные из этого приложения в форму или отчет, открытые в режиме конструктора. При этом Microsoft Access создает свободную рамку объекта и вставляет в нее выделенные данные.

  • После вставки объекта можно изменять его размеры и пропорции.

    Инструкции

  • В большинстве случаев свободный объект редактируется в режиме конструктора формы или отчета. Если нужно иметь возможность редактирования объекта и в режиме формы, установите свойство Доступ (Enabled) свободной рамки объекта в значение Да, а свойство Блокировка — в значение Нет.


 Использование в Microsoft Access 2000 баз данных предыдущих версий

Использование в Microsoft Access 2000 баз данных предыдущих версий

  1. Нажмите кнопку Открыть [image] на панели инструментов.

  2. Выделите файл базы данных предыдущей версии Access и нажмите кнопку Открыть.

  3. В диалоговом окне Преобразование или открытие базы данных выберите переключатель Открыть базу данных.

После этого Microsoft Access разрешает использование базы данных предыдущей версии в Microsoft Access 2000, не внося в нее никаких постоянных изменений. Эту базу данных можно будет по-прежнему открывать в той версии Microsoft Access, в которой она была создана.

Примечание. Можно также использовать защищенную базу данных предыдущей версии Access.


 Ввод условия отбора в запрос, в котором выполняются вычисления

Ввод условия отбора в запрос, в котором выполняются вычисления

В бланке запроса место задания условия отбора определяет момент выполнения вычислений.

Примечание. Хотя в следующих примерах демонстрируются только запросы, рассчитывающие итоговые значения, эти рекомендации применимы также и к вычисляемым полям.

  • Для выполнения группировки до выполнения вычислений над группами записей следует определить условия в ячейках строки Группировка.

    Установка условия для группировки, определяющего момент выполнения вычислений

  • Чтобы после выполнения вычислений возвращались только отобранные результаты, следует определить условия отбора в поле, для которого выполняются расчеты. Это правило применяется при выполнении вычислений для каждой записи, для групп записей или для всех записей.

    Выполнение вычислений и возврат отобранных результатов

  • Для отбора записей до их группировки и до выполнения вычислений добавьте в бланк запроса поле, по которому будет проводиться отбор записей, а затем определите условие отбора в ячейке строки Условие отбора этого поля. Если в этом же запросе нужно вычислять итоговые значения, следует выбрать значение Условие в ячейке строки Групповая операция поля, содержащего условие отбора. Это правило применяется при расчетах итоговых значений для всех записей или для групп записей. (При этом автоматически сбрасывается флажок Вывод на экран).

    В приведенном ниже примере поле «ОтпускнаяЦена» используется дважды: один раз для отбора записей, а другой — для вычисления итогового значения. Можно использовать и другое поле для отбора записей, перетащив это поле в бланк запроса и установив в его ячейке Групповая операция значение Условие.

    Отбор записей и вычисление итогового значения с использованием одно и того же поля

Примечание. Для просмотра примеров выражений, используемых в условиях отбора, нажмите кнопку [image] .


Ввод гиперссылки на страницах доступа к данным путем вставки гиперссылки или ее адреса

  1. Перейдите к гиперссылке или адресу гиперссылки одним из следующих способов.
    • Откройте документ, содержащий гиперссылку или ее адрес.

    • В Web-обозревателе, например, в Microsoft Internet Explorer, перейдите на страницу, содержащую гиперссылку или ее адрес.
  2. Выполните одно из следующих действий.
    • В документе выделите гиперссылку или ее адрес, а затем выберите команду Копировать в меню Правка.

    • В Web-обозревателе выберите адрес в поле Адрес или выделите на странице адрес гиперссылки, щелкните его правой кнопкой и выберите в контекстном меню команду Копировать или Копировать ярлык.
  3. Откройте страницу доступа к данным в Web-обозревателе.

  4. Поместите курсор в поле, которое может хранить гиперссылки.

  5. Выберите в меню Правка команду Вставить.

    На странице доступа к данным поле, в которое вводится адрес гиперссылки, не форматирует адрес как гиперссылку. Преобразованный в гиперссылку адрес следует искать в другом месте страницы.

Совет. Нажмите кнопку Обновить на панели инструментов обозревателя Internet Explorer, чтобы отобразить адрес гиперссылки в виде отформатированной гиперссылки.


 Ввод гиперссылки для создания сообщения электронной почты в режиме формы или таблицы

Ввод гиперссылки для создания сообщения электронной почты в режиме формы или таблицы

  1. Выполните одно из следующих действий.
    • В базе данных Microsoft Access (.mdb) откройте таблицу или запрос в режиме таблицы.

    • В базе данных Access или в проекте Microsoft Access (.adp) откройте форму в режиме таблицы или в режиме формы.
  2. Поместите курсор в поле гиперссылки в таблице или в текстовое поле или поле со списком, которое может содержать гиперссылки, в форме.

  3. Нажмите кнопку Добавить гиперссылку [image] на панели инструментов.

  4. В диалоговом окне Добавить гиперссылку щелкните значок Электронная почта в области Связать с.

  5. В поле Текст введите текст, который должен отображаться в поле или текстовом поле. Если оставить это поле пустым, то Microsoft Access будет в качестве текста выводить адрес электронной почты и тему сообщения.

  6. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать адрес электронной почты и тему сообщения.

  7. В поле Электронная почта введите адрес электронной почты. Можно также выбрать адрес из списка Недавно использовавшиеся адреса электронной почты.

  8. В поле Тема введите текст, который должен появляться в строке «Тема» (Subject) сообщения.

    Примечание. Некоторые Web-обозреватели и программы электронной почты могут не распознавать строку «Тема».

  9. Нажмите кнопку OK.

    По щелчку гиперссылки Microsoft Access открывает программу электронной почты и создает новое сообщение с заполненными полями адреса и темы.


 Ввод гиперссылки на существующий файл или Web-страницу с помощью кнопки «Добавить гиперссылку»

Ввод гиперссылки на существующий файл или Web-страницу с помощью кнопки «Добавить гиперссылку»

  1. Выполните одно из следующих действий.
    • В базе данных Microsoft Access (.mdb) откройте таблицу или запрос в режиме таблицы.

    • В базе данных Access или в проекте Microsoft Access (.adp) откройте форму в режиме таблицы или в режиме формы.
  2. Поместите курсор в поле гиперссылки в таблице или в текстовое поле или поле со списком, которое может содержать гиперссылки, в форме.

  3. Нажмите кнопку Добавить гиперссылку [image] на панели инструментов.

  4. В диалоговом окне Добавить гиперссылку щелкните значок Имеющийся файл или Web-страница в области Связать с.

  5. В поле Текст введите текст, который должен отображаться для гиперссылки. Если оставить это поле пустым, то Microsoft Access будет в качестве текста выводить адрес гиперссылки.

  6. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать адрес гиперссылки.

  7. Выберите файл или Web-страницу, на которые должна указывать ссылка, одним из следующих способов.
    • В поле Введите имя файла или Web-страницы введите путь к файлу или путь URL.

    • В области Выберите из списка щелкните значок Последние файлы, Просмотренные страницы или Вставленные ссылки. Затем выберите объект из списка.

    • Нажмите кнопку Файл, чтобы выбрать файл на жестком диске или в сети.

    • Нажмите кнопку Web-страница, чтобы найти страницу в Интернете или интрасети.
  8. Чтобы перейти к определенному месту в HTML-файле, либо к объекту базы данных Microsoft Access (.mdb) или проекта Microsoft Access (.adp), нажмите кнопку Закладка. Выберите из списка закладку или объект и нажмите кнопку OK.

  9. В окне Добавить гиперссылку нажмите кнопку OK.

    В поле или элемент управления будет добавлена гиперссылка. По щелчку гиперссылки открывается требуемый документ, Web-страница или объект.


 Одновременное создание новой страницы доступа к данным и гиперссылки на нее

Одновременное создание новой страницы доступа к данным и гиперссылки на нее

  1. Выполните одно из следующих действий.
    • В базе данных Microsoft Access (.mdb) откройте таблицу или запрос в режиме таблицы.

    • В базе данных Access или в проекте Microsoft Access (.adp) откройте форму в режиме таблицы или в режиме формы.
  2. Поместите курсор в поле гиперссылки в таблице или в текстовое поле или поле со списком, которое может содержать гиперссылки, в форме.

  3. Нажмите кнопку Добавить гиперссылку [image] на панели инструментов.

  4. В диалоговом окне Добавить гиперссылку щелкните значок Создать страницу в области Связать с.

  5. В поле Текст введите текст, который должен отображаться в поле или текстовом поле. Если оставить это поле пустым, то Microsoft Access будет в качестве текста выводить адрес гиперссылки.

  6. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать адрес гиперссылки.

  7. В поле Имя нового документа введите имя и трехсимвольное расширение типа файла, который нужно создать. Если не указывать расширение или ввести .htm или .html, то Microsoft Access создаст новую страницу доступа к данным.

  8. Microsoft Access создает новый документ в текущей папке. Чтобы указать другую папку, нажмите кнопку Изменить.

  9. Выберите нужный переключатель в области Когда вносить правку в новый документ. Новый документ можно редактировать либо сейчас, либо позже.

  10. Нажмите кнопку OK.

    В поле или элемент управления будет добавлена гиперссылка. По щелчку гиперссылки открывается требуемый документ.


 Ввод гиперссылки на объект текущей базы данных в режиме формы или таблицы

Ввод гиперссылки на объект текущей базы данных в режиме формы или таблицы

  1. Выполните одно из следующих действий.
    • В базе данных Microsoft Access (.mdb) откройте таблицу или запрос в режиме таблицы.

    • В базе данных Access или в проекте Microsoft Access (.adp) откройте форму в режиме таблицы или в режиме формы.
  2. Поместите курсор в поле гиперссылки в таблице или в текстовое поле или поле со списком, которое может содержать гиперссылки, в форме.

  3. Нажмите кнопку Добавить гиперссылку [image] на панели инструментов.

  4. В диалоговом окне Добавить гиперссылку щелкните значок Объект в этой базе данных в области Связать с.

  5. В поле Текст введите текст, который должен отображаться в поле или текстовом поле. Если оставить это поле пустым, то Microsoft Access будет в качестве текста выводить тип и имя объекта.

  6. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя на гиперссылку. Если оставить поле Текст подсказки пустым, Access в качестве подсказки будет показывать тип и имя объекта.

  7. Выберите из списка объект базы данных, на который должна указывать ссылка.

  8. Нажмите кнопку OK.

    В поле или элемент управления будет добавлена гиперссылка. По щелчку гиперссылки открывается требуемый объект.


 Типы данных, которые могут иметь поля в Microsoft Access

Типы данных, которые могут иметь поля в Microsoft Access

В приведенной ниже таблице указаны все типы данных в Microsoft Access, их назначение и размеры.

Тип данных | Использование | Размер
Текстовый | Текст или комбинация текста и чисел, например, адреса, а также числа, не требующие вычислений, например, номера телефонов, инвентарные номера или почтовые индексы. Для получения дополнительных сведений об определении текстового поля нажмите кнопку [image] . | До 255 символов. Microsoft Access хранит только введенные в поле символы; незаполненные части полей типа «Текстовый» не сохраняются. Для определения максимального количества символов, которые можно ввести, используйте свойство Размер поля (FieldSize).
Поле MЕМО | Длинный текст или числа, например, примечания или описания. Для получения дополнительных сведений об определении полей MЕМО нажмите кнопку [image] . | До 64 000 символов.
Числовой | Числовые данные, используемые для математических вычислений, за исключением финансовых расчетов (для них следует использовать тип «Денежный»). Для более точного определения типа числа используйте свойство Размер поля (FieldSize). Для получения дополнительных сведений об определении числовых полей нажмите кнопку [image] . | 1, 2, 4 или 8 байтов. 16 байтов только для кодов репликации (GUID). Для получения дополнительных сведений об изменении размеров числовых полей нажмите кнопку [image] .
Дата/время | Даты и время. Для получения дополнительных сведений об определении полей «Дата/время» нажмите кнопку [image] . | 8 байтов.
Денежный | Значения валют. Денежный тип используется для предотвращения округлений во время вычислений. Предполагает до 15 символов в целой части числа и 4 - в дробной. Для получения дополнительных сведений об определении полей типа «Денежный» нажмите кнопку [image] . | 8 байтов.
Счетчик | Автоматическая вставка последовательных (увеличивающихся на 1) или случайных чисел при добавлении записи. Для получения дополнительных сведений об определении полей счетчика нажмите кнопку [image] . | 4 байта. 16 байтов только для кодов репликации (GUID).
Логический | Поля, содержащие только одно из двух возможных значений, таких как «Да/Нет», «Истина/Ложь», «Вкл/Выкл». Для получения дополнительных сведений об определении логических полей нажмите кнопку [image] . | 1 бит.
Поле объекта OLE | Объекты (например, документы Microsoft Word, электронные таблицы Microsoft Excel, рисунки, звуки и другие двоичные данные), созданные в других программах, использующих протокол OLE. Объекты могут быть связанными или внедренными в таблицу Microsoft Access. Для отображения объекта OLE в форме или отчете необходимо использовать присоединенную рамку объекта. Для получения дополнительных сведений об определении полей объектов OLE нажмите кнопку [image] . | До 1 гигабайта (ограничено объемом диска).
Гиперссылка | Поле, в котором хранятся гиперссылки. Гиперссылка может иметь вид пути UNC, либо URL-адреса. Для получения дополнительных сведений об определении полей гиперссылки нажмите кнопку [image] . | До 64 000 символов.
Мастер подстановок | Создает поле, позволяющее выбрать значение из другой таблицы или из списка значений, используя поле со списком. При выборе данного параметра в списке типов данных запускается мастер для автоматического определения этого поля. Для получения дополнительных сведений об определении полей подстановок нажмите кнопку [image] . | Тот же размер, который имеет первичный ключ, являющийся также и полем подстановок; обычно — 4 байта.

Примечание. Поля типов «Числовой», «Дата/время», «Денежный» и «Логический» имеют предопределенные форматы вывода данных. Формат вывода можно выбрать в ячейке свойства Формат поля (Format). Можно также создать собственные форматы вывода для всех типов данных, кроме объектов OLE. Для получения дополнительных сведений об определении пользовательского формата отображения нажмите кнопку [image] .


Создание в форме списка или поля со списком, которые заполняются с помощью функции

Следующий способ заполнения списка удобен в тех случаях, когда значения списка постоянно изменяются или когда значения не сохраняются в базе данных. Например, можно написать функцию, которая будет заполнять список датами, каждая из которых отстоит на конкретное количество дней от текущей даты.

  1. Создайте функцию. Для получения сведений о создании функции, нажмите кнопку [image] .

  2. Создайте список или поле со списком и откройте его окно свойств.

  3. Введите имя функции в качестве значения свойства Тип источника строк (RowSourceType). Знак равенства перед именем функции вводить не следует.

  4. Оставьте пустым значение свойства Источник строк (RowSource).


 Отбор записей с помощью окна расширенного фильтра

Отбор записей с помощью окна расширенного фильтра

  1. Откройте таблицу, запрос или форму в режиме таблицы или откройте форму в режиме формы.

  2. Выберите таблицу, подтаблицу, форму или подчиненную форму, которую нужно отфильтровать.

  3. Выберите в меню Записи команду Фильтр и подкоманду Расширенный фильтр.

  4. Добавьте в бланк поле или поля, для которых будут заданы искомые значения или другие условия, используемые в фильтре для отбора записей.

    Инструкции

  5. Чтобы указать порядок сортировки, выберите ячейку Сортировка (Sort) нужного поля, щелкните стрелку и выберите порядок сортировки.

    В Microsoft Access записи сортируются сначала по самому левому полю, затем по полю, расположенному в следующем столбце справа и т.д.

  6. В ячейке Условие отбора (Criteria) полей, включенных в бланк, укажите искомое значение или введите выражение.

    Для получения дополнительных сведений о вводе условий отбора нажмите кнопку [image] .

  7. Чтобы применить фильтр, нажмите кнопку Применение фильтра [image] на панели инструментов.

Примечания

  • Фильтры сохраняются автоматически при сохранении таблицы или формы. Таким образом, при повторном открытии таблицы или формы можно снова применить сохраненный фильтр.

  • При сохранении запроса фильтр сохраняется автоматически, но условие фильтра не добавляется к содержимому бланка запроса. При повторном открытии запроса можно снова применить сохраненный фильтр.

  • Если фильтр был создан для подтаблицы или подчиненной формы, он будет доступен и при открытии подтаблицы или подчиненной формы в режиме таблицы или формы.

  • Для получения дополнительных сведений о создании формы или отчета на основе данных, отобранных с помощью фильтра, нажмите кнопку [image] .

  • Чтобы не создавать весь фильтр заново, можно использовать в качестве фильтра существующий запрос. Для получения дополнительных сведений нажмите кнопку [image] .


 Отбор записей путем ввода условия в поле формы или таблицы

Отбор записей путем ввода условия в поле формы или таблицы

  1. Откройте таблицу, запрос или форму в режиме таблицы, либо форму в режиме формы.

    Чтобы отобрать записи в подтаблице, сначала щелкните маркер развертывания, чтобы открыть эту подтаблицу.

  2. Выполните одно из следующих действий.
    • Чтобы указать значение, которое должны содержать отобранные записи, щелкните правой кнопкой поле таблицы, подтаблицы, формы или подчиненной формы, в которой выполняется отбор записей, и введите нужное значение в поле Фильтр для контекстного меню. Например, чтобы найти все записи, поле «Город» которых содержит значение «Москва», щелкните поле «Город» правой кнопкой мыши и введите значение Москва в поле Фильтр для.

    • Чтобы задать более сложное условие отбора, введите полное выражение, состоящее из соответствующих идентификаторов, операторов, подстановочных знаков и значений. Например, чтобы найти все записи, поле «Должность» которых содержит слово «Маркетинг», щелкните правой кнопкой поле «Должность» и введите выражение *Marketing* в поле Фильтр для.Чтобы вывести список только тех заказов, которые были выполнены с задержкой более, чем на 15 дней, введите [ДатаВыполнения]-[ДатаНазначения]>15. (В этом последнем примере для ввода выражения не нужно щелкать поле правой кнопкой мыши. Однако в таблице, содержащей подтаблицы, сначала нужно выделить таблицу, по которой будет выполняться отбор записей.)

      Для просмотра примеров условий отбора, содержащих выражения, нажмите кнопку [image] . Для получения дополнительных сведений о подстановочных знаках нажмите кнопку [image] .

  3. Выполните одно из следующих действий.
    • Чтобы применить фильтр и закрыть контекстное меню, нажмите клавишу ENTER.

    • Чтобы применить фильтр и оставить контекстное меню открытым (чтобы иметь возможность задать дополнительное условие для поля), нажмите клавишу TAB. Введите новое условие и нажмите клавишу TAB еще раз. Повторяйте эти действия до тех пор, пока не будут получены все необходимые записи.

Примечания

  • Фильтры сохраняются автоматически при сохранении таблицы или формы. Таким образом, при повторном открытии таблицы или формы можно снова применить сохраненный фильтр.

  • При сохранении запроса фильтр сохраняется автоматически, но условие фильтра не добавляется к содержимому бланка запроса. При повторном запуске запроса можно снова применить сохраненный фильтр.


 Отбор записей с помощью выбора значений в форме или таблице

Отбор записей с помощью выбора значений в форме или таблице

  1. В поле формы, подчиненной формы, таблицы или подтаблицы найдите экземпляр значения, которое должны содержать отобранные с помощью фильтра записи.

  2. Выделите это значение и нажмите кнопку Фильтр по выделенному [image] на панели инструментов. Способ выбора значения определяет, какие записи будут отобраны фильтром. Для получения дополнительных сведений о выборе значений нажмите кнопку [image] .

    Повторяйте шаг 2, пока не будут получены все необходимые записи.

Примечания

  • Фильтры сохраняются автоматически при сохранении таблицы или формы. Таким образом, при повторном открытии таблицы или формы можно снова применить сохраненный фильтр.

  • При сохранении запроса фильтр сохраняется автоматически, но условие фильтра не добавляется к содержимому бланка запроса. При повторном открытии запроса можно снова применить сохраненный фильтр.

  • Если фильтр был создан для подтаблицы или подчиненной формы, он будет доступен и при открытии подтаблицы или подчиненной формы в режиме таблицы или формы.

  • С помощью фильтра можно также отбирать записи, не содержащие выделенного значения. Выделите значение, щелкните его правой кнопкой мыши и выберите команду Исключить выделенное.

  • Для получения дополнительных сведений о создании формы или отчета на основании отобранных данных нажмите кнопку [image] .


 Отбор записей путем ввода значений в пустую форму или таблицу

Отбор записей путем ввода значений в пустую форму или таблицу

  1. Откройте таблицу, запрос или форму в режиме таблицы или откройте форму в режиме формы.

    Чтобы отобрать записи в подтаблице, откройте эту подтаблицу, щелкнув ее маркер развертывания.

  2. Нажмите кнопку Изменить фильтр [image] на панели инструментов, чтобы переключиться в окно обычного фильтра.

    Можно задать условия отбора для формы, подчиненной формы, главной таблицы или любой подчиненной таблицы, которые отображены на экране. Фильтр каждой подтаблицы или подчиненной формы имеет свои вкладки Найти и Или.

  3. Выберите поле для задания условия отбора, которому должны удовлетворять записи, включаемые в результирующий набор записей.

  4. Введите условие отбора, выбрав искомое значение в раскрывающемся списке значений поля (если список содержит значения полей), или введите в поле значение с клавиатуры.
    • Для поиска записей, в которых установлены или сброшены флажок, выключатель или переключатель, щелчком мыши установите их в нужное состояние. Если требуется вернуть их в исходное неопределенное состояние, чтобы исключить их из условия отбора, продолжайте щелкать флажок, выключатель или переключатель, пока они не будут отмечены серым цветом.

    • Для поиска записей, имеющих в конкретном поле пустые или непустые значения, введите в это поле выражение Is Null или Is Not Null. (Эти значения можно выбрать из списка в полях, имеющих тип «поле MEMO», «поле объекта OLE» или «Гиперссылка», и в вычисляемых полях в запросах.)

    • Для поиска записей с использованием условия отбора, задающегося выражением, введите выражение в соответствующее поле или создайте его с помощью построителя выражений. Для просмотра примеров выражений нажмите кнопку [image] .

      Если задать значения в нескольких полях, фильтр будет возвращать только те записи, в которых каждое из этих полей содержит указанное значение.

  5. Чтобы задать несколько значений, которые могут содержать результирующие записи, щелкните вкладку Или фильтра таблицы, подтаблицы, формы или подчиненной формы, и введите дополнительные условия.

    Фильтр будет возвращать записи, соответствующие поля которых содержат все значения, указанные на вкладке Найти, или все значения, указанные на первой вкладке Или, или все значения, указанные на второй вкладке Или и т. д.

  6. Нажмите кнопку Применение фильтра [image] на панели инструментов.

Примечания

  • Фильтры сохраняются автоматически при сохранении таблицы или формы. Таким образом, при повторном открытии таблицы или формы можно снова применить сохраненный фильтр.

  • Если фильтр был создан для подтаблицы или подчиненной формы, он будет доступен и при открытии подтаблицы или подчиненной формы в режиме таблицы или формы.

  • При сохранении запроса фильтр сохраняется автоматически, но условие фильтра не добавляется к содержимому бланка запроса. При повторном открытии запроса можно снова применить сохраненный фильтр.

  • Для получения дополнительных сведений о создании формы или отчета на основании отобранных данных нажмите кнопку [image] .


 Поиск записей, не имеющих подчиненных записей в других таблицах, с помощью мастера запросов

Поиск записей, не имеющих подчиненных записей в других таблицах, с помощью мастера запросов

Мастер поиска записей, не имеющих подчиненных, используется для поиска записей, не имеющих соответствующих им записей в другой таблице. Например, можно найти клиентов, не имеющих заказов.

  1. В окне базы данных выберите значок Запросы [image] в списке Объекты и нажмите кнопку Создать на панели инструментов окна базы данных.

  2. В диалоговом окне Новый запрос выберите мастера Записи без подчиненных.

  3. Нажмите кнопку OK.

  4. Следуйте инструкциям диалоговых окон мастера. В последнем диалоговом окне можно либо запустить запрос, либо открыть его в режиме конструктора.

    Если получился не тот запрос, который был нужен, можно снова запустить мастера или изменить этот запрос в режиме конструктора. Для получения дополнительных сведений об изменении запроса в режиме конструктора нажмите кнопку [image] .


 Использование макроса для принудительного разрыва страницы в отчете при выполнении условия

Использование макроса для принудительного разрыва страницы в отчете при выполнении условия

  1. Откройте отчет в режиме конструктора.

  2. На панели элементов нажмите кнопку Разрыв страницы [image] , а затем выберите раздел отчета, в который нужно поместить условный разрыв страницы.

  3. Нажмите кнопку Свойства [image] на панели инструментов и задайте название элемента управления разрыва страницы в поле Имя.

  4. Создайте макрос.

    Инструкции

  5. В пустой строке бланка выберите макрокоманду ЗадатьЗначение (SetValue) в списке макрокоманд.

  6. Присвойте аргументу Элемент значение идентификатора свойства Вывод на экран (Visible) элемента управления разрыва страницы. Например, если элемент управления имеет имя «УслРазрывСтр», установите аргумент Элемент в значение [УслРазрывСтр].[Visible].

  7. Присвойте аргументу Выражение значение Нет.

  8. Нажмите кнопку Сохранить [image] для записи макроса.

  9. В режиме конструктора отчета введите в ячейку свойства Форматирование (OnFormat) раздела верхнего колонтитула отчета имя макроса.

    Тем самым элемент управления разрыва страницы будет изначально скрыт при форматировании страниц, поэтому разрыв страницы вставляться не будет.

  10. Создайте второй макрос, который устанавливает свойство Visible элемента управления разрыва страницы в значение Да, когда выполняется условие, заданное условным выражением.

Выберите макрокоманду, которая будет выполняться при выполнении заданного условия

  11. Нажмите кнопку Сохранить, чтобы сохранить макрос.

  12. Выделите раздел, в который был помещен разрыв страницы, и введите в ячейку его свойства Форматирование (OnFormat) имя второго макроса. В предыдущем примере для того, чтобы разрыв страницы происходил, когда элемент управления «Счетчик» в области данных имеет значение 10, введите имя второго макроса в ячейку свойства Форматирование (OnFormat) области данных.

Разрыв страницы будет вставляться при выполнении указанного условия. После разрыва страницы макрос, связанный с верхним колонтитулом, снова сделает элемент управления разрыва страницы скрытым до тех пор, пока условие вновь не будет выполнено.


 Использование процедуры Visual Basic для принудительного разрыва страницы в отчете при выполнении условия

Использование процедуры Visual Basic для принудительного разрыва страницы в отчете при выполнении условия

  1. Откройте отчет в режиме конструктора.

  2. На панели элементов нажмите кнопку Разрыв страницы [image] , а затем выберите раздел отчета, в который нужно поместить условный разрыв страницы.

  3. Откройте процедуру обработки события «ВерхнийКолонтитул_Format».

    Инструкции

  4. Включите в процедуру обработки события инструкцию присваивания, которая устанавливает свойство Вывод на экран (Visible) элемента управления разрыва страницы в значение Нет. Например, если элемент управления имеет имя «УслРазрывСтр», добавьте следующее выражение:
    Me![УслРазрывСтр].Visible = False

    Тем самым элемент управления разрыва страницы будет изначально скрыт при форматировании страниц, поэтому разрыв страницы вставляться не будет.

  5. Включите в процедуру обработки события «Format» раздела, в который помещен разрыв страницы, код Visual Basic, который устанавливает свойство Вывод на экран (Visible) в значение Да при выполнении условия. Например, предположим, что разрыв страницы в области данных должен происходить, когда значение элемента управления «Счетчик» равно 10 (таким образом, на первой странице будут выведены 10 записей). Добавьте в процедуру обработки события «ОбластьДанных_Format» следующий фрагмент:
    If Me![Счетчик] = 10 Then
    Me![УслРазрывСтр].Visible = True
End If

Разрыв страницы будет вставляться при выполнении указанного условия. После разрыва страницы процедура обработки события, связанная с верхним колонтитулом, снова сделает элемент управления разрыва страницы скрытым до тех пор, пока условие вновь не будет выполнено.


Получение сведений об установленном приложении Microsoft Outlook

  1. Запустите Microsoft Outlook.

  2. В меню Справка выберите команду О программе Microsoft Outlook.

  3. Нажмите кнопку Безопасность.

В верхней части окна появится строка информации о типе установки: Корпоративная или для рабочих групп или Только почта Интернета.


 Группировка текстовых полей и других элементов управления в форме или отчете

Группировка текстовых полей и других элементов управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выделите элементы управления, которые нужно включить в группу. Как выделить соседние элементы управления. Как выделить произвольно расположенные или перекрывающиеся элементы управления.

  3. В меню Формат выберите команду Группировать.

Примечание. Для создания группы нужно выделить хотя бы два элемента управления.


 Группировка записей по первым n символам текстового значения на страницах доступа к данным

Группировка записей по первым n символам текстового значения на страницах доступа к данным

См. сведения о группировке записей по первым n (т. н. префиксным) символам.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Создайте страницу доступа к данным с группировкой.

  3. Убедитесь, что к полю, которое будет использоваться для группировки по первым символам, присоединены два элемента управления.

  4. Убедитесь, что элемент управления, который будет использоваться для группировки по первым символам, выделен.

  5. Нажмите кнопку Повысить уровень [image] на панели инструментов.

    Microsoft Access добавляет заголовок группы, содержащий элемент развертывания, и раздел кнопок перехода, который содержит кнопки перехода по записям. Access переместит элемент управления, используемый для группировки, в заголовок группы.

  6. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

  7. Выберите источник записей группы, данные которого должны быть сгруппированы по первым символам.

  8. Установите следующие значения свойств.
    • Установите свойство Группировка (GroupOn) в значение По первым символам.

    • Введите в ячейку свойства Интервал (GroupInterval) число символов, по которому должна выполняться группировка.
  9. Укажите порядок сортировки по умолчанию для остальных уровней группировки на странице.

Примечание. При группировке по элементу управления Access создает псевдоним элемента управления, добавляя префикс «Группа_» к имени элемента управления в свойстве Данные (ControlSource); например, «Группа_ОбъемПродаж: ОбъемПродаж». При ссылке на элемент управления в выражении или в свойстве необходимо использовать псевдоним.


 Группировка записей в отчете по значениям денежных или числовых полей, а также полей счетчика

Группировка записей в отчете по значениям денежных или числовых полей, а также полей счетчика

При группировке записей по полю, которое содержит денежные или числовые значения, а также значения счетчика, нужно задать для свойства Группировка (GroupOn) один из диапазонов, приведенных в следующей таблице. В базе данных Microsoft Access (.mdb) значения счетчика хранятся в полях типа «Счетчик», денежные значения — в полях типа «Денежный», а числовые значения — в полях типа «Числовой». В проекте Microsoft Access (.adp) денежные значения хранятся в столбцах типа «money» или «small money», а числовые значения — в столбцах типа «decimal», «numeric», «int», «smallint», «tinyint», «float» или «real». Если установить свойство Группировка (GroupOn) в значение Интервал, то можно будет задать в ячейке свойства Интервал (GroupInterval) любое число, которое подходит по типу для поля, по которому выполняется группировка. Если выбрать для свойства Группировка (GroupOn) строку По полному значению, то свойство Интервал (GroupInterval) будет иметь значение 1.

Значение свойства «Группировка» | Группировка записей
По полному значению | По совпадающим значениям поля или выражения.
Интервал | По значениям, попадающим в указанный интервал.

Отсчет значений при группировке полей типа «Счетчик», «Денежный» и «Числовой» начинается с 0. Например, если установить свойство Группировка (GroupOn) в значение Интервал (Interval), а свойство Интервал (GroupInterval) — в значение 5, то Microsoft Access сгруппирует записи следующим образом: от 0 до 4, от 5 до 9, от 10 до 14 и так далее.

Отчет, группирующий денежные значения с интервалом, равным 100

В следующей таблице приведены спецификации сортировки и группировки этого отчета. Поле «ОбъемПродаж» в первой строке столбца Поле/выражение окна Сортировка и группировка группирует записи с интервалом, равным 100. «ОбъемПродаж» во второй строке сортирует записи по возрастанию внутри каждого интервала.

Поле/ выражение | Порядок сортировки | Заголовок группы | Примечание группы | Группировка | Интервал | Не разрывать
ОбъемПродаж | По возрастанию | Нет | Да | Интервал | 100 | Вся группа
ОбъемПродаж | По возрастанию | Нет | Нет | По полному значению | 1 | Нет

Примечание. Отчет «Итоги продаж по объему» в учебной базе данных «Борей» группирует записи по интервалу значений, равному 1 000. Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Итоги продаж по объему» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Группировка записей в отчете по значениям даты и времени

Группировка записей в отчете по значениям даты и времени

При группировке записей по полю, содержащему значения даты или времени, нужно установить свойство Группировка (GroupOn) в один из интервалов, перечисленных в следующей таблице. В базе данных Microsoft Access (.mdb) значения даты и времени хранятся в полях, имеющих тип «Дата/время». В проекте Microsoft Access (.adp) для хранения таких значений используются столбцы типа «datetime» и «smalldatetime». Для всех интервалов, за исключением По полному значению, можно установить свойство Интервал (GroupInterval) в любое число, которое может быть значением поля или выражения, используемых для группировки. Если установить свойство Группировка (GroupOn) в значение По полному значению, то свойство Интервал (GroupInterval) будет установлено в 1.

Значение свойства «Группировка» | Группировка записей
По полному значению | По совпадающим значениям поля или выражения.
По годам | По датам, принадлежащим к одному году.
По кварталам | По датам, принадлежащим к одному кварталу.
По месяцам | По датам, принадлежащим к одному месяцу.
По неделям | По датам, принадлежащим к одной неделе.
По дням | По одинаковым датам.
По часам | По значениям времени с совпадающими часами.
По минутам | По значениям времени с совпадающими часами и минутами.

Отчет, в котором выполняется группировка значений даты по году и кварталу

В следующей таблице приведены спецификации сортировки и группировки этого отчета. Поле «ДатаИсполнения» в первой строке столбца Поле/выражение окна Сортировка и группировка группирует записи по годам. «ДатаИсполнения» во второй строке группирует записи, относящиеся к каждому году, по кварталам.

Поле/выражение | Порядок сортировки | Заголовок группы | Примечание группы | Группировка | Интервал | Не разрывать
ДатаИсполнения | По возрастанию | Да | Да | По годам | 1 | Вся группа
ДатаИсполнения | По возрастанию | Нет | Да | По кварталам | 1 | Нет

Примечания

  • Чтобы вместо даты вывести год или квартал, используйте функцию «DatePart» или используйте функцию «Format».

  • Чтобы подсчитать число выполненных заказов, используйте функцию «Count».

  • Отчет «Суммы продаж по годам» в учебной базе данных «Борей» выводит сводку о продажах за каждый год, разбитую по кварталам. Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Суммы продаж по годам» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .

  • Отчет «Суммы продаж по кварталам» учебной базы данных «Борей» выводит сводку продаж по годам для каждого квартала. Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Суммы продаж по кварталам» в режиме конструктора.


 Группировка записей в отчете по текстовым значениям

Группировка записей в отчете по текстовым значениям

При группировке записей по полю, содержащему текстовые значения, можно установить свойство Группировка (GroupOn) в один из интервалов, перечисленных в следующей таблице. В базе данных Microsoft Access(.mdb) текстовые значения хранятся в поле, имеющем тип «Текстовый». В проекте Microsoft Access (.adp) для хранения текстовых значений используются столбцы типа «char», «varchar», «nchar» или «nvarchar». Если установить свойство Группировка (GroupOn) в значение По первым символам, то в ячейке свойства Интервал (GroupInterval) можно задать любое число символов, которое подходит для значения поля, используемого при группировке. Если установить свойство Группировка (GroupOn) в значение По полному значению, то свойство Интервал (GroupInterval) будет иметь значение 1.

Значение свойства «Группировка» | Группировка записей
По полному значению | По совпадающим значениям поля или выражения.
По первым символам | По первым n символам в значении поля или выражения.

Отчет, выполняющий группировку по первой букве названия товара

В следующей таблице приведены спецификации сортировки и группировки этого отчета. Поле «Марка» в первой строке столбца Поле/выражение окна Сортировка и группировка группирует записи по первой букве названия продукта. «Марка» во второй строке сортирует записи, соответствующие каждой букве, по алфавиту.

Поле/выражение | Порядок сортировки | Заголовок группы | Примечание группы | Группировка | Интервал | Не разрывать
Марка | По возрастанию | Да | Да | По первым символам | 1 | Вся группа
Марка | По возрастанию | Нет | Нет | По полному значению | 1 | Нет

Примечания

  • Для печати первой буквы в заголовке каждой группы пользуйтесь функцией Left. Для получения дополнительных сведений нажмите кнопку [image] .

  • Отчет «Список товаров» учебной базы данных «Борей» содержит пример группировки записей по текстовым значениям. Чтобы просмотреть этот отчет, откройте базу данных «Борей», расположенную в подкаталоге Samples каталога Office, и откройте отчет «Список товаров» в режиме конструктора. Для получения дополнительных сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Группировка записей по интервалам значений числовых, денежных полей и полей счетчика на страницах доступа к данным

Группировка записей по интервалам значений числовых, денежных полей и полей счетчика на страницах доступа к данным

См. сведения о группировке записей по интервалам денежных значений.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Создайте страницу доступа к данным с группировкой.

  3. Убедитесь, что к полю, которое будет использоваться для группировки по интервалу, присоединены два элемента управления. Один из них будет использоваться для группировки, а другой — для вывода значений.

  4. Убедитесь, что элемент управления, который будет использоваться для группировки, выделен.

  5. Нажмите кнопку Повысить уровень [image] на панели инструментов.

    Microsoft Access добавляет заголовок группы, содержащий элемент развертывания, и раздел кнопок перехода, который содержит кнопки перехода по записям. Access переместит элемент управления, используемый для группировки, в заголовок группы.

  6. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

  7. Выберите источник записей группы, данные которого должны быть сгруппированы по интервалу.

  8. Установите свойство Группировка (GroupOn) в значение Интервал.

  9. В ячейку свойства Интервал (GroupInterval) можно ввести любое число, которое может быть значением поля, используемого для группировки.

  10. Укажите порядок сортировки по умолчанию для остальных уровней группировки на странице.

Примечание. При группировке по элементу управления Microsoft Access создает псевдоним для элемента управления, добавляя префикс «Группа_» к имени элемента управления в свойстве Данные (ControlSource); например, «Группа_ОбъемПродаж: ОбъемПродаж». При ссылке на этот элемент управления в выражении или свойстве необходимо использовать псевдоним.


 Группировка записей по интервалам даты и времени на страницах доступа к данным

Группировка записей по интервалам даты и времени на страницах доступа к данным

См. сведения о группировке записей по месяцу.

Создание отчета, использующего группировку, и задание интервала группировки

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Создайте страницу доступа к данным с группировкой.

  3. Убедитесь, что элемент управления, который должен использоваться для группировки по интервалу даты или времени, выделен.

  4. Нажмите кнопку Повысить уровень [image] на панели инструментов.

    Microsoft Access добавляет заголовок группы, содержащий элемент развертывания, и раздел кнопок перехода, который содержит кнопки перехода по записям. Access переместит элемент управления, используемый для группировки, в заголовок группы.

  5. Нажмите кнопку Сортировка и группировка [image] на панели инструментов, чтобы открыть окно Сортировка и группировка.

  6. Выберите источник записей группы, данные которого должны быть сгруппированы по интервалу даты или времени.

  7. В ячейке свойства Группировка (GroupOn) выберите из списка нужное значение. Можно группировать записи по значениям, относящимся к одному календарному году, календарному кварталу, месяцу, неделе, дню, часу или минуте.

  8. Введите в ячейке свойства Интервал (GroupInterval) любое число, которое может быть значением поля, по которому выполняется группировка. Например, если свойство Группировка (GroupOn) установлено в значение По месяцам (Month), то допустимыми значениями свойства Интервал (GroupInterval) будут 1, 2, 3, 4 или 6.

  9. Укажите порядок сортировки по умолчанию для остальных уровней группировки на странице.

Создание элемента управления, выводящего значение поля в виде интервала

В некоторых случаях может потребоваться создать элемент управления, который выводит значение поля, используемого для группировки, в виде интервала на странице в режиме страницы или в обозревателе Microsoft Internet Explorer.

  1. Добавьте присоединенный элемент HTML для выражения, нажав кнопку Связанный HTML Связанный HTML на панели элементов и щелкнув заголовок группы, в которой расположен элемент управления, используемый для группировки по интервалу.

  2. Убедитесь, что присоединенный элемент HTML выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств.

  3. Введите в ячейку свойства Данные (ControlSource) псевдоним выражения, добавив к его окончанию двоеточие, и само выражение. Например, если группировка выполнялась по полю «ДатаИсполнения», причем свойство Группировка (GroupOn) было установлено в значение По месяцам, а свойство Интервал (GroupInterval) — в значение 1, то следующее выражение будет выводить значения в поле «Группа_ДатаИсполнения» в виде трехсимвольного обозначения месяца:

    Месяц: Format(Группа_ДатаИсполнения, "mmm")

Примечание. При группировке по элементу управления Access создает псевдоним элемента управления, добавляя префикс «Группа_» к имени элемента управления в свойстве Данные (ControlSource); например, «Группа_ДатаИсполнения: ДатаИсполнения». При ссылке на элемент управления в выражении или в свойстве необходимо использовать псевдоним.

Скрытие элемента управления, по которому выполняется группировка

В некоторых случаях может потребоваться скрыть значение элемента управления, по которому выполняется группировка, на странице в режиме страницы или в обозревателе Microsoft Internet Explorer.

  1. Убедитесь, что элемент управления, который используется для группировки по интервалам даты и времени, выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств.

  2. Установите свойство Visibility в значение hidden.


Раздел справки недоступен

Раздел справки может быть недоступен, если справка приложения или Visual Basic для приложений не найдена, не была установлена или была удалена.

Чтобы установить справку приложения и справку Visual Basic для приложений

  1. В панели управления Microsoft Windows дважды щелкните компонент Установка и удаление программ.

  2. На вкладке Установка/удаление выберите строку Microsoft Office 2000 и нажмите кнопку Добавить/удалить.

  3. Выберите режим Добавить или удалить компоненты, а затем выполните одно или оба следующих действия.
    • Раскройте ветвь Microsoft Access для Windows списка компонентов, и щелкните значок рядом с компонентом Справка для просмотра вариантов установки.

    • Раскройте ветвь Средства Office списка компонентов и щелкните значок рядом с компонентом Справка по Visual Basic для просмотра вариантов установки.
  4. Выберите команду Запускать с моего компьютера или Запускать из сети, а затем нажмите кнопку Обновить.

Примечание. Если Microsoft Access устанавливался в режиме выборочной установки и впоследствии файлы справки были удалены, то чтобы восстановить утраченные файлы справки, потребуется снова запустить программу установки и переустановить Microsoft Access.


 Отображение и скрытие поля в результатах запроса

Отображение и скрытие поля в результатах запроса

В бланк запроса можно добавить поле, которое будет использоваться для задания условия отбора или порядка сортировки, и данные которого не будут отображаться в результатах запроса.

  • В режиме конструктора запросов установите флажки Вывод на экран бланка для тех полей, которые нужно отображать, и сбросьте флажки Вывод на экран для неотображаемых полей.

Примечания

  • Если на основе запроса нужно создать форму, отчет или страницу доступа к данным, и свойство Вывод всех полей (OutputAllFields) этого запроса имеет значение Нет, то необходимо отобразить те поля, для которых в форме, отчете или на странице доступа к данным нужно создать присоединенные элементы управления.

  • После закрытия запроса все скрытые поля автоматически перемещаются в правые столбцы бланка.


 Вывод на экран или скрытие предупреждений с помощью макросов

Вывод на экран или скрытие предупреждений с помощью макросов

  1. Откройте существующий макрос в окне макроса.

    Инструкции

  2. В той строке макроса, начиная с которой требуется прекратить или возобновить вывод модальных окон предупреждений, поместите макрокоманду «УстановитьСообщения» (SetWarnings).

    Инструкции

  3. Чтобы временно отключить вывод предупреждений, задайте для аргумента Включить сообщения значение Нет. Для возобновления вывода сообщений задайте для аргумента Включить сообщения значение Да.

  4. Нажмите кнопку Сохранить [image] для записи макроса.

  5. Запустите макрос.

    Инструкции

После прекращения выполнения макроса вывод предупреждений будет восстановлен.


 Вывод на экран или скрытие предупреждений с помощью программы Visual Basic

Вывод на экран или скрытие предупреждений с помощью программы Visual Basic

  1. Откройте процедуру Function или Sub в окне «Code».

  2. В том месте процедуры, начиная с которого требуется прекратить или возобновить вывод модальных окон предупреждений, используйте метод SetWarnings для выполнения макрокоманды «УстановитьСообщения» (SetWarnings).

    Инструкции

  3. Чтобы временно отключить вывод предупреждений, установите аргумент warningson в значение False. Чтобы возобновить их вывод, установите аргумент warningson в значение True.

  4. Запустите процедуру.

    Инструкции

По окончании выполнения процедуры вывод предупреждений будет восстановлен.

Для получения дополнительных сведений о методе SetWarnings нажмите кнопку [image] .


 При попытке ввести данные в режиме страницы выдается сообщение об ошибке

При попытке ввести данные в режиме страницы выдается сообщение об ошибке

При попытке выйти из поля после ввода данных Microsoft Access проверяет, являются ли введенные данные допустимыми для этого поля. Если значение не является допустимым, появляется предупреждающее сообщение. Чтобы выйти из поля, следует либо ввести допустимое значение, либо отменить внесенные изменения.

Значение может оказаться недопустимым для поля по следующим причинам.

  • Значение несовместимо с типом данных поля. Если введено значение, не соответствующее типу данных поля, Microsoft Access пытается преобразовать его к правильному типу данных. Однако некоторые данные нельзя преобразовать в данные другого типа. Например, нельзя хранить текстовое значение в поле с типом данных «Числовой» в базе данных Microsoft Access или в поле с типом данных «smallint» в проекте Microsoft Access.

  • Данные нарушают условие на значение, заданное в свойстве Условие на значение (ValidationRule) этого поля.

  • В поле необходимо ввести данные, а была сделана попытка оставить его пустым.

  • Обновление поля было отменено макросом проверки условия на значение, связанном с событием До обновления (BeforeUpdate).

Данные проверяются также и при выходе из записи. Перед тем, как сохранить запись, Microsoft Access проверяет выполнение всех условий, заданных в свойствах Условие на значение (ValidationRule) полей записи. Кроме того, если редактируемая таблица имеет ключевое поле или уникальный индекс, Microsoft Access проверяет, не совпадает ли значение этого поля или полей измененной записи со значениями полей другой записи. Если запись нельзя сохранить, можно либо подкорректировать ее, либо нажать кнопку Восстановить запись [image].


 Сообщение «Слишком мало параметров» (Too few parameters expected)

Сообщение «Слишком мало параметров» (Too few parameters expected)

Это сообщение выдается, если запрос с параметрами, экспортированный в файл IDC, не получает данных тех типов, которые указаны в диалоговом окне Параметры запроса.

Чтобы устранить эту проблему, выполните следующие действия:

  1. В окне базы данных выберите значок Запросы [image] в списке Объекты.

  2. Выберите запрос с параметрами, который нужно изменить, и нажмите кнопку Конструктор на панели инструментов окна базы данных.

  3. В меню Запрос выберите команду Параметры.

  4. В диалоговом окне Параметры запроса явным образом укажите типы данных каждого параметра запроса и нажмите кнопку OK.

  5. Сохраните и запустите запрос.


 Вставка поля в бланке запроса или расширенного фильтра

Вставка поля в бланке запроса или расширенного фильтра

  1. Откройте запрос в режиме конструктора, либо откройте форму или таблицу и вызовите окно расширенного фильтра.

  2. Перетащите нужное поле из списка полей в тот столбец бланка, в который его требуется вставить.


 Просмотр контрольных значений при отладке программы Visual Basic для приложений (VBA)

Просмотр контрольных значений при отладке программы Visual Basic для приложений (VBA)

  1. Приостановите выполнение программы Visual Basic.

    Инструкции

  2. Выделите выражение, значение которого нужно просмотреть.

  3. Нажмите кнопку Quick Watch [image] на панели инструментов «Debug».

Microsoft Access откроет диалоговое окно Quick Watch, в котором выводится выражение и его текущее значение. Нажмите кнопку Add в этом диалоговом окне, чтобы добавить выражение в список контрольных выражений окна «Watches» редактора Visual Basic.


 Связывание существующего присоединенного объекта в форме

Связывание существующего присоединенного объекта в форме

  1. Создайте в форме присоединенную рамку объекта, если это еще не сделано.

    Инструкции

  2. Переключитесь в режим формы или режим таблицы.

  3. Перейдите на запись, в которой нужно создать связь с объектом, и щелкните поле объекта OLE в базе данных Microsoft Access (.mdb) или столбец типа «image» в проекте Microsoft Access (.adp).

  4. В меню Вставка выберите команду Объект.

  5. В диалоговом окне Вставка объекта выберите переключатель Создать из файла, а затем укажите путь к файлу. Если точный путь неизвестен, нажмите кнопку Обзор.

  6. Установите флажок Связь.

  7. Установите флажок В виде значка, если нужно выводить объект в виде значка. Представление объекта в виде значка удобно, когда объект содержит дополнительные сведения, которые не должны выводиться на экран; кроме того, это значительно экономит место на диске.

  8. Нажмите кнопку OK.

    В режиме формы объект автоматически отображается на экране. В режиме таблицы отображается только имя объекта, например, «Точечный рисунок».

  9. Для редактирования объекта дважды щелкните его.

Примечания

  • После вставки объекта можно изменять его размеры и пропорции.

    Инструкции

  • Можно также вставить присоединенный объект в таблицу или запрос в режиме таблицы. Выберите поле, в которое нужно вставить объект (это должно быть либо поле объекта OLE, либо столбец типа «image»), и выполните пункты с 4 по 8. Для просмотра объекта нужно создать присоединенную рамку объекта в форме или отчете.

  • Связь, установленная с объектом, по умолчанию обновляется автоматически. Microsoft Access автоматически обновляет объект при входе в поле. Если обновление объекта нужно выполнять вручную, можно изменить этот режим на ручной.

    Инструкции


 Связывание существующего свободного объекта в форме или отчете

Связывание существующего свободного объекта в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Нажмите кнопку Свободная рамка объекта [image] на панели элементов.

  3. Выберите в форме или отчете место для вставляемого объекта.

  4. В диалоговом окне Вставка объекта выберите переключатель Создать из файла, а затем укажите путь к файлу. Если точный путь неизвестен, нажмите кнопку Обзор.

  5. Установите флажок Связь.

  6. Установите флажок В виде значка, если нужно выводить объект в виде значка. Представление объекта в виде значка удобно, когда объект содержит дополнительные сведения, которые не должны выводиться на экран; кроме того, это значительно экономит место на диске.

  7. Нажмите кнопку OK.

Microsoft Access создает свободную рамку объекта и выводит объект в этой рамке. Если нужно отредактировать объект, дважды щелкните его.

Примечания

  • После вставки объекта можно изменять его размеры и пропорции.

    Инструкции

  • В большинстве случаев свободный объект редактируется в режиме конструктора формы или отчета. Если нужно иметь возможность редактирования объекта и в режиме формы, установите свойство Доступ (Enabled) свободной рамки объекта в значение Да, а свойство Блокировка — в значение Нет.

  • Связь, установленная с объектом, по умолчанию обновляется автоматически. Это означает, что изменения объекта, выполненные вне Microsoft Access, автоматически отображаются при следующем открытии формы или отчета. Если нужно выполнять обновление связи вручную, измените режим обновления связи на ручной.

    Инструкции


 Связывание части существующего присоединенного объекта в форме

Связывание части существующего присоединенного объекта в форме

Следующей процедурой можно пользоваться только в том случае, если приложение, с которым производится связывание, обеспечивает поддержку связывания части существующего документа с помощью механизма OLE.

  1. Создайте в форме присоединенную рамку объекта, если это еще не сделано.

    Инструкции

  2. Переключитесь в приложение, в котором был создан объект, и выделите данные, которые нужно связать. Например, откройте Microsoft Excel и выделите диапазон ячеек таблицы.

  3. Выберите в меню Правка команду Копировать.

  4. Оставьте приложение открытым и переключитесь в Microsoft Access. Переключитесь в режим формы или в режим таблицы, перейдите к записи, в которую нужно вставить объект, и щелкните поле объекта OLE в базе данных Microsoft Access (.mdb) или столбец типа «image» в проекте Microsoft Access (.adp).

  5. В меню Правка выберите команду Специальная вставка.

  6. В диалоговом окне Специальная вставка выберите переключатель Связать, затем в списке Как выберите тип связываемого объекта. Для получения дополнительных сведений об этих параметрах нажмите кнопку [image] .

  7. Установите флажок В виде значка, если нужно выводить объект в виде значка. Представление объекта в виде значка удобно, когда объект содержит дополнительные сведения, которые не должны выводиться на экран; кроме того, это значительно экономит место на диске.

  8. Нажмите кнопку OK.

    В режиме формы объект автоматически отображается на экране. В режиме таблицы отображается только имя объекта, например, «Лист Microsoft Excel».

  9. Для редактирования объекта дважды щелкните его.

Примечания

  • После вставки объекта можно изменять его размеры и пропорции.

    Инструкции

  • Можно также вставить присоединенный объект в таблицу или запрос в режиме таблицы. Выделите поле, в которое нужно вставить объект (это должно быть либо поле объекта OLE, либо столбец типа «image»), и выберите команду Специальная вставка в меню Правка. Затем выполните пункты с 6 по 8. Для просмотра объекта нужно создать присоединенную рамку объекта в форме или отчете.

  • Связь, установленная с объектом, по умолчанию обновляется автоматически. Microsoft Access автоматически обновляет объект при входе в поле. Если обновление объекта нужно выполнять вручную, можно изменить этот режим на ручной.

    Инструкции


 Связывание части существующего свободного объекта в форме или отчете

Связывание части существующего свободного объекта в форме или отчете

Следующей процедурой можно пользоваться только в том случае, если приложение, с которым производится связывание, обеспечивает поддержку связывания части существующего документа с помощью механизма OLE.

  1. Откройте файл в его исходном приложении и выделите связываемые данные. Например, откройте Microsoft Excel и выделите в таблице диапазон ячеек.

  2. Выберите в меню Правка команду Копировать.

  3. Не закрывая приложение, переключитесь в Microsoft Access.

  4. В режиме конструктора формы или в режиме конструктора отчета выберите команду Специальная вставка в меню Правка.

  5. В диалоговом окне Специальная вставка выберите переключатель Связать, затем в списке Как выберите тип связываемого объекта. Для получения дополнительных сведений об этих параметрах нажмите кнопку [image] .

  6. Установите флажок В виде значка, если нужно выводить объект в виде значка. Представление объекта в виде значка удобно, когда объект содержит дополнительные сведения, которые не должны выводиться на экран; кроме того, это значительно экономит место на диске.

  7. Нажмите кнопку OK.

Microsoft Access создает свободную рамку объекта и выводит объект в этой рамке. Если нужно отредактировать объект, дважды щелкните его.

Примечания

  • После вставки объекта можно изменять его размеры и пропорции.

    Инструкции

  • В форме свободный объект можно редактировать в режиме конструктора. Чтобы объект можно было также редактировать и в режиме формы, откройте форму в режиме конструктора и установите свойство Доступ (Enabled) в значение Да, а свойство Блокировка (Locked) — в значение Нет.

  • Связь, установленная с объектом, по умолчанию обновляется автоматически. Это означает, что изменения объекта, выполненные вне Microsoft Access, автоматически отражаются при следующем открытии формы или отчета. Чтобы обновление связи проходило под управлением пользователя, измените режим обновления связи на ручной.

    Инструкции


 Назначение присоединенного элемента управления HTML элементом по умолчанию для страницы доступа к данным

Назначение присоединенного элемента управления HTML элементом по умолчанию для страницы доступа к данным

Использование присоединенных элементов управления HTML на страницах доступа к данным повышает скорость загрузки страниц в режиме страницы или в Internet Explorer. Однако редактировать значения, отображаемые в элементах управления HTML, нельзя.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. В меню Правка выберите команду Выделить страницу.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств.

  4. Установите для свойства DefaultControlType значение Bound HTML.


Настройка параметров выполнения Microsoft Access

  1. Создайте профиль пользователя Microsoft Access.

    Инструкции

  2. В разделе профиля пользователя Access создайте раздел с именем \Run-Time Options.

  3. В разделе \Run-Time Options создайте разделы, определяющие следующие параметры приложения.
    Параметр реестра Windows | Компонент
    AppTitleBar | Текст в заголовке главного окна приложения.
    AppIcon | Значок в заголовке приложения или значок приложения, когда оно минимизировано.
    AppHelpFile | Файл справки, используемый, когда пользователь обращается за помощью.
    AppStartupScreen | Всплывающий экран, рисунок, который появляется при загрузке приложения.

Примечания

  • Параметры AppTitleBar и AppIcon используются при замене текущих заголовка и значка Access на указанные. Параметры AppTitleBar и AppIcon связаны со свойствами загрузки заголовка и значка приложения базы данных. Для получения дополнительных сведений о задании свойств запуска нажмите кнопку [image] .

  • Параметр AppHelpFile используется для определения файла справки приложения.

  • Параметр AppStartupScreen используется для вывода на экран заставки, определяющей приложение и объявляющей о его запуске. Необходимо отличать заставку от главной формы, определенной в диалоговом окне Параметры запуска. Заставка появляется на экране до главной формы.

  • Для создания заставки можно также использовать точечный рисунок с тем же именем, что и у соответствующего приложения, и поместить его в одну папку с приложением. Затем с помощью проводника Windows следует создать для приложения ярлык, указав имя точечного рисунка в командной строке (в поле Объект на вкладке Ярлык диалогового окна Свойства ярлыка). Например,

    "C:\Program Files\Microsoft Office\Office\MSAccess.exe C:\Мои файлы\Налоги.mdb"

    Если при открытии базы данных Access указанный файл найден, то он используется в качестве заставки. Параметр выполнения AppStartupScreen имеет преимущество перед заставкой, созданной таким образом.


 Изменение фильтра в окне фильтра по выделенному фрагменту или фильтра исключения выделенного фрагмента

Изменение фильтра в окне фильтра по выделенному фрагменту или фильтра исключения выделенного фрагмента

Для изменения фильтра можно добавлять условия отбора или изменять существующие.

  1. Для дальнейшего ограничения набора записей, к которым уже применялся фильтр, начните с шага 2. Чтобы изменить условие отбора, ранее определенное для фильтра, сначала удалите фильтр, если он применяется в данный момент.

    Инструкции

  2. В режиме формы или таблицы выберите в форме, подчиненной форме, таблице или подтаблице значение, которое будет использовано в качестве условия отбора, а затем нажмите кнопку Фильтр по выделенному [image] на панели инструментов или щелкните выбранное значение правой кнопкой и выберите в контекстном меню команду Исключить выделенное. Повторяйте эту процедуру до тех пор, пока не будут заданы все условия отбора записей.

Примечание. Для изменения условия отбора можно также переключиться в окно обычного или расширенного фильтра.


 Изменение фильтра в поле «Фильтр для»

Изменение фильтра в поле «Фильтр для»

Для изменения фильтра можно добавлять условия отбора или изменять существующие.

  1. Для дальнейшего ограничения набора записей, к которым уже применялся фильтр, начните с шага 2. Чтобы изменить условие отбора, ранее определенное для фильтра, сначала удалите фильтр, если он применяется в данный момент.

    Инструкции

  2. В режиме формы или таблицы выполните одно из следующих действий.
    • В главной форме, таблице, подчиненной форме или подтаблице щелкните правой кнопкой поле, для которого требуется указать условие отбора, а затем в контекстном меню введите в поле Фильтр для значение, которое будет использоваться как условие отбора.

    • Щелкните правой кнопкой любое поле в главной форме, таблице, подчиненной форме или подтаблице и укажите в поле Фильтр для выражение, которое будет использоваться в качестве условия отбора.
  3. Нажмите клавишу TAB и повторяйте шаг 2 до тех пор, пока не будут заданы все условия отбора записей.

    Для получения дополнительных сведений по использованию поля «Фильтр для» нажмите кнопку [image] .

Примечание. Для изменения условий отбора можно также переключиться в окно обычного или расширенного фильтра.


 Перемещение поля в бланке запроса или расширенного фильтра

Перемещение поля в бланке запроса или расширенного фильтра

  1. Откройте запрос в режиме конструктора, либо откройте форму или таблицу и вызовите окно расширенного фильтра.

  2. Выделите столбец, который требуется переместить.
    • Чтобы выделить один столбец, щелкните область выделения этого столбца.

    • Чтобы выделить несколько смежных столбцов, перетащите указатель по их областям выделения.

    Изменение порядка полей в запросе путем их перемещения

  3. Снова щелкните область выделения любого выделенного столбца, а затем перетащите поле (или поля) на новое место.

    Перемещаемое поле и все поля, расположенные справа от него, сдвигаются вправо.


 Изменение размеров текстового поля или другого элемента управления в группе в форме или отчете

Изменение размеров текстового поля или другого элемента управления в группе в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Чтобы выделить группу, щелкните любой элемент управления из этой группы.

  3. Выберите элемент управления, размеры которого требуется изменить.

  4. Задайте для элемента управления нужный размер, перетаскивая маркеры изменения размера.

    Маркеры изменения размера на элементе управления

Примечания

  • Для небольшой корректировки размеров элемента управления можно воспользоваться сочетанием клавиш SHIFT и стрелки соответствующего направления.

  • При изменении размеров элемента управления в группе размер прямоугольника группы автоматически изменяется таким образом, чтобы все элементы управления оставались вписанными в него.

  • При перетаскивании маркеров изменения размера прямоугольника группы изменяются размеры всех элементов управления этой группы.

  • Если параметр Привязать к сетке включен, прямоугольник группы при изменении его размеров привязывается к сетке. Элементы управления в группе не привязываются к сетке.


 Перемещение текстового поля или другого элемента управления в группе в форме или отчете

Перемещение текстового поля или другого элемента управления в группе в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Чтобы выделить группу, щелкните любой элемент управления из этой группы.

  3. Выберите элемент управления, который требуется переместить.

  4. Выполните одно из следующих действий.
    • Чтобы переместить элемент управления и его подпись, наведите указатель на границу (не на маркер перемещения) элемента управления, чтобы он принял вид руки, а затем перетащите элемент управления и его подпись на новое местоположение.

    Указатель принимает вид руки

    • Чтобы переместить элемент управления или его подпись по отдельности, наведите указатель на маркер перемещения в левом верхнем углу элемента управления или его подписи. Когда указатель примет вид руки, указывающей вверх, перетащите элемент управления или подпись.

    Указатель принимает вид руки, указывающей вверх

Примечания

  • Для перемещения элемента управления с небольшой скоростью можно воспользоваться сочетанием клавиш CTRL и стрелки соответствующего направления.

  • При перемещении элемента управления в группе размер прямоугольника группы автоматически изменяется таким образом, чтобы все элементы управления оставались вписанными в него.

  • Если параметр Привязать к сетке включен, прямоугольник группы при его перемещении привязывается к сетке. Элементы управления в группе не привязываются к сетке.


 Перемещение по элементам управления, записям и страницам формы с помощью макроса

Перемещение по элементам управления, записям и страницам формы с помощью макроса

  1. Создайте макрос.

    Инструкции

  2. Выполните одно из следующих действий.

    Для перемещения фокуса на элемент управления или поле в текущей записи выберите макрокоманду КЭлементуУправления (GoToControl) в списке макрокоманд в пустой строке макрокоманды и укажите в аргументе Имя элемента имя нужного элемента управления.

    Чтобы сделать конкретную запись текущей, выберите макрокоманду НаЗапись (GoToRecord) из списка макрокоманд в пустой строке макрокоманды и укажите аргументы.

    Для перевода фокуса в активной форме на первый элемент управления на конкретной странице формы выберите макрокоманду НаСтраницу (GoToPage) в списке макрокоманд в пустой строке макрокоманды и укажите аргументы.

  3. Нажмите кнопку Сохранить [image] , чтобы сохранить макрос.

  4. Запустите макрос.

    Инструкции

Для получения дополнительных сведений о макрокоманде «КЭлементуУправления» (GoToControl) нажмите кнопку [image] .

Для получения дополнительных сведений о макрокоманде «НаЗапись» (GoToRecord) нажмите кнопку [image] .

Для получения дополнительных сведений о макрокоманде «НаСтраницу» (GoToPage) нажмите кнопку [image] .


 Перемещение по элементам управления, записям и страницам формы с помощью программы Visual Basic

Перемещение по элементам управления, записям и страницам формы с помощью программы Visual Basic

  1. Откройте процедуру обработки нужного события в окне программы.

    Инструкции

    Например, для выполнения программы в ответ на нажатие кнопки откройте процедуру обработки события кнопки «Нажатие кнопки» (Click).

  2. Выполните одно из следующих действий.

    Для перемещения фокуса на конкретный элемент управления или поле в текущей записи выполните в процедуре метод GoToControl, указав в аргументе ИмяЭлемента имя нужного элемента управления.

    Инструкции

    Чтобы сделать конкретную запись текущей или создать новую запись, используйте метод GoToRecord для выполнения макрокоманды «НаЗапись» (GoToRecord) в процедуре.

    Для перевода фокуса в активной форме на первый элемент управления на конкретной странице формы используйте метод GoToPage для выполнения макрокоманды «НаСтраницу» (GoToPage) в процедуре.

  3. Запустите процедуру.

    Инструкции

Совет. Для поиска записей и переходов по записям можно также использовать объекты Recordset, группы методов Move и Find и метод Seek языка Visual Basic для приложений.

Для получения дополнительных сведений о макрокоманде «КЭлементуУправления» (GoToControl) нажмите кнопку [image] .

Для получения дополнительных сведений о макрокоманде «НаЗапись» (GoToRecord) нажмите кнопку [image] .

Для получения дополнительных сведений о макрокоманде «НаСтраницу» (GoToPage) нажмите кнопку [image] .

Для получения дополнительных сведений об объекте Recordset и определенных для него методах нажмите кнопку [image] .


 Использование макроса для вывода связанных записей при переходах по записям в форме

Использование макроса для вывода связанных записей при переходах по записям в форме

  1. Откройте первую форму в режиме конструктора.

  2. Создайте макрос.

    Инструкции

  3. В пустой строке бланка выберите макрокоманду ОткрытьФорму (OpenForm) в списке макрокоманд.

  4. Укажите в аргументе Имя формы имя второй формы, а в аргументе Условие отбора выражение, определяющее связанные записи, которые требуется отобразить во второй форме. Для просмотра примера нажмите кнопку [image] .

  5. В режиме конструктора укажите имя макроса в свойстве Текущая запись (OnCurrent) первой формы.


 Использование процедуры Visual Basic для вывода связанных записей при переходах по записям в форме

Использование процедуры Visual Basic для вывода связанных записей при переходах по записям в форме

  1. Откройте первую форму в режиме конструктора.

  2. Откройте процедуру обработки события Form_Current.

    Инструкции

  3. Добавьте в процедуру обработки события программу Visual Basic, задающую отображение во второй форме записей, имеющих в связанном поле значения, совпадающие со значением соответствующего поля в первой форме.

Для просмотра примера использования Visual Basic для вывода связанных записей при переходе по записям в форме нажмите кнопку [image] .


 Открытие запроса в режиме конструктора

Открытие запроса в режиме конструктора

  1. В окне базы данных щелкните значок Запросы [image] в списке Объекты.

  2. Выберите запрос , который требуется открыть, и нажмите кнопку Конструктор на панели инструментов окна базы данных.

Примечания

  • Если форма, отчет или страница доступа к данным основаны на запросе, то открыть этот запрос для изменения макета можно прямо из формы, отчета или со страницы доступа к данным. Для получения дополнительных сведений нажмите кнопку [image] .

  • Если в последний раз запрос был сохранен в режиме SQL, то в этом же режиме он будет отображен при следующем открытии запроса с помощью кнопки Конструктор на панели инструментов окна базы данных.


 Overview of the Office Assistant

Overview of the Office Assistant

To use Microsoft Office objects from Microsoft Access, you must first set a reference to the Microsoft Office object library. Click References on the Tools menu while in module Design view and select the check box next to Microsoft Office 9.0 Object Library.

If you fail to set this reference, you'll get a compile-time error, "User-defined type not defined", when you try to use objects in the Microsoft Office object library.

Once you've set a reference to the Microsoft Office object library, you can view the Microsoft Office objects, properties, and methods in the Object Browser. The objects that you can use to program the Office Assistant include the Assistant, Balloon, BalloonCheckbox, and BalloonLabel objects, and the BalloonCheckboxes and BalloonLabels collections.

The following properties of the Assistant object aren't available in Microsoft Access, although they may be available in other Microsoft Office applications:

  • FeatureTips property

  • HighPriorityTips property

  • KeyboardShortcutTips property

  • MouseTips property

Note The Office Assistant isn't available in the run-time version of Microsoft Access.


 Overview of Command Bars

Overview of Command Bars

In order to program with command bars in Microsoft Access 2000, you must first set a reference to the Microsoft Office object library. Click References on the Tools menu while in module Design view, and select the check box next to Microsoft Office 9.0 Object Library.

Once you've set a reference to the Microsoft Office object library, you can view the Microsoft Office objects, properties, and methods in the Object Browser. The objects that you can use to program command bars include the CommandBar, CommandBarControl, CommandBarButton, CommandBarComboBox, and CommandBarPopup objects, and the CommandBars and CommandBarControls collections.


Пустые страницы при печати отчета

Если пустая страница появляются только в конце отчета или печатной формы, задайте для свойства Высота (Height) примечания формы или примечания отчета значение нуль. Для получения сведений о задании значений свойств нажмите кнопку [image] .

Если все остальные страниц пусты, убедитесь, что сумма значений ширины формы или отчета и ширины левого и правого полей не превышает ширину листа бумаги, указанную в диалоговом окне Параметры страницы (меню Файл). При разработке макетов руководствуйтесь следующей формулой:

ширина формы или отчета + левое поле + правое поле <= ширина бумаги

Для того чтобы уместить форму или отчет на печатной странице, пользуйтесь следующими приемами.

  • Уменьшение ширины формы или отчета.

    Инструкции

  • Уменьшение ширины полей или изменение ориентации страницы.

    Инструкции


 Предварительный просмотр макета отчета

Предварительный просмотр макета отчета

Режим просмотра образца является удобным средством проверки макета создаваемого отчета. В этом режиме в окно просмотра выводятся только те данные из базовой таблицы или отчета, которые необходимы для заполнения каждого из элементов макета отчета. Для просмотра именно тех данных, которые будут выводиться в отчете, следует использовать режим предварительного просмотра. Для получения дополнительных сведений нажмите кнопку [image] .

  • В режиме конструктора отчета нажмите кнопку раскрытия списка рядом с кнопкой Вид на панели инструментов и выберите команду Образец.

Примечания

  • Если отчет создается на основе запроса, требующего ввода параметров, то для просмотра образца параметры вводить не нужно; достаточно просто нажать кнопку OK. При выборе команды Образец параметры игнорируются.

  • Для перехода по страницам отчета пользуйтесь кнопками перехода в нижней части окна предварительного просмотра. Для перехода по текущей странице можно использовать полосы прокрутки или колесико мыши Microsoft IntelliMouse.

  • Для получения сведений об изменении масштаба при просмотре отчета нажмите кнопку [image] .

  • Для получения дополнительных сведений о способах одновременного просмотра двух или нескольких страниц нажмите кнопку [image] .


 Предварительный просмотр записей, которые будут изменены в результате выполнения запроса на создание таблицы, удаление, добавление или обновление записей

Предварительный просмотр записей, которые будут изменены в результате выполнения запроса на создание таблицы, удаление, добавление или обновление записей

  • В режиме конструктора запроса на панели инструментов нажмите кнопку Вид [image] , чтобы отобразить запрос в режиме таблицы.
    Тип запроса | В таблице отображаются
    Обновление | Обновляемые поля
    Удаление | Удаляемые записи
    Создание таблицы | Поля, включаемые в новую таблицу
    Добавление | Записи, добавляемые в другую таблицу


 Предварительный просмотр данных отчета

Предварительный просмотр данных отчета

Просмотр отчета из окна режима конструктора

  • В режиме конструктора отчета нажмите кнопку Предварительный просмотр [image] на панели инструментов.

Просмотр отчета из окна базы данных

  1. В окне базы данных щелкните значок Отчеты [image] в списке Объекты.

  2. Выберите имя отчета, который требуется просмотреть.

  3. Нажмите кнопку Просмотр на панели инструментов окна базы данных.

Примечания

  • Для перехода по страницам отчета пользуйтесь кнопками перехода в нижней части окна предварительного просмотра. Для перехода по текущей странице можно использовать полосы прокрутки или колесико мыши Microsoft IntelliMouse.

  • Для получения сведений об изменении масштаба при просмотре отчета нажмите кнопку [image] .

  • Для получения сведений о способах одновременного просмотра двух или нескольких страниц нажмите кнопку [image] .


 Печать формы из окна базы данных

Печать формы из окна базы данных

  1. Щелкните значок Таблицы [image] в списке Объекты.

  2. Выберите форму, которую требуется распечатать.

  3. Выберите в меню Файл команду Печать.

  4. В диалоговом окне Печать укажите нужные параметры.

  5. Нажмите кнопку OK.

Microsoft Access распечатывает форму в режиме, указанном в свойстве Режим по умолчанию (DefaultView).

Совет. Если требуется распечатать форму без указания параметров в диалоговом окне Печать, нажмите кнопку Печать [image] на панели инструментов.


 Печать формы в режиме конструктора, формы или таблицы

Печать формы в режиме конструктора, формы или таблицы

  1. Выберите в меню Файл команду Печать.

  2. В диалоговом окне Печать установите нужные параметры.

Способ печати формы зависит от режима, из которого она распечатывается.

Исходный | Режим печати формы
Режим конструктора | Режим формы
Режим формы | Режим формы
Режим таблицы | Режим таблицы

Совет. Если требуется распечатать форму без указания параметров в диалоговом окне Печать, нажмите кнопку Печать [image] на панели инструментов.


 Выход из Microsoft Access

Выход из Microsoft Access

  • Выберите команду Выход в меню Файл.

    При выходе из Microsoft Access изменения данных сохраняются автоматически. Однако при изменении структуры любых объектов базы данных в Microsoft Access выводится приглашение подтвердить сохранения этих изменений перед завершением работы.

Внимание! При аварийном выходе из Microsoft Access, например, из-за отключения питания или неисправности оборудования, база данных может оказаться поврежденной. По возможности выполняйте выход из Microsoft Access, как описано в данном разделе.


 Восстановление связи рисунка в форме или отчете

Восстановление связи рисунка в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Чтобы открыть для формы или отчета окно свойств, дважды щелкните область выделения формы или область выделения отчета.

  3. Укажите правильный путь для рисунка, указанного в свойстве Рисунок (Picture).


 Восстановление связи рисунка, размещенного в элементе управления «Рисунок» в форме или отчете

Восстановление связи рисунка, размещенного в элементе управления «Рисунок» в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь в том, что рамка рисунка выделена и нажмите кнопку Свойства [image] на панели инструментов.

  3. Укажите правильный путь для рисунка, указанного в свойстве Рисунок (Picture).


 Восстановление или изменение связи рисунка в свободной или присоединенной рамке объекта в форме или отчете

Восстановление или изменение связи рисунка в свободной или присоединенной рамке объекта в форме или отчете

  1. Выполните одно из следующих действий.
    • Если объект является свободным, выберите объект в режиме конструктора формы или конструктора отчета.

    • Если объект является присоединенным, откройте форму в режиме формы (или в режиме таблицы), найдите запись, которую требуется изменить, и щелкните объект.
  2. Выберите в меню Правка команду Связи OLE/DDE.

  3. В поле Связи выберите связь, которую требуется восстановить или изменить.

  4. Выберите команду Сменить источник.

  5. В диалоговом окне Смена источника выберите новое имя файла. При необходимости, перейдите на другой диск и/или в другую папку.

  6. Нажмите кнопку Открыть для завершения создания связи и закройте диалоговое окно Смена источника, а затем нажмите кнопку Закрыть в диалоговом окне Связи.

Примечание. При изменении связи присоединенной рамки объекта меняется связь только для текущей записи. Чтобы изменить связь для другой записи, следует перейти на нее и повторить процедуру.


Определение последовательности перехода по элементам управления на странице доступа к данным

Предполагаемые действия

Изменение порядка перехода

Удаление поля или другого элемента управления из порядка перехода


 Исключение текстового поля или другого элемента управления из последовательности перехода в форме

Исключение текстового поля или другого элемента управления из последовательности перехода в форме

  1. Откройте форму в режиме конструктора.

  2. Убедитесь, что элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы вывести на экран окно свойств элемента управления.

  3. В ячейке свойства Переход по TAB (TabStop) установите значение Нет.

Примечание. Пока свойство Доступ (Enabled) элемента управления имеет значение Да, элемент управления можно выбрать щелчком, даже если в ячейке свойства Переход по TAB (TabStop) установлено значение Нет.


 Удаление темы, используемой по умолчанию для новых страниц доступа к данным

Удаление темы, используемой по умолчанию для новых страниц доступа к данным

  1. Откройте любую страницу доступа к данным в режиме конструктора.

  2. В меню Формат выберите команду Тема.

  3. В списке Выберите тему выберите вариант (нет темы).

  4. Нажмите кнопку По умолчанию.

  5. Нажмите кнопку Да.


 Удаление поля из бланка запроса или расширенного фильтра

Удаление поля из бланка запроса или расширенного фильтра

  1. Откройте запрос в режиме конструктора или откройте форму или объект в режиме таблицы, а затем откройте окно расширенного фильтра.

  2. Выделите нужное поле, щелкнув соответствующую область выделения столбца, а затем нажмите клавишу DEL.

Примечание. Поле, удаляемое из бланка, удаляется только из бланка запроса или бланка фильтра. Из базовой таблицы поле и его содержимое не удаляется, также как и из отфильтрованных данных.


 Удаление таблицы или запроса из запроса

Удаление таблицы или запроса из запроса

  1. Откройте запрос в режиме конструктора.

  2. В верхней части окна режима конструктора запроса выделите таблицу или запрос, который требуется удалить, щелкнув в любом месте соответствующего списка полей, а затем нажмите клавишу DEL.

    Поля, добавленные в бланк путем перетаскивания из списка полей, также будут удалены из запроса. Однако таблица или запрос из базы данных не удаляются.


 Исключение текстового поля или другого элемента управления из группы элементов в форме или отчете

Исключение текстового поля или другого элемента управления из группы элементов в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Чтобы выделить группу, щелкните любой элемент управления из этой группы.

  3. Выберите в меню Формат команду Разгруппировать.

  4. Щелкните фон формы, чтобы отменить выделение элементов управления в группе.

  5. Выделите в группе нужные элементы управления. См. инструкции по выделению соседних элементов управления. См. инструкции по выделению не соседних или перекрывающихся элементов управления.

  6. В меню Формат выберите команду Группировать.


 Удаление темы существующей страницы доступа к данным

Удаление темы существующей страницы доступа к данным

  1. Откройте страницу доступа к данным, тему которой требуется удалить, в режиме конструктора.

  2. В меню Формат выберите команду Тема.

  3. В списке Выберите тему выберите вариант (нет темы).


 Удаление или переименование групп

Удаление или переименование групп

  1. Переключитесь в окно базы данных, если это еще не сделано. Для переключения в окно базы данных из любого другого окна можно использовать клавишу F11.

  2. Нажмите кнопку Группы, чтобы отобразить группы, а затем щелкните правой кнопкой группу, которую требуется удалить или переименовать.

  3. Выполните одно из следующих действий.

    Чтобы удалить группу, выберите в контекстном меню команду Удалить группу.

    Чтобы переименовать группу, выберите в контекстном меню команду Переименовать группу, а затем введите новое имя для группы в поле Имя новой группы.


 Переименование поля в запросе

Переименование поля в запросе

  1. Откройте запрос в режиме конструктора.

  2. Установите курсор в бланке перед первой буквой текущего имени поля.

  3. Введите новое имя с последующим символом двоеточия.

    Изменение подписи поля, отображаемой в запросе

Примечание. При замене имени «Выражение1» (или «Выражение2» и т.д.), автоматически задаваемого Microsoft Access, замените только имя, не изменяя выражение, которое следует за двоеточием.


 Переименование или удаление ярлыка объекта базы данных в группе

Переименование или удаление ярлыка объекта базы данных в группе

  1. Переключитесь в окно базы данных, если это еще не сделано. Для переключения в окно базы данных из любого другого окна можно использовать клавишу F11.

  2. Нажмите кнопку Группы, а затем щелкните группу, содержащую ярлык объекта базы данных, который требуется удалить или переименовать.

  3. Щелкните ярлык правой кнопкой.

  4. Выполните одно из следующих действий.

    Чтобы удалить ярлык, выберите в контекстном меню команду Удалить [image].

    Чтобы переименовать ярлык, выберите в контекстном меню команду Переименовать, а затем введите новое имя для ярлыка.

Примечания
  • При удалении ярлыка объекта базы данных из группы удаляется только ярлык, но не сам объект. Например, если удалить из группы ярлык формы, а затем щелкнуть значок Формы [image] в списке Объекты окна базы данных, то форма по-прежнему будет присутствовать в списке форм.

  • При переименовании ярлыка объекта базы данных в группе изменяется только имя ярлыка, имя самого объекта остается без изменений.


 Переименование таблицы или запроса, добавляемых в запрос

Переименование таблицы или запроса, добавляемых в запрос

Существует возможность переименования в запросе нескольких копий одной и той же таблицы или запроса.

  1. Откройте запрос в режиме конструктора.

  2. Щелкните в любом месте во втором экземпляре списка полей таблицы или запроса, а затем нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств.

  3. В ячейку свойства Псевдоним (Alias) введите новое имя таблицы или запроса.

Примечание. Переименование копий таблицы или запроса в запросе не приводит к переименованию базовой таблицы или запроса.


 Непосредственный запуск макроса

Непосредственный запуск макроса

Варианты запуска макроса пользователем.

  • Чтобы запустить макрос из окна макроса, нажмите кнопку Запуск [image] на панели инструментов.

  • Чтобы запустить макрос из окна базы данных, щелкните ярлык Макросы [image] , а затем дважды щелкните имя нужного макроса.

  • Чтобы запустить макрос из любого окна Microsoft Access, выберите в меню Сервис команду Макрос и подкоманду Выполнить макрос. Затем выберите нужный макрос в поле Имя макроса.

Примечание. Обычно прямой запуск макроса используется только при тестировании макросов. После этого можно создать специальную команду меню, запускающую макрос, или связать макрос с формой, отчетом или элементом управления и указать запуск макроса в ответ на событие.


 Запуск макроса, находящегося в группе макросов

Запуск макроса, находящегося в группе макросов

Чтобы запустить макрос, находящийся в группе макросов, выполните одно из следующих действий.

  • Укажите макрос в качестве значения свойства события в форме или отчете или в качестве аргумента «Имя макроса» макрокоманды «ЗапускМакроса» (RunMacro). При этом используется следующий синтаксис:

    имяГруппыМакросов.имяМакроса

    Например, ссылка на макрос «Типы» в группе макросов «Кнопки кнопочной панели» выглядит следующим образом:

    Кнопки кнопочной панели.Типы

  • В меню Сервис выберите команду Макрос и подкоманду Выполнить макрос, затем выберите нужный макрос в поле со списком Имя макроса. При выборе имени макроса в списке каждый макрос, содержащийся в группе макросов, входит в список как отдельный элемент.

  • Запустите макрос, находящийся в группе, из процедуры Visual Basic с помощью метода RunMacro объекта DoCmd, используя при этом описанный выше синтаксис для ссылки на макрос.


 Выполнение запросов на создание таблицы, добавление и удаление записей

Выполнение запросов на создание таблицы, добавление и удаление записей

  1. Откройте запрос в режиме конструктора.

  2. Для предварительного просмотра записей, которые будут затронуты при выполнении запроса, нажмите кнопку Вид [image] на панели инструментов и проверьте записи. Для получения сведений о предварительном просмотре нажмите кнопку [image] . Для возврата в режим конструктора запроса снова нажмите кнопку Вид [image] на панели инструментов. Любые изменения следует вносить в режиме конструктора.

  3. Для выполнения запроса нажмите кнопку Запуск [image] на панели инструментов.

Примечание. Чтобы прервать выполнение запроса, нажмите клавиши CTRL+BREAK.

Для получения дополнительных сведений о просмотре результатов выполнения запросов на создание таблицы, добавление и удаление записей нажмите кнопку [image] .

Для получения сведений о просмотре результатов выполнения запроса на обновление нажмите кнопку [image] .


 Сохранение копии данных сводной формы

Сохранение копии данных сводной формы

Если известно, что в дальнейшем потребуется обновление данных в сводной форме в тот момент, когда доступ к данным будет невозможен, следует сохранить данные вместе со сводной форме. Следует отметить, что это приведет к значительному увеличению размера формы, поэтому необходимо удостовериться, что на диске имеется достаточно места.

  1. Откройте сводную форму в режиме формы.

  2. Нажмите кнопку Изменить сводную таблицу.

  3. В меню Данные Microsoft Excel выберите команду Обновить данные.

  4. В меню Данные выберите команду Сводная таблица для повторного запуска мастера по созданию сводных таблиц.

  5. Нажмите кнопку Параметры.

  6. Убедитесь, что в группе Источник установлен флажок Сохранить данные вместе с таблицей.

  7. Нажмите кнопку OK.

  8. Нажмите кнопку Готово.

  9. Продолжите работу со сводной формой или закройте ее и вернитесь в форму Microsoft Access с помощью команды Закрыть и вернуться в Сводная форма из меню Файл Microsoft Excel.

Примечание. Изменения данных, сохраненных вместе со сводной формой, будут действительны только для этой сводной формы. В базовой таблице эти изменения отражены не будут.


 Сохранение копии объекта базы данных как объекта другого типа

Сохранение копии объекта базы данных как объекта другого типа

  1. Если объект базы данных, который требуется сохранить как объект другого типа, является таблицей или представлением, закройте этот объект.

  2. Если объект базы данных открыт и выделен в окне базы данных, выберите команду Сохранить как в меню Файл.

    Если объект не открыт, нажмите кнопку Объекты в окне базы данных, а затем щелкните ярлык нужного типа объектов. Выберите объект, а затем команду Сохранить как в меню Файл.

  3. В диалоговом окне Сохранение введите в поле Сохранение объекта Имя объекта в уникальное имя в соответствии с соглашением об именах объектов Microsoft Access, а затем выберите нужный тип объекта. Если текущая база данных Microsoft Access является основной репликой, и требуется реплицировать новый объект в другие базы данных, установите флажок Сделать реплицируемым объектом.

Примечания

  • Существует возможность сохранить таблицу, представление или запрос как форму или как отчет. Результирующий объект будет идентичен объекту, созданному при помощи автоформы или автоотчета.

  • Существует возможность сохранить форму как отчет и сохранить макрос как модуль Visual Basic. Однако отчет, страницу доступа к данным или модуль невозможно сохранить как объект другого типа.

  • Команда Сохранить как недоступна, когда сохраненная процедура или схема базы данных выделена в окне базы данных проекта Access.

  • См. сведения о сохранении изменений в сетевой (общей) базе данных Access.


 Сохранение объекта базы данных при помощи макроса

Сохранение объекта базы данных при помощи макроса

  1. Создайте макрос.

    Инструкции

  2. В пустой строке бланка выберите макрокоманду Сохранить (Save) в списке макрокоманд и укажите в аргументах Тип объекта и Имя объекта тип и имя сохраняемого объекта.

  3. Нажмите кнопку Сохранить [image] , чтобы сохранить макрос.

  4. Запустите макрос.

    Инструкции

    Например, для создания кнопки, сохраняющей форму, укажите имя макроса в свойстве события кнопки Нажатие кнопки (OnClick).

Для получения дополнительных сведений о макрокоманде «Сохранить» (Save) нажмите кнопку [image] .


 Сохранение объекта базы данных с помощью процедуры обработки события

Сохранение объекта базы данных с помощью процедуры обработки события

  1. Откройте процедуру обработки нужного события в окне программы.

    Инструкции

    Например, для создания кнопки, сохраняющей форму, откройте процедуру обработки события кнопки «Нажатие кнопки» (Click).

  2. Используйте метод Save, который выполнит макрокоманду «Сохранить» (Save) в процедуре, указав в аргументах ТипОбъекта и ИмяОбъекта тип и имя сохраняемого объекта.

    Инструкции

  3. Запустите процедуру.

    Инструкции

Для получения дополнительных сведений о макрокоманде «Сохранить» (Save) нажмите кнопку [image] .


 Сохранение инструкции SQL как запроса для формы или отчета

Сохранение инструкции SQL как запроса для формы или отчета

Сохранив как запрос инструкцию SQL, указанную в свойстве Источник записи (RecordSource) формы или отчета, можно выполнять данный запрос независимо, а также создавать на его основе формы и отчеты.

  1. Откройте форму в режиме конструктора форм или отчет в режиме конструктора отчетов.

  2. Дважды щелкните область выделения формы или область выделения отчета, чтобы открыть окно свойств данной формы или отчета.

  3. Чтобы открыть окно режима конструктора запросов, нажмите кнопку построителя [image] рядом с ячейкой свойства Источник записей (RecordSource).

  4. Нажмите кнопку Сохранить [image] на панели инструментов.

  5. В диалоговом окне Сохранение введите имя, следуя соглашению об именах объектов Microsoft Access, а затем нажмите кнопку OK.

    Microsoft Access добавит запрос в группу Запросы [image] списка Объекты в окне базы данных.


 Использование команды «Сохранить как» для копирования объекта базы данных

Использование команды «Сохранить как» для копирования объекта базы данных

  1. Если объект базы данных, который требуется сохранить, является таблицей, модулем или представлением, закройте этот объект.

  2. Если объект базы данных открыт и выделен в окне базы данных, выберите команду Сохранить как в меню Файл.

    Если объект не открыт, щелкните ярлык соответствующего типа объектов в списке Объекты в окне базы данных, а затем выберите команду Сохранить как в меню Файл.

  3. В диалоговом окне Сохранение введите уникальное имя в соответствии с соглашением об именах объектов Microsoft Access, а затем нажмите кнопку OK. Если текущая база данных Microsoft Access является основной репликой, и требуется реплицировать новый объект в другие базы данных, установите флажок Сделать реплицируемым объектом.

    Для получения сведений об экспорте объектов и данных нажмите кнопку [image] .

Примечания

  • При создании с помощью описанной здесь процедуры копии страницы доступа к данным, Microsoft Access запросит имя нового HTML-файла.

  • См. сведения о сохранении изменений в сетевой (общей) базе данных Access.


 Изменение размеров рисунка, выводимого в рамке рисунка или в рамке объекта в форме или отчете

Изменение размеров рисунка, выводимого в рамке рисунка или в рамке объекта в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь в том, что нужная рамка рисунка, присоединенная рамка объекта или свободная рамка объекта выделена.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы вывести окно свойств.

  4. В ячейке свойства Установка размеров (SizeMode) выберите одно из следующих значений.
    • Фрагмент. Рисунок выводится на экран в натуральную величину. Если размеры рисунка превышают размеры рамки, рисунок обрезается.

    • Вписать в рамку. Размеры рисунка изменяются так, чтобы он полностью заполнял рамку. Это может привести к искажению пропорций рисунка.

    • По размеру рамки. Размеры рисунка изменяются таким образом, чтобы он заполнял рамку по ширине или по высоте без изменения пропорций и без обрезания рисунка. Это не приводит к искажению рисунка.


Выбор полей для добавления в бланк запроса или расширенного фильтра

Выбор | Действие
Одно поле | Щелкните имя поля.
Группа соседних полей | Нажмите клавишу SHIFT и, удерживая ее, щелкните первое и последнее поля набора.
Произвольный набор полей | Щелкните нужные поля, удерживая нажатой клавишу CTRL.
Все поля | Дважды щелкните заголовок списка полей или один раз символ звездочки (*). Для получения дополнительных сведений об использовании символа звездочки, нажмите кнопку [image] .

Примечания

  • После выделения полей в списке полей перетащите их в бланк.

  • При одновременном перетаскивании в бланк нескольких полей Microsoft Access помещает каждое поле в отдельный столбец. Если перетащить в бланк символ звездочки, Microsoft Access помещает имя таблицы или запроса в один столбец и добавляет к имени символы точки и звездочки (например, Типы.*). Оба эти действия приводят к одинаковому результату.

  • Помимо перетаскивания для добавления полей в бланк можно дважды щелкнуть имя нужного поля в списке полей или выбрать нужное поле из списка в строке Поле на бланке.


 Изменение количества циклов повтора текста в бегущей строке на странице доступа к данным

Изменение количества циклов повтора текста в бегущей строке на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите бегущую строку и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств этого элемента управления.

  3. Выполните одно из следующих действий.
    • Для того чтобы текст повторялся бесконечно, введите для свойства Loop значение –1.

    • Для того чтобы текст повторялся определенное число раз, а затем исчезал, введите в качестве значения свойства Loop целое число. Например, если свойство Loop имеет значение 5, текст будет повторен пять раз.


 Изменение характера движения текста бегущей строки на странице доступа к данным

Изменение характера движения текста бегущей строки на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выделите бегущую строку и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств этого элемента управления.

  3. Выполните одно из следующих действий.
    • Для того чтобы текст перемещался непрерывно, выберите в ячейке свойства Behavior значение Scroll.

    • Для того чтобы текст перемещался от начальной точки к противоположному краю элемента управления, а затем оставался на экране, выберите в ячейке свойства Behavior значение Slide.

    • Для того чтобы текст перемещался от начальной точки к противоположному краю элемента управления и обратно, все время оставаясь на экране, выберите в ячейке свойства Behavior значение Alternate.


 Выделение одного элемента управления, входящего в группу

Выделение одного элемента управления, входящего в группу

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Чтобы выделить группу, щелкните любой элемент управления из этой группы.

  3. Щелкните элемент управления, который требуется выделить

Примечания

  • При выделении одного элемента управления в группе все свойства этого элемента управления становятся доступными в окне свойств.

  • Когда при щелчке по одному элементу управления в группе выделяется вся группа, в окне свойств отображаются только те свойства, которые являются общими для всех элементов управления в группе.


 Передача команд в базу данных SQL с помощью запроса к серверу

Передача команд в базу данных SQL с помощью запроса к серверу

Запросы к серверу передают команды непосредственно на сервер базы данных ODBC (например, Microsoft SQL Server). Запросы к серверу позволяют работать непосредственно с таблицами на сервере, не прибегая к их связыванию.

  1. В окне базы данных выберите значок Запросы [image] в списке Объекты и нажмите кнопку Создать на панели инструментов окна базы данных.

  2. В диалоговом окне Новый запрос выберите в списке строку Конструктор и нажмите кнопку OK.

  3. Не добавляя таблицы или запросы, нажмите в диалоговом окне Добавление таблицы кнопку Закрыть.

  4. В меню Запрос выберите команду Запрос SQL и подкоманду Запрос к серверу.

  5. Нажмите на панели инструментов кнопку Свойства [image] для открытия окна свойств запроса.

  6. В окне свойств запроса укажите в свойстве Строка подключения ODBC (ODBCConnectStr) сведения, необходимые для подключения к внешней базе данных. Введите строку подключения самостоятельно или нажмите кнопку построителя [image] и введите данные о сервере, к которому необходимо подключиться.

    За сведениями о синтаксисе запроса следует обращаться к документации сервера базы данных SQL, на который посылается запрос.

  7. Если запрос не принадлежит к типу запросов, в которых возвращаются записи, выберите для свойства Возврат записей (ReturnsRecords) значение Нет.

  8. Введите инструкцию SQL в окно запроса к серверу.

  9. Для запуска запроса нажмите кнопку Запуск [image] на панели инструментов. (Для запроса к серверу, возвращающего записи, можно также нажать на панели инструментов кнопку Вид [image] ).

    При необходимости Microsoft Access выведет приглашение ввести сведения, требуемые для подключения к базе данных Microsoft SQL Server.

    Внимание! При преобразовании запроса к серверу в запрос другого типа, например, в запрос на выборку, введенная инструкция SQL будет потеряна.

Примечания

  • Запросы к серверу рекомендуется использовать для запуска сохраненных процедур на сервере ODBC.

  • Если в свойстве Строка подключения ODBC (ODBCConnectStr) не указана строка подключения или если существующая строка удалена, Microsoft Access по умолчанию использует строку "ODBC;". В этом случае при каждом запуске запроса будет выводиться приглашение ввести необходимые для подключения сведения.

  • В некоторых запросах к серверу наряду с данными возвращаются сообщения. При заданном для свойства Таблица сообщений (LogMessages) значении Да Microsoft Access создает таблицу, в которую записываются возвращаемые сообщения. Имя этой таблицы образуется из имени пользователя, к которому добавляется дефис ( - ) и порядковый номер, отсчет которых начинается с 00. Например, для пользователя, получившего по умолчанию имя «ADMIN», таблицы возвращаемых сообщений будут иметь имена «ADMIN-00», «ADMIN-01» и т. д.

    Если создан запрос, возвращающий несколько результирующих наборов записей, то каждый из этих наборов может быть сохранен в отдельной таблице. Для получения дополнительных сведений нажмите кнопку [image] .


 Определение аргументов при использовании процедуры, инструкции или метода в программе Visual Basic

Определение аргументов при использовании процедуры, инструкции или метода в программе Visual Basic

  • Аргументы помещаются сразу после имени процедуры, инструкции или метода. Для процедуры Function или для метода, который возвращает значение, необходимо заключать аргументы в круглые скобки. Если задаются несколько аргументов, то необходимо разделять их запятыми.

Например, в следующей конструкции метод Close объекта DoCmd закрывает форму «Новый товар». Данный метод принимает два аргумента, константу acForm и имя "Новый товар":

DoCmd.Close acForm, "Новый товар"

Метод Close не возвращает значение, поэтому аргументы не заключаются в скобки.

Совет. Допускается вставка в программы Visual Basic синтаксических конструкций, содержащих имена методов и свойств со всеми необходимыми аргументами, из окна просмотра объектов. При этом вставляются именованные аргументы, значения которых пользователь может задавать в произвольном порядке. В программах допускается использование именованных аргументов или их замена на стандартные аргументы. Для получения дополнительных сведений о работе в окне просмотра объектов нажмите кнопку [image] . Для получения дополнительных сведений об именованных аргументах нажмите кнопку [image] .


 Изменение действий, выполняемых при нажатии клавиш ENTER, TAB и клавиш со стрелками, а также стандартного поведения при входе в поле

Изменение действий, выполняемых при нажатии клавиш ENTER, TAB и клавиш со стрелками, а также стандартного поведения при входе в поле

Эти параметры определяют действия, выполняемые по умолчанию при использовании указанных клавиш для переходов в пределах полей или между полями.

  1. В меню Сервис выберите команду Параметры.

  2. Выберите вкладку Клавиатура.

  3. Выберите требуемые параметры в группах Переход при нажатии Enter, Переход по клавише со стрелкой и Поведение при входе в поле, а затем установите или снимите флажок Останов на первом и последнем поле.

Примечания

  • Для того чтобы вступил в силу параметр, выбранный в группе Поведение при входе в поле, необходимо, чтобы в группе Переход по клавише со стрелкой был выбран параметр следующее поле.

  • Эти настройки не применяются для страниц доступа к данным.


 Задание порядка языковой сортировки базы данных, используемого по умолчанию

Задание порядка языковой сортировки базы данных, используемого по умолчанию

Этот параметр определяет порядок сортировки, используемый в Microsoft Access при создании новой базы данных.

  1. В меню Сервис выберите команду Параметры.

  2. Перейдите на вкладку Общие.

  3. Выберите нужный язык в поле Порядок сортировки базы данных.

Примечания

  • Чтобы применить порядок сортировки, заданный на вкладке Общие, к существующей базе данных, следует выполнить сжатие базы данных.

  • Некоторые языки, в предыдущих версиях Microsoft Access перечислявшиеся в списке Порядок сортировки базы данных отдельными пунктами, теперь включены в порядок сортировки Общий.

  • Если база данных содержит связанные таблицы из базы данных, в которой используется порядок сортировки другого языка, Microsoft Access использует порядок сортировки, указанный для базы данных, содержащей связь с таблицей, а не для базы данных, в которой хранится сама таблица.

  • При синхронизации реплик баз данных Microsoft Access и баз данных Microsoft SQL Server возможно возникновение конфликтов синхронизации из-за использования в репликах порядков сортировки для различных языков.


 Изменение рабочего каталога, используемого по умолчанию для хранения новых баз данных или проектов Microsoft Access

Изменение рабочего каталога, используемого по умолчанию для хранения новых баз данных, проектов или страниц Microsoft Access

  1. В меню Сервис выберите команду Параметры.

  2. Перейдите на вкладку Общие.

  3. В поле Рабочий каталог введите путь любой подходящей папки, в которой требуется сохранять новые файлы баз данных Microsoft Access, проектов Microsoft Access или страниц доступа к данным, а также всех вспомогательных файлов, а затем нажмите кнопку OK.

    Примечание. Для страниц доступа к данным этот параметр применяется только при наличии открытой базы данных Access или проекта Access во время создания и сохранения страницы. В остальных случаях страницы сохраняются в стандартной рабочей папке системы.


 Задание полей и других параметров страницы доступа к данным

Задание полей и других параметров страницы доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. В меню Файл выберите команду Параметры страницы.

  3. В диалоговом окне Параметры страницы задайте размер бумаги, колонтитулы, ориентацию страницы и поля.


 Установка параметров страницы для таблиц, запросов, форм и отчетов

Установка параметров страницы для таблиц, запросов, форм и отчетов

  1. Откройте объект базы данных в одном из перечисленных ниже режимов.
    • Откройте таблицу или запрос в режиме таблицы или в режиме предварительного просмотра.

    • Откройте форму или отчет в любом режиме (или из окна базы данных).

    Примечание. Параметры страницы недоступны для макросов и модулей.

  2. В меню Файл выберите команду Параметры страницы.

  3. Выберите одну из следующих вкладок, содержащую нужные параметры.
    • Поля. Здесь можно задать поля и указать, следует ли распечатать только данные (для форм и отчетов) или распечатать также колонтитулы (для таблиц или запросов).

    • Страница. Здесь определяется ориентация, размер бумаги и принтер.

    • Столбцы. Здесь задается число, размер и макет столбцов (только для форм и отчетов).
  4. Нажмите кнопку OK.

    Microsoft Access сохраняет заданные параметры страницы вместе с формой и отчетом, поэтому для каждой формы или отчета эти параметры достаточно задать один раз. Для таблиц, запросов и модулей параметры страницы необходимо указывать при каждом выводе объекта на печать.


 Set Data Access Page Properties in Visual Basic

Set Data Access Page Properties in Visual Basic

DataAccessPage objects are Microsoft Access objects. You can set properties for these objects from within a Sub, Function, or event procedure.

To set a property of a data access page

Refer to the individual data access page within the DataAccessPages collection, followed by the name of the property and its value. For example, to set the Visible property of the Customers data access page to True (-1), use the following line of code:

DataAccessPages!Customers.Visible = True

Notes

  • For each property you want to set, you can look up the property in the Help index to find information about:
    • Whether you can set the property from Visual Basic.

    • Which values you should use to set the property. You often use different settings when you set a property in Visual Basic instead of in the property sheet. For example, if the property settings are selections from a list, you must use the value or numeric equivalent for each selection.


 Set Form, Report, and Control Properties in Visual Basic

Set Form, Report, and Control Properties in Visual Basic

Form, Report, and Control objects are Microsoft Access objects. You can set properties for these objects from within a Sub, Function, or event procedure. You can also set properties for form and report sections.

To set a property of a form or report

Refer to the individual form or report within the Forms or Reports collection, followed by the name of the property and its value. For example, to set the Visible property of the Customers form to True (-1), use the following line of code:

Forms!Customers.Visible = True

You can also set a property of a form or report from within the object's module by using the object's Me property. Code that uses the Me property executes faster than code that uses a fully qualified object name. For example, to set the RecordSource property of the Customers form to an SQL statement that returns all records with a CompanyName field entry beginning with "A" from within the Customers form module, use the following line of code:

Me!RecordSource = "SELECT * FROM Customers " _
    & "WHERE CompanyName Like 'A*'"

To set a property of a control

Refer to the control in the Controls collection of the Form or Report object on which it resides. You can refer to the Controls collection either implicitly or explicitly, but the code executes faster if you use an implicit reference. The following examples set the Visible property of a text box called CustomerID on the Customers form:

' Faster method.
Me!CustomerID.Visible = True
' Slower method.
Forms!Customers.Controls!CustomerID.Visible = True

The fastest way to set a property of a control is from within an object's module by using the object's Me property. For example, you can use the following code to toggle the Visible property of a text box called CustomerID on the Customers form:

With Me!CustomerID
    .Visible = Not .Visible
End With

To set a property of a form or report section

Refer to the form or report within the Forms or Reports collection, followed by the Section property and the integer or constant that identifies the section. The following examples set the Visible property of the page header section of the Customers form to False (0):

Forms!Customers.Section(3).Visible = False
Me!Section(acPageHeader).Visible = False

Notes

  • For each property you want to set, you can look up the property in the Help index to find information about:
    • Whether you can set the property from Visual Basic.

    • Views in which you can set the property. Not all properties can be set in all views. For example, you can set a form's BorderStyle property only in form Design view.

    • Which values you should use to set the property. You often use different settings when you set a property in Visual Basic instead of in the property sheet. For example, if the property settings are selections from a list, you must use the value or numeric equivalent for each selection.
  • To set default properties for controls from Visual Basic, use the DefaultControl method.


 Set Options from Visual Basic

Set Options from Visual Basic

You can use the SetOption and GetOption methods to set and return option values in the Options dialog box from code. To view the Options dialog box, click Options on the Tools menu.

The following tables list the names of all options that can be set or returned from code and the tabs on which they can be found in the Options dialog box, followed by the corresponding string argument that you must pass to the SetOption or GetOption method.

Notes

If your database may run on a version of Microsoft Access for a language other than the one in which you created it, then you must supply the arguments for the GetOption and SetOption methods in English.

Some options are available only within a Microsoft Access database (.mdb) or Access project (.adp). The exceptions are noted with a (MDB only) or (ADP only) notation.

View Tab

Option text | String argument
Show |
Status bar | Show Status Bar
Startup dialog box | Show Startup Dialog Box
New object shortcuts | Show New Object Shortcuts
Hidden objects | Show Hidden Objects
System objects | Show System Objects
Use taskbar for each document | Use Taskbar For Each Document
Show in macro design |
Names column | Show Macro Names Column
Conditions column | Show Conditions Column
Click options in database window | Database Explorer Click Behavior
Use substitute font | Enable Font Switching
Substitute font name | Substitute Font Name

General Tab

Option text | String argument
Print margins |
Left Margin | Left Margin
Right Margin | Right Margin
Top Margin | Top Margin
Bottom Margin | Bottom Margin
Default database folder | Default Database Directory
Provide feedback with sound | Provide Feedback With Sound
Recently used file list | Enable MRU File List
# of recently used file list | Size of MRU File List
New database sort order (MDB only) | New Database Sort Order
Compact current database | Auto Compact
Compact when database will shrink by this percentage or more | Auto Compact Percentage
Name AutoCorrect (MDB only) |
Track name AutoCorrect info | Track Name AutoCorrect Info
Perform name AutoCorrect | Perform Name AutoCorrect
Log name AutoCorrect changes | Log Name AutoCorrect Changes

WebOptions Button (General tab)

Options listed in italic are listed for backward compatibility. With the exception of the Show Hyperlink Addresses In Status Bar option, all other options are hidden but can be set with the SetOption method. For more information about Web options, see DefaultWebOptions.

Option text | String argument
Hyperlink color | Hyperlink Color
Followed Hyperlink color | Followed Hyperlink color
Underline hyperlinks | Underline Hyperlinks
Show Hyperlink Addresses In Status Bar | Note Not valid for Microsoft Access 2000. Address shown in tooltips.
HTML Template | HTML Template
Data Source Name | Data Source Name
User Name | User Name
Password | Password
Server URL | Active Server Pages URL
Session Timeout | Active Server Pages Session Timeout

Edit/Find Tab

Option text | String argument
Default find/replace behavior | Default Find/Replace Behavior
Confirm |
Record changes | Confirm Record Changes
Document deletions | Confirm Document Deletions
Action queries (MDB only) | Confirm Action Queries
Show list of values in (MDB only) |
Local indexed fields | Show Values In Indexed
Local nonindexed fields | Show Values In Non-Indexed
ODBC fields | Show Values In Remote
Don't display lists where more than this number of records read | Show Values Limit
Show list of values in (ADP only) |
Records in local snapshot | Show Values In Snapshot
Records at server | Show Values In Server
Don't display lists where more than this number of records read | Show Values Limit

Keyboard Tab

Option text | String argument
Move after enter | Move After Enter
Behavior entering field | Behavior Entering Field
Arrow Key Behavior | Arrow Key Behavior
Cursor Stops At First/Last Field | Cursor Stops at First/Last Field

Datasheet Tab

Option text | String argument
Default Colors |
Font | Default Font Color
Background | Default Background Color
Gridlines | Default Gridlines Color
Default gridlines showing |
Horizontal | Default Gridlines Horizontal
Vertical | Default Gridlines Vertical
Default column width | Default Column Width
Default Font |
Font | Default Font Name
Weight | Default Font Weight
Size | Default Font Size
Italic | Default Font Italic
Underline | Default Font Underline
Default cell effect | Default Cell Effect
Show animations | Show Animations

Forms/Reports Tab

Option text | String argument
Selection Behavior | Selection Behavior
Form template | Form Template
Report template | Report Template
Always use event procedures | Always Use Event Procedures

Advanced Tab (MDB Only)

Option text | String argument
Ignore DDE Requests | Ignore DDE Requests
Enable DDE Refresh | Enable DDE Refresh
Default Open Mode | Default Open Mode for Databases
Command-Line Arguments | Command-Line Arguments
OLE/DDE Timeout (Sec) | OLE/DDE Timeout (Sec)
Number Of Update Retries | Number of Update Retries
ODBC Refresh Interval (Sec) | ODBC Refresh Interval (Sec)
Refresh Interval (Sec) | Refresh Interval (Sec)
Update Retry Interval (Msec) | Update Retry Interval (Msec)
Default Record Locking | Default Record Locking
Use Record Level Locking | Use Record Level Locking

Advanced Tab (ADP Only)

Option text | String argument
Ignore DDE Requests | Ignore DDE Requests
Enable DDE Refresh | Enable DDE Refresh
Default Max Records | Row Limit
Save login and password | Save Login And Password
Command-Line Arguments | Command-Line Arguments
OLE/DDE Timeout (Sec) | OLE/DDE Timeout (Sec)

Tables/Queries Tab (MDB Only)

Option text | String argument
Default field sizes |
Text | Default Text Field Size
Number | Default Number Field Size
Default Field Type | Default Field Type
AutoIndex On Import/Create | AutoIndex On Import/Create
Show table names | Show Table Names
Output all fields | Output All Fields
Enable AutoJoin | Enable AutoJoin
Run Permissions | Run Permissions

Note If you are developing a database application, add-in, library database, or referenced database, make sure that the Error Trapping option is set to 2 (Break On Unhandled Errors) when you have finished debugging your code.

The value that you pass to the SetOption method as the setting argument depends on which type of option you are setting. The following table establishes some guidelines for setting options.

If the option is | Then the setting argument is
A text box | A string
A check box | A Boolean value - True (-1) or False (0)
An option button in an option group, or an option in a combo box or a list box | An integer corresponding to the option's position in the option group or list (starting with zero [0])


 Set Properties of ActiveX Data Objects in Visual Basic

Set Properties of ActiveX Data Objects in Visual Basic

ActiveX Data Objects (ADO) enable you to manipulate the structure of your database and the data it contains from Visual Basic. Many ADO objects correspond to objects that you see in your database - for example, a Table object corresponds to a Microsoft Access table. A Field object corresponds to a field in a table.

Most of the properties you can set for ADO objects are ADO properties. These properties are defined by the Microsoft Jet database engine and are set the same way in any application that includes the Jet database engine. Some properties that you can set for ADO objects are defined by Microsoft Access, and aren't automatically recognized by the Jet database engine. How you set properties for ADO objects depends on whether a property is defined by the Jet database engine or by Microsoft Access.

Setting ADO Properties for ADO Objects

To set a property that's defined by the Jet database engine, refer to the object in the ADO hierarchy. The easiest and fastest way to do this is to create object variables that represent the different objects you need to work with, and refer to the object variables in subsequent steps in your code. For example, the following code creates a new TableDef object and sets its Name property:

Dim tbl As New ADOX.Table
Dim cnn As ADODB.Connection
Set cnn = CurrentProject.Connection
tbl.Name = "Contacts"

Setting Microsoft Access Properties for ADO Objects

When you set a property that's defined by Microsoft Access, but applies to a ADO object, the Jet database engine doesn't automatically recognize the property as a valid property. The first time you set the property, you must create the property and append it to the Properties collection of the object to which it applies. Once the property is in the Properties collection, it can be set in the same manner as any ADO property.

If the property is set for the first time in the user interface, it's automatically added to the Properties collection, and you can set it normally.

When writing procedures to set properties defined by Microsoft Access, you should include error-handling code to verify that the property you are setting already exists in the Properties collection. See the Help topic about the Add method or the individual property topic for more information.

Keep in mind that when you create the property, you must correctly specify its Type property before you append it to the Properties collection. You can determine the Type property based on the information in the Settings section of the Help topic for the individual property. The following table provides some guidelines for determining the setting of the Type property.

If the property setting is | Then the Type property setting should be
A string | adLongVarWChar or adVarWChar
True/False | adBoolean
An integer | adInteger

The following table lists some Microsoft Access-defined properties that apply to ADO objects.

ADO object | Microsoft Access-defined properties
Connection | AppTitle, AppIcon, StartupShowDBWindow, StartupShowStatusBar, AllowShortcutMenus, AllowFullMenus, AllowBuiltInToolbars, AllowToolbarChanges, AllowBreakIntoCode, AllowSpecialKeys, Replicable, ReplicationConflictFunction
Table | DatasheetBackColor, DatasheetCellsEffect, DatasheetFontHeight, DatasheetFontItalic, DatasheetFontName, DatasheetFontUnderline, DatasheetFontWeight, DatasheetForeColor, DatasheetGridlinesBehavior, DatasheetGridlinesColor, Description, FrozenColumns, RowHeight, ShowGrid
QueryDef | DatasheetBackColor, DatasheetCellsEffect, DatasheetFontHeight, DatasheetFontItalic, DatasheetFontName, DatasheetFontUnderline, DatasheetFontWeight, DatasheetForeColor, DatasheetGridlinesBehavior, DatasheetGridlinesColor, Description, FailOnError, FrozenColumns, LogMessages, MaxRecords, RecordLocks, RowHeight, ShowGrid, UseTransaction
Field | Caption, ColumnHidden, ColumnOrder, ColumnWidth, DecimalPlaces, Description, Format, InputMask


 Set Properties of Data Access Objects in Visual Basic

Set Properties of Data Access Objects in Visual Basic

Data Access Objects (DAO) enable you to manipulate the structure of your database and the data it contains from Visual Basic. Many DAO objects correspond to objects that you see in your database - for example, a TableDef object corresponds to a Microsoft Access table. A Field object corresponds to a field in a table.

Most of the properties you can set for DAO objects are DAO properties. These properties are defined by the Microsoft Jet database engine and are set the same way in any application that includes the Jet database engine. Some properties that you can set for DAOobjects are defined by Microsoft Access, and aren't automatically recognized by the Jet database engine. How you set properties for DAO objects depends on whether a property is defined by the Jet database engine or by Microsoft Access.

Setting DAO Properties for DAO Objects

To set a property that's defined by the Jet database engine, refer to the object in the DAO hierarchy. The easiest and fastest way to do this is to create object variables that represent the different objects you need to work with, and refer to the object variables in subsequent steps in your code. For example, the following code creates a new TableDef object and sets its Name property:

Dim dbs As Database, tdf As TableDef
Set dbs = CurrentDb
Set tdf = dbs.CreateTableDef
tdf.Name = "Contacts"

Setting Microsoft Access Properties for DAO Objects

When you set a property that's defined by Microsoft Access, but applies to a DAO object, the Jet database engine doesn't automatically recognize the property as a valid property. The first time you set the property, you must create the property and append it to the Properties collection of the object to which it applies. Once the property is in the Properties collection, it can be set in the same manner as any DAO property.

If the property is set for the first time in the user interface, it's automatically added to the Properties collection, and you can set it normally.

When writing procedures to set properties defined by Microsoft Access, you should include error-handling code to verify that the property you are setting already exists in the Properties collection. See the Help topic about the CreateProperty method or the individual property topic for more information.

Keep in mind that when you create the property, you must correctly specify its Type property before you append it to the Properties collection. You can determine the Type property based on the information in the Settings section of the Help topic for the individual property. The following table provides some guidelines for determining the setting of the Type property.

If the property setting is | Then the Type property setting should be
A string | dbText
True/False | dbBoolean
An integer | dbInteger

The following table lists some Microsoft Access-defined properties that apply to DAO objects.

DAO object | Microsoft Access-defined properties
Database | AppTitle, AppIcon, StartupShowDBWindow, StartupShowStatusBar, AllowShortcutMenus, AllowFullMenus, AllowBuiltInToolbars, AllowToolbarChanges, AllowBreakIntoCode, AllowSpecialKeys, Replicable, ReplicationConflictFunction
SummaryInfo Container | Title, Subject, Author, Manager, Company, Category, Keywords, Comments, Hyperlink Base (See the Summary tab of the DatabaseName Properties dialog box, available by clicking Database Properties on the File menu.)
UserDefined Container | (See the Summary tab of the DatabaseName Properties dialog box, available by clicking Database Properties on the File menu.)
TableDef | DatasheetBackColor, DatasheetCellsEffect, DatasheetFontHeight, DatasheetFontItalic, DatasheetFontName, DatasheetFontUnderline, DatasheetFontWeight, DatasheetForeColor, DatasheetGridlinesBehavior, DatasheetGridlinesColor, Description, FrozenColumns, RowHeight, ShowGrid
QueryDef | DatasheetBackColor, DatasheetCellsEffect, DatasheetFontHeight, DatasheetFontItalic, DatasheetFontName, DatasheetFontUnderline, DatasheetFontWeight, DatasheetForeColor, DatasheetGridlinesBehavior, DatasheetGridlinesColor, Description, FailOnError, FrozenColumns, LogMessages, MaxRecords, RecordLocks, RowHeight, ShowGrid, UseTransaction
Field | Caption, ColumnHidden, ColumnOrder, ColumnWidth, DecimalPlaces, Description, Format, InputMask


 Set Startup Properties from Visual Basic

Set Startup Properties from Visual Basic

In a Microsoft Access database (.mdb), startup properties are properties of a Database object. A Database object is a DAO object supplied by the Microsoft Jet database engine, but startup properties are defined by Microsoft Access, so they aren't automatically recognized by the Jet database engine. If a startup property hasn't been set previously, you must create it and add it to the Properties collection of the Database object.

In a Microsoft Access project (.adp), startup properties are properties of a CurrentProject object and like the Database object in an Access database (.mdb), startup properties aren't automatically recognized by the Jet database engine. If a startup property hasn't been set previously, you must create it and add it to the AccessObjectProperties collection of the CurrentProject object.

When you set startup properties from Visual Basic, you should include error-handling code to verify that the property exists in the Properties or AccessObjectProperties collection. For more information about setting properties defined by Microsoft Access, see Set Properties of Data Access Objects in Visual Basic or Set Properties of ActiveX Data Objects in Visual Basic.

The names of the startup properties differ from the text that appears in the Startup dialog box, available by clicking Startup on the Tools menu. The following table provides the name of each startup property as it's used in Visual Basic code.

Text in Startup dialog box | Property name
Application Title | AppTitle
Application Icon | AppIcon
Display Form/Page | StartupForm
Display Database Window | StartupShowDBWindow
Display Status Bar | StartupShowStatusBar
Menu Bar | StartupMenuBar
Shortcut Menu Bar | StartupShortcutMenuBar
Allow Full Menus | AllowFullMenus
Allow Default Shortcut Menus | AllowShortcutMenus
Allow Built-In Toolbars | AllowBuiltInToolbars
Allow Toolbar/Menu Changes | AllowToolbarChanges
Allow Viewing Code After Error | AllowBreakIntoCode
Use Access Special Keys | AllowSpecialKeys


 Задание значения элемента управления на основании значения другого элемента управления с помощью макроса

Задание значения элемента управления на основании значения другого элемента управления с помощью макроса

  1. Создайте макрос.

    Инструкции

  2. В пустой строке бланка выберите макрокоманду ЗадатьЗначение (SetValue) в списке макрокоманд.

  3. Укажите в аргументе Элемент идентификатор элемента управления, значение которого требуется задать, а в аргументе Выражение идентификатор элемента управления, значение которого требуется присвоить первому элементу управления.

    Присвоение значения одного элемента управления другому

  4. Нажмите кнопку Сохранить [image] , чтобы сохранить макрос.

  5. Запустите макрос.

    Инструкции

Примечание. В зависимости от контекста, может потребоваться использование полных идентификаторов элементов управления. Для получения дополнительных сведений об использовании идентификаторов в выражениях нажмите кнопку [image] .


 Задание значения элемента управления на основании значения другого элемента управления с помощью программы Visual Basic

Задание значения элемента управления на основании значения другого элемента управления с помощью программы Visual Basic

  1. Создайте процедуру Visual Basic.

    Инструкции

  2. Добавьте в процедуру инструкцию присваивания, состоящую из идентификатора элемента управления, значение которого требуется задать, знака равенства (=) и идентификатора второго элемента управления, значение которого требуется присвоить первому элементу.

    Для ссылки на значение элемента управления в текущей форме введите ключевое слово Me с последующим оператором ! и именем элемента управления. Например, в следующей инструкции значение поля «Город» в текущей форме присваивается элементу управления «ГородПолучателя» в этой же форме:

    Me![ГородПолучателя] = Me![Город]

    Для ссылки на значение элемента управления в другой форме введите полный идентификатор элемента управления. Например, следующий идентификатор указывает ссылку на элемент управления «ГородПолучателя» в форме «ФормаДоставка»:

    Forms![ФормаДоставка]![ГородПолучателя]

  3. Запустите процедуру.

    Инструкции

Для получения дополнительных сведений о ссылках на значение элемента управления нажмите кнопку [image] .


 Задание значения свойства в ответ на событие с помощью макроса

Задание значения свойства в ответ на событие с помощью макроса

  1. Создайте макрос.

    Инструкции

  2. В пустой строке бланка выберите макрокоманду ЗадатьЗначение (SetValue) в списке макрокоманд.

  3. Укажите в аргументе Элемент идентификатор свойства, значение которого требуется задать, а в аргументе Выражение значение, которое присваивается свойству.

    Задание значения в ответ на событие

  4. Нажмите кнопку Сохранить [image] , чтобы сохранить макрос.

  5. Перейдите в форму или отчет, откройте окно свойств для объекта, событие которого запускает макрос, и введите имя макроса в ячейку свойства события, которое должно запускать макрос.

Для просмотра примера задания значения свойства в ответ на событие нажмите кнопку [image] .


 Задание значения свойства в ответ на событие с помощью программы Visual Basic

Задание значения свойства в ответ на событие с помощью программы Visual Basic

  1. Создайте процедуру обработки нужного события.

    Инструкции

  2. Добавьте в процедуру инструкцию присваивания, состоящую из идентификатора свойства, значение которого требуется задать, знака равенства (=) и присваиваемого свойству значения.

    Для ссылки на свойство элемента управления в текущей форме введите ключевое слово Me, за которым следует оператор !, имя элемента управления, оператор . (точка) и имя свойства. Например, в следующей инструкции значение False присваивается свойству Вывод на экран (Visible) элемента управления «ДатаОплаты» в текущей форме:

    Me![ДатаОплаты].Visible = False

    Для ссылки на свойство элемента управления в другой форме введите полный идентификатор. Например, следующий идентификатор задает ссылку на свойство Вывод на экран (Visible) элемента управления «ДатаОплаты» в форме «ФормаДоставка»:

    Forms![ФормаДоставка]![ДатаОплаты].Visible

Для получения дополнительных сведений о ссылках на свойства нажмите кнопку [image] .

Для просмотра примера задания значения свойства в ответ на событие нажмите кнопку [image] .


 Установка контрольных выражений в программе Visual Basic

Установка контрольных выражений в программе Visual Basic

При прерывании выполнения программы Visual Basic можно просмотреть значения контрольных выражений в окне «Watches» в редакторе Visual Basic. Кроме того, возможен прямой просмотр значений любых выражений, еще не определенных как контрольные выражения.

Предполагаемые действия

Добавление контрольного выражения в окно Watches редактора Visual Basic

Просмотр контрольных значений в контрольном окне


 Adding and Displaying Shortcut Menus

Adding and Displaying Shortcut Menus

Microsoft Access 2000 provides a user interface for adding and modifying shortcut menus. To add a custom shortcut menu, add a toolbar in the Customize dialog box, available by pointing to Toolbars on the View menu and clicking Customize, and then use the Toolbar Properties dialog box to change the Type of the toolbar to Popup. To delete a shortcut menu, you must change its type to Menu Bar or Toolbar, and then delete it. You can add, modify, and delete any shortcut menus in Visual Basic.

Built-in and custom shortcut menus are displayed in the Shortcut Menus toolbar, available by selecting the Shortcut Menus check box in the Customize dialog box. You can add and remove command buttons and menu items to and from shortcut menus by using the Shortcut Menus toolbar. Note, however, that to refer to a shortcut menu in Visual Basic, use the syntax CommandBars("shortcutmenuname"). The code CommandBars("Shortcut Menus") is meaningless.

You can use an event procedure to display a shortcut menu in response to a right mouse click. The following example displays the custom shortcut menu "CustomerFormShortcut" when the user right-clicks in a blank area or record selector on a form.

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, _
        X As Single, Y As Single)
    Dim cmdBar As CommandBar
    Dim intRight As Integer

    Set cmdBar = CommandBars("CustomerFormShortcut")
    intRight = (Button and acRightButton) > 0
        If intRight Then
            cmdBar.ShowPopup 200, 200
        End If
End Sub


 Отображение или скрытие записей группы на странице доступа к данным

Отображение или скрытие записей группы на странице доступа к данным

  • Щелкните маркер развертывания рядом с заголовком группы.


 Изменение размеров и пропорций фонового рисунка в форме или отчете

Изменение размеров и пропорций фонового рисунка в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Дважды щелкните область выделения формы или область выделения отчета, чтобы открыть окно свойств.

  3. Выберите одно из следующих значений в ячейке свойства Масштабы рисунка (PictureSizeMode).
    • Фрагмент. Отображает рисунок, сохраняя его настоящие размеры. Если рисунок больше формы или отчета, он обрезается.

    • Вписать в рамку. Изменяет размеры рисунка, заполняя им всю форму или отчет. Это значение может нарушить пропорции рисунка.

    • По размеру рамки. Изменяет размер рисунка, размещая его по всей длине или ширине формы или отчета. Рисунок не обрезается, а его пропорции не искажаются.

    Примечание. Если для свойства Мозаичное заполнение (PictureTiling) задано значение Да, следует установить свойство Масштабы рисунка (PictureSizeMode) в значение Фрагмент.


 Сортировка записей в режиме формы или в режиме таблицы

Сортировка записей в режиме формы или в режиме таблицы

Для получения дополнительных сведений о сортировке записей нажмите кнопку [image] .

  1. В режиме формы или в режиме таблицы щелкните поле, которое требуется использовать для сортировки записей. Для того чтобы отсортировать записи в подчиненной форме, щелкните поле, значения которого требуется отсортировать. Для того чтобы отсортировать записи в подтаблице, отобразите подтаблицу, щелкнув соответствующий маркер развертывания, а затем щелкните нужное поле.

  2. Выполните одно из следующих действий.
    • Для сортировки по возрастанию нажмите кнопку Сортировка по возрастанию [image] .

    • Для сортировки по убыванию нажмите кнопку Сортировка по убыванию [image] .

Примечания

  • В режиме таблицы, при сортировке подтаблицы для одной записи, Microsoft Access сортирует все подтаблицы на текущем уровне.

  • В форме возможна сортировка записей только по одному полю. В таблице или подтаблице имеется возможность выделить сразу два или несколько соседних столбцов, а затем выполнить по ним сортировку. Сортировка записей начинается с крайнего левого выделенного столбца. При сохранении формы или таблицы Microsoft Access сохраняет порядок сортировки.


 Сортировка записей с помощью бланка запроса или расширенного фильтра

Сортировка записей с помощью бланка запроса или расширенного фильтра

Прежде чем определять порядок сортировки, необходимо рассмотреть некоторые вопросы. Для получения дополнительных сведений нажмите кнопку [image] .

  1. Откройте запрос в режиме конструктора или выведите на экран окно расширенного фильтра для таблицы, запроса или формы.

  2. Для сортировки по нескольким полям прежде всего расположите поля в бланке запроса в том порядке, в котором требуется выполнять сортировку. В Microsoft Access записи сортируются сначала по самому левому полю, затем по полю, расположенному в следующем столбце справа и т.д. Например, чтобы выполнить сортировку сначала по полю «Фамилия», а затем по полю «Имя», необходимо в бланке запроса поместить поле «Фамилия» слева от поля «Имя».

  3. В ячейке Сортировка выберите нужный параметр для каждого из полей сортировки.

  4. Для просмотра результатов запроса нажмите кнопку Вид [image] на панели инструментов.


 Задание параметра командной строки, предназначенного для использования в программе Visual Basic

Задание параметра командной строки, предназначенного для использования в программе Visual Basic

При запуске Microsoft Access из командной строки параметр /cmd позволяет указать аргумент командной строки, который может быть передан в программу Visual Basic:

Для получения дополнительных сведений о параметре командной строки /сmd нажмите кнопку [image] .


 Задание типа данных для параметра в запросе с параметрами

Задание типа данных для параметра в запросе с параметрами

  1. Создайте запрос с параметрами и в режиме конструктора этого запроса выберите в меню Запрос команду Параметры.

  2. Введите в первую ячейку в столбце Параметр первое приглашение, введенное в бланк запроса.

  3. В ячейке столбца Тип данных в этой строке выберите требуемый тип данных.

  4. Повторите шаги 2 и 3 для каждого параметра, для которого следует задать тип данных.


 Указание значения по умолчанию, которое автоматически выводится в поле со списком в форме

Указание значения по умолчанию, которое автоматически выводится в поле со списком в форме

  1. Откройте форму в режиме конструктора.

  2. Убедитесь, что нужное поле со списком выделено, и нажмите кнопку Свойства [image] на панели инструментов.

  3. Введите в ячейку свойства Значение по умолчанию (DefaultValue) выражение [ИмяПоляСоСписком].ItemData(n), где n представляет номер строки, используемой по умолчанию. Нумерация строк в свойстве ItemData начинается с нуля, то есть для использования по умолчанию первой строки списка следует ввести выражение ItemData(0). Например, для вывода значения из первой строки поля со списком с именем «СписокПоставщиков» введите в ячейку свойства Значение по умолчанию (DefaultValue) выражение [СписокПоставщиков].ItemData(0).

Примечание. Для того чтобы указать значение по умолчанию для поля подстановки в режиме конструктора таблицы базы данных Microsoft Access (.mdb), определите свойство Значение по умолчанию (DefaultValue) для поля внешнего ключа. Например, если поле «КодПоставщика» является полем внешнего ключа в таблице «Товары», выберите поле «КодПоставщика» и введите допустимый код поставщика в ячейку свойства Значение по умолчанию (DefaultValue) в нижней части окна. В дальнейшем, при добавлении этого поля в форму, Access будет автоматически устанавливать для него указанное значение.


 Определение значения, используемого по умолчанию, в режиме конструктора таблицы

Определение значения, используемого по умолчанию, в режиме конструктора таблицы

  1. Откройте таблицу в режиме конструктора.

  2. В верхней части окна выберите поле, для которого требуется определить значение по умолчанию.

  3. В нижней части окна, на вкладке Общие, выберите ячейку свойства Значение по умолчанию (DefaultValue), а затем введите значение для использования по умолчанию (например, Москва) или выражение (например, Date()).

    Для просмотра примеров значений, используемых по умолчанию, нажмите кнопку [image] .

Примечания

  • Установка свойства Значение по умолчанию (DefaultValue) для поля не влияет на существующие данные. Однако можно заменить текущее значение поля значением по умолчанию, нажав клавиши CTRL+ALT+ПРОБЕЛ.

  • Если в базе данных, которая будет использоваться в нескольких странах, для поля логического типа устанавливается значение по умолчанию, то перед ним рекомендуется ставить знак равенства. Тогда используемое по умолчанию значение будет отображено на местном языке. Например, введите значение =Да, чтобы в Германии было выведено «Ja». Чтобы увидеть требуемое значение, необходимо задать для свойства Тип элемента управления (DisplayControl) значение Поле или Поле со списком.


 Определение времени ожидания запросом ответа от источника данных ODBC, по прошествии которого будет выдано сообщение об ошибке подключения к ODBC

Определение времени ожидания запросом ответа от источника данных ODBC, по прошествии которого будет выдано сообщение об ошибке подключения к ODBC

Выполнение запроса, использующего базу данных ODBC в качестве базового источника данных, может быть задержано из-за высокой загруженности сети или занятости сервера ODBC.

  1. Откройте запрос в режиме конструктора.

  2. Выделите запрос, щелкнув любое место окна режима конструктора запроса вне бланка запроса и списков полей.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств запроса.

  4. Задайте в значении свойства Время ожидания ODBC (ODBCTimeout) число секунд, после которого возвращается сообщения об ошибке превышения времени ожидания. По умолчанию задается значение 60 секунд.

Примечание. Если задать для этого свойства нулевое значение, ошибка превышения времени ожидания не возникает.


 Определение режима блокировки записей в многопользовательской среде для конкретного запроса

Определение режима блокировки записей в многопользовательской среде для конкретного запроса

Можно блокировать все записи в базовой таблице или только изменяемую запись. Во втором случае запись, изменяемая одним пользователем в результатах запроса, недоступна в это время другим пользователям для изменения в базовой таблице.

  1. Откройте запрос в режиме конструктора. В многопользовательской среде подтвердите, что все пользователи закрыли данный запрос, его базовую таблицу или запрос, а также другие объекты, основанные на данном запросе.

  2. Выделите запрос, щелкнув любое место окна режима конструктора запроса вне бланка запроса и списков полей.

  3. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств запроса.

  4. Выберите требуемое значение свойства Блокировка записей (RecordLocks).

    Для получения сведений о задании для этого свойства значения, используемого по умолчанию всеми запросами, нажмите кнопку [image] .

Для получения дополнительных сведений о выборе способа блокировки записей нажмите кнопку [image] .


Дополнительные сведения о документе в базе данных Microsoft Access или проекте Microsoft Access

  1. При открытой базе данных выберите в меню Файл команду Свойства базы данных.

  2. Выберите вкладку Документ и введите нужные данные.

    Для получения справки по каждому параметру нажмите кнопку с вопросительным знаком [image] и щелкните нужный параметр.

  3. Нажмите кнопку OK.

Примечание. Для всех элементов, указанных на вкладке Документ, соответствующие свойства определяются автоматически. Для получения дополнительных сведений нажмите кнопку [image] .


 Задание границы и строки заголовка всплывающей формы или пользовательского диалогового окна

Задание границы и строки заголовка всплывающей формы или пользовательского диалогового окна

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Тип границы (BorderStyle) выберите нужное значение. Для получения дополнительных сведений о значениях данного свойства нажмите кнопку [image] . Для получения сведений о создании всплывающих форм и пользовательских диалоговых окон нажмите кнопку [image] .


 Открытие страницы доступа к данным для ввода данных

Открытие страницы доступа к данным для ввода данных

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. В меню Правка выберите команду Выделить страницу.

  3. Нажмите кнопку Свойства [image] на панели инструментов. Microsoft Access отобразит окно свойств страницы.

  4. Установите для свойства DataEntry значение Истина.

При открытии данной страницы доступа к данным в режиме страницы или в Internet Explorer на странице будет отображаться новая пустая запись.


 Разрешение или запрет на изменение размеров формы

Разрешение или запрет на изменение размеров формы

В большинстве случаев не требуется запрещение возможности изменения размеров формы. Следующие действия выполняются при создании всплывающих форм или пользовательских диалоговых окон.

  1. Откройте форму в режиме конструктора.

  2. Дважды щелкните область выделения формы, чтобы открыть окно ее свойств.

  3. В ячейке свойства Тип границы (BorderStyle) выберите значение Отсутствует, Тонкая или Окна диалога. Для получения дополнительных сведений об этих значениях нажмите кнопку [image] .

Примечание. Для получения справки о создании всплывающих форм и пользовательских диалоговых окон нажмите кнопку [image] .


Указание учетной записи электронной почты, с помощью которой нужно отправить сообщение

Примечание. Данная процедура применима только в том случае, если приложение Microsoft Outlook установлено в режиме «Только почта Интернета». См. инструкции по получению сведений об установленном приложении Outlook.

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры.

  3. В поле Отправить сообщение на выберите учетную запись, которую требуется использовать, а затем нажмите кнопку Закрыть.


 Запуск построителя выражений из окна свойств или из окна макроса

Запуск построителя выражений из окна свойств или из окна макроса

  1. Выберите ячейку свойства или аргумента, в которую требуется ввести выражение.

  2. Нажмите кнопку построителя [image] рядом с ячейкой свойства или аргумента.

    Если для данного свойства можно использовать несколько построителей, на экран выводится диалоговое окно Построитель. Выберите вариант Выражения и нажмите кнопку OK.

Примечание. Если ячейка свойства или аргумента, из которой запущен построитель выражений, уже содержит значение, то оно будет автоматически скопировано в поле выражения.


 Запуск построителя выражений из бланка запроса или из столбца условий в окне макроса

Запуск построителя выражений из бланка запроса или из столбца условий в окне макроса

Построитель выражений может быть запущен из ячеек Поле и Условие отбора в режиме конструктора запроса, а также из столбца Условие в окне макроса.

  1. Щелкните правой кнопкой позицию, в которую требуется вставить выражение.

  2. В контекстном меню выберите команду Построить.

Примечание. Если ячейка свойства или столбца Условие, из которой запущен построитель выражений, уже содержит значение, то оно будет автоматически скопировано в поле выражения.


 Запуск Microsoft Access с параметрами командной строки из меню «Пуск»

Запуск Microsoft Access с параметрами командной строки из меню «Пуск»

  1. Нажмите кнопку Пуск в Windows, выберите команду Настройка и подкоманду Панель задач и меню «Пуск».

  2. Перейдите на вкладку Настройка меню и нажмите кнопку Дополнительно.

  3. Дважды щелкните значок папки «Программы».

  4. Дважды щелкните папку «Microsoft Office» (или другую папку, в которую помещен Microsoft Access). Если в меню Пуск отсутствует папка с Microsoft Access, то этот шаг можно пропустить.

  5. Щелкните правой кнопкой ярлык программы Microsoft Access, выберите команду Свойства и перейдите на вкладку Ярлык.

  6. Щелкните справа от команды запуска Microsoft Access в поле Объект и введите нужные параметры командной строки.

    Например, следующая командная строка запускает Microsoft Access и открывает учебную базу данных «Борей» в режиме монопольного доступа.

"C:\Program Files\Microsoft Office\Office\MSAccess.exe" "C:\Program Files\Microsoft Office\Office\Samples\Борей.mdb" /excl

Для просмотра списка параметров командной строки нажмите кнопку [image] .


 Запуск Microsoft Access с параметрами командной строки с помощью ярлыка

Запуск Microsoft Access с параметрами командной строки с помощью ярлыка

  1. Откройте папку, в которую установлен Microsoft Access (как правило, эта папка имеет имя Office и находится в подпапке Microsoft Office папки Program Files на диске C).

  2. Щелкните правой кнопкой значок программы Microsoft Access и выберите команду Создать ярлык.

  3. Щелкните правой кнопкой только что созданный ярлык, выберите команду Свойства, а затем перейдите на вкладку Ярлык.

  4. Щелкните справа от команды запуска Microsoft Access в поле Объект и введите нужные параметры командной строки.

    Например, следующая командная строка запускает Microsoft Access и открывает учебную базу данных «Борей» в режиме монопольного доступа.

"C:\Program Files\Microsoft Office\Office\MSAccess.exe" "C:\Program Files\Microsoft Office\Office\Samples\Борей.mdb" /excl

Для просмотра списка параметров командной строки нажмите кнопку [image] .

Примечание. Созданный ярлык можно поместить на рабочий стол или в папку, либо добавить в меню Пуск. Для получения дополнительных сведений выполните в справочной системе Windows поиск по ключевому слову «ярлыки».

Также можно создать ярлык для открытия любого объекта базы данных Microsoft Access непосредственно из Windows.

Для получения дополнительных сведений нажмите кнопку [image] .


 Выполнение программы Visual Basic в пошаговом режиме

Выполнение программы Visual Basic в пошаговом режиме

Выполнение программы Visual Basic в пошаговом режиме позволяет определить, в каком месте программы возникает ошибка. В этом режиме можно видеть результаты выполнения каждой строки программы.

  1. Приостановите выполнение программы.

    Инструкции

    Microsoft Access отобразит строку программы, на которой было прервано выполнение.

  2. Выполните одно из следующих действий.
    • Для поочередного выполнения каждой строки программы, включая строки процедур, вызываемых из других процедур (с заходом в процедуры), нажмите кнопку Step Into [image] на панели инструментов Debug.

    • Для поочередного выполнения каждой строки программы, но с выполнением вызываемых процедур (с обходом процедур), нажмите кнопку Step Over [image] на панели инструментов Debug.

    • Для выполнения программы с ее начала и до строки, предшествующей той, в которой находится курсор, с последующим прерыванием для перехода в пошаговый режим (выполнение до текущей позиции), выберите в меню Debug команду Run To Cursor.

    • Для выполнения остатка текущей процедуры с последующим переходом на следующую строку в предыдущей процедуре на дереве вызовов, нажмите кнопку Step Out [image] на панели инструментов.

Примечание. Для использования кнопки Step Into [image] не обязательно приостанавливать выполнение программы. В редакторе Visual Basic поместите курсор в окне программы на процедуру, которую требуется пройти в пошаговом режиме, и нажмите кнопку Step Into [image] на панели инструментов.

Пользователь имеет возможность попеременно использовать все три разновидности пошагового режима в зависимости от того, какие части программы требуется проверить.


 Использование точек останова для прерывания работы программы Visual Basic

Использование точек останова для прерывания работы программы Visual Basic

При прерывании выполнения программы Visual Basic программа остается загруженной, но останавливается перед выполнением очередной инструкции. Пока выполнение программы прервано, пользователь может выполнять задачи по отладке, например, проверить текущие значения переменных и выполнить каждую строку программы в отдельности. Для прерывания выполнения программы Microsoft Visual Basic можно установить точку останова.

  1. В редакторе Visual Basic установите в окне программы курсор в строке, которая еще не является точкой останова.

  2. Нажмите кнопку Toggle Breakpoint [image] на панели инструментов Debug.

Для того чтобы снять точку останова, переведите курсор в строку, в которой поставлена точка останова, и нажмите кнопку Toggle Breakpoint [image] на панели инструментов Debug. Чтобы продолжить выполнение программы, выберите команду Run Sub/UserForm в меню Run.

Примечание. Для прерывания программы можно также добавить в процедуру инструкцию Stop или нажать клавиши CTRL+BREAK во время выполнения программы.


 Переключение между режимами отображения запроса

Переключение между режимами отображения запроса

Запрос может быть выведен на экран в трех режимах: режиме конструктора, режиме таблицы и режиме SQL.

  1. Щелкните стрелку рядом с кнопкой Вид [image] на панели инструментов.

  2. Выберите нужный режим из списка.


 Трассировка вызовов процедур при отладке программ Visual Basic

Трассировка вызовов процедур при отладке программ Visual Basic

После прерывания выполнения программы Visual Basic при отладке программы пользователь имеет возможность открыть диалоговое окно Calls, содержащее список процедур, которые были запущены, но не завершены.

  1. Прервите выполнение программы Visual Basic.

    Инструкции

  2. Нажмите кнопку Call Stack [image] на панели инструментов.

Первой в списке выводится последняя вызванная процедура, далее следует процедура, вызванная перед ней и т.д. Для вывода инструкции, которая вызывает следующую процедуру в списке, нажмите кнопку Show.


 Включение или отключение вывода запросов на подтверждение действий

Включение или отключение вывода запросов на подтверждение действий

Можно включить или отключить вывод приглашений на подтверждение изменения записей, удаления документов, или, в базе данных Microsoft Access, выполнения запросов на изменение.

  1. В меню Сервис выберите команду Параметры.

  2. Перейдите на вкладку Правка и поиск.

  3. В группе Подтверждение установите или снимите соответствующие флажки.

Примечание. Настройки изменения записей и выполнения запросов на изменение не применяются для страниц доступа к данным.


 Обновление по запросу связи рисунка или другого объекта в форме или отчете

Обновление по запросу связи рисунка или другого объекта в форме или отчете

Этот тип связи отличается от гиперссылок, используемых в формах или отчетах для перехода к другому документу, объекту или странице. Для получения дополнительных сведений о гиперссылках нажмите кнопку [image] .

  1. Выполните одно из следующих действий.
    • Если объект является свободным, выберите объект в режиме конструктора формы или конструктора отчета.

    • Если объект является присоединенным, откройте форму в режиме формы (или в режиме таблицы), найдите запись, которую требуется изменить, и щелкните объект.
  2. Выберите в меню Правка команду Связи OLE/DDE.

  3. В списке Связи выберите связь, которую требуется изменить. Для того чтобы выбрать несколько связей, щелкните каждую связь при нажатой клавише CTRL.

  4. Нажмите кнопку Обновить.

Примечание. Эта процедура применяется только к рисункам в свободной рамке объекта и присоединенной рамке объекта. Фоновые рисунки и рисунки в элементах управления всегда обновляются автоматически.


 Обновление таблицы, основанной на значениях другой таблицы, с помощью запроса

Обновление таблицы, основанной на значениях другой таблицы, с помощью запроса

  1. Создайте запрос на обновление, содержащий обновляемую таблицу и таблицу, служащую источником значений. Для получения сведений о создании запроса на обновление нажмите кнопку [image] .

  2. Если таблицы еще не объединены, выполните объединение по полям, содержащим связанные сведения. Для получения сведений о создании объединений нажмите кнопку [image] .

    Например, чтобы скопировать данные из поля «Марка» таблицы «Товары» в поле другой таблицы, объедините эти две таблицы по ключевому полю, которое можно назвать «КодТовара».

  3. Введите в ячейки строки Обновление для обновляемых полей выражения следующего вида:

    [имяТаблицы].[имяПоля]

    где имяТаблицы и имяПоля представляют имя таблицы и поля, в которых содержатся исходные данные. Например, для копирования данных из поля «Марка» таблицы «Товары» следует ввести в ячейки строки Обновление выражение [Товары].[Марка].


 Разгруппирование текстовых полей и других элементов управления в форме или отчете

Разгруппирование текстовых полей и других элементов управления в форме или отчете

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Чтобы выделить группу, щелкните любой элемент управления из этой группы.

  3. Выберите в меню Формат команду Разгруппировать.

Примечания

  • Разгруппировать можно только элементы управления одной выделенной группы.

  • При разгруппировании элементов управления прямоугольник группы удаляется, а все элементы управления автоматически выделяются.


 Группировка записей на основании выражения на странице доступа к данным

Группировка записей на основании выражения на странице доступа к данным

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Создайте страницу доступа к данным с группировкой.

  3. Если выражение будет содержать ссылки на имена полей, то эти поля следует либо добавить на страницу в качестве присоединенных элементов HTML, либо добавить в качестве присоединенных текстовых полей.

    Совет. Страница будет загружаться быстрее в режиме страницы и в обозревателе Microsoft Internet Explorer, если использовать присоединенные элементы HTML.

  4. Добавьте присоединенный элемент HTML для выражения, нажав кнопку Связанный HTML Связанный HTML на панели элементов, а затем щелкните раздел, в который требуется поместить этот элемент управления.

  5. Убедитесь, что элемент управления выделен, и нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств.

  6. Введите в ячейку свойства Данные (ControlSource) псевдоним для выражения, указав через двоеточие нужное выражение. В следующем примере «ПолноеИмя» представляет собой псевдоним для выражения:

    ПолноеИмя: [Имя] & " " & [Фамилия]

  7. Сохраняя выделение на присоединенном элементе HTML, нажмите кнопку Свойства [image] на панели инструментов.

    Microsoft Access добавляет заголовок группы, содержащий элемент развертывания, и раздел кнопок перехода, который содержит кнопки перехода по записям. Access переместит элемент управления, используемый для группировки, в заголовок группы.

Примечания

  • Все поля, ссылки на которые указаны в выражении, необходимо добавить в определение данных страницы. При создании элемента управления, присоединенного к полю, это поле автоматически добавляется в определение данных. Если данные этих элементов управления не требуется отображать в режиме страницы или в Microsoft Internet Explorer, то можно либо скрыть элементы управления, либо удалить элементы управления. Даже в случае удаления элемента управления, присоединенного к полю, которое используется в выражении на странице, из определения данных страницы этот элемент управления не удаляется.

  • При группировке по элементу управления Access создает псевдоним элемента управления, добавляя префикс «Группа_» к имени элемента управления в свойстве Данные (ControlSource); например, «Группа_ПолноеИмя — ПолноеИмя». При ссылке на элемент управления в выражении или в свойстве необходимо использовать псевдоним.


 Использование приложения типа клиент-сервер с несколькими версиями Microsoft Access

Использование приложения типа клиент-сервер с несколькими версиями Microsoft Access

Если база данных Microsoft Access уже является приложением типа клиент-сервер, необходимо только преобразовать клиентскую часть в формат Microsoft Access 2000.

  1. Оставьте серверную базу данных без изменений.

  2. Преобразуйте клиентскую часть в формат Microsoft Access 2000.

  3. Запустите диспетчер связанных таблиц (меню Сервис, команда Служебные программы) для связывания новой клиентской базы данных Microsoft Access 2000 с серверной базой данных предыдущей версии. После этого возможно распространение возможностей клиентской базы данных на пользователей, перешедших на Microsoft Access 2000.


 Создание гиперссылки на существующий файл или Web-страницу с помощью кнопки «Добавить гиперссылку»

Создание гиперссылки на существующий файл или Web-страницу с помощью кнопки «Добавить гиперссылку»

  1. Откройте форму в режиме конструктора формы, отчет в режиме конструктора отчета или страницу доступа к данным в режиме конструктора страницы.

  2. В меню Вставка выберите команду Гиперссылка.

  3. В диалоговом окне Добавить гиперссылку нажмите кнопку Имеющийся файл или Web-страница в области Связать с.

  4. В поле Текст введите текст, который должен отображаться в поле гиперссылки. Если оставить это поле пустым, то Microsoft Access будет в качестве текста выводить адрес гиперссылки и/или дополнительный адрес.

  5. Нажмите кнопку Подсказка и введите текст, который должен появляться при наведении указателя мыши на гиперссылку. Если оставить поле Текст подсказки пустым, Microsoft Access в качестве подсказки будет показывать адрес гиперссылки и/или дополнительный адрес.

  6. Укажите файл или Web-страницу одним из следующих способов.
    • Введите путь к файлу или адрес URL в поле Введите имя файла или Web-страницы .

    • Нажмите кнопку Последние файлы, Просмотренные страницы или Вставленные ссылки в области Выберите из списка. Затем выберите объект из списка.

    • Нажмите кнопку Файл, чтобы найти файл на локальном компьютере, в сети или на любом доступном FTP- или HTTP-сервере.

    • Нажмите кнопку Web-страница, чтобы найти страницу в Интернете или интрасети. После переключения из Microsoft Internet Explorer или другого Web-обозревателя в Microsoft Access, Access подставит заголовок и адрес URL текущей открытой Web-страницы в поля Текст и Введите имя файла или Web-страницы.
  7. Чтобы перейти к определенному месту в HTML-файле либо к объекту базы данных Microsoft Access (.mdb) или проекта Microsoft Access (.adp), нажмите кнопку Закладка. Выберите из списка закладку или объект и нажмите кнопку OK.

  8. В окне Добавить гиперссылку нажмите кнопку OK.

    На странице доступа к данным Microsoft Access добавляет гиперссылку в элемент управления «Гиперссылка». В форме или отчете гиперссылка добавляется в надпись. Чтобы проверить действие ссылки на странице доступа к данным, переключитесь в режим страницы и щелкните гиперссылку. Чтобы проверить ссылку в форме или отчете, щелкните надпись правой кнопкой и выберите в контекстном меню команду Гиперссылка и подкоманду Открыть.


 Создание строки подключения ODBC для запроса к серверу SQL

Создание строки подключения ODBC для запроса к серверу SQL

  1. Откройте запрос к серверу.

  2. Нажмите кнопку Свойства [image] на панели инструментов, чтобы открыть окно свойств запроса.

  3. В окне свойств запроса нажмите кнопку построителя [image] справа от ячейки свойства Строка подключения ODBC (ODBCConnectStr) и введите сведения, необходимые для подключения к требуемому серверу.

  4. В ответ на приглашение сохранить пароль в строке подключения нажмите кнопку Да, если требуется сохранить в строке подключения пароль и имя.

Примечание. По умолчанию строка подключения ODBC имеет вид "ODBC;". После создания с помощью построителя новой строки подключения ODBC, эта строка вводится в ячейку свойства Строка подключения ODBC (ODBCConnectStr) в окне свойств запроса.


 Использование однофайловой базы данных Access в нескольких версиях Microsoft Access

Использование однофайловой базы данных Access в нескольких версиях Microsoft Access

Для того чтобы использовать в нескольких версиях Microsoft Access базу данных Microsoft Access, представленную одним файлом, следует преобразовать ее в приложение типа клиент-сервер. Данные останутся в формате самой старой версии Access, а пользователи будут работать с клиентской частью, преобразованной в формат Access 2000.

  1. Преобразуйте базу данных к формату Microsoft Access 2000 с указанием нового имени.

  2. Разделите преобразованную базу данных на клиентскую и серверную части с помощью мастера по разделению баз данных.

  3. Удалите серверную базу данных, созданную мастером по разделению баз данных. Данные следует оставить в исходной базе данных, то есть она будет использоваться как серверная часть приложения. Серверная база данных должна иметь формат самой старой из используемых версий Microsoft Access.

  4. Запустите диспетчер связанных таблиц (меню Сервис, команда Служебные программы) для связывания новой клиентской базы данных Microsoft Access 2000 с таблицами базы данных предыдущей версии. После этого становится возможным распространение возможностей клиентской базы данных Microsoft Access 2000 на пользователей, перешедших на Microsoft Access 2000. Пользователи предыдущих версий смогут продолжать работу с базой данных предыдущей версии. Например, если таблицы с данными хранятся в формате Microsoft Access 2.0, допускается использование четырех версий Microsoft Access: Microsoft Access 2.0 (с использованием исходной базы данных), Microsoft Access 95 и 97 (с использованием исходной базы данных или преобразованной клиентской базы данных) и Microsoft Access 2000 (с использованием преобразованной клиентской базы данных).


 Использование редактора реестра

Использование редактора реестра

Внимание! Многие из параметров реестра, относящиеся к Microsoft Access, добавляются автоматически при установке Microsoft Access. Изменение значений установленных параметров может привести к возникновению ошибок, что в свою очередь потребует переустановки Microsoft Access. Настоятельно рекомендуется не изменять настройки реестра Windows самостоятельно. Однако, если изменения параметров или их значений в реестре необходимы, следует изменять их только с помощью редактора реестра Windows. Изменять следует только те значения или параметры, которые явно документированы в приведенных ниже разделах справки. Измененные настройки реестра вступают в действие при следующем запуске Microsoft Access. Рекомендуется также резервировать весь реестр или по крайней мере его изменяемые элементы. Для получения сведений выполните в указателе справочной системы редактора реестра поиск раздела «реестр: создание резервной копии».

  1. Для запуска редактора реестра нажмите кнопку Пуск, выберите команду Выполнить, введите regedit и нажмите кнопку OK.

  2. Перейдите к нужному разделу реестра. Параметры, определяющие работу Microsoft Access содержатся в двух основных разделах:
    • \HKEY_LOCAL_MACHINE\SOFTWARE
      \Microsoft\Office\9.0\Access

    • \HKEY_LOCAL_MACHINE\SOFTWARE
      \Microsoft\Jet\4.0

    Если слева от значка раздела выводится символ плюс (+), данный раздел содержит другие вложенные разделы. Для того чтобы изменить параметры, входящие в раздел, откройте раздел в левой половине окна редактора реестра двойным щелчком, а затем выберите параметр в правой половине окна также двойным щелчком. В некоторых случаях требуется добавление новых разделов или параметров. Для получения сведений о добавлении разделов и параметров следует обратиться к справочной системе редактора реестра.

Важно! Разделы, вложенные в раздел \Microsoft\Office\9.0\Access, относятся только к Microsoft Access 2000. Разделы, вложенные в раздел \Microsoft\Jet\4.0, относятся к ядру базы данных Мicrosoft Jet, с помощью которого в Microsoft Access осуществляется доступ к данным. Изменение параметров в этих разделах затрагивает Microsoft Access 2000 и другие программы, использующие ядро базы данных Microsoft Jet, например, Microsoft Excel 2000, Visual Basic версии 6.0 или более поздней, а также некоторые другие программы. Для внесения в настройки ядра базы данных Microsoft Jet изменений, которые будут действительны только для Microsoft Access, следует изменить параметры раздела \HKEY_LOCAL_MACHINE\SOFTWARE\
\Microsoft\Office\9.0\Access\Jet\4.0.


 Создание сводной формы с помощью мастера

Создание сводной формы с помощью мастера

  1. В окне базы данных щелкните значок Формы [image] в списке Объекты.

  2. Нажмите кнопку Создать на панели инструментов окна базы данных.

  3. В диалоговом окне Новая форма выберите Сводная таблица и нажмите кнопку OK.

  4. Выполняйте инструкции, выводящиеся в диалоговых окнах мастера.

    Для получения дополнительных сведений о сводных формах и о том, как они работают, нажмите кнопку [image] .

Примечания

  • Форма «Анализ продаж» в учебной базе данных «Борей» содержит пример сводной формы. Для просмотра этой сводной формы откройте базу данных «Борей» из подпапки Samples папки программ Office, а затем откройте форму «Анализ продаж» в режиме конструктора.

  • Исходные данные, используемые в сводной форме, не сохраняются автоматически вместе с этой сводной формой. Пользователь должен обновлять данные в сводной форме при каждом обращении к этой таблице. Это означает, что необходимо иметь доступ к расположению, в котором эти данные сохраняются. Если известно, что в дальнейшем потребуется обновление данных в сводной таблице в ситуациях, когда доступ к данным будет невозможен, следует сохранить данные вместе со сводной таблицей. Для получения дополнительных сведений нажмите кнопку [image] .

  • При редактировании сводной формы используется Microsoft Excel, что дает возможность получить справку о сводных отчетах в справочной системе Microsoft Excel. В режиме формы можно получить справку Microsoft Access по сводным формам.


 Using the Microsoft Office Assistant in Microsoft Access

Using the Microsoft Office Assistant in Microsoft Access

To use Microsoft Office objects, including the Office Assistant, from Microsoft Access, you must first set a reference to the Microsoft Office object library. Click References on the Tools menu while in module Design view and select the check box next to Microsoft Office 9.0 Object Library.

If you fail to set this reference, you'll get a compile-time error, "User-defined type not defined", when you try to use objects in the Microsoft Office object library.

Note The Office Assistant isn't available in the run-time version of Microsoft Access.


 Using Command Bars

Using Command Bars

In Microsoft Access 2000, you use the Customize dialog box, available by pointing to Toolbars on the View menu and clicking Customize, to make design-time changes to command bars. You can use this dialog box to add and modify menu bars, toolbars, and shortcut menus, and to add any of the built-in menu items or toolbar buttons to one of these types of command bars. However, you can only add custom command buttons or menu items to a command bar by using this dialog box. To add custom edit boxes, drop-down list boxes, or combo boxes to a command bar, you must use Visual Basic.


 Using the Microsoft Office Command Bars Object Model in Microsoft Access

Using the Microsoft Office Command Bars Object Model in Microsoft Access

In order to program with command bars in Microsoft Access 2000, you must first set a reference to the Microsoft Office object library. Click References on the Tools menu while in module Design view, and select the check box next to Microsoft Office 9.0 Object Library.


 Проверка условий на значения с помощью макроса

Проверка условий на значения с помощью макроса

  1. Создайте макрос.

    Инструкции

  2. В окне макроса нажмите кнопку Условия [image] на панели инструментов.

  3. Введите условие на значение в ячейку столбца Условие в пустой строке макрокоманды.

  4. В ячейке столбца Макрокоманда выберите в списке макрокоманд макрокоманду, которая должна выполняться, если условие истинно.

  5. Для всех других макрокоманд, которые должны выполняться, если условие истинно, введите многоточие (...) в ячейку столбца Условие и имя макрокоманды в ячейку столбца Макрокоманда. Например, обычно последней макрокомандой в наборе макрокоманд, выполняемых, если условие истинно, является макрокоманда «ОтменитьСобытие» (CancelEvent).

  6. Нажмите кнопку Сохранить [image] , чтобы сохранить макрос.

  7. Откройте форму в режиме конструктора.

  8. Введите имя макроса в ячейку свойства события, которое должно запускать макрос. Например, для проверки условия при изменении данных в элементе управления следует указать имя макроса в качестве значения свойства До обновления (BeforeUpdate) элемента управления.

    Совет. Для проверки условия на значение перед обновлением всей записи определите соответствующий макрос для события «До обновления» (BeforeUpdate) формы, а не элемента управления.

Для просмотра примера проверки условий на значение с помощью макроса нажмите кнопку [image] .

Для получения сведений о событиях, используемых при проверке условий на значения, нажмите кнопку [image] .

Для получения сведений о порядке проверки условий на значение элементов управления и полей нажмите кнопку [image] .


 Проверка условий на значения с помощью процедуры обработки события

Проверка условий на значения с помощью процедуры обработки события

  1. Откройте форму в режиме конструктора.

  2. Создайте процедуру обработки события, которое будет вызывать проверку вводящихся данных.

    Инструкции

    Например, для запуска процедуры проверки при обновлении данных в элементе управления создайте процедуру обработки события «До обновления» (BeforeUpdate) элемента управления.

  3. Добавьте в процедуру обработки события программу на языке Visual Basic for Applications, в которой задаются условия на значение и операции, выполняемые при соблюдении этих условий.

Советы

  • Обычно, полезным оказывается отмена события, которое запускает проверку условий, после завершения проверки. Для отмены большинства событий следует задать значение True для аргумента Cancel процедуры обработки события.

  • Для проверки условия на значение перед обновлением всей записи определите соответствующую программу для процедуры обработки события «До обновления» (BeforeUpdate) формы, а не элемента управления.

Для просмотра примера проверки условий на значение с помощью процедуры обработки события нажмите кнопку [image] .

Для получения сведений о событиях, используемых при проверке условий на значения, нажмите кнопку [image] .

Для получения сведений о порядке проверки условий на значение элементов управления и полей нажмите кнопку [image] .


Просмотр атрибутов файла базы данных

  1. При открытой базе данных выберите в меню Файл команду Свойства базы данных.

  2. Перейдите на вкладку Общие.


 Просмотр списка объектов базы данных в текущей базе данных Access или проекте Access

Просмотр списка объектов базы данных в текущей базе данных Access или проекте Access

  1. Открыв базу данных Microsoft Access или проект Microsoft Access, выберите команду Свойства базы данных в меню Файл.

  2. Выберите вкладку Содержание.


 Просмотр результатов выполнения запросов на создание таблицы, добавление и удаление записей

Просмотр результатов выполнения запросов на создание таблицы, добавление и удаление записей

  1. Нажмите кнопку Окно базы данных [image] на панели инструментов.

  2. В окне базы данных щелкните значок Таблицы [image] в списке Объекты.

  3. Выберите созданную или измененную таблицу, а затем нажмите кнопку Открыть на панели инструментов окна базы данных.


 Просмотр результатов запроса на выборку или перекрестного запроса

Просмотр результатов запроса на выборку или перекрестного запроса

В Microsoft Access результаты запроса на выборку или перекрестного запроса отображаются в режиме таблицы. Их можно просмотреть из режима конструктора запроса или нажав кнопку Открыть на панели инструментов окна базы данных.

Исходный режим | Действие
Режим конструктора запросов | Нажмите кнопку Вид [image] на панели инструментов.
Окно базы данных | Щелкните ярлык Запросы [image] в списке Объекты, а затем дважды щелкните имя запроса, либо выделите запрос и нажмите кнопку Открыть на панели инструментов окна базы данных.

Для прерывания выполнения запроса нажмите клавиши CTRL+BREAK. (Однако это не всегда срабатывает по отношению к очень большим запросам.)


 Просмотр результатов выполнения запроса на обновление записей

Просмотр результатов выполнения запроса на обновление записей

  1. В режиме конструктора запроса нажмите стрелку рядом с кнопкой Тип запроса [image] на панели инструментов и выберите команду Выборка.

  2. Нажмите кнопку Вид [image] на панели инструментов.


Невозможно настроить панель инструментов

Если не удается выполнить настройку панели инструментов, убедитесь, что в диалоговом окне Свойства панели инструментов установлен флажок Настройка. Инструкции по разрешению настройки панели инструментов.

Если команда Панели инструментов в меню Вид недоступна, может потребоваться изменение настроек в диалоговом окне Параметры запуска или временный обход этих настроек.

Чтобы изменить настройки

Выберите в меню Сервис команду Параметры запуска и установите флажок Изменение панелей инструментов/меню. Закройте базу данных, а затем откройте ее вновь.

Чтобы временно обойти настройки параметров в диалоговом окне «Параметры запуска»

Вместо повторного выбора параметров можно временно обойти все настройки диалогового окна Параметры запуска. Для этого при открытии базы данных удерживайте в нажатом положении клавишу SHIFT.


Не удается отобразить или скрыть панель инструментов, строку меню или контекстное меню

Если не удается отобразить или скрыть панель инструментов, строку меню или контекстное меню, убедитесь, что в диалоговом окне Свойства панели инструментов установлен флажок Отображение и скрытие. Инструкции по разрешению отображения или скрытия панели инструментов, строки меню или контекстного меню.


Панель инструментов обрезана

Некоторые кнопки могут не отображаться на панели инструментов из-за того, что для их отображения не хватает места. Для просмотра списка дополнительных кнопок нажмите кнопку Другие кнопки [image] в конце панели инструментов.

Места для отображения всех кнопок может не хватать из-за того, что панель инструментов расположена в одной строке с другой панелью инструментов. Для отображения большего числа кнопок можно изменить размеры панели инструментов или переместить панель инструментов в отдельную строку или на другое место.


 Создание процедуры обработки события

Создание процедуры обработки события

В Microsoft Access можно легко создать процедуру обработки событий. При указании для свойства события формы, отчета или элемента управления значения «[Процедура обработки события]» Microsoft Access создает заготовку процедуры обработки события. Пользователю остается только добавить программу, которую требуется выполнять в ответ на конкретное событие формы, отчета или элемента управления. Например, можно запустить программу при нажатии пользователем кнопки или при изменении данных.

  1. Откройте форму или отчет в режиме конструктора формы или режиме конструктора отчета.

  2. Выведите на экран окно свойств формы, отчета либо раздела или элемента управления в форме или отчете.

  3. Перейдите на вкладку События

  4. Выберите свойство события, в ответ на которое должна выполняться процедура. Например, для того чтобы открыть процедуру обработки события «Изменение» (Change), выберите свойство Изменение (OnChange).

  5. Нажмите кнопку построителя [image] рядом с ячейкой свойства, чтобы открыть диалоговое окно Построитель.

  6. Дважды щелкните элемент Программы, чтобы отобразить инструкции Sub и End Sub в модуле формы или модуле отчета. Эти инструкции описывают (определяют) процедуру обработки события.

    Microsoft Access автоматически описывает в модуле формы или отчета процедуры обработки события для каждого объекта и события с использованием ключевого слова Private, указывающим, что доступ к этой процедуре возможен только из других процедур в том же модуле.

  7. Добавьте в процедуру программу, которая должна выполняться в ответ на событие. Например, для подачи звукового сигнала через динамик компьютера при изменении данных в поле «Название» включите инструкцию Beep в процедуру обработки события Название_Change:
    Private Sub Название_Change()

    Beep

End Sub

    Процедура обработки события выполняется каждый раз при возникновении этого события для объекта.


 Создание специальной процедуры Sub

Создание специальной процедуры Sub

  1. Откройте новый модуль.
    • Чтобы открыть новый стандартный модуль, щелкните ярлык Модули [image] в списке Объекты в окне базы данных, а затем нажмите кнопку Создать на панели инструментов окна базы данных. Для того чтобы открыть существующий стандартный модуль, щелкните ярлык Модули [image] в списке Объекты, выберите модуль, который требуется открыть, и нажмите кнопку Конструктор.

    • Чтобы открыть модуль формы или модуль отчета, откройте форму или отчет в режиме конструктора и нажмите кнопку Программа [image] на панели инструментов.

    • Чтобы открыть новый модуль класса, не связанный с формой или отчетом, выберите команду Class Module в меню Insert. Для того чтобы открыть существующий модуль класса, щелкните в окне базы данных ярлык Модули [image], выберите модуль, который требуется открыть, а затем нажмите кнопку Конструктор на панели инструментов окна базы данных.
  2. Объявите процедуру, введя инструкцию Sub.

  3. Введите имя процедуры, а следом за ним все аргументы в круглых скобках. Например, следующая инструкция описания процедуры Sub с именем ShowEvent указывает строковый аргумент EventName:
    Sub ShowEvent(EventName As String)

  4. Добавьте программу на языке Visual Basic, выполняющую операции, которые должна выполнять процедура.

Для получения дополнительных сведений об инструкции Sub нажмите кнопку [image] . Для получения дополнительных сведений о написании процедур Sub нажмите кнопку [image] .


 Создание пользовательской функции

Создание пользовательской функции

  1. Откройте новый модуль.
    • Чтобы открыть новый стандартный модуль, щелкните в окне базы данных ярлык Модули [image] в списке Объекты, а затем нажмите кнопку Создать на панели инструментов окна базы данных. Для того чтобы открыть существующий стандартный модуль, щелкните ярлык Модули [image] в списке Объекты, выберите модуль, который требуется открыть, а затем нажмите кнопку Конструктор.

    • Чтобы открыть модуль формы или модуль отчета, откройте форму или отчет в режиме конструктора и нажмите кнопку Программа [image] на панели инструментов.

    • Чтобы открыть новый модуль класса, не связанный с формой или отчетом, выберите команду Class Module в меню Insert. Для того чтобы открыть существующий модуль класса, щелкните ярлык Модули [image] в списке Объекты, выберите модуль, который требуется открыть, а затем нажмите кнопку Конструктор на панели инструментов окна базы данных.
  2. Объявите функцию, введя инструкцию Function.

  3. Введите имя функции, а следом все аргументы функции в круглых скобках. Например, следующая инструкция описания функции IsLoaded указывает строковый аргумент strFormName:
    Function IsLoaded(strFormName As String) As Boolean

  4. Добавьте программу Visual Basic, выполняющую операции или вычисления, которые должна выполнять функция.

Для получения дополнительных сведений об инструкции Function нажмите кнопку [image] .


 SQL Aggregate Functions

SQL Aggregate Functions

The SQL aggregate functions are similar to the domain aggregate functions, but they are used in different contexts. In Microsoft Access, you can use the SQL aggregate functions in an SQL statement that you create in SQL view of the Query window, or in an SQL statement within Visual Basic code. Conversely, domain aggregate functions can be called directly from Visual Basic code.

You can use both SQL aggregate and domain aggregate functions in query expressions in the query design grid. SQL aggregate functions are most useful in totals queries and crosstab queries.

You can also use both types of aggregate functions in a calculated control on a form or report.


Data Events

Data events occur when data is entered, deleted, or changed in a form or control, or when the focus moves from one record to another.

Event | Event property | It occurs
AfterDelConfirm | AfterDelConfirm (forms) | After you confirm record deletions and the records are actually deleted, or after the deletions are canceled.
AfterInsert | AfterInsert (forms) | After a new record is added to the database.
AfterUpdate | AfterUpdate (forms, controls) | After a control or record is updated with changed data. This event occurs when the control or record loses the focus, or you click Save Record on the Records menu. This event occurs for new and existing records.
BeforeDelConfirm | BeforeDelConfirm (forms) | After one or more records are deleted, but before Microsoft Access displays a dialog box asking you to confirm or cancel the deletion. This event occurs after the Delete event.
BeforeInsert | BeforeInsert (forms) | When you type the first character in a new record, but before the record is added to the database.
BeforeUpdate | BeforeUpdate (forms, controls) | Before a control or record is updated with changed data. This event occurs when the control or record loses the focus, or you click Save Record on the Records menu. This event occurs for new and existing records.
Change | OnChange (controls) | When the contents of a text box or the text box portion of a combo box changes; for example, when you type a character in the control or change the Text property of the control by using a macro or Visual Basic.
Current | OnCurrent (forms) | When the focus moves to a record, making it the current record, or when you requery a form's source of data. This event occurs when a form is first opened, and whenever the focus leaves one record and moves to another. It also occurs when you requery the source of the data for a form; for example, when you click Remove Filter/Sort on the Records menu, or use the ShowAllRecords action or the Requery action.
Delete | OnDelete (forms) | When a record is deleted, but before the deletion is confirmed and actually performed.
Dirty | OnDirty (forms) | When the contents of a form or the text portion of a combo box changes. It also occurs when you move from one page to another page in a tab control.
NotInList | OnNotInList (controls) | When a value is entered in a combo box that isn't in the combo box list.
Updated | OnUpdated (controls) | When an OLE object's data has been modified.


Error and Timing Events

The following events are used for error handling and synchronizing data on forms or reports.

Event | Event property | It occurs
Error | OnError (forms, reports) | When a run-time error is produced in Microsoft Access while you are in the form or report. This includes Microsoft Jet Database Engine errors, but not run-time errors in Visual Basic. (Since macros can't determine what error has occurred, you normally use Visual Basic event procedures with this event.)
Timer | OnTimer (forms) | When a specified time interval passes, as specified by the TimerInterval property of the form. You can use the Timer event to keep data synchronized in a multiuser environment by requerying or refreshing data at specified intervals.


Filter Events

Filter events occur when you apply or create a filter on a form.

Event Event property It occurs
ApplyFilter OnApplyFilter (forms) When you click Apply Filter on the Records menu, or click the Apply Filter or Apply Server Filter button on the command bar. This applies the most recently created filter (created using the Filter by Form feature, Server Filter by Form feature or the Advanced Filter/Sort window).

When you click Filter By Selection or Server Filter By Form after pointing to Filter on the Records menu, or click the Filter By Selection button on the command bar. This applies a filter based on the current selection in the form.

When you click Remove Filter/Sort on the Records menu, or click the Remove Filter button on the command bar. This removes any filter (or sort) currently applied to the form.

When you close the Advanced Filter/Sort window or the Filter by Form window.
Filter OnFilter (forms) When you click Filter By Form or Server Filter By Form after pointing to Filter on the Records menu, or click the Filter By Form or Server Filter By Form button on the command bar. This opens the Filter by Form window, where you can quickly create a filter based on the fields in the form.

When you click Advanced Filter/Sort after pointing to Filter on the Records menu. This opens the Advanced Filter/Sort window, where you can create complex filters for the form.


Focus Events

Focus events occur when a form or control loses or gains the focus, or a form or report becomes active or inactive.

Event | Event property | It occurs
Activate | OnActivate (forms, reports) | When a form or report becomes the active window.
Deactivate | OnDeactivate (forms, reports) | When a different Microsoft Access window becomes the active window, but before the window becomes the active window. The Deactivate event does not occur when the focus moves to another application's window, a dialog box, or a pop-up form.
Enter | OnEnter (controls) | Before a control actually receives the focus, either from a control on the same form or when the form opens. This event occurs before the GotFocus event.
Exit | OnExit (controls) | Just before a control loses the focus to another control on the same form. This event occurs before the LostFocus event.
GotFocus | OnGotFocus (forms, controls) | When a control, or a form with no active or enabled controls, receives the focus. A form can get the focus only if all visible controls on a form are disabled, or there are no controls on the form.
LostFocus | OnLostFocus (forms, controls) | When a form or control loses the focus. A form can have the focus only if all visible controls on a form are disabled, or there are no controls on the form.


Keyboard Events

Keyboard events occur when you type on a keyboard, or when keystrokes are sent using the SendKeys action or the SendKeys statement.

Event Event property It occurs
KeyDown OnKeyDown (forms, controls) When you press any key on the keyboard while a control or form has the focus. A form can have the focus only if all visible controls on the form are disabled, or there are no controls on the form.

The KeyDown event also occurs if you send a keystroke to a form or control using the SendKeys action in a macro or the SendKeys statement in Visual Basic.

A form also receives all KeyDown events (even those for controls) before they occur for the controls if you set the form's KeyPreview property to Yes.

If you hold down a key, the KeyDown event occurs repeatedly.
KeyPress OnKeyPress (forms, controls) When you press and release a key or key combination that produces a standard ANSI character while a control or form has the focus. A form can have the focus only if all visible controls on the form are disabled, or there are no controls on the form.

For example, you can use the KeyPress event to respond to keystrokes entered in a text box or combo box. For keystrokes not recognized by KeyPress, such as function keys or navigation keys, use the KeyDown and KeyUp events.

The KeyPress event also occurs if you send a keystroke that produces a standard ANSI character to a form or control using the SendKeys action in a macro or the SendKeys statement in Visual Basic.

A form also receives all KeyPress events (even those for controls) before they occur for the controls if you set the form's KeyPreview property to Yes.

If you hold down a key, the KeyPress event occurs repeatedly.
KeyUp OnKeyUp (forms, controls) When you release a pressed key while a control or form has the focus. The object with the focus receives all the keystrokes. A form can have the focus only if all visible controls on the form are disabled, or there are no controls on the form.

The KeyUp event also occurs if you send a keystroke to a form or control using the SendKeys action in a macro or the SendKeys statement in Visual Basic.

A form also receives all KeyUp events (even those for controls) before they occur for the controls if you set the form's KeyPreview property to Yes.

If you hold down a key, the KeyUp event occurs after all the KeyDown and KeyPress events have occurred.


 Mouse Events

Mouse Events

Mouse events occur when a mouse action, such as pressing down or clicking a mouse button, occurs.

Event | Event property | It occurs
Click | OnClick (forms, controls) | For a control, this event occurs when you press and then release (click) the left mouse button on a control. For a form, this event occurs when you click a record selector or an area outside a section or control.
DblClick | OnDblClick (forms, controls) | When you press and release (click) the left mouse button twice on a control or its label. For a form, this event occurs when you double-click on a blank area or record selector on the form.
MouseDown | OnMouseDown (forms, controls) | When you press a mouse button while the pointer is on a form or control. Canceling the MouseDown event using the CancelEvent action in a macro for a form or control prevents the shortcut menu from being displayed when you right-click the form or control.
MouseMove | OnMouseMove (forms, controls) | When you move the mouse pointer over a form, form section, or control.
MouseUp | OnMouseUp (forms, controls) | When you release a pressed mouse button while the pointer is on a form or control.


Print Events

Print events occur when a report is being printed or is being formatted for printing.

Event | Event property | It occurs
Format | OnFormat (reports) | When Microsoft Access determines which data goes in a report section, but before Microsoft Access formats the section for previewing or printing. Your macro or event procedure can use data in the current record to make changes to the page layout.
NoData | OnNoData (reports) | After Microsoft Access formats a report for printing that has no data (the report is bound to an empty recordset), but before the report is printed. You can use this event to cancel printing of a blank report.
Page | OnPage (reports) | After Microsoft Access formats a page for printing, but before the page is printed.
Print | OnPrint (reports) | After Microsoft Access has formatted the data in a report section, but before the section is printed.
Retreat | OnRetreat (reports) | When Microsoft Access must "back up" past one or more report sections on a page in order to perform multiple formatting passes. This occurs after the section's Format event, but before the Print event. The Retreat event for each section occurs as Microsoft Access backs up past the section. This allows you to undo any changes you have made during the Format event for the section.


Window Events

Window events occur when you open, resize, or close a form or report.

Event | Event property | It occurs
Close | OnClose (forms, reports) | When a form or report is closed and is removed from the screen.
Load | OnLoad (forms) | When a form is opened and its records are displayed. This event occurs before the Current event, but after the Open event.
Open | OnOpen (forms, reports) | When a form is opened but before the first record is displayed. When a report is opened but before it prints.
Resize | OnResize (forms) | When the size of a form changes. This event also occurs when a form is first displayed.
Unload | OnUnload (forms) | When a form is closed and its records are unloaded, but before it's removed from the screen. This event occurs before the Close event.


Клавиши для отправки сообщений электронной почты

Сочетание клавиш | Действие
ALT+А+Ь+С | Отправка активного объекта базы данных в виде сообщения электронной почты См. сведения по отправке объекта базы данных в виде вложения в сообщение электронной почты или по отправке страницы доступа к данным в виде сообщения электронной почты
CTRL+SHIFT+B | Открытие адресной книги
ALT+П | Проверка имен в полях Кому, Копия и СК по адресной книге
TAB | Переход к следующему полю в заголовке сообщения или к тексту сообщения, если активно последнее поле заголовка
SHIFT+TAB | Выбор следующего или предыдущего поля в заголовке сообщения


 Клавиши для работы со справочной системой

Клавиши для работы со справочной системой

Если справочная система не открыта, нажмите клавишу F1. При использовании помощника Office для поиска разделов справки можно пользоваться клавишами для выбора разделов справки.

Данный раздел содержит справочные сведения по следующим вопросам.

Работа в окне справки

Перемещение по области поиска разделов

Перемещение по области раздела

Работа в окне справки

Сочетание клавиш | Действие
F6 | Переход между областью поиска разделов и областью раздела
ALT+М | Открытие меню Параметры для доступа ко всем командам панели инструментов справки
ALT+ПРОБЕЛ | Открытие оконного меню программы
ALT+F4 | Выход из активного окна справки

Возврат в начало

Перемещение по области поиска разделов

Сочетание клавиш | Действие
CTRL+TAB | Переключение на следующую вкладку
CTRL+SHIFT+TAB | Переключение на предыдущую вкладку
ALT+С | Переключение на вкладку Содержание.
ALT+А | Переключение на вкладку Мастер ответов.
ALT+У | Переключение на вкладку Указатель.
ENTER | Открытие или закрытие выбранной книги, либо открытие выбранного раздела справки
СТРЕЛКА ВНИЗ | Выбор следующей книги или раздела справки
СТРЕЛКА ВВЕРХ | Выбор предыдущей книги или раздела справки

Возврат в начало

Перемещение по области раздела

Сочетание клавиш | Действие
SHIFT+СТРЕЛКА ВЛЕВО | Переход назад к ранее просмотренному разделу справки
SHIFT+СТРЕЛКА ВПРАВО | Переход вперед к ранее просмотренному разделу справки
TAB | Переход к первой или следующей гиперссылке
SHIFT+TAB | Переход к последней или предыдущей гиперссылке
ENTER | Активизация выбранной гиперссылки
ESC | Закрытие всплывающего окна
СТРЕЛКА ВВЕРХ | Прокрутка к началу раздела справки
СТРЕЛКА ВНИЗ | Прокрутка к концу раздела справки
PAGE UP | Ускоренная прокрутка к началу раздела справки
PAGE DOWN | Ускоренная прокрутка к концу раздела справки
HOME | Переход к началу раздела справки
END | Переход к концу раздела справки
CTRL+P | Печать активного раздела справки
CTRL+A | Выделение всего раздела справки
CTRL+C | Копирование выделенных элементов в буфер обмена

Возврат в начало


Использование сочетаний клавиш на странице доступа к данным в режиме конструктора

Сочетание клавиш | Действие
SHIFT+ENTER | Добавление элемента управления в раздел См. инструкции по помещению поля или другого элемента управления на страницу доступа к данным с помощью клавиатуры.
CTRL+C | Копирование выделенного элемента управления в буфер обмена
CTRL+X | Вырезание выделенного элемента управления с копированием в буфер обмена
CTRL+V | Вставка содержимого буфера обмена в левый верхний угол выделенного раздела
CTRL+ СТРЕЛКА ВПРАВО | Перемещение выделенного элемента управления на один пиксел вправо (безотносительно к сетке страницы)
CTRL+СТРЕЛКА ВЛЕВО | Перемещение выделенного элемента управления на один пиксел влево (безотносительно к сетке страницы)
CTRL+ СТРЕЛКА ВВЕРХ | Перемещение выделенного элемента управления на один пиксел вверх (безотносительно к сетке страницы)
CTRL+СТРЕЛКА ВНИЗ | Перемещение выделенного элемента управления на один пиксел вниз (безотносительно к сетке страницы)

Сочетание клавиш | Действие
ALT+Д и ENTER | Используется в списке полей для добавления на страницу таблиц и полей


 Использование сочетаний клавиш для перехода по подтаблицам

Использование сочетаний клавиш для перехода по подтаблицам

Сочетание клавиш | Действие
F5 | Переход из подтаблицы в поле номера записи; затем следует ввести номер нужной записи и нажать клавишу ENTER для перехода к этой записи

Сочетание клавиш | Действие
CTRL+SHIFT+СТРЕЛКА ВНИЗ | Развертывание подтаблицы записи из таблицы
CTRL+SHIFT+СТРЕЛКА ВВЕРХ | Свертывание подтаблицы

Сочетание клавиш | Действие
TAB | Переход в подтаблицу из последнего поля предыдущей записи в таблице
SHIFT+TAB | Переход в подтаблицу из первого поля следующей записи таблицы
CTRL+TAB | Выход из подтаблицы и переход в первое поле следующей записи таблицы
CTRL+SHIFT+TAB | Выход из подтаблицы и переход в последнее поле предыдущей записи таблицы
TAB | Переход в следующее поле таблицы из последнего поля подтаблицы
СТРЕЛКА ВНИЗ | Пропуск подтаблицы и переход к следующей записи таблицы
СТРЕЛКА ВВЕРХ | Пропуск подтаблицы и переход к предыдущей записи таблицы

Примечание. Для перехода между полями и записями подтаблицы можно использовать те же сочетания клавиш, что и в режиме таблицы.

См. дополнительные сведения об использовании клавиатуры для изменения порядка столбцов.

См. дополнительные сведения о выборе полей и записей в режиме таблицы.


Базы данных: что это такое и как они работают (1)

База данных — это набор сведений, относящихся к определенной теме или задаче, такой как отслеживание заказов клиентов или сопровождение музыкальной коллекции. Если база данных хранится не на компьютере, или на компьютере хранятся только ее части, отслеживать сведения можно из целого ряда других источников, которые пользователь должен скоординировать и организовать самостоятельно.

Хранение данных не на компьютере, а на бумаге


Базы данных: что это такое и как они работают (2)

Microsoft Access позволяет управлять всеми сведениями из одного файла базы данных. В рамках этого файла данные можно разделить на отдельные контейнеры, называемые таблицами; просматривать, добавлять и обновлять данные в таблицах с помощью электронных форм; находить и извлекать только нужные данные с помощью запросов; а также анализировать или печатать данные в заданном макете с помощью отчетов. Создание страниц доступа к данным позволяет пользователям просматривать, обновлять или анализировать данные из базы данных через Интернет или интрасеть.

Форма, отчет, запрос и страница доступа к данным отображают данные из одной и той же таблицы.


Базы данных: что это такое и как они работают (3)

Для хранения данных создайте по одной таблице на каждый тип отслеживаемых сведений. Для объединения данных из нескольких таблиц в запросе, форме, отчете или на странице доступа к данным определите связи между таблицами.

Две таблицы, в каждой из которых присутствует поле «КодКлиента», связывающее их


Базы данных: что это такое и как они работают (4)

Для поиска и вывода данных, удовлетворяющих заданным условиям, включая данные из нескольких таблиц, создайте запрос. Запрос также может обновлять или удалять несколько записей одновременно и выполнять стандартные или пользовательские вычисления с данными.

Запрос с полями из двух таблиц


Базы данных: что это такое и как они работают (5)

Для простоты просмотра, ввода и изменения данных непосредственно в таблице создайте форму. При открытии формы Microsoft Access отбирает данные из одной или более таблиц и выводит их на экран с использованием макета, выбранного в мастере форм или созданного пользователем самостоятельно.

Форма, отображающая одну запись сведений и кнопку «Печать счета».


Базы данных: что это такое и как они работают (6)

Для анализа данных или представления их определенным образом в печатном виде создайте отчет. Например, можно напечатать один отчет, группирующий данные и вычисляющий итоговые значения, и еще один отчет с другими данными, отформатированными для печати почтовых наклеек.

Отчеты, вычисляющие итоги, отображающие диаграммы или создающие почтовые наклейки.


Базы данных: что это такое и как они работают (7)

Чтобы сделать данные доступными через Интернет или интрасеть для создания отчетов в интерактивном режиме, используйте страницу доступа к данным. Microsoft Access отбирает данные из одной или более таблиц и выводит их на экран с использованием макета, выбранного в мастере форм или созданного пользователем самостоятельно. Пользователи могут работать с данными при помощи средств страницы доступа к данным.

Страница доступа к данным с группами, кнопками развертывания групп и панелями перехода по записям


Базы данных: что это такое и как они работают (8)

Окно базы данных

Дополнительные сведения

Таблицы: что это такое и как они работают

Запросы: что это такое и как они работают

Формы: что это такое и как они работают

Отчеты: что это такое и как они работают

Страницы доступа к данным: что это такое и как они работают


 Отображение поля со списком из таблицы в виде текстового поля в запросе

Отображение поля со списком из таблицы в виде текстового поля в запросе

Изменение отображения поля в запросе не влияет на отображение поля в базовой таблице.

  1. Откройте запрос в режиме конструктора.

  2. В бланке запроса на поле столбца, который необходимо изменить, нажмите правую кнопку мыши, а затем в контекстном меню выберите команду Свойства.

  3. Перейдите к вкладке Подстановка.

  4. В ячейке свойства Тип элемента управления (DisplayControl) выберите Поле.


Пример перекрестного запроса

1 2


Пример перекрестного запроса (1)

Перекрестный запрос подсчитывает сумму, среднее, число значений или выполняет другие статистические расчеты, после чего результаты группируются в виде таблицы по двум наборам данных, один из которых определяет заголовки столбцов, а другой — заголовки строк.

Сравнение перекрестного запроса и запроса на выборку


Пример перекрестного запроса (2)

Перекрестный запрос создается с помощью мастера или самостоятельно в режиме конструктора. В режиме конструктора можно указать поля, значения которых будут заголовками столбцов и строк, а также поле, значения которого следует использовать в вычислениях.

Пример заполнения бланка перекрестного запроса в режиме конструктора

Дополнительные сведения

Создание перекрестного запроса с помощью мастера

Создание перекрестного запроса без помощи мастера


Примеры группировки записей в отчете (1)

Сравнение отчетов со сгруппированными и не сгруппированными записями


Примеры группировки записей в отчете (2)

Настройка свойств заголовка и примечания группы в окне «Сортировка и группировка»


Примеры группировки записей в отчете (3)

Заголовок на каждом уровне группировки спарен с примечанием на том же уровне

Дополнительные сведения

Сортировка записей в отчете

Группировка записей в отчете

Изменение порядка сортировки или группировки

Отмена сортировки или группировки в отчете по конкретному полю или выражению


Формы: что это такое и как они работают (1)

Формы можно использовать для разных целей.

Форма для ввода данных, кнопочная форма и диалоговое окно


Формы: что это такое и как они работают (2)

Большая часть сведений в форме поступает из базового источника записей. Остальные сведения формы хранятся в ее структуре.

Типы сведений, отображаемые в форме: текст, данные, результаты вычислений и рисунки


Формы: что это такое и как они работают (3)

Связь между формой и источником данных для нее создается при помощи графических объектов, называемых элементами управления. Наиболее часто используемым для вывода и ввода данных элементом управления является поле.

Связи между формой и базовым источником записей

Дополнительные сведения

Создание формы

Создание всплывающих форм и специальных диалоговых окон

Создание и изменение кнопочной формы


Запрос мастера анализа таблиц (1)

Мастер анализа таблиц разделяет одну таблицу, содержащую дублирующиеся сведения, на отдельные таблицы, в которых каждый тип сведений представлен только один раз. Это делает базу данных более эффективной и простой для обновления, одновременно уменьшая ее размер. После разделения данных мастером можно по-прежнему просматривать данные и работать с ними в одном месте, создав с помощью мастера запрос.

Две таблицы, созданные из одной, и запрос, вновь объединяющий их данные


Запрос мастера анализа таблиц (2)

С помощью запроса можно одновременно обновлять данные более чем из одной таблицы. Запрос также предоставляет другие экономящие время возможности для повышения точности данных.

Автоматические обновления в запросе, формах, отчетах и страницах доступа к данным на основе запроса.


Запрос мастера анализа таблиц (3)

Из новых таблиц запрос наследует подстановочные поля, позволяющие изменять значения полей путем выбора значений из списка, вместо их ввода с клавиатуры.

Списки подстановок в запросе


Запрос мастера анализа таблиц (4)

Формы и отчеты, ранее основывавшиеся на исходной таблице, теперь будут автоматически основываться на запросе, поскольку мастер назначает имя исходной таблицы запросу, а таблицу переименовывает. Для страницы доступа к данным, которая основывается на исходной таблице, необходимо вручную изменить значение свойства Источник записей (RecordSource) с имени таблицы на имя запроса.

Форма со подстановочным списком, унаследованным из запроса


Типы объединения и их влияние на результаты запроса (1)

Линия связи между таблицами в запросе показывает Microsoft Access, как связаны данные. Тип объединения указывает, какие записи запрос отбирает, или над какими записями он выполняет действие.

Линия связи и ее влияние на результаты запроса


Типы объединения и их влияние на результаты запроса (2)

Microsoft Access автоматически создает линии связи между таблицами, связь которых (отношение между полями) была определена ранее. Если связи не были предварительно определены, линию связи можно создать самостоятельно путем перетаскивания поля из одной таблицы в эквивалентное поле другой таблицы.

Линия связи между списками полей в запросе


Типы объединения и их влияние на результаты запроса (3)

Используемый по умолчанию тип объединения отбирает из связанных таблиц только те записи или запросы, которые имеют одинаковые значения в связанных полях. Если значения одинаковы, запрос объединяет две совпадающих записи и отображает их в результатах запроса как одну запись.

Результаты запроса из внутреннего объединения


Типы объединения и их влияние на результаты запроса (4)

Диалоговое окно «Параметры объединения» для изменения типов объединения


Типы объединения и их влияние на результаты запроса (5)

Результаты запроса из внешнего объединения

Дополнительные сведения

Изменение типа объединения между таблицами или запросами в запросе

Объединение нескольких таблиц и запросов в запросе

Способы объединения данных из нескольких таблиц или запросов в запросе


Запросы: что это такое и как они работают (1)

Запросы используются для просмотра, изменения и анализа данных различными способами. Запросы также можно использовать в качестве источников записей для форм, отчетов и страниц доступа к данным.

Запрос по нескольким таблицам, перекрестный запрос и запрос, выполняющий вычисления


Запросы: что это такое и как они работают (2)

Наиболее распространенный тип запросов — запрос на выборку. Запрос на выборку отбирает данные из одной или более таблиц по заданным условиям, а затем отображает их в нужном порядке.

Как запрос отбирает и отображает данные из таблиц


Запросы: что это такое и как они работают (3)

Вид запроса в режиме конструктора и в режиме таблицы

Дополнительные сведения

Создание запроса


Отчеты: что это такое и как они работают (1)

Отчет представляет собой эффективный способ представления данных в печатном формате. Имея возможность управлять размером и внешним видом всех элементов отчета, пользователь может отобразить сведения желаемым образом.

Почтовые наклейки, отчет со сгруппированными записями и отчет с диаграммой


 Отчеты: что это такое и как они работают (2)

Большая часть сведений в отчете поступает из базовой таблицы, запроса или инструкции SQL, являющейся источником данных для отчета. Остальные сведения отчета хранятся в его структуре.

Типы сведений, отображаемые в отчете: текст, данные и выражения


Отчеты: что это такое и как они работают (3)

Связи между отчетом и базовым источником записей

Дополнительные сведения

Создание отчета

Создание почтовых и других наклеек

Создание диаграммы


Разделы формы (1)

Можно повысить эффективность формы, добавив в нее один или более разделов. Все формы содержат область данных, но форма также может включать разделы заголовка формы, заголовка страницы, примечания страницы и примечания формы.

Разделы формы в режиме конструктора


Разделы формы (2)

На иллюстрации показан форма «Новый товар» с предыдущего экрана в режиме формы и в напечатанном виде.

Разделы формы в режиме формы и в напечатанном виде


Разделы формы (3)

Разделы подчиненной формы в режиме формы и в напечатанном виде

Дополнительные сведения

Добавление и удаление заголовка и примечаний формы или страницы

Изменение размеров разделов в форме


Разделы отчета (1)

Сведения в отчете могут быть разбиты на разделы. Каждый раздел имеет конкретное назначение и печатается на странице и в отчете в заданном порядке.

Разделы в напечатанном отчете


Разделы отчета (2)

В режиме конструктора разделы представлены в виде полос, и каждый содержащийся в отчете раздел представлен один раз. В напечатанном отчете разделы могут повторяться неоднократно. Способ отображения сведений в каждом разделе определяется расположением элементов управления, таких как надписи и поля.

Разделы отчета в режиме конструктора


Разделы отчета (3)

Сгруппировав записи, содержащие общее значение, можно вычислить промежуточные итоги и сделать отчет более легким для чтения. В данном отчете сгруппированы заказы с общей датой доставки товаров.

Разделы заголовка и примечания группы в режиме конструктора и в напечатанном отчете

Дополнительные сведения

Добавление или удаление заголовка и примечаний отчета или страницы

Изменение размеров разделов в отчете

Группировка записей в отчете


Таблицы: что это такое и как они работают (1)

Таблица — это набор данных по конкретной теме, такой как товары или поставщики. Использование отдельной таблицы для каждой темы означает, что соответствующие данные сохранены только один раз, что делает базу данных более эффективной и снижает число ошибок при вводе данных.

Таблицы «Поставщики» и «Товары»


Таблицы: что это такое и как они работают (2)

Таблицы организуют данные в столбцы (называемые полями) и строки (называемые записями).

Записи и поля в таблицах


Таблицы: что это такое и как они работают (3)

Общее поле связывает две таблицы таким образом, что Microsoft Access может объединить данные из двух таблиц для просмотра, редактирования или печати.

Общие поля, связывающие две таблицы


Таблицы: что это такое и как они работают (4)

В режиме конструктора можно создать новую таблицу либо добавить, удалить или настроить поля существующей таблицы.

Области таблицы в режиме конструктора для работы с полями, типами данных и первичными ключами


Таблицы: что это такое и как они работают (5)

В режиме таблицы можно добавлять, редактировать, просматривать или выполнять другую работу с данными таблицы. Также можно отображать записи из таблиц, связанных с текущей таблицей, путем отображения подтаблиц в пределах основной таблицы. С некоторыми ограничениями можно работать с данными подтаблицы многими из способов, используемых для работы с данными основной таблицы.

Инструменты для работы с данными в режиме таблицы

Дополнительные сведения

Создание таблицы

Способы настройки таблицы

Способы работы с данными таблицы


Способы настройки формы (1)

Следующие приемы можно использовать для настройки форм, созданных с помощью мастера, или для самостоятельного создания форм.

Задачи, которые можно выполнять в режиме конструктора


Способы настройки запроса (1)

Настройка запроса выполняется в режиме конструктора. В этом режиме можно вносить различные изменения.

Способы изменения запроса в режиме конструктора


Способы настройки запроса (2)

Если в запросе отсутствуют нужные данные, добавьте таблицу или запрос; затем добавьте в бланк запроса поля, с которыми будет выполняться работа.

Добавление таблиц или запросов и полей в бланк запроса


Способы настройки запроса (3)

Добавьте значения в поля или выполните другие расчеты с данными, указав тип вычислений для выполнения.

Для выполнения встроенного в поле вычисления с данными нажмите кнопку Групповые операции на панели инструментов, чтобы отобразить на бланке запроса строку Групповая операция.

Определение вычислений и условий группировки в бланке запроса


Способы настройки запроса (4)

Задайте условия для ограничения круга записей, отображаемых в результатах запроса, или записей, включаемых в вычисления.

Задание условий в бланке запроса


Способы настройки запроса (5)

Отсортируйте результаты запроса, указав порядок сортировки в бланке запроса.

Задание порядка сортировки в бланке запроса

Дополнительные сведения

Создание запроса


Способы настройки отчета (1)

Следующие приемы можно использовать для настройки отчетов, созданных с помощью мастера, или для самостоятельного создания отчетов.

Задачи, которые можно выполнять в режиме конструктора


Способы настройки таблицы (1)

В режиме конструктора можно настраивать таблицы различными способами.

Различные способы настройки таблицы в режиме конструктора


Способы настройки таблицы (2)

В режиме конструктора можно добавлять или удалять поля таблицы, либо настраивать их, изменяя значения свойств.

Открытие таблицы в режиме конструктора


Способы настройки таблицы (3)

Если требуется отслеживать в таблице дополнительные данные, добавьте соответствующие поля. Если существующее имя поля недостаточно понятно, поле можно переименовать.

Добавление и переименование полей


Способы настройки таблицы (4)

Настройка типа данных поля определяет тип значений, которые можно вводить в это поле. Например, нельзя ввести текст в поле денежного типа. Выбирая подходящий тип данных, можно гарантировать ввод данных в виде, удобном для сортировки, выполнения вычислений и других операций.

Настройка типов данных


Способы настройки таблицы (5)

Свойства полей — это набор характеристик, обеспечивающих дополнительные возможности управления работой полей. Например, в зависимости от настроек языка и стандартов на панели управления Windows, при задании значения Денежный для свойства Формат поля (Format) поля с числовым или денежным типом данных автоматически отображаются с разделителями групп разрядов, знаком денежной единицы и двумя десятичными разрядами в дробной части (1 234,50 р.).

Настройка свойств поля


Способы настройки таблицы (6)

Для идентификации каждой записи в таблице используется уникальный маркер, который называют первичным ключом. Как номерной знак идентифицирует автомобиль, так и первичный ключ однозначно определяет запись.

Настройка первичного ключа

Дополнительные сведения

Добавление полей в таблицу в режиме конструктора

Изменение имени поля в таблице

Свойства полей, определяющие обработку, сохранение и отображение данных

Типы используемых ключевых полей


Способы задания в запросе нескольких условий отбора одновременно

Бланк запроса с альтернативными условиями для одного поля

Дополнительные сведения

Примеры выражений условий отбора для запросов или фильтров

Ввод условия отбора в запрос, в котором выполняются вычисления


Способы задания в запросе нескольких условий отбора одновременно (2)

Бланк запроса с двумя условиями, оба из которых должны выполняться для одного поля

Дополнительные сведения

Примеры выражений условий отбора для запросов или фильтров

Ввод условия отбора в запрос, в котором выполняются вычисления


Способы задания в запросе нескольких условий отбора одновременно (3)

Бланк запроса с альтернативными условиями для двух полей

Дополнительные сведения

Примеры выражений условий отбора для запросов или фильтров

Ввод условия отбора в запрос, в котором выполняются вычисления


Способы задания в запросе нескольких условий отбора одновременно (4)

Бланк запроса с условиями, которые должны выполняться для двух полей

Дополнительные сведения

Примеры выражений условий отбора для запросов или фильтров

Ввод условия отбора в запрос, в котором выполняются вычисления


Способы задания в запросе нескольких условий отбора одновременно (5)

Бланк запроса, отображающий условия И и ИЛИ для трех полей

Дополнительные сведения

Примеры выражений условий отбора для запросов или фильтров

Ввод условия отбора в запрос, в котором выполняются вычисления


Способы работы с данными формы (1)

В режиме формы доступны все необходимые инструменты для работы с данными

Задачи, которые можно выполнять в режиме формы


Способы работы с данными формы (2)

Инструменты для изменения режимов просмотра, печати, предварительного просмотра, вырезания, копирования, вставки и проверки орфографии в данных


Способы работы с данными формы (3)

Инструменты для сортировки, отбора, поиска и замены данных


Способы работы с данными формы (4)

Инструменты для добавления и удаления записей

Дополнительные сведения

Создание фильтра в таблице, запросе или форме

Изменение данных в поле

Поиск конкретных вхождений образца в поле

Замена конкретных вхождений образца в поле

Сортировка записей в таблице, запросе или форме


Способы работы с данными в таблице запроса (1)

Существует много способов работы с данными в таблице запроса.

Способы работы с таблицей запроса


Способы работы с данными в таблице запроса (2)

Инструменты для вырезания, копирования, вставки, проверки орфографии, печати и просмотра данных


Способы работы с данными в таблице запроса (3)

Инструменты для сортировки, отбора и поиска данных


Способы работы с данными в таблице запроса (4)

Инструменты для добавления и удаления записей


Способы работы с данными в таблице запроса (5)

Перемещение, скрытие, закрепление и изменение размера столбцов


Способы работы с данными в таблице запроса (6)

Переход по записям


Способы работы с данными в таблице запроса (7)

При просмотре результатов запроса можно вывести данные, связанные с записями таблицы, вставив подтаблицу для связанных данных. Несмотря на некоторые ограничения, с данными подтаблицы можно работать многими из способов, используемых для работы с данными основной таблицы; например, можно фильтровать и сортировать данные.

Дополнительные сведения

Копирование и перемещение данных

Создание фильтра в таблице, запросе или форме

Изменение данных в поле

Поиск конкретных вхождений образца в поле

Замена конкретных вхождений образца в поле

Сортировка записей в таблице, запросе или форме


Способы работы с данными таблицы (1)

В режиме таблицы существует много способов работы с данными.

Способы работы с данными таблицы


Способы работы с данными таблицы (2)

Инструменты для вырезания, копирования, вставки, проверки орфографии и печати данных


Способы работы с данными таблицы (3)

Инструменты для сортировки, отбора, поиска и замены данных


Способы работы с данными таблицы (4)

Инструменты для добавления и удаления записей


Способы работы с данными таблицы (5)

Вставка, задание имен и удаление столбцов


Способы работы с данными таблицы (6)

Перемещение, скрытие, закрепление и изменение размера столбцов


Способы работы с данными таблицы (7)

Отображение подтаблиц в основной таблице

Дополнительные сведения

Копирование и перемещение данных

Создание фильтра в таблице, запросе или форме

Изменение данных в поле

Поиск конкретных вхождений образца в поле

Замена конкретных вхождений образца в поле

Сортировка записей в таблице, запросе или форме


Добавление полей и работа с ними

Предполагаемые действия

Добавление поля

Копирование поля

Перемещение поля

Переименование поля

Устранение ошибок, вызванных переименованием поля

Удаление поля


Изменение внешнего вида режима таблицы

Предполагаемые действия

Изменение шрифта, его стиля, размера и цвета в режиме таблицы

Изменение стиля линии сетки и фонового цвета в режиме таблицы

Установка стандартов для внешнего вида режима таблицы

Изменение размера столбца в режиме таблицы

Перемещение столбцов в режиме таблицы

Закрепление и освобождение столбцов в режиме таблицы

Скрытие столбцов в режиме таблицы

Вывод скрытых столбцов на экран в режиме таблицы

Изменение размера строк в режиме таблицы


Создание, изменение и ввод данных в таблицу

Предполагаемые действия

Общие сведения о таблицах

Создание таблицы

Открытие таблицы

Добавление данных в режиме таблицы или формы

Настройка таблицы


Определение и просмотр связей

Предполагаемые действия

Вывод на экран окна схемы данных

Определение связей

Определение отношения «многие-ко-многим» между таблицами

Просмотр существующих связей между таблицами

Управление связями между таблицами с помощью клавиатуры

Печать окна схемы данных


Экспорт данных

Предполагаемые действия

Экспорт данных в другую базу данных или файлы иного формата

Загрузка таблицы, формы или отчета в Microsoft Excel

Сохранение результатов объектов как файлов Microsoft Excel или в формате RTF


Импорт данных

Предполагаемые действия

Импорт и связывание данных

Устранение неполадок при импорте текста или электронной таблицы


Связывание данных

Предполагаемые действия

Импорт и связывание данных

Удаление связи с уже связанной таблицей

Устранение неполадок при работе со связанными таблицами

Просмотр, обновление или изменение имени файла и пути для связанных таблиц


Работа с данными в режиме таблицы

Предполагаемые действия

Добавление данных в режиме таблицы или формы

Выбор полей и записей в режиме таблицы

Копирование и перемещение данных

Устранение неполадок при вставке данных

Изменение внешнего вида режима таблицы

Вывод на экран самых последних данных в режиме таблицы или формы

Перемещение между полями в длинных записях с использованием поля «Переход к полю» в режиме таблицы

Клавиши и их сочетания для редактирования текста или данных

Удаление записи в режиме таблицы или формы

Отмена последних внесенных изменений при добавлении или редактировании записей

Вставка значения из аналогичного поля предыдущей записи


Работа в режиме формы

Предполагаемые действия

Добавление данных в режиме таблицы или формы

Копирование и перемещение данных

Устранение неполадок при вставке данных

Вывод на экран самых последних данных в режиме таблицы или формы

Удаление записи в режиме таблицы или формы

Отмена последних внесенных изменений при добавлении или редактировании записей


Compiler Constants

  • Microsoft Access is a 32-bit development environment. The compiler constant Win32 will always evaluate to True (-1), while the constant Win16 will always evaluate to False (0).


Создание, изменение или ввод данных в форму

Предполагаемые действия

Общие сведения о формах

Создание формы

Открытие формы

Добавление данных в режиме таблицы или формы

Настройка формы


 Constants, fixed-length strings, arrays, and Declare statements not allowed as Public members of class module

Constants, fixed-length strings, arrays, and Declare statements not allowed as Public members of class module

  • In Microsoft Access, class modules exist both alone and in association with forms and reports. You can't declare a public constant, fixed-length string, or Declare statement in a form module or a report module. You must preface the declaration with the Private keyword.


 Invalid use of New keyword

Invalid use of New keyword

In Microsoft Access, form modules and report modules are class modules. You can use the New keyword to create a new instance of a class module and assign it to an object variable.

For example, to create a new instance of a form class module called Form_Orders, use the New keyword as shown in the following code:

Dim frmOrdersObject As New Form_Orders


 Member already exists in this form

Member already exists in this form

In Microsoft Access, you can't use an identifier in a form module and report module if that identifier has the same name as a method or property of the form or report. For example, since a form has a RecordSource property, a procedure such as the following in the form's module would cause an error:

Sub RecordSource()        ' Generates an error.
    .                            ' Some code.
    .
    .
End Sub


ApplyFilter Method Example

The following example uses the ApplyFilter method to display only records that contain the name King in the LastName field:

DoCmd.ApplyFilter , "LastName = 'King'"


Close Method (Microsoft Access) Example

Close Method Example

The following example uses the Close method to close the form Order Review, saving any changes to the form without prompting:

DoCmd.Close acForm, "Order Review", acSaveYes


CopyObject Method Example

The following example uses the CopyObject method to copy the Employees table and give it a new name in the current database:

DoCmd.CopyObject, "Employees Copy", acTable, "Employees"


DeleteObject Method Example

The following example deletes the specified table:

DoCmd.DeleteObject acTable, "Former Employees Table"


DoMenuItem Method Example

The following example uses the DoMenuItem method to carry out the Paste command on the Edit menu in Form view in a Microsoft Access 95 database:

DoCmd.DoMenuItem acFormBar, acEditMenu, acPaste, , acMenuVer70

The next example carries out the Tile command on the Window menu in Form view in a Microsoft Access version 2.0 database:

DoCmd.DoMenuItem acFormBar, 4, 0, , acMenuVer20


Echo Method (DoCmd Object) Example

The following example uses the Echo method to turn echo off and display the specified text in the status bar while your Visual Basic code is executing:

DoCmd.Echo False, "Visual Basic code is executing."


FindRecord Method Example

The following example finds the first occurrence in the records of the name Smith in the current field. It doesn't find occurrences of smith or Smithson.

DoCmd.FindRecord "Smith",, True,, True


GoToControl Method Example

The following example uses the GoToControl method to move the focus to the EmployeeID field:

DoCmd.GoToControl "EmployeeID"


GoToPage Method (DoCmd Object) Example

The following example uses the GoToPage method to move the focus to the position specified by the horizontal and vertical offsets on the second page of the active form:

DoCmd.GoToPage 2, 1440, 567


GoToRecord Method Example

The following example uses the GoToRecord method to make the seventh record in the form Employees current:

DoCmd.GoToRecord acDataForm, "Employees", acGoTo, 7


Hourglass Method Example

The following example uses the Hourglass method to display an hourglass icon (or another icon you've chosen) while your Visual Basic code is executing:

DoCmd.Hourglass True


MoveSize Method Example

The following example moves the active window and changes its height, but leaves its width unchanged:

DoCmd.MoveSize 1440, 2400, , 2000


OpenDataAccessPage Method Example

The following example opens the Employees data access page in Design view.

DoCmd.OpenDataAccessPage "Employees", acDataPageDesign


OpenForm Method Example

The following example opens the Employees form in Form view and displays only records with King in the LastName field. The displayed records can be edited, and new records can be added.

DoCmd.OpenForm "Employees", , ,"LastName = 'King'"


OpenModule Method Example

The following example opens the Utility Functions module to the IsLoaded( ) Function procedure:

DoCmd.OpenModule "Utility Functions","IsLoaded"


OpenQuery Method Example

The following example opens Sales Totals Query in Datasheet view and enables the user to view but not to edit or add records:

DoCmd.OpenQuery "Sales Totals Query", , acReadOnly


OpenReport Method Example

The following example prints Sales Report while using the existing query Report Filter:

DoCmd.OpenReport "Sales Report", acViewNormal, "Report Filter"


OpenStoredProcedure Method Example

The following example opens the Employees stored procedure in Design view.

DoCmd.OpenStoredProcedure "Employees", 1


OpenTable Method Example

The following example opens the Employees table in Print Preview:

DoCmd.OpenTable "Employees", acViewPreview


OpenView Method Example

The following example opens the Employees view.

DoCmd.OpenView "Employees"


OutputTo Method Example

The following example outputs the Employees table in rich-text format (.rtf) to the Employee.rtf file and immediately opens the file in Microsoft Word for Windows:

DoCmd.OutputTo acOutputTable, "Employees", acFormatRTF, "Employee.rtf", True


PrintOut Method Example

The following example prints two collated copies of the first four pages of the active form or datasheet:

DoCmd.PrintOut acPages, 1, 4, , 2


Quit Method (DoCmd Object) Example

The following example displays a dialog box or dialog boxes that ask if you want to save any changed objects before you quit Microsoft Access:

DoCmd.Quit acQuitPrompt


Rename Method Example

The following example renames the Employees table with the specified name:

DoCmd.Rename "Old Employees Table", acTable, "Employees"


RepaintObject Method Example

The following example repaints the table Customers:

DoCmd.RepaintObject acTable, "Customers"


Requery Method (DoCmd Object) Example

The following example uses the Requery method to update the EmployeeList control:

DoCmd.Requery "EmployeeList"


RunMacro Method Example

The following example runs the macro Print Sales that will print the sales report twice:

DoCmd.RunMacro "Print Sales", 2


RunSQL Method Example

The following example updates the Employees table, changing each sales manager's title to Regional Sales Manager:

DoCmd.RunSQL "UPDATE Employees " & _
    "SET Employees.Title = 'Regional Sales Manager' " & _
    "WHERE Employees.Title = 'Sales Manager';"


Save Method Example

The following example uses the Save method to save the form named "New Employees Form". This form must be open when the code containing this method runs.

DoCmd.Save acForm, "New Employees Form"


SelectObject Method Example

The following example selects the form Customers in the Database window:

DoCmd.SelectObject acForm, "Customers", True


SendObject Method Example

The following example includes the Employees table in a mail message in Microsoft Excel format and specifies To, Cc, and Subject lines in the mail message. The mail message is sent immediately, without editing.

DoCmd.SendObject acSendTable, "Employees", acFormatXLS, _
    "Nancy Davolio; Andrew Fuller", "Joan Weber", , _
    "Current Spreadsheet of Employees", , False


SetMenuItem Method Example

The following example uses the SetMenuItem method to disable the second command in the first menu on the custom menu bar for the active window:

DoCmd.SetMenuItem 0, 1, , acMenuGray


SetWarnings Method Example

The following example turns the display of system messages off:

DoCmd.SetWarnings False


ShowToolbar Method Example

The following example displays the custom toolbar named CustomToolbar in all Microsoft Access windows that become active:

DoCmd.ShowToolbar "CustomToolbar", acToolbarYes


TransferDatabase Method Example

The following example imports the NW Sales for April report from the Microsoft Access database NWSales.mdb into the Corporate Sales for April report in the current database:

DoCmd.TransferDatabase acImport, "Microsoft Access", _
    "C:\DBS\NWSales.mdb", acReport, "NW Sales for April", _
    "Corporate Sales for April"

The next example links the ODBC database table Authors to the current database:

DoCmd.TransferDatabase acLink, "ODBC Database", _
    "ODBC;DSN=DataSource1;UID=User2;PWD=www;LANGUAGE=us_english;" _
    & "DATABASE=pubs", acTable, "Authors", "dboAuthors"


TransferSpreadsheet Method Example

The following example imports the data from the specified range of the Lotus spreadsheet Newemps.wk3 into the Microsoft Access Employees table. It uses the first row of the spreadsheet as field names.

DoCmd.TransferSpreadsheet acImport, 3, _
    "Employees","C:\Lotus\Newemps.wk3", True, "A1:G12"


TransferText Method Example

The following example exports the data from the Microsoft Access table External Report to the delimited text file April.doc by using the specification Standard Output:

DoCmd.TransferText acExportDelim, "Standard Output", _
    "External Report", "C:\Txtfiles\April.doc"


 Add Method (CommandBarControls Collection)

Add Method (CommandBarControls Collection)

You can set the Id argument of this method to an Integer value that corresponds to a built-in command button or menu item. This will cause the new control to have the appearance and functionality of the existing command button or menu item.

However, if you set the Id argument to the Integer value of a Microsoft Office command button or menu item that has been modified by Microsoft Access (for example, Microsoft Access uses a different label, different shortcut text, or uses text instead of an icon), you won't see the Microsoft Access modifications to the command button or menu item. If you want to make sure a control you're adding to a command bar looks and functions exactly like the Microsoft Access version of the control, use the Copy method to copy the control to the command bar.


AddFromFile, AddFromString Methods Example

The following function uses the AddFromString and AddFromFile methods to add a string and the contents of a text file to a standard module:

Function AddTextToModule(strModuleName As String, _
     strFileName As String, strText As String) As Boolean
    Dim mdl As Module

    On Error GoTo Error_AddTextToModule
    DoCmd.OpenModule strModuleName
    Set mdl = Modules(strModuleName)
    mdl.AddFromFile strFileName
    mdl.AddFromString strText
    AddTextToModule = True

Exit_AddTextToModule:
    Exit Function

Error_AddTextToModule:
    MsgBox Err & ": " & Err.Description
    AddTextToModule = False
    Resume Exit_AddTextToModule
End Function

You could call the preceding function from a procedure such as the following. Create a text file called Functions.txt, add some Visual Basic procedures, and save it in the directory, My Documents. Then paste both the preceding procedure and the following procedure into a new standard module in the Northwind sample database. Run the following procedure:

Sub AddFunctionsFromText()
    Dim strModuleName As String, strFileName As String
    Dim strText As String

    strModuleName = "Utility Functions"
    strFileName = "C:\My Documents\Functions.txt"
    strText = "Public intX As Integer" & vbCrLf _
        & "Const conPathName As String = " _
        & """C:\Program Files\Microsoft Office\Office\Samples\"""
    If AddTextToModule(strModuleName, strFileName, _
         strText) = True
     Then
        Debug.Print "String and file contents added successfully."
    Else
        Debug.Print "String and file contents not " _
            & "added successfully."
    End If
End Sub

The next example creates a new form and adds a string and the contents of the Functions.txt file to its module. Run the following procedure from a standard module:

Sub AddTextToFormModule()
    Dim frm As Form, mdl As Module

    Set frm = CreateForm
    Set mdl = frm.Module
    mdl.AddFromString "Public intY As Integer"
    mdl.AddFromFile "C:\My Documents\Functions.txt"
End Sub


AddNew Method Example

The following example creates a new record in an Employees table and saves the changes:

Sub AddNewRecord()

    Dim cnn As ADODB.Connection
    Dim rst As New ADODB.Recordset

    Set cnn = CurrentProject.Connection
    rst.Open "Employees", cnn, adOpenKeyset, adLockOptimistic, adCmdTableDirect

    With rst
        .AddNew                         ' Add new record.
        !LastName = "Gregory"         ' Add data.
        !FirstName = "Justin"
        !BirthDate = #1/27/1970#
        .Update                         ' Save changes.
    End With

End Sub


AddNew Method Example (MDB)

The following example creates a new record in an Employees table and saves the changes:

Sub AddNewRecord(ByVal rst As Recordset, _
    strLast As String, strFirst As String)

    With rst
        .AddNew                            ' Add new record.
        !LastName = strLast            ' Add data.
        !FirstName = strFirst
        .Update                            ' Save changes.
    End With
End Sub


Add, Remove Methods (Pages Collection) Example

The following example adds a page to a tab control on a form that's in Design view. To try this example, create a new form named Form1 with a tab control named TabCtl0. Paste the following code into a standard module and run it:

Function AddPage() As Boolean
    Dim frm As Form
    Dim tbc As TabControl, pge As Page

    On Error GoTo Error_AddPage
    Set frm = Forms!Form1
    Set tbc = frm!TabCtl0
    tbc.Pages.Add
    AddPage = True

Exit_AddPage:
    Exit Function

Error_AddPage:
    MsgBox Err & ": " & Err.Description
    AddPage = False
    Resume Exit_AddPage
End Function

The next example removes pages from the tab control:

Function RemovePage() As Boolean
    Dim frm As Form
    Dim tbc As TabControl, pge As Page

    On Error GoTo Error_RemovePage
    Set frm = Forms!Form1
    Set tbc = frm!TabCtl0
    tbc.Pages.Remove
    RemovePage = True

Exit_RemovePage:
    Exit Function

Error_RemovePage:
    MsgBox Err & ": " & Err.Description
    RemovePage = False
    Resume Exit_RemovePage
End Function


 Add Method

Add Method

Items added to a user-defined collection are automatically indexed. You can refer to an individual item by this index. For example, if you have a collection colThings that contains four objects, you can refer to the third item in the collection with the expression colThings(3).

Note When you add items to a Collection object, they are automatically indexed beginning with the number 1. Therefore, when you enumerate a Collection object, keep in mind that the index begins at 1. This may be different from built-in collections, which usually are indexed beginning with 0.

When you add an object to a user-defined collection, you can also specify a custom key for that object in addition to the automatic index. In subsequent references to the object, you can refer to the custom key. For example, you can add an object objMine with the following key.

colThings.Add Item := objMine, key := ("A")

Subsequently you can refer to this particular object in the collection either as colThings(A), or by its numeric index.


AddToFavorites Method Example

The following example sets the HyperlinkAddress property of a command button. When the user clicks the command button, the address is added to the Favorites folder by using the AddToFavorites method.

To try this example, create a new form and add a command button named Command0. Paste the following code into the form's module. Switch to Form view and click the command button.

Private Sub Form_Load()
    Me!Command0.HyperlinkAddress = "http://www.microsoft.com/"
End Sub
Private Sub Command0_Click()
    Me!Command0.Hyperlink.AddToFavorites
End Sub


Append Method Example

The following example appends a new Column to the Columns collection of a Table object:

Sub NewField()

    Dim cat As New ADOX.Catalog, tbl As ADOX.Table

    ' Return reference to current database.
    Set cat.ActiveConnection = CurrentProject.Connection
    Set tbl = cat.Tables("Employees")
    ' Create new field in Employees table.
    tbl.Columns.Append "SocialSecurity#", adVarWChar, 11
    ' Append field and refresh collection.
    cat.Tables.Refresh
End Sub


AppendChunk, GetChunk Methods Example

The following example appends data to the Notes field for each record in an Employees table. The data type of the Notes field is Memo. The procedure returns the contents of the field by using the GetChunk method, adds to the data, and appends the altered data back to the Notes field by using the AppendChunk method.

Sub AddToMemo()
Dim cnn As ADODB.Connection, rst As New ADODB.Recordset
Dim fldFirstName As ADODB.Field
Dim fldLastName As ADODB.Field
Dim fldNotes As ADODB.Field
Dim lngSize As Long, strChunk As String

Set cnn = CurrentProject.Connection
rst.Open "Employees", cnn, adOpenKeyset, adLockOptimistic
With rst
Set fldNotes = !Notes
Set fldFirstName = !FirstName
Set fldLastName = !LastName
Do Until .EOF
If IsNull(fldNotes.Value) Then
strChunk = fldFirstName & " " & fldLastName & " is an excellent employee."
!Notes = strChunk
.MoveNext
Else
lngSize = Len(fldNotes)
strChunk = fldNotes.GetChunk(lngSize)
strChunk = strChunk & " " & fldFirstName & " " & fldLastName & " is and excellent Employee."
!Notes = " "
!Notes.AppendChunk strChunk
.MoveNext
End If
Loop
End With
rst.Close
cnn.Close
End Sub


AppendChunk, GetChunk Methods Example (MDB)

The following example appends data to the Notes field for each record in an Employees table. The data type of the Notes field is Memo. The procedure returns the contents of the field by using the GetChunk method, adds to the data, and appends the altered data back to the Notes field by using the AppendChunk method.

Sub AddToMemo()
    Dim dbs As Database, rst As Recordset
    Dim fldNotes As Field, fldFirstName As Field
    Dim fldLastName As Field
    Dim lngSize As Long, strChunk As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create table-type Recordset object.
    Set rst = dbs.OpenRecordset("Employees")
    ' Return references to Field objects.
    Set fldNotes = rst!Notes
    Set fldFirstName = rst!FirstName
    Set fldLastName = rst!LastName

    ' Loop through all records in recordset.
    Do Until rst.EOF
        ' Check if data exists in Notes field.
        If IsNull(fldNotes.Value) Then
            ' If no data, use AppendChunk method only.
            strChunk = fldFirstName _
                & " " & fldLastName & " is an excellent employee."
            With rst
                .Edit
                !Notes = strChunk
                .Update
                .MoveNext
            End With
        Else
            lngSize = Len(fldNotes)
            ' Use GetChunk to retrieve existing data.
            strChunk = fldNotes.GetChunk(0, lngSize)
            ' Alter data.
            strChunk = strChunk & "  " & fldFirstName _
                & " " & fldLastName & " is an excellent employee."
            With rst
                .Edit                             ' Enable editing.
                !Notes = ""                     ' Initialize field.
                ' Append altered data.
                !Notes.AppendChunk strChunk
                .Update                         ' Save changes.
                ' Move to next record.
                .MoveNext
            End With
        End If
    Loop
    rst.Close
    Set dbs = Nothing
End Sub


Append Method Example (MDB)

The following example defines a new Field object and appends it to the Fields collection of a TableDef object:

Sub NewField()
    Dim dbs As Database, tdf As TableDef, fld As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    Set tdf = dbs.TableDefs!Employees
    ' Create new field in Employees table.
    Set fld = tdf.CreateField("SocialSecurity#", dbText, 11)
    ' Append field and refresh collection.
    tdf.Fields.Append fld
    tdf.Fields.Refresh
    Set dbs = Nothing
End Sub


BeginTrans, CommitTrans, Rollback Methods Example

The following example changes the category type of the current record in the categories form and then confirms the change with the user before using the CommitTrans method to save the change.

This example requires that the Categories form be opened

Sub cmdSave_OnClick()
    Dim rs as ADODB.Recordset
    Dim Response As Integer

    Set rs = Forms("Categories").Recordset
    With rs
        rs.ActiveConnection.BeginTrans
        !CategoryName = "Drinks"
        .Update
        Response = Msgbox "Are you sure you want to change the current value to." & !CategoryName & "?", vbYesNo
        If Response = vbNo Then
            rs.ActiveConnection.RollbackTrans
        Else
            rs.ActiveConnection.CommitTrans
        End If
    End With
End Sub

This example changes the job title of all sales representatives in an Employees table. After the BeginTrans method starts a transaction that isolates all the changes made to the Employees table, the CommitTrans method saves the changes. Notice that you can use the Rollback method to undo changes that you saved by using the Update method. The example also shows how to maintain a flag to properly manage errors that might occur during a transaction.

One or more table pages remain locked while the user decides whether or not to accept the changes. Consequently, this technique isn't recommended but is shown only as an example.

Sub ChangeTitle()
    Dim cnn As ADODB.Connection, rst As New ADODB.Recordset
    Dim strName As String, strMessage As String, strPrompt As String
    Dim fInTrans As Boolean

    On Error GoTo ChangeTitleErr

    fInTrans = False
    strPrompt = "Change title to Account Executive?"

    ' Return reference to current database.
    Set cnn = CurrentProject.Connection
    ' Create table-type Recordset object.
    rst.Open "Employees", cnn, adOpenKeyset, adLockOptimistic, adCmdTableDirect
    ' Start of transaction.
    cnn.BeginTrans
    fInTrans = True
    With rst
    .MoveFirst
    Do Until rst.EOF
        If !Title = "Sales Representative" Then
            strName = !LastName & ", " & !FirstName
            strMessage = "Employee: " & strName & vbCrLf & vbCrLf
            If MsgBox(strMessage & strPrompt, vbQuestion + _
                    vbYesNo, "Change Job Title") = vbYes Then
                !Title = "Account Executive"
            End If
        End If
        ' Move to next record.
        .MoveNext
    Loop
    End With
    If MsgBox("Save all changes?", vbQuestion + vbYesNo, _
            " Save Changes") = vbYes Then
        cnn.CommitTrans         ' Commit changes.
    Else
        cnn.RollbackTrans                ' Undo changes.
    End If
ChangeTitleExit:
    rst.Close
    Exit Sub
ChangeTitleErr:
    MsgBox Err.Number & " " & Err.Description
    If fInTrans Then
        cnn.RollbackTrans
    End If
    Resume ChangeTitleExit
End Sub


BeginTrans, CommitTrans, Rollback Methods Example (MDB)

The following example changes the job title of all sales representatives in an Employees table. After the BeginTrans method starts a transaction that isolates all the changes made to the Employees table, the CommitTrans method saves the changes. Notice that you can use the Rollback method to undo changes that you saved by using the Update method. The example also shows how to maintain a flag to properly manage errors that might occur during a transaction.

One or more table pages remain locked while the user decides whether or not to accept the changes. Consequently, this technique isn't recommended but is shown only as an example.

Sub ChangeTitle()
    Dim wsp As Workspace, dbs As Database, rst As Recordset
    Dim strName As String, strMessage As String, _
        strPrompt As String
    Dim fInTrans As Boolean

    On Error GoTo ChangeTitleErr

    fInTrans = False
    strPrompt = "Change title to Account Executive?"
    ' Return reference to default Workspace object.
    Set wsp = DBEngine.Workspaces(0)
    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create table-type Recordset object.
    Set rst = dbs.OpenRecordset("Employees", dbOpenTable)
    ' Start of transaction.
    wsp.BeginTrans
    fInTrans = True
    rst.MoveFirst
    Do Until rst.EOF
        If rst!Title = "Sales Representative" Then
            strName = rst!LastName & ", " & rst!FirstName
            strMessage = "Employee: " & strName & vbCrLf & vbCrLf
            If MsgBox(strMessage & strPrompt, vbQuestion + _
                    vbYesNo, "Change Job Title") = vbYes Then
                ' Enable editing.
                rst.Edit
                rst!Title = "Account Executive"
                ' Save changes.
                rst.Update
            End If
        End If
        ' Move to next record.
        rst.MoveNext
    Loop
    If MsgBox("Save all changes?", vbQuestion + vbYesNo, _
            " Save Changes") = vbYes Then
        wsp.CommitTrans            ' Commit changes.
    Else
        wsp.Rollback                ' Undo changes.
    End If
ChangeTitleExit:
    rst.Close
    Set dbs = Nothing
    Set wsp = Nothing
    Exit Sub
ChangeTitleErr:
    MsgBox "Error!"
    If fInTrans Then
        wsp.Rollback
    End If
    Resume ChangeTitleExit
End Sub


BuildCriteria Method Example

The following example prompts the user to enter the first few letters of a product's name and then uses the BuildCriteria method to construct a criteria string based on the user's input. Next, the procedure provides this string as an argument to the Filter property of a Products form. Finally, the FilterOn property is set to apply the filter.

Sub SetFilter()
    Dim frm As Form, strMsg As String
    Dim strInput As String, strFilter As String

    ' Open Products form in Form view.
    DoCmd.OpenForm "Products"
    ' Return Form object variable pointing to Products form.
    Set frm = Forms!Products
    strMsg = "Enter one or more letters of product name " _
        & "followed by an asterisk."
    ' Prompt user for input.
    strInput = InputBox(strMsg)
    ' Build criteria string.
    strFilter = BuildCriteria("ProductName", dbText, strInput)
    ' Set Filter property to apply filter.
    frm.Filter = strFilter
    ' Set FilterOn property; form now shows filtered records.
    frm.FilterOn = True
End Sub


CancelUpdate, Update Methods Example

The following example creates a new record in an Employees table, enters values, and prompts the user to save the changes. If the user chooses not to save the changes, the Update method is canceled.

Sub NewRecord()
    Dim cnn As ADODB.Connection, rst As New ADODB.Recordset

    ' Return reference to current connection
    Set cnn = CurrentProject.Connection
    rst.Open "Employees", cnn, adOpenKeyset, adLockOptimistic
    With rst
        ' Add new record to end of Recordset object.
        .AddNew
        !LastName = "Christopher"       ' Add data.
        !FirstName = "Kevin"
        !BirthDate = #2/24/1970#        ' Need a valid BirthDate

        ' Prompt user to save changes.
        If MsgBox("Save these changes?", vbYesNo) = vbNo Then
            ' If user chooses No, cancel changes.
            .CancelUpdate
        Else
            ' If user chooses Yes, save changes.
            .Update
        End If
    End With
    rst.Close
    Set cnn = Nothing
End Sub


CancelUpdate, Update Methods Example (MDB)

The following example creates a new record in an Employees table, enters values, and prompts the user to save the changes. If the user chooses not to save the changes, the Update method is canceled.

Sub NewRecord()
    Dim dbs As Database, rst As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    Set rst = dbs.OpenRecordset("Employees")
    With rst
        ' Add new record to end of Recordset object.
        .AddNew
        !LastName = "Christopher"        ' Add data.
        !FirstName = "Kevin"
    End With
    ' Prompt user to save changes.
    If MsgBox("Save these changes?", vbYesNo) = vbNo Then
        ' If user chooses No, cancel changes.
        rst.CancelUpdate
    Else
        ' If user chooses Yes, save changes.
        rst.Update
    End If
    rst.Close
    Set dbs = Nothing
End Sub


Circle Method Example

The following example uses the Circle method to draw a circle, and then create a pie slice within the circle and color it red.

To try this example in Microsoft Access, create a new report. Set the OnPrint property of the Detail section to [Event Procedure]. Enter the following code in the report's module, then switch to Print Preview.

Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
    Const conPI = 3.14159265359
    Dim sngHCtr As Single, sngVCtr As Single
    Dim sngRadius As Single
    Dim sngStart As Single, sngEnd As Single

    sngHCtr = Me.ScaleWidth / 2     ' Horizontal center.
    sngVCtr = Me.ScaleHeight / 2     ' Vertical center.
    sngRadius = Me.ScaleHeight / 3     ' Circle radius.
    ' Draw circle.
    Me.Circle(sngHCtr, sngVCtr), sngRadius
    sngStart = -0.00000001             ' Start of pie slice.
    sngEnd = -2 * conPI / 3             ' End of pie slice.
    Me.FillColor = RGB(255,0,0)     ' Color pie slice red.
    Me.FillStyle = 0                     ' Fill pie slice.
    ' Draw pie slice within circle.
    Me.Circle(sngHCtr, sngVCtr), sngRadius, , sngStart, sngEnd
End Sub


Clone Method Example

The following example creates a Recordset object by using a SQL statement on an Employees table and then uses the Clone method to create a clone of the Recordset object so that bookmarks can be shared between the two objects. This technique is especially useful when you have to compare the results of a query from more than one point at the same time.

The function reads and stores in a variable the value of the Bookmark property for the current record, in this case the second record in the original Recordset object. The Bookmark property of the duplicate Recordset object is set to this string, making the second record the current record in this Recordset object as well. The current values of the LastName field for both recordsets are identical, as you can see once they are printed in the Debug window.

Sub CreateClone()
    Dim cnn As ADODB.Connection
    Dim rstEmployees As New ADODB.Recordset, rstDuplicate As ADODB.Recordset
    Dim fldName As ADODB.Field, varBook As Variant

    ' Return reference to current database.
    Set cnn = CurrentProject.Connection
    ' Open dynaset-type Recordset object.
        rstEmployees.Open "SELECT * FROM Employees ORDER BY LastName", _ cnn, adOpenKeyset, adLockOptimistic
    ' Clone Recordset object.
    Set rstDuplicate = rstEmployees.Clone
    Set fldName = rstEmployees.Fields!LastName
    ' Set current record.
    rstEmployees.MoveFirst
    ' Move to second record.
    rstEmployees.MoveNext
    ' Get Bookmark property value and print current field value.
    If rstEmployees.Properties("Bookmarkable") Then
        varBook = rstEmployees.Bookmark
        Debug.Print fldName.Value
        ' Set Bookmark property of clone to obtained value.
            rstDuplicate.Bookmark = varBook
        Debug.Print fldName.Value
    End If

    rstEmployees.Close
    rstDuplicate.Close
    Set cnn = Nothing
End Sub


Clone Method Example (MDB)

The following example creates a Recordset object by using an SQL statement on an Employees table and then uses the Clone method to create a clone of the Recordset object so that bookmarks can be shared between the two objects. This technique is especially useful when you have to compare the results of a query from more than one point at the same time.

The function reads and stores in a string variable the value of the Bookmark property for the current record, in this case the second record in the original Recordset object. The Bookmark property of the duplicate Recordset object is set to this string, making the second record the current record in this Recordset object as well. The current values of the LastName field for both recordsets are identical, as you can see once they are printed in the Debug window.

Sub CreateClone()
    Dim dbs As Database
    Dim rstEmployees As Recordset, rstDuplicate As Recordset
    Dim fldName As Field, varBook As Variant

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Open dynaset-type Recordset object.
    Set rstEmployees = dbs.OpenRecordset("SELECT * " _
        & "FROM Employees ORDER BY LastName")
    ' Clone Recordset object.
    Set rstDuplicate = rstEmployees.Clone
    Set fldName = rstEmployees.Fields!LastName
    ' Set current record.
    rstEmployees.MoveFirst
    ' Move to second record.
    rstEmployees.MoveNext
    ' Get Bookmark property value and print current field value.
    If rstEmployees.Bookmarkable Then
        varBook = rstEmployees.Bookmark
        Debug.Print fldName.value
    Else
        ' If Recordset object doesn't support bookmarks,
        ' exit procedure.
        ExitCreateClone
    End If
    ' Set Bookmark property of clone to obtained value.
    rstDuplicate.Bookmark = varBook
    Debug.Print fldName.value

ExitCreateClone:
    rstEmployees.Close
    rstDuplicate.Close
    Set dbs = Nothing
End Sub


Close Method Example

The following example creates a Connection object that points to the current connection and opens a table-type Recordset object based on a Customers table in the database. The procedure uses the Close method on the Recordset object variable to free the memory resources it has been using. It uses the Set statement with the Nothing keyword to free resources used by the Connection object variable.

You can also use the Close method of the Connection object to close it and free memory. The Close method of the Connection object doesn't actually close the database that's open in Microsoft Access; it only frees the resources used by the Connection object variable.

Using an object's Close method and setting the object variable to Nothing are equivalent ways to free memory.

Sub UseClose()
    Dim cnn As ADODB.Connection, rst As New ADODB.Recordset

    ' Return reference to current database.
    Set cnn = CurrentProject.Connection
    ' Create table-type recordset.
    rst.Open "Customers",cnn

    ' Code that does something

    ' Close recordset to free memory.
    rst.Close
    ' Free memory used by object variable.
    Set cnn = Nothing
End Sub


 CloseConnection Method

CloseConnection Method

You can use the CloseConnection method to close the current connection between the CurrentProject or CodeProject object in a Microsoft Access project (.adp) or Access database (.mdb) and the database specified in the project's base connection string.

Syntax

object.CloseConnection

The CloseConnection method has the following argument.

Argument | Description
object | A string expression that evaluates to the CurrentProject or CodeProject object.

Remarks

The CloseConnection method closes the current connection of the Access project, database, or data source control, frees the ADO Connection object, and sets the Connection property to Null. The BaseConnectionString property is left unchanged. Users are prevented from calling datasoucecontrol.Connection.Close and must use this method instead.

The CloseConnection method is useful when you have opened a Microsoft Access database from another application through Automation.


CloseCurrentDatabase Method Example

The following example opens a Microsoft Access database from another application through Automation, creates a new form and saves it, then closes the database.

You can enter this code in a Visual Basic module in any application that can act as a COM component. For example, you might run the following code from Microsoft Excel or Microsoft Visual Basic.

When the variable pointing to the Application object goes out of scope, the instance of Microsoft Access that it represents closes as well. Therefore, you should declare this variable at the module level.

' Enter following in Declarations section of module.
Dim appAccess As Access.Application

Sub CreateForm()
    Const strConPathToSamples = "C:\Program Files\Microsoft Office\Office\Samples\"

    Dim frm As Form, strDB As String

    ' Initialize string to database path.
    strDB = strConPathToSamples & "Northwind.mdb"
    ' Create new instance of Microsoft Access.
    Set appAccess = CreateObject("Access.Application.9")
    ' Open database in Microsoft Access window.
    appAccess.OpenCurrentDatabase strDB
    ' Create new form.
    Set frm = appAccess.CreateForm
    ' Save new form.
    appAccess.DoCmd.Save , "NewForm1"
    ' Close currently open database.
    appAccess.CloseCurrentDatabase
    Set AppAccess = Nothing
End Sub


 Close Method

Close Method

If a Visual Basic procedure contains an object variable that represents the database currently open in Microsoft Access, using the Close method on that object causes the variable to go out of scope. The Close method will not affect the database that is open in the Microsoft Access Database window.


Open Method (Connection)

In Microsoft Access, use CurrentProject.Connection to return a reference to the current database and assign it to a Connection variable, as shown in the following example.

Dim cnnCurrent As ADODB.Connection
Set cnnCurrent = CurrentProject.Connection

Use the Open method of a Connection variable to open a database other than the current database from Visual Basic.


CodeDb Method Example

The following example uses the CodeDb method to return a Database object that refers to a library database. The library database contains both a table named Errors and the code that is currently running. After the CodeDb method determines this information, the GetErrorString function opens a table-type recordset based on the Errors table. It then extracts an error message from a field named ErrorData based on the Integer value passed to the function.

Function GetErrorString(ByVal intError As Integer) As String
    Dim dbs As Database, rst As RecordSet

    ' Variable refers to database where code is running.
    Set dbs = CodeDb
    ' Create table-type Recordset object.
    Set rst = dbs.OpenRecordSet("Errors", dbOpenTable)
    ' Set index to primary key (ErrorID field).
    rst.Index = "PrimaryKey"
    ' Find error number passed to GetErrorString function.
    rst.Seek "=", intError
    ' Return associated error message.
    GetErrorString = rst.Fields!ErrorData.Value
    rst.Close
End Function


 CompactDatabase Method (MDB)

CompactDatabase Method (MDB)

To compact a database from the Microsoft Access window, point to Database Utilities on the Tools menu, and click Compact Database.

Note: The CompactDatabase method won't completely convert an Access database (.mdb) from one version to another. Only the data format is converted. Microsoft Access-defined objects, such as forms and reports, aren't converted. To convert a database created in a previous version, point to Database Utilities on the Tools menu and click Convert Database.


CopyQueryDef Method Example (MDB)

The following example uses the CopyQueryDef method to return a copy of a QueryDef object representing an Invoices query, and prints the SQL property of that QueryDef object.

Sub GetQueryDefCopy()
    Dim dbs As Database, rst As Recordset
    Dim qdfOriginal As QueryDef, qdfCopy As QueryDef

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Invoices query.
    Set qdfOriginal = dbs.QueryDefs!Invoices
    ' Open dynaset-type Recordset object.
    Set rst = qdfOriginal.OpenRecordset
    ' Get copy of original QueryDef object.
    Set qdfCopy = rst.CopyQueryDef
    ' Print value of SQL property for copy.
    Debug.Print qdfCopy.SQL
    rst.Close
    Set dbs = Nothing
End Sub


CreateControl, CreateReportControl Methods Example

The following example first creates a new form based on an Orders table. It then uses the CreateControl method to create a text box control and an attached label control on the form.

Sub NewControls()
    Dim frm As Form
    Dim ctlLabel As Control, ctlText As Control
    Dim intDataX As Integer, intDataY As Integer
    Dim intLabelX As Integer, intLabelY As Integer

    ' Create new form with Orders table as its record source.
    Set frm = CreateForm
    frm.RecordSource = "Orders"
    ' Set positioning values for new controls.
    intLabelX = 100
    intLabelY = 100
    intDataX = 1000
    intDataY = 100
    ' Create unbound default-size text box in detail section.
    Set ctlText = CreateControl(frm.Name, acTextBox, , "", "", _
        intDataX, intDataY)
    ' Create child label control for text box.
    Set ctlLabel = CreateControl(frm.Name, acLabel, , _
         ctlText.Name, "NewLabel", intLabelX, intLabelY)
    ' Restore form.
    DoCmd.Restore
End Sub


CreateDataAccessPage Method Example

The following code fragment illustrates how you could create a new data access page, work with the HTML in the page, and then create a link to the page and permanently save it to disk. The procedure also illustrates one way to use an error trap to handle files that already exist:

Function CreateDAP(strFileName As String) As Boolean
    Dim dapNewPage As DataAccessPage

    Const DAP_EXISTS As Long = 2023

    On Error GoTo CreateDAP_Err
    ' Create the new page.
    Set dapNewPage = Application.CreateDataAccessPage(strFileName, _
        True)
    ' Use the Document property to return the Internet Explorer 5.0
    ' document object, and then use the Internet Explorer objects to
    ' work with the HTML in the page.

    With dapNewPage.Document
        .All("HeadingText").innerText = "This page was created " _
            & "programmatically!"
        .All("HeadingText").Style.display = ""
        .All("BeforeBodyText").innerText = "When you work " _
            & "with the HTML in a data access page, you " _
            & "must use the document property of the Page " _
            & "to get to the HTML. "
            .All("BeforeBodyText").Style.display = ""
    End With

    ' Close the page and save all changes.
    DoCmd.Close acDataAccessPage, dapNewPage.Name, acSaveYes
    CreateDAP = True
CreateDAP_End:
    Exit Function
CreateDAP_Err:
    If Err = DAP_EXISTS Then
        ' The file specified in strFileName already exists,
        ' so replace it with this new page.
        If MsgBox("'" & strFileName & " already exists. Do you " _
            & "want to replace it with a new, blank page?", vbYesNo, _
            "Replace existing page?") = vbYes Then
            Set dapNewPage = Application.CreateDataAccessPage(strFileName, False)
            Resume Next
        Else
            CreateDAP = False
            Resume CreateDAP_End
        End If
    Else
        CreateDAP = False
        Resume CreateDAP_End
    End If
End Function

The following example fragment illustrates how the CreateDataAccessPage method can be used to create multiple links to a single page on disk.

Sub Foo()
    Dim dapNewPage As DataAccessPage
    Set dapNewPage = _
        Application.CreateDataAccessPage("c:\footest.htm", True)
    DoCmd.Close acDataAccessPage, dapNewPage.Name, acSaveYes
    Set dapNewPage = _
        Application.CreateDataAccessPage("c:\footest.htm", False)
    DoCmd.Close acDataAccessPage, dapNewPage.Name, acSaveYes
End Sub


 CreateDatabase Method (MDB)

CreateDatabase Method (MDB)

The CreateDatabase method in the DAO object library creates a new Access database (.mdb) database from Visual Basic, opens the new database, appends it to the Databases collection, and saves to disk.

Use of the CreateDatabase command doesn't affect the database that's currently open in the Microsoft Access Database window. A database that you've opened in the Database window remains open and is the first database in the Databases collection.

To open a database that you have created with CreateDatabase in the Database window, you must click Open Database on the File menu.


CreateDatabase Method Example

CreateDatabase Method Example (MDB)

The following example uses CreateDatabase to create a new, encrypted database named Newdb.mdb:

Sub NewDatabase()
    Dim wspDefault As Workspace, dbs As Database
    Dim tdf As TableDef, fld1 As Field, fld2 As Field
    Dim idx As Index, fldIndex As Field

    Set wspDefault = DBEngine.Workspaces(0)
    ' Create new, encrypted database.
    Set dbs = wspDefault.CreateDatabase("Newdb.mdb", _
        dbLangGeneral, dbEncrypt)
    ' Create new table with two fields.
    Set tdf = dbs.CreateTableDef("Contacts")
    Set fld1 = tdf.CreateField("ContactID", dbLong)
    fld1.Attributes = fld1.Attributes + dbAutoIncrField
    Set fld2 = tdf.CreateField("ContactName", dbText, 50)
    ' Append fields.
    tdf.Fields.Append fld1
    tdf.Fields.Append fld2
    ' Create primary key index.
    Set idx = tdf.CreateIndex("PrimaryKey")
    Set fldIndex = idx.CreateField("ContactID", dbLong)
    ' Append index fields.
    idx.Fields.Append fldIndex
    ' Set Primary property.
    idx.Primary = True
    ' Append index.
    tdf.Indexes.Append idx
    ' Append TableDef object.
    dbs.TableDefs.Append tdf
    dbs.TableDefs.Refresh
    Set dbs = Nothing
End Sub


CreateEventProc, InsertLines Methods Example

The following example creates a new form, adds a command button, and creates a Click event procedure for the command button:

Function ClickEventProc() As Boolean
    Dim frm As Form, ctl As Control, mdl As Module
    Dim lngReturn As Long

    On Error GoTo Error_ClickEventProc
    ' Create new form.
    Set frm = CreateForm
    ' Create command button on form.
    Set ctl = CreateControl(frm.Name, acCommandButton, , , , _
         1000, 1000)
    ctl.Caption = "Click here"
    ' Return reference to form module.
    Set mdl = frm.Module
    ' Add event procedure.
    lngReturn = mdl.CreateEventProc("Click", ctl.Name)
    ' Insert text into body of procedure.
    mdl.InsertLines lngReturn + 1, vbTab & "MsgBox ""Way cool!"""
    ClickEventProc = True

Exit_ClickEventProc:
    Exit Function

Error_ClickEventProc:
    MsgBox Err & " :" & Err.Description
    ClickEventProc = False
    Resume Exit_ClickEventProc
End Function


CreateField Method Example (MDB)

The following example creates a new table with two new fields. One of the fields is an AutoNumber field. The procedure also makes this field the primary key in the table.

Sub NewTable()
    Dim dbs As Database
    Dim tdf As TableDef, fld1 As Field, fld2 As Field
    Dim idx As Index, fldIndex As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create new table with two fields.
    Set tdf = dbs.CreateTableDef("Contacts")
    Set fld1 = tdf.CreateField("ContactID", dbLong)
    fld1.Attributes = fld1.Attributes + dbAutoIncrField
    Set fld2 = tdf.CreateField("ContactName", dbText, 50)
    ' Append fields.
    tdf.Fields.Append fld1
    tdf.Fields.Append fld2
    ' Create primary key index.
    Set idx = tdf.CreateIndex("PrimaryKey")
    Set fldIndex = idx.CreateField("ContactID", dbLong)
    ' Append index fields.
    idx.Fields.Append fldIndex
    ' Set Primary property.
    idx.Primary = True
    ' Append index.
    tdf.Indexes.Append idx
    ' Append TableDef object.
    dbs.TableDefs.Append tdf
    dbs.TableDefs.Refresh
    Set dbs = Nothing
End Sub


CreateForm, CreateReport Methods Example

The following example creates a report in the current database by using the template specified by the Report Template setting on the Forms/Reports tab of the Options dialog box.

Sub NormalReport()
    Dim rpt As Report

    Set rpt = CreateReport                ' Create minimized report.
    DoCmd.Restore                            ' Restore report.
End Sub

The next example creates a new form in the Northwind sample database based on the Customers form, and sets its RecordSource property to the Customers table. Run this code from the Northwind sample database.

Sub NewForm()
    Dim frm As Form

    ' Create form based on Customers form.
    Set frm = CreateForm( , "Customers")
    DoCmd.Restore
    ' Set RecordSource property to Customers table.
    frm.RecordSource = "Customers"
End Sub


AddFromFile Method (References Collection) Example

The following example creates a reference to a specified type library:

Function ReferenceFromFile(strFileName As String) As Boolean
    Dim ref As Reference

    On Error GoTo Error_ReferenceFromFile
    ' Create new reference.
    Set ref = References.AddFromFile(strFileName)
    ReferenceFromFile = True

Exit_ReferenceFromFile:
    Exit Function

Error_ReferenceFromFile:
    MsgBox Err & ": " & Err.Description
    ReferenceFromFile = False
    Resume Exit_ReferenceFromFile
End Function

You could call this function by using a procedure such as the following, which creates a reference to the calendar control:

Sub CreateCalendarReference()
    If ReferenceFromFile("C:\Windows\System\Mscal.ocx") = True
    Then
        MsgBox "Reference to calendar control created " _
            & "successfully."
    Else
        MsgBox "Reference to calendar control not " _
            & "created successfully."
    End If
End Sub


CreateGroupLevel Method Example

The following example creates a group level on an OrderDate field on a report called OrderReport. The report on which the group level is to be created must be open in Design view. Since the header and footer arguments are set to True (-1), the method creates both the header and footer for the group level. The header and footer are then sized.

Sub CreateGL()
    Dim varGroupLevel As Variant

    ' Create new group level on OrderDate field.
    varGroupLevel = CreateGroupLevel("OrderReport", "OrderDate", _
        True, True)
    ' Set height of header/footer sections.
    Reports!OrderReport.Section(acGroupLevel1Header).Height = 400
    Reports!OrderReport.Section(acGroupLevel1Footer).Height = 400
End Sub


CreateGroup Method (MDB)

Once you have created a new Group object and appended it to the Groups collection of a Workspace or User object, you can verify that the new group exists by examining the Name list box on the Groups tab of the User And Group Accounts dialog box. This dialog box is available by pointing to Security on the Tools menu and clicking User and Group Accounts.


CreateIndex Method Example (MDB)

The following example creates a new Index object on an Employees table. The new index consists of two fields, LastName and FirstName.

Sub NewIndex()
    Dim dbs As Database, tdf As TableDef
    Dim idx As Index
    Dim fldLastName As Field, fldFirstName As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Employees table.
    Set tdf = dbs.TableDefs!Employees
    ' Return reference to new index.
    Set idx = tdf.CreateIndex("FullName")
    ' Create and append index fields.
    Set fldLastName = idx.CreateField("LastName", dbText)
    Set fldFirstName = idx.CreateField("FirstName", dbText)
    idx.Fields.Append fldLastName
    idx.Fields.Append fldFirstName
    ' Append Index object and refresh collection.
    tdf.Indexes.Append idx
    tdf.Indexes.Refresh
    Set dbs = Nothing
End Sub


Create Method Example

The following example uses Create to create a new, encrypted database named Newdb.mdb:

Note The Create method is not supported in ADPs by the SQL provider released with Microsoft Access 2000. A reference to "Microsoft ADO ext. 2.1 for DDL and Security" must be set to use this example.

Sub NewDatabase()
    Dim cat As New ADOX.Catalog

 cat.Create "Provider=Microsoft.Jet.OLEDB.4.0;" _
   & "Data Source=Newdb.mdb;" _
    & "Jet OLEDB:Encrypt Database=True"

    Set cat = Nothing
End Sub


 CreateProperty Method (MDB)

CreateProperty Method (MDB)

Microsoft Access defines a number of properties on data access objects. These properties are not automatically recognized by the Microsoft Jet database engine. In order to set or return values for a Microsoft Access-defined property in Visual Basic, you must specifically add the property to the Properties collection of the object to which it applies. You can do this by using the CreateProperty method to create the property and then appending it to the Properties collection.

For example, Microsoft Access defines the Description property of a TableDef object. If this property hasn't already been set from table Design view, you must use the CreateProperty method to create the property and then append it to the Properties collection in order to set the property from Visual Basic.

A Microsoft Access-defined property is automatically added to the Properties collection when it is first set from the Microsoft Access window. If the property has already been set in this way, then you don't need to add it to the Properties collection.

When you write code to set a Microsoft Access-defined property, you should include an error-handling routine that creates a Property object representing that property and appends it to the Properties collection if it does not already exist in the collection.

When you refer to a Microsoft Access-defined property in Visual Basic, you must explicitly refer to the Properties collection. For example, you would refer to the AppTitle property in the following manner, once it exists within the Properties collection of a Database object representing the current database.

Dim dbs As Database
Set dbs = CurrentDb
dbs.Properties!AppTitle = "Northwind Traders"

Note You need to create and append only the Microsoft Access properties that apply to DAO objects. You can set other Microsoft Access properties in Visual Basic by using the standard object.property syntax.


CreateProperty Method Example (MDB)

The first procedure in the following example, the SetAccessProperty function, is a generic function that you can use to set a property. If the property you wish to set already has a corresponding Property object in the Properties collection, the function simply sets the property to the desired value. If the property does not have a corresponding Property object in the Properties collection, then the function creates the Property object and appends it to the Properties collection.

The second procedure sets the Subject property using the SetAccessProperty function. The Subject property is a database property that can also be set on the Summary tab of the Database Properties dialog box, available by clicking Database Properties on the File menu.

The Subject property applies to a DAO object - the SummaryInfo Document object, which is defined by Microsoft Access. If the Subject property doesn't already exist in the Properties collection for the SummaryInfo Document object, the SetAccessProperty function adds it.

Function SetAccessProperty(obj As Object, strName As String, _
        intType As Integer, varSetting As Variant) As Boolean
    Dim prp As Property
    Const conPropNotFound As Integer = 3270

    On Error GoTo ErrorSetAccessProperty
    ' Explicitly refer to Properties collection.
    obj.Properties(strName) = varSetting
    obj.Properties.Refresh
    SetAccessProperty = True

ExitSetAccessProperty:
    Exit Function

ErrorSetAccessProperty:
    If Err = conPropNotFound Then
        ' Create property, denote type, and set initial value.
        Set prp = obj.CreateProperty(strName, intType, varSetting)
        ' Append Property object to Properties collection.
        obj.Properties.Append prp
        obj.Properties.Refresh
        SetAccessProperty = True
        Resume ExitSetAccessProperty
    Else
        MsgBox Err & ": " & vbCrLf & Err.Description
        SetAccessProperty = False
        Resume ExitSetAccessProperty
    End If
End Function

The following procedure calls the SetAccessProperty function to set the Subject property.

Sub CallPropertySet()
    Dim dbs As Database, ctr As Container, doc As Document
    Dim blnReturn As Boolean

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Databases container.
    Set ctr = dbs.Containers!Databases
    ' Return reference to SummaryInfo document.
    Set doc = ctr.Documents!SummaryInfo
    blnReturn = SetAccessProperty(doc, _
        "Subject", dbText, "Business Contacts")
    ' Evaluate return value.
    If blnReturn = True Then
        Debug.Print "Property set successfully."
    Else
        Debug.Print "Property not set successfully."
    End If
End Sub


CreateQueryDef Method Example (MDB)

This example uses the CreateQueryDef method to create and execute both a temporary and a permanent QueryDef. The GetrstTemp function is required for this procedure to run.

Sub CreateQueryDefX()

    Dim dbsNorthwind As Database
    Dim qdfTemp As QueryDef
    Dim qdfNew As QueryDef

    Set dbsNorthwind = OpenDatabase("Northwind.mdb")

    With dbsNorthwind
        ' Create temporary QueryDef.
        Set qdfTemp = .CreateQueryDef("", _
            "SELECT * FROM Employees")
        ' Open Recordset and print report.
        GetrstTemp qdfTemp
        ' Create permanent QueryDef.
        Set qdfNew = .CreateQueryDef("NewQueryDef", _
            "SELECT * FROM Categories")

' Open Recordset and print report.
        GetrstTemp qdfNew
        ' Delete new QueryDef because this is a demonstration.
        .QueryDefs.Delete qdfNew.Name
        .Close
    End With

End Sub

Function GetrstTemp(qdfTemp As QueryDef)

    Dim rstTemp As Recordset

    With qdfTemp
        Debug.Print .Name
        Debug.Print "    " & .SQL
        ' Open Recordset from QueryDef.
        Set rstTemp = .OpenRecordset(dbOpenSnapshot)

        With rstTemp
            ' Populate Recordset and print number of records.

.MoveLast
            Debug.Print "    Number of records = " & _
                .RecordCount
            Debug.Print
            .Close
        End With

    End With

End Function


CreateRelation Method Example (MDB)

The following example creates a new Relation object that defines a relationship between a Categories table and a Products table. The Categories table is the primary table in the relationship, and the Products table is the foreign table. The CategoryID field is the primary key in the Categories table, and a foreign key in the Products table.

To test this example in the Northwind sample database, click Relationships on the Tools menu, and delete the relationship between the Categories table and the Products table. Close the Relationships window, saving the current configuration at the prompt. Run the following procedure. Then view the Relationships window again to see the new relationship.

Sub NewRelation()
    Dim dbs As Database, rel As Relation, fld As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create new Relation object and specify foreign table.
    Set rel = dbs.CreateRelation("CategoryProducts", _
        "Categories", "Products")
    ' Set attributes to enforce referential integrity.
    rel.Attributes = dbRelationUpdateCascade And _
        dbRelationDeleteCascade
    ' Create field in Relation object.
    Set fld = rel.CreateField("CategoryID")
    ' Specify field name in foreign table.
    fld.ForeignName = "CategoryID"
    ' Append Field object to Fields collection of Relation object.
    rel.Fields.Append fld
    ' Append Relation object to Relations collection.
    dbs.Relations.Append rel
    dbs.Relations.Refresh
    Set dbs = Nothing
End Sub


Create a new SQL database

The Create Method is not supported by the SQL Server provider for OLEDB and ADO in Microsoft Access 2000. However, you can create a new SQL database in Visual Basic using the Create Database SQL keywords in conjunction with the ADO Command object.


CreateTableDef Method Example (MDB)

The following example creates a new TableDef object and appends it to the TableDefs collection of the current database.

Sub NewTable()
    Dim dbs As Database, tdf As TableDef, fld As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return TableDef object variable that points to new table.
    Set tdf = dbs.CreateTableDef("Contacts")
    ' Define new field in table.
    Set fld = tdf.CreateField("ContactName", dbText, 40)
    ' Append Field object to Fields collection of TableDef object.
    tdf.Fields.Append fld
    tdf.Fields.Refresh
    ' Append TableDef object to TableDefs collection of database.
    dbs.TableDefs.Append tdf
    dbs.TableDefs.Refresh
    Set dbs = Nothing
End Sub


CreateUser Method (MDB)

Once you have created a new User object and appended it to the Users collection of a Workspace or Group object, you can verify that the new user exists by examining the Name list box on the Users tab of the User And Group Accounts dialog box. This dialog box is available by pointing to Security on the Tools menu and clicking User and Group Accounts.


Creating Table Indexes Example

The following example creates a new Index object on an Employees table. The new index consists of two fields, LastName and FirstName.

Note A reference to "Microsoft ADO ext. 2.1 for DDL and Security" must be set to use this example.

Sub NewIndex()
    Dim cat As New ADOX.Catalog, tbl As ADOX.Table
    Dim idx As New ADOX.Index

    ' Return reference to current database.
    Set cat.ActiveConnection = CurrentProject.Connection
    ' Return reference to Employees table.
    Set tbl = cat.Tables!Employees
    ' Return reference to new index.
    idx.Name = "FullName"
    idx.Columns.Append "LastName", adVarWChar
    idx.Columns.Append "FirstName", adVarWChar
    tbl.Indexes.Append idx

    ' Append Index object and refresh collection.
    tbl.Indexes.Refresh
    Set cat = Nothing
End Sub


CurrentDb Method Example

The following example uses the CurrentDb method to return a Database object variable pointing to the current database. It then enumerates all the fields in the Employees table in that database.

Sub ListFields()
    Dim dbs As Database, tdf As TableDef, fld As Field

    ' Return Database object variable pointing to current database.
    Set dbs = CurrentDb
    ' Return TableDef object variable pointing to Employees table.
    Set tdf = dbs.TableDefs!Employees
    ' Enumerate fields in Employees table.
    For Each fld In tdf.Fields
        Debug.Print fld.Name
    Next fld
End Sub


Close Method Example (MDB)

The following example creates a Database object that points to the current database and opens a table-type Recordset object based on a Customers table in the database. The procedure uses the Close method on the Recordset object variable to free the memory resources it has been using. It uses the Set statement with the Nothing keyword to free resources used by the Database object variable.

You can also use the Close method of the Database object to close it and free memory. The Close method of the Database object doesn't actually close the database that's open in Microsoft Access; it only frees the resources used by the Database object variable.

Using an object's Close method and setting the object variable to Nothing are equivalent ways to free memory.

Sub UseClose()
    Dim dbs As Database, rst As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create table-type recordset.
    Set rst = dbs.OpenRecordset("Customers")
    .
    .
    .
    ' Close recordset to free memory.
    rst.Close
    ' Free memory used by object variable.
    Set dbs = Nothing
End Sub


Refresh Method Example (MDB)

The following example refreshes the Indexes collection of a TableDef object. In a database in a multiuser environment, you can use the Refresh method to show changes made by other users to the Index objects in a TableDef object's Indexes collection.

Sub RefreshIndex()
    Dim dbs As Database, tdf As TableDef
    Dim idx As Index, fld As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    Set tdf = dbs.TableDefs!Employees
    tdf.Indexes.Refresh
    For Each idx In tdf.Indexes
        Debug.Print idx.Name; ":"
        For Each fld In idx.Fields
            Debug.Print "   "; fld.Name
        Next fld
    Next idx
    Set dbs = Nothing
End Sub


DefaultControl Method Example

The following example creates a new form and uses the DefaultControl method to return a Control object representing the default command button. The procedure sets some of the default properties for the command button, then creates a new command button on the form.

Sub SetDefaultProperties()
    Dim frm As Form, ctlDefault As Control, ctlNew As Control

    ' Create new form.
    Set frm = CreateForm
    ' Return Control object representing default command button.
    Set ctlDefault = frm.DefaultControl(acCommandButton)
    ' Set some default properties.
    With ctlDefault
        .FontWeight = 700
        .FontSize = 12
        .Width = 3000
        .Height = 1000
    End With
    ' Create new command button.
    Set ctlNew = CreateControl(frm.Name, acCommandButton, , , , 500, 500)
    ' Set control's caption.
    ctlNew.caption = "New Command Button"
    ' Restore form.
    DoCmd.Restore
End Sub


DefaultWorkspaceClone Method Example

The following example clones the default Workspace object, then lists the properties of each Workspace object.

Sub CloneWorkspace()
    Dim wrkDefault As Workspace, wrkClone As Workspace
    Dim prp As Property
    On Error Resume Next
    ' Get default workspace.
    Set wrkDefault = DBEngine.Workspaces(0)
    ' Clone default workspace.
    Set wrkClone = Application.DefaultWorkspaceClone
    ' Enumerate properties of each workspace.
    For Each prp In wrkDefault.Properties
        Debug.Print ">>>"; prp.Name; "   "; prp.Value
    Next prp
    For Each prp In wrkClone.Properties
        Debug.Print ">>>"; prp.Name; "   "; prp.Value
    Next prp
End Sub


Delete Method Example

The following example creates a column in a table and then deletes it.

Sub DeleteColumn()
    Dim cat As New ADOX.Catalog, tbl As ADOX.Table

    ' Return reference to current database.
    Set cat.ActiveConnection = CurrentProject.Connection
    Set tbl = cat.Tables!Employees
    ' Append new Column object.
    tbl.Columns.Append "MiddleInitial", adVarWChar, 2
    tbl.Columns.Refresh
    ' Delete new Column object.
    tbl.Columns.Delete "MiddleInitial"
tbl.Columns.Refresh
    Set cat = Nothing
End Sub


DeleteLines Method, Lines Property Example

The following example deletes a specified line from a module.

Function DeleteWholeLine(strModuleName, strText As String) _
     As Boolean
    Dim mdl As Module, lngNumLines As Long
    Dim lngSLine As Long, lngSCol As Long
    Dim lngELine As Long, lngECol As Long
    Dim strTemp As String

    On Error GoTo Error_DeleteWholeLine
    DoCmd.OpenModule strModuleName
    Set mdl = Modules(strModuleName)

    If mdl.Find(strText, lngSLine, lngSCol, lngELine, lngECol) Then
        lngNumLines = Abs(lngELine - lngSLine) + 1
        strTemp = LTrim$(mdl.Lines(lngSLine, lngNumLines))
        strTemp = RTrim$(strTemp)
        If strTemp = strText Then
            mdl.DeleteLines lngSLine, lngNumLines
        Else
            MsgBox "Line contains text in addition to '" _
                & strText & "'."
        End If
    Else
        MsgBox "Text '" & strText & "' not found."
    End If
    DeleteWholeLine = True

Exit_DeleteWholeLine:
    Exit Function

Error_DeleteWholeLine:
    MsgBox Err & " :" & Err.Description
    DeleteWholeLine = False
    Resume Exit_DeleteWholeLine
End Function

You could call this function from a procedure such as the following, which searches the module Module1 for a constant declaration and deletes it.

Sub DeletePiConst()
    If DeleteWholeLine("Module1", "Const conPi = 3.14") Then
        Debug.Print "Constant declaration deleted successfully."
    Else
        Debug.Print "Constant declaration not deleted."
    End If
End Sub


Delete Method Example (MDB)

The following example creates a field in a table and then deletes the field:

Sub DeleteField()
    Dim dbs As Database, tdf As TableDef
    Dim fldInitial As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    Set tdf = dbs.TableDefs!Employees
    ' Create new Field object.
    Set fldInitial = tdf.CreateField("MiddleInitial", dbText, 2)
    ' Append new Field object.
    tdf.Fields.Append fldInitial
    ' Refresh Fields collection.
    tdf.Fields.Refresh
    ' Delete new Field object.
    tdf.Fields.Delete fldInitial.Name
    tdf.Fields.Refresh
    Set dbs = Nothing
End Sub


Dropdown Method Example

The following example shows how you can use the Dropdown method within the GotFocus event procedure to force a combo box named SupplierID to drop down when it receives the focus.

Private Sub SupplierID_GotFocus()
    Me!SupplierID.Dropdown
End Sub


Echo Method (Application Object) Example

The following example uses the Echo method to prevent the screen from being repainted while certain operations are underway. While the procedure opens a form and minimizes it, the user only sees an hourglass icon to indicate that processing is taking place, and the screen isn't repainted. When this task is completed, the hourglass changes back to a pointer and screen repainting is turned back on.

Sub EchoOff()
    Application.Echo False
    DoCmd.Hourglass True
    DoCmd.OpenForm "Employees", acNormal
    DoCmd.Minimize
    Application.Echo True
    DoCmd.Hourglass False
End Sub


Edit Method Example (MDB)

The following example opens a Recordset object and locates each record satisfying the search criteria for the Title field. The procedure then uses the Edit method to prepare the record for subsequent editing, changes the job title, and saves the change.

Sub ChangeTitle()
    Dim dbs As Database, rst As Recordset
    Dim strCriteria As String, strNewTitle As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Set search criteria.
    strCriteria = "Title = 'Sales Representative'"
    strNewTitle = "Account Executive"
    ' Create dynaset-type Recordset object.
    Set rst = dbs.OpenRecordset("Employees", dbOpenDynaset)
    ' Find first occurrence.
    rst.FindFirst strCriteria
    ' Loop until no matching records.
    Do Until rst.NoMatch
        With rst
            .Edit                            ' Enable editing.
            !Title = strNewTitle    ' Change title.
            .Update                        ' Save changes.
            .FindNext strCriteria    ' Find next occurrence.
        End With
    Loop
    rst.Close
    Set dbs = Nothing
End Sub

Tip Using an update query to alter data is more efficient. For example, you can use the following code to achieve the same results:

Sub ChangeTitleSQL()
    Dim dbs As Database
    Dim strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create SQL string.
    strSQL = "UPDATE Employees SET Title = 'Account Executive' " _
        & "WHERE Title = 'Sales Representative' "
    ' Run action query.
    dbs.Execute strSQL
    ' Return number of records updated.
    Debug.Print dbs.RecordsAffected
    Set dbs = Nothing
End Sub


Execute Method Example

The following example executes an SQL string and prints the number of records affected:

Sub RecordsUpdated()
    Dim intRecordsAffected As Integer
    Dim strSQL As String

    strSQL = "UPDATE Employees SET Title = " _
        & "'Senior Sales Representative' " _
        & "WHERE Title = 'Sales Representative';"

    CurrentProject.Connection.Execute strSQL, intRecordsAffected
    Debug.Print intRecordsAffected
End Sub


Execute Method Example (MDB)

The following example executes an action query and prints the number of records affected:

Sub RecordsUpdated()
    Dim dbs As Database, qdf As QueryDef
    Dim strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    strSQL = "UPDATE Employees SET Title = " _
        & "'Senior Sales Representative' " _
        & "WHERE Title = 'Sales Representative';"
    ' Create new QueryDef.
    Set qdf = dbs.CreateQueryDef("UpdateTitles", strSQL)
    ' Execute QueryDef.
    qdf.Execute
    Debug.Print qdf.RecordsAffected
    Set dbs = Nothing
End Sub


FieldSize Property Example

FieldSize Property Example (MDB)

The following example uses the FieldSize property to return the size in bytes of two fields in an Employees table. The Notes field contains Memo data and the Photo field contains Long Binary (OLE Object) data.

Sub GetFieldSize()
    Dim dbs As Database, rst As Recordset
    Dim fldNotes As Field, fldPhoto As Field
    Dim strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Construct SQL statement to return Notes and Photo fields.
    strSQL = "SELECT Notes, Photo FROM Employees;"
    ' Create dynaset-type Recordset object.
    Set rst = dbs.OpenRecordset(strSQL)
    Set fldNotes = rst!Notes
    Set fldPhoto = rst!Photo
    ' Move to first record.
    rst.MoveFirst
    Debug.Print "Size of Notes:"; "    "; "Size of Photo:"
    ' Print sizes of fields for each record in Recordset object.
    Do Until rst.EOF
        Debug.Print fldNotes.FieldSize; "    "; fldPhoto.FieldSize
        rst.MoveNext
    Loop
    rst.Close
    Set dbs = Nothing
End Sub


Find Method

The ActiveX Data Objects (ADO) version of the Find Method supports only singular column searches. As a result, using the "And" or "Or" keywords to append criteria will not work.

Creating a new recordset will frequently provide better performance and does not limit you to single column filters.

Right:
rs.Find "FirstName = 'Nancy'"

Wrong:
rs.Find "FirstName = 'Nancy' And LastName = 'Davolio'"


Find Method Example

The following example creates a dynaset-type Recordset object and then uses the Find method to locate the first record satisfying the specified criteria. The procedure then finds the remaining records that satisfy the criteria.

Sub FindRecord()
    Dim rst As New ADODB.Recordset
    Dim strCriteria As String

    ' Define search criteria.
    strCriteria = "[ShipCountry] = 'UK'"
    ' Create a dynaset-type Recordset object based on Orders table.
    rst.Open "Orders", CurrenProject.Connection, adOpenKeyset, adLockOptimistic)
    ' Find first matching record.
    rst.Find strCriteria
    ' Check if record is found.
    If rst.EOF Then
        MsgBox "No record found."
    Else
        ' Find other matching records.
        Do Until rst.EOF
            Debug.Print rst!ShipCountry; "   "; rst!OrderDate
            rst.Find strCriteria
        Loop
    End If
    rst.Close
End Sub


FindFirst, FindLast, FindNext, FindPrevious Methods Example (MDB)

The following example creates a dynaset-type Recordset object and then uses the FindFirst method to locate the first record satisfying the specified criteria. The procedure then finds the remaining records that satisfy the criteria.

Sub FindRecord()
    Dim dbs As Database, rst As Recordset
    Dim strCriteria As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Define search criteria.
    strCriteria = "[ShipCountry] = 'UK' And " _
        & "[OrderDate] >= #1-1-95#"
    ' Create a dynaset-type Recordset object based on Orders table.
    Set rst = dbs.OpenRecordset("Orders", dbOpenDynaset)
    ' Find first matching record.
    rst.FindFirst strCriteria
    ' Check if record is found.
    If rst.NoMatch Then
        MsgBox "No record found."
    Else
        ' Find other matching records.
        Do Until rst.NoMatch
            Debug.Print rst!ShipCountry; "   "; rst!OrderDate
            rst.FindNext strCriteria
        Loop
    End If
    rst.Close
    Set dbs = Nothing
End Sub


Find, ReplaceLine Methods Example

The following function finds a specified string in a module and replaces the line that contains that string with a new specified line.

Function FindAndReplace(strModuleName As String, _
    strSearchText As String, _
    strNewText As String) As Boolean
    Dim mdl As Module
    Dim lngSLine As Long, lngSCol As Long
    Dim lngELine As Long, lngECol As Long
    Dim strLine As String, strNewLine As String
    Dim intChr As Integer, intBefore As Integer, _
        intAfter As Integer
    Dim strLeft As String, strRight As String

    ' Open module.
    DoCmd.OpenModule strModuleName
    ' Return reference to Module object.
    Set mdl = Modules(strModuleName)

    ' Search for string.
    If mdl.Find(strSearchText, lngSLine, lngSCol, lngELine, _
        lngECol) Then
        ' Store text of line containing string.
        strLine = mdl.Lines(lngSLine, Abs(lngELine - lngSLine) + 1)
        ' Determine length of line.
        intChr = Len(strLine)
        ' Determine number of characters preceding search text.
        intBefore = lngSCol - 1
        ' Determine number of characters following search text.
        intAfter = intChr - CInt(lngECol - 1)
        ' Store characters to left of search text.

        strLeft = Left$(strLine, intBefore)
        ' Store characters to right of search text.
        strRight = Right$(strLine, intAfter)
        ' Construct string with replacement text.
        strNewLine = strLeft & strNewText & strRight
        ' Replace original line.
        mdl.ReplaceLine lngSLine, strNewLine
        FindAndReplace = True
    Else
        MsgBox "Text not found."
        FindAndReplace = False
    End If

Exit_FindAndReplace:
    Exit Function

Error_FindAndReplace:

MsgBox Err & ": " & Err.Description
    FindAndReplace = False
    Resume Exit_FindAndReplace
End Function


FollowHyperlink Method Example

The following function prompts a user for a hyperlink address and then follows the hyperlink:

Function GetUserAddress() As Boolean
    Dim strInput As String

    On Error GoTo Error_GetUserAddress
    strInput = InputBox("Enter a valid address")
    Application.FollowHyperlink strInput, , True
    GetUserAddress = True

Exit_GetUserAddress:
    Exit Function

Error_GetUserAddress:
    MsgBox Err & ": " & Err.Description
    GetUserAddress = False
    Resume Exit_GetUserAddress
End Function

You could call this function with a procedure such as the following:

Sub CallGetUserAddress()
    If GetUserAddress = True Then
        MsgBox "Successfully followed hyperlink."
    Else
        MsgBox "Could not follow hyperlink."
    End If
End Sub


Follow Method Example

The following example sets the HyperlinkAddress property of a command button and then opens the hyperlink when the form is loaded.

To try this example, create a form and add a command button named Command0. Paste the following code into the form's module and switch to Form view:

Private Sub Form_Load()
    Dim ctl As CommandButton

    Set ctl = Me!Command0
    With ctl
        .Visible = False
        .HyperlinkAddress = "http://www.microsoft.com/"
        .Hyperlink.Follow
    End With
End Sub


GetChunk Method

After assigning the results of the GetChunk method to a string variable, you can use the Visual Basic Len function to determine the number of characters in the string. Or you can use the LenB function to determine the number of bytes used to represent that string.


GetRows Method Example

The following example uses the GetRows method to return a two-dimensional array containing all rows of data in a Recordset object:

Sub RowsArray()
    Dim rst As New ADODB.Recordset, strSQL As String
    Dim varRecords As Variant, intI As Integer, intJ As Integer

    ' Build SQL statement that returns specified fields.
    strSQL = "SELECT FirstName, LastName, HireDate " _
        & "FROM Employees"
    ' Open dynaset-type Recordset object.
    rst.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
    ' Move to end of recordset.
    rst.MoveLast
    ' Return to first record.
    rst.MoveFirst
    ' Return all rows into array.
    varRecords = rst.GetRows(rst.RecordCount)
    ' Find upper bound of second dimension.
    For intI = 0 To UBound(varRecords, 2)
        Debug.Print
        ' Find upper bound of first dimension.
        For intJ = 0 To UBound(varRecords, 1)
            ' Print data from each row in array.
            Debug.Print varRecords(intJ, intI)
        Next intJ
    Next intI
    rst.Close

End Sub


GetRows Method Example (MDB)

The following example uses the GetRows method to return a two-dimensional array containing all rows of data in a Recordset object:

Sub RowsArray()
    Dim dbs As Database, rst As Recordset, strSQL As String
    Dim varRecords As Variant, intI As Integer, intJ As Integer

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Build SQL statement that returns specified fields.
    strSQL = "SELECT FirstName, LastName, HireDate " _
        & "FROM Employees"
    ' Open dynaset-type Recordset object.
    Set rst = dbs.OpenRecordset(strSQL)
    ' Move to end of recordset.
    rst.MoveLast
    ' Return to first record.
    rst.MoveFirst
    ' Return all rows into array.
    varRecords = rst.GetRows(rst.RecordCount)
    ' Find upper bound of second dimension.
    For intI = 0 To UBound(varRecords, 2)
        Debug.Print
        ' Find upper bound of first dimension.
        For intJ = 0 To UBound(varRecords, 1)
            ' Print data from each row in array.
            Debug.Print varRecords(intJ, intI)
        Next intJ
    Next intI
    rst.Close
    Set dbs = Nothing
End Sub


 GetOption, SetOption Methods

GetOption, SetOption Methods

Language-specific information

Use these methods to inspect or set any of the options in the Options dialog box (Tools menu). This includes all of the options in the Right-to-Left tab that have been implemented for right-to-left and bidirectional use.


GetOption, SetOption Methods Example

The following example uses the GetOption method to return the Default Field Type option setting from the Tables/Queries tab of the Options dialog box and then saves the setting in a variable. If the Default Field Type option isn't currently set to Text, Microsoft Access displays a dialog box asking the user whether it should set the option to Text. If the user clicks Yes, the SetOption method changes the option.

Sub ChangeFieldSize()
    ' Constant represents Text setting of Default
    ' Field Type option.
    Const conText = 0

    Dim varSize As Variant, intResponse As Integer
    Dim strMsg As String

    ' Determine current setting.
    varSize = Application.GetOption("Default Field Type")
    strMsg = "Set default field type to Text?"
    If varSize <> conText Then
    ' Prompt user to change setting if it's not Text.
        If MsgBox(strMsg, vbYesNo) = vbYes Then
            ' Change setting to Text.
            Application.SetOption "Default Field Type", conText
        End If
    End If
End Sub


GoToPage Method (Application Object) Example

The following example uses the GoToPage method to move the focus to the second page of the Customer form at the position specified by the right and down arguments:

Forms!Customer.GoToPage 2, 1440, 600


HyperlinkPart Method Example

The following example uses all four of the part argument constants to display information returned by the HyperlinkPart method for each record in a table containing a Hyperlink field. To try this example, paste the DisplayHyperlinkParts procedure into the Declarations section of a module. You can call the DisplayHyperlinkParts procedure from the Debug window, passing to it the name of a table containing hyperlinks and the name of the field containing Hyperlink data. For example:

DisplayHyperlinkParts "MyHyperlinkTableName", "MyHyperlinkFieldName"

Sub DisplayHyperlinkParts(strTable As String, strField As String)
    Dim rst As New ADODB.Recordset
    Dim strMsg As String

    rst.Open(strTable,currentproject.connection,_
        adOpenForwardOnly, adLockReadOnly)

    While Not rst.EOF        ' For each record in table.
        strMsg = "DisplayValue = " _
            & HyperlinkPart(rst(strField), acDisplayedValue) _
            & vbCrLf & "DisplayText = " _
            & HyperlinkPart(rst(strField), acDisplayText) _
            & vbCrLf & "Address = " _
            & HyperlinkPart(rst(strField), acAddress) _
            & vbCrLf & "SubAddress = " _
            & HyperlinkPart(rst(strField), acSubAddress) _
            & vbCrLf & "ScreenTip = " _
            & HyperlinkPart(rst(strField), acScreenTip) _
            & vbCrLf & "Full Address = " _
            & HyperlinkPart(rst(strField), acFullAddress)
        ' Show parts returned by HyperlinkPart function.
        MsgBox strMsg
        rst.MoveNext
    Wend
End Sub

When you use the HyperlinkPart method in a query, the part argument is required. For example, the following SQL statement uses the HyperlinkPart method to return information about data stored as a Hyperlink data type in the URL field of the Links table:

SELECT Links.URL, HyperlinkPart([URL],0)
AS Display, HyperlinkPart([URL],1)
AS Name, HyperlinkPart([URL],2)
AS Addr, HyperlinkPart([URL],3)
AS SubAddr, HyperlinkPart([URL],4)
AS ScreenTip
FROM Links;


InsertText Method Example

The following example inserts a string of text into a standard module:

Function InsertProc(strModuleName) As Boolean
    Dim mdl As Module, strText As String

    On Error GoTo Error_InsertProc
    ' Open module.
    DoCmd.OpenModule strModuleName
    ' Return reference to Module object.
    Set mdl = Modules(strModuleName)
    ' Initialize string variable.
    strText = "Sub DisplayMessage()" & vbCrLf _
        & vbTab & "MsgBox ""Wild!""" & vbCrLf _
        & "End Sub"
    ' Insert text into module.
    mdl.InsertText strText
    InsertProc = True

Exit_InsertProc:
    Exit Function

Error_InsertProc:
    MsgBox Err & ": " & Err.Description
    InsertProc = False
    Resume Exit_InsertProc
End Function


Line Method Example

The following example uses the Line method to draw a red rectangle five pixels inside the edge of a report named EmployeeReport. The RGB function is used to make the line red.

To try this example in Microsoft Access, create a new report. Paste the following code in the declarations section of the report's module, then switch to Print Preview.

Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
    ' Call the Drawline procedure
    DrawLine
End Sub

Sub DrawLine()
    Dim rpt As Report, lngColor As Long
    Dim sngTop As Single, sngLeft As Single
    Dim sngWidth As Single, sngHeight As Single

    Set rpt = Reports!EmployeeReport
    ' Set scale to pixels.
    rpt.ScaleMode = 3
    ' Top inside edge.
    sngTop = rpt.ScaleTop + 5
    ' Left inside edge.
    sngLeft = rpt.ScaleLeft + 5
    ' Width inside edge.
    sngWidth = rpt.ScaleWidth - 10
    ' Height inside edge.
    sngHeight = rpt.ScaleHeight - 10
    ' Make color red.
    lngColor = RGB(255,0,0)
    ' Draw line as a box.
    rpt.Line(sngTop, sngLeft) - (sngWidth, sngHeight), lngColor, B
End Sub


Move Method Example

The following example uses the Move method to move forward two rows in a Recordset object:

Sub MoveForward()
    Dim rst As New ADODB.Recordset
    Dim strCriteria As String

    ' Open dynaset-type Recordset object.
    rst.Open "SELECT * FROM Orders ORDER BY ShipCountry;" _
, currentProject.connection, adOpenKeyset, adLockOptimistic
    rst.MoveLast
    rst.MoveFirst
    ' Check number of records in Recordset object.
    If rst.RecordCount > 2 Then
        ' Move forward two rows.
        rst.Move 2
        Debug.Print rst!ShipCountry
    End If
    rst.Close
End Sub


MoveFirst, MoveLast, MoveNext, MovePrevious Methods Example

The following example uses the MoveLast method to populate the Recordset object so the number of records can be counted. The MoveFirst method then moves the current record pointer to the first record in the Recordset object. The procedure prompts the user to enter a number, then moves that number of records forward.

Sub MoveThroughRecords()
    Dim rst As New ADODB.Recordset, intI As Integer
    Dim intNumber As Integer

    rst.Open "Products", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
    ' Populate Recordset object.
    rst.MoveLast
    ' Return to first record.
    rst.MoveFirst
    ' Get number smaller than number of records.
    intNumber = InputBox("Please enter a number less than " _
        & rst.RecordCount & ".")
    ' Move specified number of records.
    For intI = 1 To intNumber
        rst.MoveNext
    Next intI
    Debug.Print rst!ProductName
    rst.Close

End Sub


MoveFirst, MoveLast, MoveNext, MovePrevious Methods Example (MDB)

The following example uses the MoveLast method to populate the Recordset object so the number of records can be counted. The MoveFirst method then moves the current record pointer to the first record in the Recordset object. The procedure prompts the user to enter a number, then moves that number of records forward.

Sub MoveThroughRecords()
    Dim dbs As Database, rst As Recordset, intI As Integer
    Dim strNumber As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    Set rst = dbs.OpenRecordset("Products")
    ' Populate Recordset object.
    rst.MoveLast
    ' Return to first record.
    rst.MoveFirst
    ' Get number smaller than number of records.
    strNumber = InputBox("Please enter a number less than " _
        & rst.RecordCount & ".")
    ' Move specified number of records.
    For intI = 1 To strNumber
        rst.MoveNext
    Next intI
    Debug.Print rst!ProductName
    rst.Close
    Set dbs = Nothing
End Sub


Move Method Example (MDB)

The following example uses the Move method to move forward two rows in a Recordset object:

Sub MoveForward()
    Dim dbs As Database, rst As Recordset
    Dim strCriteria As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Open dynaset-type Recordset object.
    Set rst = dbs.OpenRecordset("SELECT * FROM Orders " _
        & "ORDER BY ShipCountry;")
    rst.MoveLast
    rst.MoveFirst
    ' Check number of records in Recordset object.
    If rst.RecordCount > 2 Then
        ' Move forward two rows.
        rst.Move 2
        Debug.Print rst!ShipCountry
    End If
    rst.Close
    Set dbs = Nothing
End Sub


NewCurrentDatabase Method Example

The following example creates a new Microsoft Access database from another application through Automation, and then creates a new table in that database.

You can enter this code in a Visual Basic module in any application that can act as a COM component. For example, you might run the following code from Microsoft Excel, Microsoft Visual Basic, or Microsoft Access.

When the variable pointing to the Application object goes out of scope, the instance of Microsoft Access that it represents closes as well. Therefore, you should declare this variable at the module level.

' Include following in Declarations section of module.
Dim appAccess As Access.Application

Sub NewAccessDatabase()
    Dim dbs As Object, tdf As Object, fld As Variant
    Dim strDB As String
    Const DB_Text As Long = 10
    Const FldLen As Integer = 40

    ' Initialize string to database path.
    strDB = "C:\My Documents\Newdb.mdb"
    ' Create new instance of Microsoft Access.
    Set appAccess = _
        CreateObject("Access.Application.9")
    ' Open database in Microsoft Access window.
    appAccess.NewCurrentDatabase strDB
    ' Get Database object variable.
    Set dbs = appAccess.CurrentDb
    ' Create new table.
    Set tdf = dbs.CreateTableDef("Contacts")
    ' Create field in new table.
    Set fld = tdf. _
        CreateField("CompanyName", DB_Text, FldLen)
    ' Append Field and TableDef objects.
    tdf.Fields.Append fld
    dbs.TableDefs.Append tdf
    Set appAccess = Nothing
End Sub


OpenDatabase Method Example

Open Method Example

The following example returns a Connection variable that points to the current connection. Then it opens a different connection called Another.mdb by using the Open method. The procedure then enumerates all Table objects in both databases.

To try this example, create a new database called Another.mdb, close it, and place it in the same directory as the database from which you are running the code.

Sub OpenAnother()
    Dim cat As New ADOX.Catalog, catAnother As New ADOX.Catalog
    Dim cnnAnother As New ADODB.Connection
    Dim tbl As ADOX.Table

    ' Return reference to current database.
    Set cat.ActiveConnection = CurrentProject.Connection
cnnAnother.Provider = "Microsoft.Jet.OLEDB.4.0"     cnnAnother.Open "DATA SOURCE=Another.mdb"
    ' Return reference to Another.mdb.
    Set catAnother.ActiveConnection = cnnAnother
    ' Enumerate all Table objects in each database.
    Debug.Print CurrentProject.Connection.Properties("Data Source Name") & ":"
    For Each tbl In cat.Tables
        Debug.Print tbl.Name
    Next tbl
    Debug.Print vbCrLf & cnnAnother.Properties("Data Source Name") & ":"
    For Each tbl In catAnother.Tables
        Debug.Print tbl.Name
    Next tbl
    Set cat = Nothing
    Set cnnAnother = Nothing
    Set catAnother = Nothing
End Sub

Note If running this code in an ADP the provider will have to be set to "SQLOLEDB.1" and the ConnectionString parameter for the connection's OPEN method will need to be set to point to a SQL database.

The following example opens a keyset-type Recordset object and prints the number of records in the Recordset object.

Sub UKOrders()
    Dim rst As New ADODB.Recordset
    Dim strSQL As String

    strSQL = "SELECT * FROM Orders WHERE [ShipCountry] = 'UK'"
    rst.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
    rst.MoveLast
    Debug.Print rst.RecordCount
    rst.Close
End Sub


 OpenConnection Method

OpenConnection Method

You can use the OpenConnection method to open an ADO connection to an existing Microsoft Access project (.adp) or Access database (.mdb) as the current Access project or database in the Microsoft Access window.

Syntax

object.OpenConnection [baseconnectionstring][, userid][, password]

The OpenConnection method has the following arguments.

Argument | Description
object | The CurrentProject or CodeProjectobject.
baseconnectionstring | A string expression that is the base connection string of the database.
userid | A string expression that is the name of the existing Access project, including the path name and the file name extension. If your network supports it, you can also specify a network path in the following form: \\Server\Share\Folder\Filename.adp
password | Note If you don't supply the filename extension, .adp is appended to the filename. You can use this method or the OpenCurrentDatabase method to open .adp files.

Remarks

The OpenConnection method is similar to the Open method of an ADO Connection object. This method establishes the physical connection to the data source. After this method successfully completes, the connection is live, the Connection and BaseConnectionString properties are set, and the Database window or data access page should be repopulated with data from the new connection. All parameters of this method are optional. If no base connection string is supplied, then the connection is re-established using the previous base connection string (but the user must call CloseConnection before calling OpenConnection again). In the case of an Access project, the BaseConnectionString property can only specify the SQL Server OLE DB Provider.


OpenCurrentDatabase Method Example

The following example opens a Microsoft Access database from another application through Automation, then opens a form in that database.

You can enter this code in a Visual Basic module in any application that can act as a COM component. For example, you might run the following code from Microsoft Excel, Microsoft Visual Basic, or Microsoft Access.

When the variable pointing to the Application object goes out of scope, the instance of Microsoft Access that it represents closes as well. Therefore, you should declare this variable at the module level.

' Include following in Declarations section of module.
Dim appAccess As Access.Application

Sub DisplayForm()
    ' Initialize string to database path.
    Const strConPathToSamples = "C:\Program " _
        & "Files\Microsoft Office\Office\Samples\Northwind.mdb"

    strDB = strConPathToSamples & "Northwind.mdb"
    ' Create new instance of Microsoft Access.
    Set appAccess = _
        CreateObject("Access.Application")
    ' Open database in Microsoft Access window.
    appAccess.OpenCurrentDatabase strConPathToSamples
    ' Open Orders form.
    appAccess.DoCmd.OpenForm "Orders"
End Sub


OpenDatabase Method (MDB)

In Microsoft Access, use the CurrentDb function to return a reference to the current database and assign it to a Database variable, as shown in the following example.

Dim dbsCurrent As Database
Set dbsCurrent = CurrentDb

Use the OpenDatabase method to open a database other than the current database from Visual Basic.


OpenDatabase Method Example (MDB)

The following example returns a Database variable that points to the current database. Then it opens a different database called Another.mdb by using the OpenDatabase method. The procedure then enumerates all TableDef objects in both databases.

To try this example, create a new database called Another.mdb, close it, and place it in the same directory as the database from which you are running the code.

Sub OpenAnother()
    Dim wsp As Workspace
    Dim dbs As Database, dbsAnother As Database
    Dim tdf As TableDef

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to default workspace.
    Set wsp = DBEngine.Workspaces(0)
    ' Return reference to Another.mdb.
    Set dbsAnother = wsp.OpenDatabase("Another.mdb")
    ' Enumerate all TableDef objects in each database.
    Debug.Print dbs.Name & ":"
    For Each tdf in dbs.TableDefs
        Debug.Print tdf.Name
    Next tdf
    Debug.Print
    Debug.Print dbsAnother.Name & ":"
    For Each tdf in dbsAnother.TableDefs
        Debug.Print tdf.Name
    Next tdf
    Set dbs = Nothing
    Set dbsAnother = Nothing
End Sub


OpenRecordset Method Example (MDB)

The following example opens a dynaset-type Recordset object and prints the number of records in the Recordset object.

Sub UKOrders()
    Dim dbs As Database, rst As Recordset
    Dim strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    strSQL = "SELECT * FROM Orders WHERE [ShipCountry] = 'UK'"
    Set rst = dbs.OpenRecordset(strSQL)
    rst.MoveLast
    Debug.Print rst.RecordCount
    rst.Close
    Set dbs = Nothing
End Sub


Print Method

The Visual Basic Print method applies only to the Debug object in Microsoft Access, never to a Form object. The Debug object is required when you use the Print method in Microsoft Access.

Don't confuse the Visual Basic Print method with the Microsoft Access Print method, which applies only to a Report object.


Print Method Example

The following example uses the Print method to display text on a report named Report1. It uses the TextWidth and TextHeight methods to center the text vertically and horizontally.

Private Sub Detail_Format(Cancel As Integer, _
        FormatCount As Integer)
    Dim rpt as Report
    Dim strMessage As String
    Dim intHorSize As Integer, intVerSize As Integer

    Set rpt = Me
    strMessage = "DisplayMessage"
    With rpt
        'Set scale to pixels, and set FontName and
        'FontSize properties.
        .ScaleMode = 3
        .FontName = "Courier"
        .FontSize = 24
    End With
    ' Horizontal width.
    intHorSize = Rpt.TextWidth(strMessage)
    ' Vertical height.
    intVerSize = Rpt.TextHeight(strMessage)
    ' Calculate location of text to be displayed.
    Rpt.CurrentX = (Rpt.ScaleWidth/2) - (intHorSize/2)
    Rpt.CurrentY = (Rpt.ScaleHeight/2) - (intVerSize/2)
    ' Print text on Report object.
    Rpt.Print strMessage
End Sub


PSet Method Example

The following example uses the PSet method to draw a line through the horizontal axis of a report.

To try this example in Microsoft Access, create a new report. Set the OnPrint property of the Detail section to [Event Procedure]. Enter the following code in the report's module, then switch to Print Preview.

Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
    Dim sngMidPt As Single, intI As Integer
    ' Set scale to pixels.
    Me.ScaleMode = 3
    ' Calculate midpoint.
    sngMidPt = Me.ScaleHeight / 2
    ' Loop to draw line down horizontal axis pixel by pixel.
    For intI = 1 To Me.ScaleWidth
        Me.PSet(intI, sngMidPt)
    Next intI
End Sub


Quit Method (Application Object) Example

The following example shows the Click event procedure for a command button named AppExit. After clicking the AppExit button, a dialog box prompts the user to save changes, and the procedure quits Microsoft Access.

Private Sub AppExit_Click()
    Application.Quit acPrompt
End Sub


 Raise Method

Raise Method

The Raise method raises a specified Visual Basic error. The properties of the Err object are set as though the error had actually occurred in running code. However, this works only for Visual Basic errors, not for Microsoft Access errors or Microsoft Jet database engine errors.

If you use the Raise method with an error number reserved by Microsoft Access or by the Jet database engine, the value of the Err object's Description property is "Application-defined or object-defined error." To determine the descriptive string for a Microsoft Access or Jet database engine error that hasn't actually occurred in running code, use the AccessError method.

The AccessError method takes a Long value that represents an error number and returns the descriptive string associated with the error.


Recalc Method Example

The following example uses the Recalc method to update controls on an Orders form. This form includes the Freight text box, which displays the freight cost, and a calculated control that displays the total cost of an order including freight. If the statement containing the Recalc method is placed in the AfterUpdate event procedure for the Freight text box, the total cost of an order is recalculated every time a new freight amount is entered.

Sub Freight_AfterUpdate()
    Me.Recalc
End Sub


Refresh Method Example

The following example refreshes the Indexes collection of a Table object. In a database in a multiuser environment, you can use the Refresh method to show changes made by other users to the Index objects in a Table object's Indexes collection.

Sub RefreshIndex()
    Dim cat As New ADOX.Catalog, tbl As ADOX.Table
    Dim idx As ADOX.Index, clm As ADOX.Column

    ' Return reference to current database.
    Set cat.ActiveConnection = CurrentProject.Connection
    Set tbl = cat.Tables!Employees
    tbl.Indexes.Refresh
    For Each idx In tbl.Indexes
        Debug.Print idx.Name; ":"
        For Each clm In idx.Columns
            Debug.Print "   "; clm.Name
        Next clm
    Next idx
    Set cat = Nothing
End Sub


RefreshDatabaseWindow Method Example

The following example creates a new form, saves it, and refreshes the Database window:

Sub CreateFormAndRefresh()
    Dim frm As Form

    Set frm = CreateForm
    DoCmd.Save , "NewForm"
    RefreshDatabaseWindow
End Sub


RefreshTitleBar Method Example

The following example sets the AppTitle property of the current database and applies the RefreshTitleBar method to update the title bar.

Sub ChangeTitle()
    Dim obj As Object
    Const conPropNotFoundError = 3270

    On Error GoTo ErrorHandler
    ' Return Database object variable pointing to
    ' the current database.
    Set dbs = CurrentDb
    ' Change title bar.
    dbs.Properties!AppTitle = "Contacts Database"
    ' Update title bar on screen.
    Application.RefreshTitleBar
    Exit Sub

ErrorHandler:
    If Err.Number = conPropNotFoundError Then
        Set obj = dbs.CreateProperty("AppTitle", dbText, "Contacts Database")
        dbs.Properties.Append obj
    Else
        MsgBox "Error: " & Err.Number & vbCrLf & Err.Description
    End If
    Resume Next
End Sub


Refresh Method Example

The following example uses the Refresh method to update the records in the underlying record source for the form Customers whenever the form receives the focus:

Private Sub Form_Activate()
    Me.Refresh
End Sub


Remove Method (References Collection) Example

The first of the following two functions adds a reference to the calendar control to the References collection. The second function removes the reference to the calendar control.

Function AddReference() As Boolean
    Dim ref As Reference, strFile As String

    On Error GoTo Error_AddReference
    strFile = "C:\Windows\System\Mscal.ocx"
    ' Create reference to calendar control.
    Set ref = References.AddFromFile(strFile)
    AddReference = True

Exit_AddReference:
    Exit Function

Error_AddReference:
    MsgBox Err & ": " & Err.Description
    AddReference = False
    Resume Exit_AddReference
End Function

Function RemoveReference() As Boolean
    Dim ref As Reference

    On Error GoTo Error_RemoveReference
    Set ref = References!MSACAL
    ' Remove calendar control reference.
    References.Remove ref
    RemoveReference = True

Exit_RemoveReference:
    Exit Function

Error_RemoveReference:
    MsgBox Err & ": " & Err.Description
    RemoveReference = False
    Resume Exit_RemoveReference
End Function


Repaint Method Example

The following example uses the Repaint method to repaint a form when the form receives the focus:

Private Sub Form_Activate()
    Me.Repaint
End Sub


Requery Method (Control or Form Object) Example

The following example uses the Requery method to requery the data from the EmployeeList list box on an Employees form:

Sub RequeryList()
    Dim ctlList As Control

    ' Return Control object pointing to list box.
    Set ctlList = Forms!Employees!EmployeeList
    ' Requery source of data for list box.
    ctlList.Requery
End Sub


 Reset Method

Reset Method

In Microsoft Access 2000, you can use the Toolbar Properties sheet to reset a built-in menu bar or toolbar. Point to Toolbars on the View menu and click Customize, then click the Properties button in the Customize dialog box. Select the built-in menu bar or toolbar you want in the Selected Toolbar box, and then click the Restore Defaults button. You can't reset a custom menu bar or toolbar, or a specific shortcut menu.

The Reset button in the Customize dialog box resets the selected built-in menu bar or toolbar, or all built-in shortcut menus if you select Shortcut Menus in the Customize dialog box. The Reset command on the shortcut menu that's displayed when you right-click a particular built-in control on a menu bar or toolbar while the Customize dialog box is open resets that control to its original state. The Reset button and Reset command are equivalent to the Reset method.

The Restore Defaults button not only resets the menu bar or toolbar controls' image, text, and the commands they run, but also restores all of the original settings for the menu bar or toolbar, including its original position and visibility.


Open Method (Recordset)

In Microsoft Access, use the Connection property of the CurrentProject object to reference the open connection of the current database, as shown in the following exampl.

Dim rsCurrent As ADODB.Recordset
rsCurrent.Open "Select * From Employees", _
    CurrentProject.Connection


RunCommand Method Example

The following example uses the RunCommand method to open the Options dialog box (available by clicking Options on the Tools menu):

Function OpenOptionsDialog() As Boolean
    On Error GoTo Error_OpenOptionsDialog
    DoCmd.RunCommand acCmdOptions
    OpenOptionsDialog = True

Exit_OpenOptionsDialog:
    Exit Function

Error_OpenOptionsDialog:
    MsgBox Err & ": " & Err.Description
    OpenOptionsDialog = False
    Resume Exit_OpenOptionsDialog
End Function


Run Method Example

The following example runs a user-defined Sub procedure in a module in a Microsoft Access database from another application that acts as an Active X component.

To try this example, create a new database called WizCode.mdb and set its ProjectName property to WizCode. Open a new module in that database and enter the following code. Save the module, and close the database.

Sub Greeting(strName As String)
    MsgBox("Hello, " & strName)
End Sub

Once you have completed this step, run the following code from Microsoft Excel or Microsoft Visual Basic. Make sure that you have added a reference to the Microsoft Access type library by clicking References on the Tools menu and selecting Microsoft Access 9.0 Object Library in the References dialog box.

' Include in Declarations section of module.
Dim appAccess As Access.Application

Sub RunAccessSub()
    ' Create instance of Access Application object.
    Set appAccess = _
        CreateObject("Access.Application.9")
    ' Open WizCode database in Microsoft Access window.
    appAccess.OpenCurrentDatabase "C:\My Documents\WizCode.mdb", False
    ' Run Sub procedure.
    appAccess.Run "Greeting", "Joe"
    Set appAccess = Nothing
End Sub


Scale Method Example

The following example draws a circle with one scale, then uses the Scale method to change the scale and draw another circle with the new scale.

Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
    DrawCircle
End Sub

Sub DrawCircle()
    Dim sngHCtr As Single, sngVCtr As Single
    Dim sngNewH As Single, sngNewV As Single
    Dim sngRadius As Single

    Me.ScaleMode = 3                     ' Set scale to pixels.
    sngHCtr = Me.ScaleWidth / 2     ' Horizontal center.
    sngVCtr = Me.ScaleHeight / 2     ' Vertical center.
    sngRadius = Me.ScaleHeight / 3     ' Circle radius.
    ' Draw circle.
    Me.Circle (sngHCtr, sngVCtr), sngRadius
    ' New horizontal scale.
    sngNewH = Me.ScaleWidth * 0.9
    ' New vertical scale.
    sngNewV = Me.ScaleHeight * 0.9
    ' Change to new scale.
    Me.Scale(0, 0)-(sngNewH, sngNewV)
    ' Draw circle.
    Me.Circle (sngHCtr + 100, sngVCtr), sngRadius, RGB(0, 256, 0)
End Sub


Seek Method Example (MDB)

The following example creates a new Index object on an Employees table. The new index consists of two fields, LastName and FirstName. The procedure then uses the Seek method to find a specified record.

Sub NewIndex()
    Dim dbs As Database, tdf As TableDef, idx As Index
    Dim fldLastName As Field, fldFirstName As Field, _
        rst As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Employees table.
    Set tdf = dbs.TableDefs!Employees
    ' Return Index object that points to new index.
    Set idx = tdf.CreateIndex("FullName")
    ' Create and append index fields.
    Set fldLastName = idx.CreateField("LastName", dbText)
    Set fldFirstName = idx.CreateField("FirstName", dbText)
    idx.Fields.Append fldLastName
    idx.Fields.Append fldFirstName
    ' Append Index object.
    tdf.Indexes.Append idx
    tdf.Indexes.Refresh
    ' Open table-type Recordset object.
    Set rst = dbs.OpenRecordset("Employees")
    ' Set current index to new index.
    rst.Index = idx.Name
    ' Specify record to find.
    rst.Seek "=", "Fuller", "Andrew"
    If rst.NoMatch Then
        Debug.Print "Seek unsuccessful!"
    Else
        Debug.Print "Seek successful."
    End If
    rst.Close
    Set dbs = Nothing
End Sub


SetFocus Method Example

The following example uses the SetFocus method to move the focus to an EmployeeID text box on an Employees form:

Forms!Employees!EmployeeID.SetFocus


SetPermissions Method

The SetPermissions method uses the following parameters in Microsoft Access

Object | ObjectType | ObjectTypeID
Forms | adPermObjProviderSpecific | {c49c842e-9dcb-11d1-9f0a-00c04fc2c2e0}
Reports | adPermObjProviderSpecific | {c49c8430-9dcb-11d1-9f0a-00c04fc2c2e0}
DataPages** | N/A | N/A
Macros | adPermObjProviderSpecific | {c49c842f-9dcb-11d1-9f0a-00c04fc2c2e0}
Modules * | adPermObjProviderSpecific | {c49c8432-9dcb-11d1-9f0a-00c04fc2c2e0}
Table | adPermObjTable | N/A
View | adPermObjView | N/A
Procedure | adPermObjProcedure | N/A

**Security is not supported for Datapages

*Security with modules is only available for versions of Microsoft Access prior to Access 2000 and only when used with the latest Jet Provider.


SetPermissions Method Example

The following example shows how to set the permissions for a Microsoft Access form.

Note SetPermissions is not supported in Access projects .(adp) with the version of the SQL provider shipped with Microsoft Access 2000.


SizeToFit Method Example

The following example creates a new form and creates a new command button on the form. The procedure then sets the control's Caption property and sizes the control to fit the caption.

Sub SizeNewControl()
    Dim frm As Form, ctl As Control

    ' Create new form.
    Set frm = CreateForm
    ' Create new command button.
    Set ctl = CreateControl(frm.Name, _
        acCommandButton, , , , 500, 500)
    ' Restore form.
    DoCmd.Restore
    ' Set control's Caption property.
    ctl.Caption = "Extremely Long Control Caption"
    ' Size control to fit caption.
    ctl.SizeToFit
End Sub


SysCmd Method Example

The following example creates a snapshot-type Recordset object, reads each record, and displays a progress meter showing the current relative position in the snapshot.

Function ReadRecords(strTableName As String) As Integer
    Const conBadArgs = -1
    Dim dbs As Database, rst As Recordset
    Dim lngCount As Long, strMsg As String
    Dim varReturn As Variant, lngX As Long

    ReadRecords = 0
    If strTableName <> "" Then
        DoCmd.Hourglass True
        Set dbs = CurrentDb
        On Error Resume Next
        Set rst = dbs.OpenRecordSet(strTableName)
        ' Get record count.
        rst.MoveLast
        rst.MoveFirst
        If Err Then
            ReadRecords = conBadArgs
        End If
        lngCount = rst.RecordCount
        On Error GoTo 0
        If lngCount Then
            strMsg = "Reading " & UCase$(strTableName) & "..."
            varReturn = SysCmd(acSysCmdInitMeter, strMsg, lngCount)
            ' Display message in status bar.
            For lngX = 1 To lngCount
                varReturn = SysCmd(acSysCmdUpdateMeter, lngX)
            ' Update meter.
                .                                ' Do something with record.
                .
                .
                rst.MoveNext                ' Go to next record.
            Next lngX
            varReturn = SysCmd(acSysCmdClearStatus)
            GoSub CloseObjects
            ReadRecords = lngCount        ' Return number of records.
            Exit Function
        End If
    End If
    ' Not found or contains no records.
    strMsg = "Table '" & strTableName & "'not found or contains no records.'"
    MsgBox strMsg, vbInformation, "ReadRecords"
    GoSub CloseObjects
    Exit Function
CloseObjects:
    On Error Resume Next
    rst.Close
    dbs.Close
    On Error GoTo 0
    DoCmd.Hourglass False
    Return
End Function

The next example illustrates how you can use the SysCmd method with the acSysCmdGetObjectState action argument to determine the state of the active database object.

Dim intObjType As Integer, strObjName As String, intObjState As Integer

intObjType = Application.CurrentObjectType
strObjName = Application.CurrentObjectName
intObjState = SysCmd(acSysCmdGetObjectState, intObjType, strObjName)
If intObjState <> 0 Then
    .
    .
    .
End If


TextHeight, TextWidth Methods Example

The following example uses the TextHeight and TextWidth methods to determine the amount of vertical and horizontal space required to print a text string in the report's current font.

To try this example in Microsoft Access, create a new report. Set the OnPrint property of the Detail section to [Event Procedure]. Enter the following code in the report's module, then switch to Print Preview.

Private Sub Detail_Print(Cancel As Integer, _
    PrintCount As Integer)
    ' Set unit of measure to twips (default scale).
    Me.Scalemode = 1
    ' Print name and font size of report font.
    Debug.Print "Report Font: "; Me.FontName
    Debug.Print "Report Font Size: "; Me.FontSize
    ' Print height and width required for text string.
    Debug.Print "Text Height (Twips): "; _
        Me.TextHeight("Product Report")
    Debug.Print "Text Width (Twips): "; _
        Me.TextWidth("Product Report")
End Sub


 TransferText Action/Method

TransferText Action/Method

Language-specific information

When Microsoft Access is enabled for right-to-left functionality, it provides an additional argument for the TransferText method and action. The Code Page argument has been added to the to the text file description.

TransferText method and action has the following additional argument.

Added Arguments | Description
Code Page | The name of the code page to import from, export to, or link to. You can select one of the code page names from the drop-down list.

Syntax

DoCmd.TransferText ([TransferType], [SpecificationName], [TableName], [FileName], [HasFieldNames], [HTMLTableName], [CodePage])

Argument | Description
codepage | Enter the numeric value associated with the desired code page. You can view the supported values in the Code page list box of the TransferText macro action.


Undo Method Example

The following example shows how you can use the Undo method within a control's Change event procedure to force a field named LastName to reset to its original value, if it changed.

Private Sub LastName_Change()
    Me!LastName.Undo
End Sub

The next example uses the Undo method to reset all changes to a form before the form is updated.

Private Sub Form_BeforeUpdate(Cancel As Integer)
    Me.Undo
End Sub


 UpdateBatch

UpdateBatch Method

The UpdateBatch method of an ADO recordset can be used to send multiple recordset updates to the server in one call and can significantly reduce process times for some recordset updates. However, this is not the case with Jet databases. When the UpdateBatch method is used with a Jet database (.mdb), Jet still processes each instruction individually therefore, process times using the UpdateBatch method will generally have an opposite adverse affect of actually increasing process times by more than 100 percent.


UseDefaultFolderSuffix Method Example

This example sets the folder suffix for the data access page ("Inventory") to the default suffix.

DataAccessPages("Inventory").WebOptions.UseDefaultFolderSuffix


AccessObjectProperty Object, AccessObjectProperties Collection Example

This illustrates how to add custom properties to a form using the AccessObjectProperties collection and Add method.

Sub AddCustomFormProperty(strFormName As String, _
                                  strPropName As String, _
                                  varPropValue As Variant)
    ' Add custom properties to the AccessObjectProperties
    '  collection that is associated with an AccessObject object.

    With CurrentProject.AllForms(strFormName).Properties
        .Add strPropName, varPropValue
    End With
End Sub


Application Object Example

The following example prints some current property settings of the Application object, sets an option, and then quits the application, saving all objects:

Sub ApplicationInformation()
    ' Print name and type of current object.
    Debug.Print Application.CurrentObjectName
    Debug.Print Application.CurrentObjectType
    ' Set Hidden Objects option under Show on
    ' View tab of Options dialog box.
    Application.SetOption "Show Hidden Objects", True
    ' Quit Microsoft Access, saving all objects.
    Application.Quit acSaveYes
End Sub

The next example shows how to use Microsoft Access as a COM component. From Microsoft Excel, Visual Basic, or another application that acts as a COM component, create a reference to Microsoft Access by clicking References on the Tools menu in the Module window. Select the check box next to Microsoft Access 9.0 Object Library. Then enter the following code in a Visual Basic module within that application and call the GetAccessData procedure.

The example passes a database name and report name to a procedure that creates a new instance of the Application class, opens the database, and prints the specified report.

' Declare object variable in declarations section of a module
    Dim appAccess As Access.Application

Sub GetAccessData()
    Dim strDB As String
    Dim strReportName As String

    ' Initialize string to database path.
    strDB = "C:\Program Files\Microsoft Office\Office\Samples\Northwind.mdb"
    ' Initialize string to Report name.
    strReportName = "Catalog"
    PrintAccessReport strDB, strReportName
End Sub

Sub PrintAccessReport(strDB As String, _
     strReportName As String)
    ' Return reference to Microsoft Access
    ' Application object.
    Set appAccess = New Access.Application
    ' Open database in Microsoft Access.
    appAccess.OpenCurrentDatabase strDB
    ' Print report.
    appAccess.DoCmd.OpenReport strReportName
    MsgBox "Click OK when " & strReportName & _
        " is finished printing"
    appAccess.CloseCurrentDatabase
    Set appAccess = Nothing
End Sub


 CodeProject Object

CodeProject Object

The CodeProject object refers to the project for the code database of a Microsoft Access project (.adp) or Access database (.mdb).

Remarks

The CodeProject object has several collections that contain specific AccessObject objects within the code database. The following table lists the name of each collection defined by Access project and the types of objects it contains.

Collections | Object type
AllForms | All forms
AllReports | All reports
AllMacros | All macros
AllModules | All modules
AllDataAccessPages | All data access pages

Note The collections in the preceding table contain all of the respective objects in the database regardless if they are opened or closed.

For example, an AccessObject object representing a form is a member of the AllForms collection, which is a collection of AccessObject objects within the current database. Within the AllForms collection, individual members of the collection are indexed beginning with zero. You can refer to an individual AccessObject object in the AllForms collection either by referring to the form by name, or by referring to its index within the collection. If you want to refer to a specific object in the AllForms collection, it's better to refer to it by name because a item's collection index may change. If the object name includes a space, the name must be surrounded by brackets ([ ]).

Syntax | Example
AllForms!formname | AllForms!OrderForm
AllForms![form name] | AllForms![Order Form]
AllForms("formname") | AllForms("OrderForm")
AllForms(index) | AllForms(0)


 Collection Object

Collection Object

In Microsoft Access, a Collection object can consist of a set of objects of any type. You can create a Collection object that consists of several objects of the same type or objects of different types.

The collection defined by a Collection object can contain any combination of Microsoft Access objects, data access objects, and objects from any other application that exposes its objects to Microsoft Access. You can also add a Collection object to a collection defined by a Collection object.

The collection can also contain user-defined objects that you create in Microsoft Access. For example, you can create user-defined objects with custom methods and properties from a form module or report module. Then you can add these objects to a collection defined by a Collection object, and manipulate them as a set.


CommandBarControls Collection Object

Although most Microsoft Access collections are zero-based, all command bar collections are 1-based. Note, however, that you can use the For Each...Next syntax to iterate through the objects in a collection without having to worry about specific index numbers.


CommandBars Collection Object

Although most Microsoft Access collections are zero-based, all command bar collections are 1-based. Note, however, that you can use the For Each...Next syntax to iterate through the objects in a collection without having to worry about specific index numbers.


Connection Object, Connection Collection

When working with ActiveX Data Objects (ADO) in Microsoft Access, you will often want a Connection object variable that represents the connection to the current database provider. Use the Connection property of the CurrentProject object to return a Connection object for the database you are currently working in. This Connection object is automatically appended to the Connections collection.

For example, suppose you are currently working with the Northwind sample database in Microsoft Access. You can create a Connection object that links to the provider for that database by first declaring a Connection object variable, then pointing it to the Connection object returned by the Connection property of the CurrentProject object.

Dim cnn As ADODB.Connection
Set cnn = CurrentProject.Connection

You don't need to know the name of the provider in order to use the current database. If you want to know the name of the current provider, check the ConnectionString property of the Connection object, which contains the provider name and the to the database. To find its position in the Connections collection, enumerate through the collection.

From Visual Basic code, you can create multiple independent Connection object variables to represent connections to several databases. In this way, you can manipulate more than one database at a time from code. You can also create multiple Connection object variables and point them to the current database.

Note Each reference to the Connection Property returns a new connection object pointing to your active connection. If you want to perform several actions on that connection, such as with transactions, you must assign the Connection to a variable as described above.


 Container Object, Containers Collection (MDB)

Container Object, Containers Collection (MDB)

In addition to the Container objects defined by the Microsoft Jet database engine, the following five Container objects are defined by Microsoft Access.

Container name | Contains information about
Forms | Saved forms
Modules | Saved modules
Reports | Saved reports
DataAccessPages | Saved DataAccessPages
Scripts | Saved macros

The Container objects defined by Microsoft Access are Microsoft Access database objects, not Data Access Objects (DAO). These Container objects provide the Jet database engine with information about Microsoft Access objects. The Jet database engine uses this information to implement security on Microsoft Access database objects in the same way it does for DAO objects.

The Container objects defined by Microsoft Access and the Container objects defined by the Jet database engine are all included in the Containers collection in Microsoft Access.

The Documents collection of a Container object contains Document objects representing the individual objects of the type described by the Container object. For example, the Forms Container object has a Documents collection that might include a Document object corresponding to a form named Orders.

With the exception of Modules, you can use Container objects to establish and enforce permissions for Microsoft Access database objects. To set permissions for a Container object, set the UserName property of the Container object to the name of an existing User or Group object. Then set the Permissions property for the Container object.

Note Don't confuse the particular types of Container objects with the collection types of the same name. The Forms and Reports Container objects each contain Documents collections, which include individual Document objects representing each saved form or report. The Forms and Reports collections refer only to open forms or reports.

The modules container is still present in Microsoft Access 2000 for backward compatibility but since security for modules is now handled by the Protection feature in the Visual Basic environment, permissions and user related properties for individual modules is no longer supported.


Container Object, Containers Collection Example

The following example grants programmers full access to all modules in a database, and grants all other users read-only permissions on modules:

Sub SetModulePermissions()
    Dim dbs As Database, wsp As Workspace, ctr As Container
    Dim grp As Group

    ' Return reference to default workspace.
    Set wsp = DBEngine.Workspaces(0)
    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Modules container.
    Set ctr = dbs.Containers!Modules
    wsp.Groups.Refresh
    For Each grp In wsp.Groups
        ctr.UserName = grp.Name
        If ctr.UserName = "Programmers" Then
            ctr.Permissions = ctr.Permissions Or dbSecFullAccess
        Else
            ctr.Permissions = ctr.Permissions Or acSecModReadDef
        End If
    Next grp
    Set dbs = Nothing
End Sub


Control Object, Controls Collection Example

The following example enumerates all the controls in the Controls collection of a form. The procedure is called from a form module and the Me keyword is used to pass the Form object to the procedure. The procedure sets certain properties if the control is a text box.

' Call SetTextBoxProperties procedure.
SetTextBoxProperties Me

Sub SetTextBoxProperties(frm As Form)
    Dim ctl As Control

    ' Enumerate Controls collection.
    For Each ctl In frm.Controls
        ' Check to see if control is text box.
        If ctl.ControlType = acTextBox Then
            ' Set control properties.
            With ctl
                .SetFocus
                .Enabled = True
                .Height = 400
                .SpecialEffect = 0
            End With
        End If
    Next ctl
End Sub


Create Key Example

The following example creates a new Key object that defines a relationship between a Categories table and a Products table. The Categories table is the primary table in the relationship, and the Products table is the foreign table. The CategoryID field is the primary key in the Categories table, and a foreign key in the Products table.

To test this example in the Northwind sample database, click Relationships on the Tools menu, and delete the relationship between the Categories table and the Products table. Close the Relationships window, saving the current configuration at the prompt. Run the following procedure. Then view the Relationships window again to see the new relationship.

Note Currently creating foreignkeys are not supported in ADPs with the version of the SQL provider shipped with Microsoft Access 2000. A reference to "Microsoft ADO ext. 2.1 for DDL and Security" must be set to use this example.

Sub CreateForeignKey()
   Sub CreateKey()
    Dim Rel As New ADOX.Key
    Dim cat As New ADOX.Catalog
    cat.ActiveConnection = CurrentProject.Connection

    With Rel
        .Name = "CatProd"
        .Type = adKeyForeign
        .RelatedTable = "Categories"
        .Columns.Append "CategoryID"
        .Columns("CategoryID").RelatedColumn = "CategoryID"
    End With
    cat.Tables("Products").Keys.Append Rel
End Sub


CurrentProject Object Example

The following example prints some current property settings of the CurrentProject object and then sets an option to display hidden objects within the application:

Sub ApplicationInformation()
    ' Print name and type of current object.
    Debug.Print Application.CurrentProject.FullName
    Debug.Print Application.CurrentProject.ProjectType
    ' Set Hidden Objects option under Show on View Tab
    'of the Options dialog box.
    Application.SetOption "Show Hidden Objects", True
End Sub

The next example shows how to use the CurrentProject object using Automation from another Office application. First, from the other application, create a reference to Microsoft Access by clicking References on the Tools menu in the Module window. Select the check box next to Microsoft Access 9.0 Object Library. Then enter the following code in a Visual Basic module within that application and call the GetAccessData procedure.

The example passes a database name and report name to a procedure that creates a new instance of the Application class, opens the database, and verifies that the specified report exists using the CurrentProject object and AllReports collection.

Sub GetAccessData()
' Declare object variable in declarations section of a module
    Dim appAccess As Access.Application
    Dim strDB As String
    Dim strReportName As String

    strDB = "C:\Program Files\Microsoft "_
        & "Office\Office\Samples\Northwind.mdb"
    strReportName = InputBox("Enter name of report to be verified", _
        "Report Verification")
    VerifyAccessReport strDB, strReportName
End Sub

Sub VerifyAccessReport(strDB As String, _
     strReportName As String)
    ' Return reference to Microsoft Access
    ' Application object.
    Set appAccess = New Access.Application
    ' Open database in Microsoft Access.
    appAccess.OpenCurrentDatabase strDB
    ' Verify report exists.
    On Error Goto ErrorHandler
    appAccess.CurrentProject.AllReports(strReportName)
    MsgBox "Report " & strReportName & _
        " verified within Northwind database."
    appAccess.CloseCurrentDatabase
    Set appAccess = Nothing
Exit Sub
ErrorHandler:
    MsgBox "Report " & strReportName & _
        " does not exist within Northwind database."
    appAccess.CloseCurrentDatabase
    Set appAccess = Nothing
End Sub


 DataAccessPage Object

DataAccessPage Object

 DataAccessPages collection (DataAccessPage object)

A DataAccessPage object refers to a particular Microsoft Access data access page.

Remarks

A DataAccessPage object is a member of the DataAccessPages collection, which is a collection of all currently open data access pages. Within the DataAccessPages collection, individual data access pages are indexed beginning with zero. You can refer to an individual DataAccessPage object in the DataAccessPages collection either by referring to the data access page by name, or by referring to its index within the collection. If you want to refer to a specific data access page in the DataAccessPages collection, it's better to refer to the data access page by name because a data access page's collection index may change. If the data access name includes a space, the name must be surrounded by brackets ([ ]).

Syntax | Example
DataAccessPages!pagename | DataAccessPages!SalePage
DataAccessPages![page name] | DataAccessPages![Sale Page]
DataAccessPages("pagename") | DataAccessPages("Sale Page")
DataAccessPages(index) | DataAccessPages(0)


DataAccessPage Object, DataAccessPages Collection Example

The following example creates a new data access page and sets certain properties:

Sub NewDataAccessPage()
    Dim dap As DataAccessPage
    ' Create new data access page.
    Set dap = CreateDataAccessPage("c:\My Documents\Sales Entry", _
            True)
    ' Set data access page Tag property.
    dap.Tag = "Sales Entry Data Access Page"
    ' Restore data access page.
    DoCmd.Restore
End Sub

The next example enumerates the DataAccessPages collection and prints the name of each data access page in the DataAccessPages collection.

Sub AllOpenDataAccessPages()
    Dim dap As DataAccessPage

    Set dbs = Application.CurrentProject
    ' Search for open objects in DataAccessPages collection.
    For Each dap In dbs.AllDataAccessPages
        If dap.IsLoaded = TRUE then
            ' Print name of form.
            Debug.Print dap.Name
        End If
    Next dap
End Sub


 Database Object, Databases Collection

Database Object, Databases Collection (MDB)

When working with Data Access Objects from Microsoft Access, you will often need a Database object variable that represents the current database. Use the CurrentDb function to return a Database object for the database that is currently open. This Database object is automatically appended to the Databases collection.

For example, suppose you are currently working with the Northwind sample database in Microsoft Access. You can create a Database object that refers to that database by first declaring a Database object variable, then pointing it to the Database object returned by the CurrentDb function.

Dim dbs As Database
Set dbs = CurrentDb

You don't need to know the name of the database or its position in the Databases collection in order to use the current database. If you do want to know the name of the current database, check the Name property of the Database object, which contains the path and file name of the database. To find its position in the Databases collection, enumerate through the collection.

You can open only one database at a time in the Microsoft Access window. From Visual Basic code, however, you can create multiple independent Database object variables to represent multiple open databases. In this way, you can manipulate more than one database at a time from code. You can also create multiple Database object variables and point them to the current database.

Note In your Visual Basic code, use the CurrentDb function to return a Database object that refers to the current database, rather than the DBEngine(0)(0) syntax. The CurrentDb function creates another instance of the current database, while the DBEngine(0)(0) syntax refers to the open copy of the current database. Using the CurrentDb function enables you to create more than one variable of type Database that refers to the current database. Microsoft Access still supports the DBEngine(0)(0) syntax, but you should consider making this modification to your code in order to avoid possible conflicts in a multiuser environment.


Database Object, Databases Collection Example (MDB)

The following example shows three ways to return a Database object in Microsoft Access. The procedure returns a Database object representing the current database, which is open in the Microsoft Access window. Next, the procedure creates another database called Newdb.mdb and saves it to disk. Then it opens an existing database called Another.mdb. Finally, it enumerates all Database objects in the Databases collection.

Sub ReferenceDatabases()
    Dim wsp As Workspace
    Dim dbsCurrent As Database, dbsNew As Database
    Dim dbsAnother As Database, dbs As Database

    ' Return reference to current database.
    Set dbsCurrent = CurrentDb
    ' Return reference to default workspace.
    Set wsp = DBEngine.Workspaces(0)
    ' Create new Database object.
    Set dbsNew = wsp.CreateDatabase("Newdb.mdb", dbLangGeneral)
    ' Open database other than current database.
    Set dbsAnother = wsp.OpenDatabase("Another.mdb")
    ' Enumerate all open databases.
    For Each dbs in wsp.Databases
        Debug.Print dbs.Name
    Next dbs
    For Each dbs In wsp.Databases
        Set dbs = Nothing
    Next dbs
    Set wsp = Nothing
End Sub


 DBEngine Object

DBEngine Object (MDB)

Microsoft Access provides a means of manipulating Data Access Objects (DAO) from other applications through Automation, formerly called OLE Automation. If you are controlling Microsoft Access from another application, such as Visual Basic or Microsoft Excel, you can use the DBEngine property of the Microsoft Access Application object to return a reference to the DBEngine object. All DAO objects and collections are then accessible through the DBEngine object.


DBEngine Object Example (MDB)

The following example prints all the properties of the DBEngine object:

Sub EngineProperties()
    Dim prp As Property

    For Each prp In DBEngine.Properties
        Debug.Print prp.Name
    Next prp
End Sub


DefaultWebOptions Object Example

The following example checks to see whether Microsoft Office Web components are downloaded when a saved data access page is displayed and sets the download flag accordingly.

Set objAppWebOptions = Application.DefaultWebOptions
With objAppWebOptions
    If .DownloadComponents = True Then
        strCompDownload = "Loaded"
    Else
        strCompDownload = "Not Loaded"
    End If
End With


DoCmd Object Example

The following example opens a form in Form view and moves to a new record.

Sub ShowNewRecord()
    DoCmd.OpenForm "Employees", acNormal
    DoCmd.GoToRecord , , acNewRec
End Sub


 Document Object, Documents Collection

Document Object, Documents Collection

In addition to the Document objects defined by the Microsoft Jet database engine, the following Document objects are defined by Microsoft Access.

Document | Container | Contains information about
Form | Forms | Saved form
Macro | Scripts | Saved macro
Module | Modules | Saved module
Report | Reports | Saved report
DataAccessPage | DataAccessPages | Saved DataAccessPage
SummaryInfo | Databases | Database document summary
UserDefined | Databases | User-defined properties

The Document objects defined by Microsoft Access are Microsoft Access database objects, not Data Access Objects (DAO). These Document objects provide the Jet database engine with information about Microsoft Access objects. The Jet database engine uses this information to implement security on Microsoft Access database objects in the same way it does for DAO objects.

The Documents collection of a Container object contains Document objects representing the individual objects of the type described by the Container object. For example, the Forms Container object has a Documents collection that might include a Document object corresponding to a form named Orders.

Microsoft Access defines two Document objects in the Databases Container object - SummaryInfo and UserDefined.

The SummaryInfo Document object provides programmatic access to document summary properties - including Title, Subject, Author, Keywords, Comments, Manager, Company, Category, and Hyperlink Base. You can also set these properties on the Summary tab of the Database Properties dialog box, available by clicking Database Properties on the File menu.

To set these properties in Visual Basic, you must create them and append them to the Properties collection of the SummaryInfo Document object if they haven't already been set in the Database Properties dialog box. Once a property has been created, you must explicitly refer to the Properties collection to set it. In the following example, doc is an object variable pointing to the SummaryInfo Document object:

doc.Properties!Title = "Northwind Traders"

For more information on creating and setting Microsoft Access-defined properties, search the Help index for "Property object" and "CreateProperty method."

The UserDefined Document object provides programmatic access to user-defined properties defined on the Custom tab of the Database Properties dialog box. You can also create these properties in Visual Basic and append them to the Properties collection of the UserDefined Document object.

Note Don't confuse properties defined in the Properties collection of a Database document with properties defined in the Properties collection of a Database object. You can create user-defined properties in either Properties collection, but only those defined on the SummaryInfo or UserDefined Document objects can be set from the Database Properties dialog box.

You can use Document objects to establish and enforce permissions for individual Microsoft Access database objects. To set permissions for a Document object, set the UserName property of the Document object to the name of an existing User or Group object. Then set the Permissions property for the Document object.

Note Don't confuse the particular types of Container objects with the collection types of the same name. The Forms and Reports Container objects each contain Documents collections, which include individual Document objects representing each saved form or report. The Forms and Reports collections refer only to open forms or reports.


Document Object, Documents Collection Example (MDB)

The following example prints the name of each Form Document object in the current database and the date it was last modified:

Sub DocumentModified()
    Dim dbs As Database, ctr As Container, doc As Document

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return referenct to Forms container.
    Set ctr = dbs.Containers!Forms
    ' Enumerate through Documents collection of Forms container.
    For Each doc In ctr.Documents
        ' Print Document object name and value of
        ' LastUpdated property.
        Debug.Print doc.Name; "      "; doc.LastUpdated
    Next doc
    Set dbs = Nothing
End Sub


Dynaset-Type Recordset Object Example (MDB)

The following example creates a dynaset-type Recordset object, then checks the Updatable property of the Recordset object:

Sub RecentHires()
    Dim dbs As Database, rst As Recordset
    Dim strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Open recordset on Employees table.
    Set rst = dbs.OpenRecordset("Employees", dbOpenDynaset)
    Debug.Print rst.Updatable
    rst.Close
    Set dbs = Nothing
End Sub


 Error Object

Error Object

The Description property of an Error object contains the descriptive string associated with a particular error. You can read the Description property only if the error has occurred.

To determine the descriptive string associated with an error that hasn't occurred, use the Microsoft Access AccessError function. The AccessError function takes an error number as an argument and returns the descriptive string. For example, if you want to determine the descriptive string associated with error 3021, you might use the AccessError function as follows:

Debug.Print AccessError(3021)

Microsoft Access prints the descriptive string associated with error 3021, "No current record", to the Debug window.


Error Object, Errors Collection Example (MDB)

The following example generates an error by attempting to open a Recordset object on a nonexistent Students table. Information about the error is stored in both the DAO Error object and the Visual Basic Err object. The procedure prints the value of the Description, Source, and Number properties of the Error object. Then it prints the values of the corresponding properties of the Err object.

Note that the last Error object in the Errors collection should always refer to the same error as the Err object. That is, the value of Err.Number should be equivalent to Errors.Count - 1. If these two values aren't equivalent, information in the Errors collection may be outdated. Use the Refresh method to ensure that the Errors collection includes the most recent error information.

Sub CheckError()
    Dim dbs As Database, tdf As TableDef, rst As Recordset
    ' Declare Error object variable for enumeration
    ' of Errors collection.
    Dim errX As Error

    ' Ignore errors.
    On Error Resume Next
    ' Clear error in Err object.
    Err.Clear
    ' Refresh Errors collection.
    Errors.Refresh
    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Attempt to open Recordset object on nonexistent table.
    Set rst = dbs.OpenRecordset("Students")
    Debug.Print "DAO Error Object:"
    ' Print number of errors in Errors collection.
    Debug.Print ">>>Number of errors: "; Errors.Count
    ' Enumerate Errors collection and key properties.
    For Each errX In DBEngine.Errors
        Debug.Print errX.Description
        Debug.Print errX.Source
        Debug.Print errX.Number
    Next errX
    Debug.Print
    Debug.Print "VBA Err Object:"
    ' Display corresponding properties of Err object.
    Debug.Print Err.Description
    Debug.Print Err.Source
    Debug.Print Err.Number
    Set dbs = Nothing
End Sub


 Field Object, Fields Collection

Field Object, Fields Collection (MDB)

In addition to the properties defined by the Microsoft Jet database engine, a Field object in the Fields collection of a QueryDef object or a TableDef object may also contain the following Microsoft Access application-defined properties.

For details on reading and setting these properties, search the online index for the individual properties and the Property object.

Caption | DecimalPlaces
ColumnHidden | Description
ColumnOrder | Format
ColumnWidth | InputMask


Field Object, Fields Collection Example (MDB)

The following example creates a new Field object, sets some of its properties, and appends it to the Fields collection of a TableDef object. The procedure then enumerates all fields in the Fields collection of the TableDef object.

Sub NewField()
    Dim dbs As Database, tdf As TableDef
    Dim fld As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Employees table.
    Set tdf = dbs.TableDefs!Employees
    ' Create new Field object.
    Set fld = tdf.CreateField("SSN#")
    ' Set Type and Size properties of Field object.
    fld.Type = dbText
    fld.Size = 11
    ' Append field.
    tdf.Fields.Append fld
    ' Enumerate all fields in Fields collection of TableDef object.
    For Each fld in tdf.Fields
        Debug.Print fld.Name
    Next fld
    Set dbs = Nothing
End Sub


FormatConditions, FormatCondition Object Example

The following example adds a conditional formatting to a text box, "Textbox1" and sets some properties of the newly added FormatCondition object.

With Forms("form1").Controls("Textbox1").FormatConditions _
    .Add(acFieldValue, acGreaterThan, "=[Textbox2]")
    .BackColor = RGB(255,255,255)
    .FontBold = True
    .ForeColor = RGB(255,0,0)
End With

The following example sets format properties for an existing conditional format for the "Textbox1" control.

With forms("forms1").Controls("Textbox1").FormatConditions(1)
    .BackColor = RGB(255,255,255)
    .FontBold = True
    .ForeColor = RGB(255,0,0)
End With


Form Object, Forms Collection Example

The following example creates a new form and sets certain properties:

Sub NewForm()
    Dim frm As Form

    ' Create new form.
    Set frm = CreateForm
    ' Set form properties.
    With frm
        .RecordSource = "Products"
        .Caption = "Products Form"
        .ScrollBars = 0
        .NavigationButtons = True
    End With
    ' Restore form.
    DoCmd.Restore
End Sub

The next example enumerates the Forms collection and prints the name of each form in the Forms collection. It then enumerates the Controls collection of each form and prints the name of each control on the form.

Sub AllOpenForms()
    Dim frm As Form, ctl As Control

    ' Enumerate Forms collection.
    For Each frm In Forms
        ' Print name of form.
        Debug.Print frm.Name
        ' Enumerate Controls collection of each form.
        For Each ctl In frm.Controls
            ' Print name of each control.
            Debug.Print ">>>"; ctl.Name
        Next ctl
    Next frm
End Sub

The following example uses the Forms collection in an expression. If you have a form called Orders with a control named ShipCountry, you can use the IIf function to return a value based on the current value of the control. If the value of ShipCountry is Null, the expression returns a zero-length string; otherwise, it returns the field's contents. Enter the following expression in the ControlSource property of a text box on a form:

= IIf(IsNull(Forms!Orders! ShipCountry), "", _
     Forms!Orders!ShipCountry)


 Group Object, Groups Collection

Group Object, Groups Collection (MDB)

You can create Group objects to establish and enforce permissions for Microsoft Access database objects as well as for Data Access Objects. For example, you can set security for forms, reports, macros.

A Group object has a Name property that you can use in setting permissions for a Container or Document object. For example, you can assign the value of a Group object's Name property to the UserName property of a Container or Document object. You can then set the Permissions property of the Container or Document object to establish permissions for the group of users defined by the UserName property. Or you can read the Permissions property to determine existing permissions for that group.


Group Object, Groups Collection Example (MDB)

The following example creates a new User object and appends it to the Users collection of a Workspace object. It then creates a new Group object and appends it to the Groups collection of the Workspace object. The new Group object is also appended to the Groups collection of the User object. The new group is then given modify and delete permissions for modules.

Note that in order to assign users to groups, you must either append a User object to the Users collection of a Group object, or append a Group object to the Groups collection of a User object. It doesn't matter which option you choose; either will result in the specified user being included in the specified group.

Note When programming security, you should avoid including password and PID information in your code. The following example is intended for demonstration purposes only.

Sub NewMacrosGroup()
    Dim wsp As Workspace, dbs As Database
    Dim usr As User, grp As Group, grpMember As Group
    Dim ctr As Container

    ' Return referenct to default workspace.
    Set wsp = DBEngine.Workspaces(0)
    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create User object and append to Users collection
    ' of Workspace object.
    Set usr = wsp.CreateUser("Pat Smith", _
        "123abc789xyz", "Password")
    wsp.Users.Append usr
    ' Create Group object and append to Groups
    ' collection of Workspace object.
    Set grp = wsp.CreateGroup("Programmers", "321xyz987abc")
    wsp.Groups.Append grp
    ' Append Group object to Groups collection of User object.
    Set grpMember = usr.CreateGroup("Programmers")
    usr.Groups.Append grpMember
    ' Refresh Groups collection of User object.
    usr.Groups.Refresh
    ' Return Container object.
    Set ctr = dbs.Containers!Scripts
    ' Set UserName property of Container object.
    ctr.UserName = grpMember.Name
    'Add modify and delete permissions for new group
    ' on all modules.
    ctr.Permissions = ctr.Permissions Or acSecMacWriteDef
    Set dbs = Nothing
    Set wsp = Nothing
End Sub


 Hyperlink Object Example

Hyperlink Object Example

The following example activates the hyperlink associated with a command button in the active form.

Me!Command0.Hyperlink.Follow

The following example sets the HyperlinkAddress property of a command button and then opens the hyperlink when the form is loaded.

To try this example, create a form and add a command button named Command0. Paste the following code into the form's module and switch to Form view:

Private Sub Form_Load()
    Dim ctl As CommandButton
    Set ctl = Me!Command0
    With ctl
        .Visible = False
        .HyperlinkAddress = "http://www.microsoft.com/"
        .Hyperlink.Follow
    End With
End Sub


Index Object, Indexes Collection Example

Index Object, Indexes Collection Example (MDB)

The following example creates a new index on an Employees table:

Sub NewIndex()
    Dim dbs As Database, tdf As TableDef, idx As Index
    Dim fld1 As Field, fld2 As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Employees table.
    Set tdf = dbs.TableDefs!Employees
    Set idx = tdf.CreateIndex("EmployeeNameIndex")
    Set fld1 = idx.CreateField("LastName")
    Set fld2 = idx.CreateField("FirstName")
    idx.Fields.Append fld1
    idx.Fields.Append fld2
    idx.Required = True
    tdf.Indexes.Append idx
    Set dbs = Nothing
End Sub


Module Object, Modules Collection Example

The following example returns a reference to a Module object in the Modules collection and prints the number of lines of code in the module:

Function LinesInModule(strModuleName As String) As Long
    Dim mdl As Module

    On Error GoTo Error_LinesInModule
    ' Open module.
    DoCmd.OpenModule strModuleName
    ' Return reference to Module object.
    Set mdl = Modules(strModuleName)
    ' Return number of lines in module.
    LinesInModule = mdl.CountOfLines

Exit_LinesInModule:
    Exit Function

Error_LinesInModule:
    MsgBox Err & ": " & Err.Description
    ' If function fails, return -1.
    LinesInModule = -1
    Resume Exit_LinesInModule
End Function


Page Object, Pages Collection Example

The following event procedure enumerates all the controls on each page of a tab control when the user selects that page.

To try this example, create a new form with a tab control named TabCtl0 and set its OnChange property to [Event Procedure]. Paste the following code in the form's module. Switch to Form view and click on the different tabs to enumerate their controls.

Private Sub TabCtl0_Change()
    Dim tbc As Control, pge As Page
    Dim ctl As Control

    ' Return reference to tab control.
    Set tbc = Me!TabCtl0
    ' Return reference to currently selected page.
    Set pge = tbc.Pages(tbc.Value)
    ' Enumerate controls on currently selected page.
    Debug.Print pge.Name & " Controls:"
    For Each ctl In pge.Controls
        Debug.Print ctl.Name
    Next ctl
    Debug.Print
End Sub


Parameter Object, Parameters Collection Example (MDB)

The following example creates a new parameter query and supplies values for the parameters:

Sub NewParameterQuery()
    Dim dbs As Database, qdf As QueryDef, rst As Recordset
    Dim prm As Parameter, strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Construct SQL string.
    strSQL = "PARAMETERS [Beginning OrderDate] DateTime, " _
        & "[Ending OrderDate] DateTime; SELECT * FROM Orders " & _
        "WHERE (OrderDate Between[Beginning OrderDate] " _
        & "And [Ending OrderDate]);"
    ' Create new QueryDef object.
    Set qdf = dbs.CreateQueryDef("ParameterQuery", strSQL)
    ' Supply values for parameters.
    qdf.Parameters![Beginning OrderDate] = #4/1/95#
    qdf.Parameters![Ending OrderDate] = #4/30/95#
    ' Open recordset on QueryDef object.
    Set rst = qdf.OpenRecordset
    rst.MoveLast
    MsgBox "Query returned " & rst.RecordCount & " records."
    rst.Close
    Set dbs = Nothing
End Sub


 Property Object, Properties Collection

Property Object, Properties Collection (MDB)

Several types of properties exist in Microsoft Access. Each of these properties can be represented in Visual Basic code by a Property object variable, and each is a member of a Properties collection.

Properties that Apply to Data Access Objects

  • Built-in properties are defined by the Microsoft Jet database engine for all Data Access Objects (DAO).

  • User-defined properties can be added to some DAO objects. These DAO objects include Database, Index, QueryDef, and TableDef objects, and Field objects in the Fields collection of a QueryDef or TableDef object.

  • Some properties defined by Microsoft Access apply to DAO objects. These properties can generally be set either in the Microsoft Access window or from Visual Basic. The Jet database engine cannot recognize these properties until corresponding Property objects are specifically created and appended to the Properties collection. The DAO objects to which such properties may apply are QueryDef and TableDef objects, and Field objects in the Fields collection of a QueryDef or TableDef object. For lists of these Microsoft Access-defined properties, see the Microsoft Access Specifics topic for the TableDef, QueryDef, and Field objects.

Microsoft Access-defined properties that apply to DAO objects differ from properties defined by the Jet database engine in several ways.

To refer to a user-defined property or a property defined by Microsoft Access, you must explicitly refer to the Properties collection. The fastest way to refer to a Microsoft Access property is by the following syntax:

object.Properties!propertyname

In the preceding example, object is a DAO object and propertyname is the name of a Microsoft Access property.

You can also use the following, slightly slower syntax:

object.Properties("name")

In contrast, to refer to properties defined by the Jet database engine, you can simply use the object.name syntax.

If you are setting the value of a Microsoft Access-defined property for the first time, you first need to create it by using the CreateProperty method. For example, the Caption property of a Field object is a Microsoft Access-defined property. If you haven't previously set the Caption property in table Design view, but are setting the property for the first time from Visual Basic code, you must first create that property by using the CreateProperty method and append it to the Properties collection before you can set its value.

A Microsoft Access-defined property is automatically appended to the Properties collection the first time it is set in the Microsoft Access window, so if you have already set a property in the user interface, you don't need to create and append the property in code. For example, you can set the Caption property for a table in Datasheet view by clicking Font on the Format menu. This property is then included in the Properties collection of a TableDef object that points to the table.

Until you have set a Microsoft Access-defined property either in table Design view or from Visual Basic code, that property won't appear in the Properties collection. When you set these properties from Visual Basic, you should include error-handling code that checks to see if the property exists in the Properties collection, and creates and appends the property if it doesn't.

Properties that Apply to Microsoft Access Objects

Like DAO objects, every Microsoft Access object contains a Properties collection, which has built-in Property objects. For example, Property objects that apply to a form are members of the Properties collection of the Form object.

You can also create user-defined properties for Microsoft Access objects. For example, you might create a property called TextType that applies to a text box control.

Property objects in the Properties collections of Form, Report, and Control objects differ from DAO Property objects in that they don't have an Inherited property.

You can enumerate the Property objects in the Properties collections of Form, Report, and Control objects. However, the Microsoft Access Application object and the Screen object have Properties collections that can't be enumerated. Additionally, the properties of these objects are read-only.


Property Object, Properties Collection Example (MDB)

The following example creates a property that is defined by Microsoft Access, but applies to DAO objects. Because the Microsoft Jet database engine cannot recognize properties defined by Microsoft Access, you must create a new Property object and append it to the Properties collection if you are setting the property for the first time.

You can use the same function to set a user-defined property on a Microsoft Access object or on a DAO object.

Note that you must specify the correct constant for the type argument when you create the property. If you're not certain which data type you should use, search the Help index for the individual property.

Function SetAccessProperty(obj As Object, strName As String, _
        intType As Integer, varSetting As Variant) As Boolean
    Dim prp As Property
    Const conPropNotFound As Integer = 3270

    On Error GoTo ErrorSetAccessProperty
    ' Explicitly refer to Properties collection.
    obj.Properties(strName) = varSetting
    obj.Properties.Refresh
    SetAccessProperty = True

ExitSetAccessProperty:
    Exit Function

ErrorSetAccessProperty:
    If Err = conPropNotFound Then
        ' Create property, denote type, and set initial value.
        Set prp = obj.CreateProperty(strName, intType, varSetting)
        ' Append Property object to Properties collection.
        obj.Properties.Append prp
        obj.Properties.Refresh
        SetAccessProperty = True
        Resume ExitSetAccessProperty
    Else
        MsgBox Err & ": " & vbCrLf & Err.Description
        SetAccessProperty = False
        Resume ExitSetAccessProperty
    End If
End Function

You could call the preceding function with a procedure such as the following:

Sub CallPropertySet()
    Dim dbs As Database, tdf As TableDef
    Dim blnReturn As Boolean

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Employees table.
    Set tdf = dbs.TableDefs!Employees
    ' Call SetAccessProperty function.
    blnReturn = SetAccessProperty(tdf, _
        "DatasheetFontItalic", dbBoolean, True)
    ' Evaluate return value.
    If blnReturn = True Then
        Debug.Print "Property set successfully."
    Else
        Debug.Print "Property not set successfully."
    End If
End Sub


 QueryDef Object, QueryDefs Collection

QueryDef Object, QueryDefs Collection (MDB)

In addition to the properties defined by the Microsoft Jet database engine, a QueryDef object may also contain these Microsoft Access application-defined properties. For details on checking and setting these properties, search the Help index for the individual properties and the Property object.

DatasheetFontItalic | FrozenColumns
DatasheetFontHeight | LogMessages
DatasheetFontName | RecordLocks
DatasheetFontUnderline | RowHeight
DatasheetFontWeight | ShowGrid
Description | UseTransaction


QueryDef Object, QueryDefs Collection Example

QueryDef Object, QueryDefs Collection Example (MDB)

The following example checks to see if there is a query called RecentHires in the current database, and deletes it from the QueryDefs collection if it exists. Then the procedure creates a new QueryDef object and opens it in Datasheet view.

Sub NewQuery()
    Dim dbs As Database, qdf As QueryDef
    Dim strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Refresh QueryDefs collection.
    dbs.QueryDefs.Refresh
    ' If RecentHires query exists, delete it.
    For Each qdf in dbs.QueryDefs
        If qdf.Name = "RecentHires" Then
            dbs.QueryDefs.Delete qdf.Name
        End If
    Next qdf
    ' Create SQL string to select employees hired on or
    ' after 1-1-94.
    strSQL = "SELECT * FROM Employees WHERE HireDate >= #1-1-94#;"
    ' Create new QueryDef object.
    Set qdf = dbs.CreateQueryDef("RecentHires", strSQL)
    ' Open query in Datasheet view.
    DoCmd.OpenQuery qdf.Name
    Set dbs = Nothing
End Sub


Recordset Object, Recordsets Collection Example (MDB)

The following example opens a table-type Recordset object, a dynaset-type Recordset object, and a snapshot-type Recordset object. Then it displays the value of the Updatable property for the Recordset objects.

Sub NewRecordsets()
    Dim dbs As Database, rst As Recordset
    Dim rstEmployees As Recordset, rstOrders As Recordset
    Dim rstProducts As Recordset, strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create table-type Recordset object.
    Set rstEmployees = dbs.OpenRecordset("Employees", dbOpenTable)
    ' Create dynaset-type Recordset object.
    Set rstOrders = dbs.OpenRecordset("Employees", dbOpenDynaset)
    ' Create snapshot-type Recordset object.
    Set rstProducts = dbs.OpenRecordset("Products", dbOpenSnapshot)
    ' Print value of Updatable property for each Recordset object.
    For Each rst In dbs.Recordsets
        Debug.Print rst.Name; "   "; rst.Updatable
    Next rst
    ' Free all object variables.
    rstEmployees.Close
    rstOrders.Close
    rstProducts.Close
    Set dbs = Nothing
End Sub


Reference Object, References Collection Example

The following example creates a reference to a specified type library:

Function ReferenceFromFile(strFileName As String) As Boolean
    Dim ref As Reference

    On Error GoTo Error_ReferenceFromFile
    Set ref = References.AddFromFile(strFileName)
    ReferenceFromFile = True

Exit_ReferenceFromFile:
    Exit Function

Error_ReferenceFromFile:
    MsgBox Err & ": " & Err.Description
    ReferenceFromFile = False
    Resume Exit_ReferenceFromFile
End Function

You could call this function by using a procedure such as the following, which creates a reference to the calendar control:

Sub CreateCalendarReference()
    If ReferenceFromFile("C:\Windows\System\Mscal.ocx") = True Then
        MsgBox "Reference set successfully."
    Else
        MsgBox "Reference not set successfully."
    End If
End Sub


Relation Object, Relations Collection Example

Relation Object, Relations Collection Example (MDB)

The following example removes the existing relationship between an Employees table and an Orders table and then re-creates the relationship by creating a new Relation object.

Sub NewRelation()
    Dim dbs As Database
    Dim fld As Field, rel As Relation

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Find existing EmployeesOrders relation.
    For Each rel In dbs.Relations
        If rel.TABLE = "Employees" And _
            rel.ForeignTable = "Orders"
        Then
        ' Prompt user before deleting relation.
        If MsgBox(rel.Name & " already exists. " _
            & vbCrLf _
            & "This relation will be deleted and " _
            & "re-created.", vbOK) = vbOK
        Then
                dbs.Relations.Delete rel.Name
            ' If user chooses Cancel, exit procedure.
            Else
                Exit Sub
            End If
        End If
    Next rel
    ' Create new relationship and set its properties.
    Set rel = dbs.CreateRelation("EmployeesOrders", "Employees", "Orders")
    ' Set Relation object attributes to enforce
    ' referential integrity.
    rel.Attributes = dbRelationDeleteCascade + _
        dbRelationUpdateCascade
    ' Create field in Fields collection of Relation object.
    Set fld = rel.CreateField("EmployeeID")
    ' Provide name of foreign key field.
    fld.ForeignName = "EmployeeID"
    ' Append field to Relation object and
    ' Relation object to database.
    rel.Fields.Append fld
    dbs.Relations.Append rel
    MsgBox "Relation '" & rel.Name & "' created."
    Set dbs = Nothing
End Sub


Report Object, Reports Collection Example

The following example creates a new report and sets certain properties:

Sub NewReport()
    Dim rpt As Report

    ' Return variable of data type Report pointing to
    ' new Report object.
    Set rpt = CreateReport
    ' Set properties for new report.
    With rpt
        .RecordSource = "Products"
        .Caption = "Products Report"
    End With
    ' Restore new report.
    DoCmd.Restore
End Sub

The next example enumerates the Reports collection and prints the name of each report in the Reports collection. It then enumerates the Controls collection of each report and prints the name of each control on the report.

Sub AllOpenReports()
    Dim rpt As Report, ctl As Control

    ' Enumerate Reports collection.
    For Each rpt In Reports
        ' Print name of report.
        Debug.Print rpt.Name
        ' Enumerate Controls collection of each report.
        For Each ctl In rpt.Controls
            ' Print name of each control.
            Debug.Print ">>>"; ctl.Name
        Next ctl
    Next rpt
End Sub


Screen Object Example

The following example uses the Screen object to print the name of the form in the active window and of the active control on that form:

Sub ActiveObjects()
    Dim frm As Form, ctl As Control

    ' Return Form object pointing to active form.
    Set frm = Screen.ActiveForm
    MsgBox frm.Name & " is the active form."
    ' Return Control object pointing to active control.
    Set ctl = Screen.ActiveControl
    MsgBox ctl.Name & " is the active control " _
        & "on this form."
End Sub


Snapshot-Type Recordset Object Example (MDB)

The following example creates a snapshot-type Recordset object from an SQL statement, then prints the value of the Updatable property for the Recordset object. Since snapshot-type Recordset objects are never updatable, the value of this property will always be False (0).

Sub LongTermEmployees()
    Dim dbs As Database, qdf As QueryDef, rst As Recordset
    Dim strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Construct SQL string.
    strSQL = "SELECT * FROM Employees WHERE HireDate <= #1-1-94#;"
    ' Open snapshot-type Recordset object.
    Set rst = dbs.OpenRecordset(strSQL, dbOpenSnapshot)
    Debug.Print rst.Updatable
    rst.Close
    Set dbs = Nothing
End Sub


 TableDef Object, TableDefs Collection

TableDef Object, TableDefs Collection (MDB)

In addition to the properties defined by the Microsoft Jet database engine, a TableDef object may also contain the following Microsoft Access application-defined properties. For details on reading and setting these properties, search the Help index for the individual properties and the Property object.

DatasheetFontHeight | Description
DatasheetFontItalic | FrozenColumns
DatasheetFontName | RowHeight
DatasheetFontUnderline | ShowGrid
DatasheetFontWeight |


TableDef Object, TableDefs Collection Example

TableDef Object, TableDefs Collection Example (MDB)

The following example creates a new TableDef object, defines a field within it, and appends it to the TableDefs collection of the current database:

Sub NewTable()
    Dim dbs As Database, tdf As TableDef, fld As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create new TableDef object.
    Set tdf = dbs.CreateTableDef("Contacts")
    ' Create new Field object.
    Set fld = tdf.CreateField("ContactName", dbText, 30)
    ' Append new objects.
    tdf.Fields.Append fld
    dbs.TableDefs.Append tdf
    Set dbs = Nothing
End Sub


Table-Type Recordset Object Example (MDB)

The following example opens a table-type Recordset object, then finds a specified record:

Sub FindEmployee()
    Dim dbs As Database, tdf As TableDef
    Dim rst As Recordset, idx As Index
    Dim fldLastName As Field, fldFirstName As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Employees table.
    Set tdf = dbs.TableDefs!Employees
    ' Create new index.
    Set idx = tdf.CreateIndex("FullName")
    ' Create and append index fields.
    Set fldLastName = idx.CreateField("LastName", dbText)
    Set fldFirstName = idx.CreateField("FirstName", dbText)
    idx.Fields.Append fldLastName
    idx.Fields.Append fldFirstName
    ' Append Index object.
    tdf.Indexes.Append idx
    ' Open table-type Recordset object.
    Set rst = dbs.OpenRecordset("Employees")
    ' Set current index to new index.
    rst.Index = idx.Name
    ' Specify record to find.
    rst.Seek "=", "Fuller", "Andrew"
    If rst.NoMatch Then
        Debug.Print "Seek failed."
    Else
        Debug.Print "Seek successful."
    End If
    rst.close
    Set dbs = Nothing
End Sub


 User Object, Users Collection

User Object, Users Collection (MDB)

You can create User objects to establish and enforce permissions for Microsoft Access database objects as well as for Data Access Objects. For example, you can set security for forms, reports, macros.

A User object has a Name property that you can use in setting permissions for a Container or Document object. For example, you can assign the value of a User object's Name property to the UserName property of a Container or Document object. You can then set the Permissions property of the Container or Document object to establish permissions for the user defined by the UserName property. Or you can read the Permissions property to determine existing permissions for that user.


User Object, Users Collection Example

User Object, Users Collection Example (MDB)

The following example creates a new User object and appends it to the Users collection of a Workspace object. It then creates a new Group object and appends it to the Groups collection of the Workspace object. The new User object is also appended to the Users collection of the Group object. The new user is then given read-data permissions on tables.

Note that in order to assign users to groups, you must either append a User object to the Users collection of a Group object, or append a Group object to the Groups collection of a User object. It doesn't matter which option you choose; either will result in the specified user being included in the specified group.

Note When programming security, you should avoid including password and PID information in your code. The following example is intended for demonstration purposes only.

Sub NewTablesUser()
    Dim wsp As Workspace, dbs As Database
    Dim usr As User, grp As Group, usrMember As User
    Dim ctr As Container, doc As Document

    ' Return reference to default workspace.
    Set wsp = DBEngine.Workspaces(0)
    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create User object and append to Users collection
    ' of Workspace object.
    Set usr = wsp.CreateUser("Chris Jones", _
        "123abc456DEF", "Password")
    wsp.Users.Append usr
    ' Create Group object and append to Groups
    ' collection of Workspace object.
    Set grp = wsp.CreateGroup("Marketing", "321xyz654EFD")
    wsp.Groups.Append grp
    ' Append new User object to Users collection of
    ' new Group object.
    Set usrMember = grp.CreateUser("Chris Jones")
    grp.Users.Append usrMember
    ' Refresh Users collection of Group object.
    grp.Users.Refresh
    ' Return Container object.
    Set ctr = dbs.Containers!Tables
    ' Set UserName property of Container object.
    ctr.UserName = usrMember.Name
    ' Add retrieve permissions for new user on all tables.
    ctr.Permissions = ctr.Permissions Or dbSecRetrieveData
    Set dbs = Nothing
    Set wsp = Nothing
End Sub


WebOptions Object Example

The following example checks to see whether Microsoft Office Web components are downloaded when a saved data access page ("Inventory") is displayed and sets the download flag accordingly.

Set objAppWebOptions = DataAccessPages("Inventory").WebOptions
With objAppWebOptions
    If .DownloadComponents = True Then
        strCompDownload = "Loaded"
    Else
        strCompDownload = "Not Loaded"
    End If
End With


AbsolutePosition Property Example

AbsolutePosition Property Example (MDB)

The following example finds a particular record in a dynaset-type Recordset object and determines the ordinal position of that record:

Sub RecordOrdinalPosition()
    Dim dbs As Database, rst As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to dynaset-type Recordset object object.
    Set rst = dbs.OpenRecordset("SELECT * FROM Orders WHERE " _
        & "ShippedDate >= #1-1-96#;")
    ' Find first order shipped to London.
    rst.FindFirst "ShipCity = 'London'"
    ' Return ordinal position of that record.
    Debug.Print rst.AbsolutePosition
    rst.Close
    Set dbs = Nothing
End Sub


ActiveControl Property Example

The following example assigns the active control to the ctlCurrentControl variable and then takes different actions depending on the value of the control's Name property.

Dim ctlCurrentControl As Control

Set ctlCurrentControl = Screen.ActiveControl
If ctlCurrentControl.Name = "txtCustomerID" Then
    .            ' Do this.
    .
    .
ElseIf ctlCurrentControl.Name = "btnCustomerDetails" Then
    .            ' Do this.
    .
    .
End If


 ActiveDataAccessPage Property

ActiveDataAccessPage Property

You can use the ActiveDataAccessPage property to identify or refer to the data access page that has the focus.

Setting

The ActiveDataAccessPage property setting contains a reference to the DataAccessPage object that has the focus at run time.

This property is available by using a macro or Visual Basic and is read-only.

Remarks

Use the ActiveDataAccessPage property to refer to an active data access page together with one of its properties or methods. The following example displays the Name property setting of the active data access page:

Dim pgCurrentPage As DataAccessPage
Set pgCurrentPage = Screen.ActiveDataAccessPage
MsgBox "Current Data Page is " & pgCurrentPage.Name

If no data access page has the focus when you use the ActiveDataAccessPage property, an error occurs.


ActiveDatasheet Property Example

The following example uses the ActiveDatasheet property to identify the datasheet cell with the focus, or if more than one cell is selected, the location of the first row and column in the selection.

Sub GetSelection()
    Dim objDatasheet As Object
    Dim lngFirstRow As Long, lngFirstColumn As Long
    Const conNoActiveDatasheet = 2484
    On Error GoTo GetSelection_Err
    Set objDatasheet = Screen.ActiveDatasheet
    lngFirstRow = objDatasheet.SelTop
    lngFirstColumn = objDatasheet.SelLeft
    MsgBox "The first item in this selection is located at " _
        & "Row " & lngFirstRow & ", Column " & lngFirstColumn
GetSelection_Bye:
    Exit Sub
GetSelection_Err:
    If Err = conNoActiveDatasheet Then
        Resume GetSelection_Bye
    End If
End Sub


ActualSize Property

The ADO ActualSize property is equivalent to the FieldSize property in DAO. Use the ActualSize when you want to return the size of the data actually stored in a field from Visual Basic.


Alias Property Example

The following example sets the RecordSource property for a form to an SQL statement that uses the AS clause to specify Managers as the alias for the Employees table.

Dim strGetSQL AS String
strGetSQL = "SELECT Employees.FirstName, Employees.LastName, " _
    & "Employees.Title, Managers.FirstName, Managers.LastName FROM Employees " _
    & "INNER JOIN Employees AS Managers " _
    & "ON Employees.ReportsTo = Managers.EmployeeID; "
Forms!Form1.RecordSource = strGetSQL

The next example uses a self-join to show employees and their managers. It uses the AS clause to set the Alias property of the duplicate Employees table to Managers. You enter the following SQL statement in SQL view of the Query window.

SELECT Employees.FirstName, Employees.LastName, Employees.Title, Managers.FirstName, Managers.LastName
FROM Employees INNER JOIN Employees AS Managers
ON Employees.ReportsTo = Managers.EmployeeID;


AllowBypassKey Property Example

The following example shows a procedure named SetBypassProperty that passes the name of the property to be set, its data type, and its desired setting. The general purpose procedure ChangeProperty attempts to set the AllowBypassKey property and, if the property isn't found, uses the CreateProperty method to append it to the Properties collection. This is necessary because this property doesn't appear in the Properties collection until its been added.

Sub SetBypassProperty()
Const DB_Boolean As Long = 1
    ChangeProperty "AllowBypassKey", DB_Boolean, False
End Sub

Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer
    Dim dbs As Object, prp As Variant
    Const conPropNotFoundError = 3270

    Set dbs = CurrentDb
    On Error GoTo Change_Err
    dbs.Properties(strPropName) = varPropValue
    ChangeProperty = True

Change_Bye:
    Exit Function

Change_Err:
    If Err = conPropNotFoundError Then    ' Property not found.
        Set prp = dbs.CreateProperty(strPropName, _
            varPropType, varPropValue)
        dbs.Properties.Append prp
        Resume Next
    Else
        ' Unknown error.
        ChangeProperty = False
        Resume Change_Bye
    End If
End Function


AllowFilters Property Example

The following example shows a function that toggles a form's AllowFilters property on and off:

Function ToggleAllowFilters() As Integer
    Forms!Customers.AllowFilters = Not Forms!Customers.AllowFilters
End Function


 AllPermissions Property (MDB)

AllPermissions Property (MDB)

Microsoft Access defines four types of Container objects in addition to those defined by the Microsoft Jet database engine. These include the Forms, Reports, Scripts, or Modules Container objects. Individual Form, Report, Script and Module Document objects belong to the Documents collections of these Container objects. For these Container and Document objects, you can also set the AllPermissions property to the following constants.

Constant | User or group can
acSecFrmRptReadDef | Open the form or report in Design view but not make any changes.
acSecFrmRptWriteDef | Modify or delete the form or report in Design view.
acSecFrmRptExecute | Open the form in Form view or Datasheet view; print or open the report in Sample Preview or Print Preview.
acSecMacReadDef | Open the Macro window and view a macro without making changes.
acSecMacWriteDef | Modify or delete the macro in the Macro window.
acSecModReadDef | Open the module but not make any changes.
acSecModWriteDef | Modify or delete the contents of a module.

Note acSecModReadDef and acSecModWriteDef are included for backward compatibility only. Since Module access is now controlled by the Protection property in the Visual Basic envronment, these constants are no longer valid parameters in Microsoft Access2000.


AllPermissions Property Example

AllPermissions Property Example (MDB)

The following example checks the AllPermissions property for the Forms Container object and determines whether the user specified by the UserName property has full access to forms.

Note that the And operator performs a bitwise comparison to determine what permissions are currently set.

Sub CheckAllPermissions()
    Dim dbs As Database, ctr As Container

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Forms container.
    Set ctr = dbs.Containers!Forms
    ' Check if AllPermissions property includes full access.
    If (ctr.AllPermissions And dbSecFullAccess = _
            dbSecFullAccess) Then
        MsgBox "User " & ctr.UserName _
            & " has full access to all forms."
    End If
    Set dbs = Nothing
End Sub


AlwaysSaveInDefaultEncoding Property Example

This example sets the encoding to the default encoding. The encoding is used when you save the data access page as a Web page.

Application.DefaultWebOptions.AlwaysSaveInDefaultEncoding = True


AppIcon, AppTitle Properties Example

The following example shows how to change the AppIcon and AppTitle properties in a Microsoft Access database (.mdb). If the properties haven't already been set or created, you must create them and append them to the Properties collection by using the CreateProperty method.

Sub cmdAddProp_Click()
    Dim intX As Integer
    Const DB_Text As Long = 10
    intX = AddAppProperty("AppTitle", DB_Text, "My Custom Application")
    intX = AddAppProperty("AppIcon", DB_Text, "C:\Windows\Cars.bmp")
    Application.RefreshTitleBar
End Sub

Function AddAppProperty(strName As String, varType As Variant, varValue As Variant) As Integer
    Dim dbs As Object, prp As Variant
    Const conPropNotFoundError = 3270

    Set dbs = CurrentDb
    On Error GoTo AddProp_Err
    dbs.Properties(strName) = varValue
    AddAppProperty = True

AddProp_Bye:
    Exit Function

AddProp_Err:
    If Err = conPropNotFoundError Then
        Set prp = dbs.CreateProperty(strName, varType, varValue)
        dbs.Properties.Append prp
        Resume
    Else
        AddAppProperty = False
        Resume AddProp_Bye
    End If
End Function


Application and DBEngine Properties Example

The following example displays the DBEngine properties in a message box.

Private Sub Command1_Click()
    DisplayApplicationInfo Me
End Sub

Function DisplayApplicationInfo(obj As Object) As Integer
    Dim objApp As Object, intI As Integer, strProps As String
    On Error Resume Next
        ' Form Application property.
        Set objApp = obj.Application
        MsgBox "Application Visible property = " & objApp.Visible
        If objApp.UserControl = True Then
        For intI = 0 To objApp.DBEngine.Properties.Count - 1
            strProps = strProps & objApp.DBEngine.Properties(intI).Name & ", "
        Next intI
        End If
        MsgBox Left(strProps, Len(strProps) - 2) & ".", vbOK, "DBEngine Properties"
End Function


Assistant Property Example

The following example uses the Assistant property of the Application object to manipulate various properties and methods of the Assistant object. To try this example, paste the following code into the Declarations section of a standard module. Create a reference to the Microsoft Office 9.0 Object Library by using the References dialog box, available by clicking References on the Tools menu. Then click anywhere inside the procedure and press F5 to run it.

Sub AnimateAssistant()
    Dim blnState As Boolean
    With Assistant
        ' Save Assistant's visible state.
        blnState = .Visible
        ' Make Assistant visible.
        If blnState = False Then .Visible = True
        ' Animate Assistant.
        .Animation = msoAnimationAppear
        ' Display Assistant object's Item and FileName properties.
        MsgBox "Hello, my name is " & .Item & ". I live in " & .FileName, , "Assistant Information:"
        ' Return Assistant's visible state to original setting.
        .Visible = blnState
    End With
End Sub


Attributes Property (MDB)

If you set the Attributes property of a TableDef object to dbHiddenObject, Microsoft Access hides the TableDef object. The TableDef object exists in the TableDefs collection, but you cannot see it in the Database window, even if you have selected the Show Hidden Objects option in the Options dialog, which is available by clicking on the Tools menu.

To create a TableDef object that can be either hidden or visible, set the Attributes property to dbSystemObject. You can then make the TableDef object visible in the Database window by selecting Show System Objects in the Options dialog.


Attributes Property Example

Attributes Property Example (MDB)

The following example checks the Attributes property for each table in the current database, and prints the names of system and hidden tables provided by the Microsoft Jet database engine.

Note that the And operator performs a bitwise comparison to determine whether an attribute is currently set.

Sub CheckAttributes()
    Dim dbs As Database, tdf As TableDef

    ' Return reference to current database.
    Set dbs = CurrentDb
    For Each tdf In dbs.TableDefs
        ' Compare property setting and constant in question.
        If (tdf.Attributes And dbSystemObject) Or _
                (tdf.Attributes And dbHiddenObject) Then
            Debug.Print tdf.Name
        End If
    Next tdf
    Set dbs = Nothing
End Sub


BaseConnectionString Property Example

The following example displays the BaseConnectionString property setting of the current project:

Dim objCurrent As Object
Set objCurrent = Application.CurrentProject
MsgBox "The current base connection is " _
    & objCurrent.BaseConnectionString


 BeginGroup Property

BeginGroup Property

In Microsoft Access 2000, you can use the Toolbar Control Properties dialog box for command bar controls to determine whether or not a control on a command bar is at the beginning of a group of controls. A separator bar is displayed before the control on the command bar. Display the Customize dialog box by pointing to Toolbars on the View menu and clicking Customize. For menu bar and toolbar controls, display the menu bar or toolbar, and then right-click the control whose BeginGroup property you want to set. For shortcut menu controls, select the Shortcut Menus check box on the Toolbars tab of the Customize dialog box, then find the shortcut menu control you want on the menu bar that's displayed and right-click the control. Click the Properties command. Select or clear the Begin A Group check box.

The separator bar that appears at the beginning of a group of controls isn't a control itself, and doesn't affect item counts or indexes in the CommandBarControls collection.


BOF, EOF Properties Example

BOF, EOF Properties Example (MDB)

The following example uses the EOF property of a Recordset object to move the current record pointer past the last record in the Recordset object, then uses the BOF property to move the current record pointer to before the first record in the Recordset object.

Sub EndsOfFile()
    Dim dbs As Database, rst As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Open recordset on Orders table.
    Set rst = dbs.OpenRecordset("Orders")
    ' Do until end of file.
    Do Until rst.EOF
        ' Move to next record.
        rst.MoveNext
        .
        .
        .
    Loop
    ' Move to last record to set a current record.
    rst.MoveLast
    ' Do until beginning of file.
    Do Until rst.BOF
        rst.MovePrevious
        .
        .
        .
    Loop
    rst.Close
    Set dbs = Nothing
End Sub


Bookmark Property

The Bookmark property applies to the Recordset object. You can set it only using Visual Basic

Note Don't confuse this property with the Microsoft Access Bookmark property, which applies to a Form object and stores a bookmark for a particular record in the table or query underlying the form. These two properties don't interfere with each other; you can have separate bookmarks on a form and on a Recordset object at the same time.


Bookmark Property Example

To test the following example with the Northwind sample database, you need to add a command button named cmdFindContactName to the Suppliers form, and then add the following code to the button's Click event. When the button is clicked, the user is asked to enter a portion of the contact name to find. If the name is found, the form's Bookmark property is set to the Recordset object's ADO Bookmark property, which moves the form's current record to the found name.

Private Sub cmdFindContactName_Click()
    Dim rst As adodb.Recordset, strCriteria As String
    strCriteria = "[ContactName] Like '*" & InputBox("Enter the " _
        & "first few letters of the name to find") & "*'"

    Set rst = Me.RecordsetClone
    rst.FindFirst strCriteria
    If rst.NoMatch Then
        MsgBox "No entry found"
    Else
        Me.Bookmark = rst.Bookmark
    End If
End Sub


BorderColor, BackColor, ForeColor Properties Example

The following example uses the RGB function to set the BorderColor, BackColor, and ForeColor properties depending on the value of the txtPastDue text box. You can also use the QBColor function to set these properties. Putting the following code in the Form_Current( ) event sets the control display characteristics as soon as the user opens a form or moves to a new record.

Sub Form_Current()
    Dim curAmntDue As Currency, lngBlack As Long
    Dim lngRed As Long, lngYellow As Long, lngWhite As Long

    If Not IsNull(Me!txtPastDue.Value) Then
        curAmntDue = Me!txtPastDue.Value
    Else
        Exit Sub
    End If
    lngRed = RGB(255, 0, 0)
    lngBlack = RGB(0, 0, 0)
    lngYellow = RGB(255, 255, 0)
    lngWhite = RGB(255, 255, 255)
    If curAmntDue > 100 Then
        Me!txtPastDue.BorderColor = lngRed
        Me!txtPastDue.ForeColor = lngRed
        Me!txtPastDue.BackColor = lngYellow
    Else
        Me!txtPastDue.BorderColor = lngBlack
        Me!txtPastDue.ForeColor = lngBlack
        Me!txtPastDue.BackColor = lngWhite
    End If
End Sub


BuiltIn Property Example

The following example prints the default references in the References collection:

Sub ReferenceBuiltInOnly()
    Dim ref As Reference

    ' Enumerate through References collection.
    For Each ref In References
        ' Check BuiltIn property.
        If ref.BuiltIn = True Then
            Debug.Print ref.Name
        End If
    Next ref
End Sub


 Calendar Property

Calendar Property

Language-specific information

The Calendar property specifies or determines a value that indicates the calendar to be used by Visual Basic date-related functions.

Setting

The Calendar property uses the following settings.

Setting | Visual Basic | Description
Gregorian | 0 | (Default) Gregorian calendar will be used for Visual Basic date-related calculations and formatting.
Hijri | 1 | Hijri calendar will be used Visual Basic date-related calculations and formatting.

Note Microsoft Access 2000 date-related processing is done in Visual Basic. When Access 2000 opens a database, the Calendar property for Visual Basic is set according to the value of the Calendar database property. If a Visual Basic procedure changes the Visual Basic Calendar property, it is the responsibility of the procedure to restore the Calendar setting needed by Access 2000 before quitting.

The language of Hijri month names is always Arabic. Hijri month names are always returned in full month name format.

For more information about the Calendar database property, see Use database calendars.


Calendar Property Example

The following example creates a function to convert dates strings between the supported calendar systems. The example code that follows uses the function to convert a Gregorian date string to the equivalent Hijri string in long date format.

Function ConvertDateString ( _
        ByRef StringIn As String, _
        ByVal OldCalendar As Integer, _
        ByVal NewCalendar As Integer, _
        ByRef NewFormat As String) As String
    Dim SavedCal As Integer
    Dim d As Date
    Dim s As String

    ' Save Access calendar to restore when finished
    SavedCal = Calendar

    ' Convert date to new calendar and format
    Calendar = OldCalendar    ' Change to StringIn calendar
    d = Cdate (StringIn)        ' Convert from String to Date
    Calendar = NewCalendar    ' Change to calendar of new string
    s = CStr(d)            ' Convert to short format String
    ConvertDateString = Format (s, NewFormat)    'Reformat
    Calendar = SavedCal
End Function

Call ConvertDateString function from a procedure to perform conversion…

Sub MySub
    Dim GregorianDate As String
    Dim HijriDate As String
    Dim GregorianCalendar As Integer
    Dim HijriCalendar As Integer
    Dim HijriFormat As String
    GregorianDate = #12/31/93#
    GregorianCalendar = 0
    HijriCalendar = 1
    HijriFormat = "Long Date"
    ' Returns 7/18/1414
    HijriDate = ConvertDateString (GregorianDate, _
        GregorianCalendar, HijriCalendar, HijriFormat)
End Sub


 Caption Property (Command Bars)

Caption Property (Command Bars)

In Microsoft Access 2000, you can use the Toolbar Control Properties dialog box for command bar controls to set the caption for a control on a command bar. Display the Customize dialog box by pointing to Toolbars on the View menu and clicking Customize. For menu bar and toolbar controls, display the menu bar or toolbar, and then right-click the control whose Caption property you want to set. For shortcut menu controls, select the Shortcut Menus check box on the Toolbars tab of the Customize dialog box, then find the shortcut menu control you want on the menu bar that's displayed and right-click the control. Click the Properties command. Enter the caption you want in the Caption box.

When you display a control's Caption property setting in the Toolbar Control Properties dialog box or in Visual Basic, the ampersand (&) for the accelerator key is displayed (for example, &Paste). When you reference the control in Visual Basic, you can choose to include the ampersand (or not). For example, the following references are identical:

CommandBars("Menu Bar").Controls("Tools")
CommandBars("Menu Bar").Controls("&Tools")

When setting the Caption property, you must include the ampersand if you want the control to have an accelerator key.


CheckIfOfficeIsHTMLEditor Property Example

This example causes the default system HTML editor to be used (instead of Office applications) when editing a Web page.

Application.DefaultWebOptions.CheckIfOfficeIsHTMLEditor = False


CodeContextObject Property Example

In the following example the CodeContextObject property is used in a function to identify the name of the object in which an error occurred. The object name is then used in the message box title as well as in the body of the error message. The Error statement is used in the command button's click event to generate the error for this example.

Private Sub Command1_Click()
    On Error GoTo Command1_Err
    Error 11                    ' Generate divide-by-zero error.
    Exit Sub

    Command1_Err:
        If ErrorMessage("Command1_Click() Event", vbYesNo + _
                vbInformation, Err) = vbYes Then
            Exit Sub
        Else
            Resume
        End If
End Sub

Function ErrorMessage(strText As String, intType As Integer, _
        intErrVal As Integer) As Integer
    Dim objCurrent As Object
    Dim strMsgboxTitle As String
    Set objCurrent = CodeContextObject
    strMsgboxTitle = "Error in " & objCurrent.Name
    strText = strText & "Error #" & intErrVal _
        & " occured in " & objCurrent.Name
    ErrorMessage = MsgBox(strText, intType, strMsgboxTitle)
    Err = 0
End Function


CollatingOrder Property Example

CollatingOrder Property Example (MDB)

The following example checks the CollatingOrder property for the current database:

Sub SetSortOrder()
    Dim dbs As Database

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Check CollatingOrder property for database.
    Debug.Print dbs.CollatingOrder
    Set dbs = Nothing
End Sub


ColumnHeadings Property Example

The following example creates four column headings (Qtr 1, Qtr 2, Qtr 3, Qtr 4) in Datasheet view of a crosstab query listing the quarterly orders by product. You enter the following statement in SQL view of the Query window.

TRANSFORM Sum(CCur([Order Details].UnitPrice * [Order Details].Quantity * (1-[Discount])/100) * 100)
AS ProductAmount SELECT Products.ProductName FROM Products
INNER JOIN (Orders INNER JOIN [Order Details] ON Orders.OrderID = [Order Details].OrderID)
ON Products.ProductID = [Order Details].ProductID
WHERE (((Orders.ShippedDate) Between #1/1/94# And #12/31/94#))
GROUP BY Products.ProductName PIVOT "Qtr " & DatePart("q",[ShippedDate],1,0);


ColumnHidden Property Example

The following example hides the ProductID field in Datasheet view of the Products form.

Forms!Products!ProductID.ColumnHidden = -1

The next example also hides the ProductID field in Datasheet view of the Products table. To set the ColumnHidden property, the example uses the ShowColumn and SetFieldProperty procedures, which are in the database's standard module.

Dim dbs As Object
Set dbs = CurrentDb
ShowColumn dbs.TableDefs!Products.Fields!ProductID, False

Sub ShowColumn(fldObject As Variant, intShow As Integer)
    ' Set ColumnHidden property.
    SetFieldProperty fldObject, "ColumnHidden", dbLong, Not intShow
End Sub

Sub SetFieldProperty(fldField As Variant, strPropertyName As String, _
        intPropertyType As Integer, varPropertyValue As Variant)
    ' Set field property without producing nonrecoverable run-time error.
    Const conErrPropertyNotFound = 3270
    Dim prpProperty As Variant
    On Error Resume Next                ' Don't trap errors.
    fldField.Properties(strPropertyName) = varPropertyValue
    If Err <> 0 Then                    ' Error occurred when value set.
        If Err <> conErrPropertyNotFound Then
            On Error GoTo 0
            MsgBox "Couldn't set property '" & strPropertyName _
                & "' on field '" & fldField.name & "'", 48, "SetFieldProperty"
        Else
            On Error GoTo 0
            Set prpProperty = fldField.CreateProperty(strPropertyName, _
                intPropertyType, varPropertyValue)
            fldField.Properties.Append prpProperty
        End If
    End If
End Sub


ColumnOrder Property Example

The following example displays the ProductName and QuantityPerUnit fields in the first two columns in Datasheet view of the Products form.

Forms!Products!ProductName.ColumnOrder = 1
Forms!Products!QuantityPerUnit.ColumnOrder = 2

The next example displays the ProductName and QuantityPerUnit fields in the first two columns of the Products table in Datasheet view. To set the ColumnOrder property, the example uses the SetFieldProperty procedure. If this procedure is run while the table is open, changes will not be displayed until is closed and reopened.

Dim dbs As Database, tdfProducts As TableDef
Set dbs = CurrentDb
Set tdfProducts = dbs!Products
SetFieldProperty tdfProducts!ProductName, "ColumnOrder", dbLong, 2
SetFieldProperty tdfProducts!QuantityPerUnit, "ColumnOrder", dbLong, 3

Sub SetFieldProperty(fldField As Field, strPropertyName As String, _
        intPropertyType As Integer, varPropertyValue As Variant)
    ' Set field property without producing nonrecoverable run-time error.
    Const conErrPropertyNotFound = 3270
    Dim prpProperty As Property
    On Error Resume Next                ' Don't trap errors.
    fldField.Properties(strPropertyName) = varPropertyValue
    If Err <> 0 Then                    ' Error occurred when value set.
        If Err <> conErrPropertyNotFound Then
            On Error GoTo 0
            MsgBox "Couldn't set property '" & strPropertyName _
                & "' on field '" & fldField.name & "'", 48, "SetFieldProperty"
        Else
            On Error GoTo 0
            Set prpProperty = fldField.CreateProperty(strPropertyName, _
                intPropertyType, varPropertyValue)
            fldField.Properties.Append prpProperty
        End If
    End If
End Sub


Column, ColumnCount Properties Example

The following example uses the Column property and the ColumnCount property to print the values of a list box selection.

Sub Read_ListBox()
    Dim intNumColumns As Integer, inti As Integer
    Dim frmCust As Form

    Set frmCust = Forms!frmCustomers
    If frmCust!lstCustomerNames.ItemsSelected.Count > 0 Then
        ' Any selection?
        intNumColumns = frmCust!lstCustomerNames.ColumnCount
        Debug.Print "The list box contains "; intNumColumns; _
            IIf(intNumColumns = 1, " column", " columns"); _
             " of data."
        Debug.Print "The current selection contains:"
        For inti = 0 To intNumColumns - 1
            ' Print column data.
            Debug.Print frmCust!lstCustomerNames.Column(inti)
        Next inti
    Else
        Debug.Print "You haven't selected an entry in the " _
            & "list box."
    End If
End Sub


CommandBars Property Example

The following example uses the CommandBars property of the Application object to manipulate various properties and methods of the CommandBars collection object. To try this example, paste the following code into the Declarations section of a standard module. Create a reference to the Microsoft Office 9.0 Object Library by using the References dialog box, available by clicking References on the Tools menu. Then click anywhere inside the GetCommandBarInfo procedure and press F5 to run it.

Sub GetCommandBarInfo()
    Dim strCBBarName As String

    strCBBarName = InputBox("Enter the name of a command bar", "Get CommandBar Information", "Menu Bar")
    If Len(strCBBarName) > 0 Then
        CommandBarInfo strCBBarName
    End If
End Sub

Sub CommandBarInfo(strCBBarName As String)
    Dim cbr As CommandBar

    On Error Resume Next
    Set cbr = CommandBars(strCBBarName)
    If Err = 0 then
        With cbr
            MsgBox "The command bar named '" & .Name & "' contains " & _
                .Controls.Count & IIf(.Controls.Count = 1, " control and ", _
                " controls and ") & IIf(.BuiltIn, "is", "is not") & _
                " a built-in toolbar", vbOKOnly, "'" & _
                .Name & "' Information:"
        End With
    Else
        MsgBox "Invalid CommandBar Name"
    End If
End Sub


 Type Property (Command Bars)

Type Property (Command Bars)

In Microsoft Access 2000, you can use the Toolbar Properties dialog box to change the type of a custom menu bar, toolbar, or shortcut menu. Point to Toolbars on the View menu and click Customize, then click the Properties button in the Customize dialog box. Select the custom menu bar, toolbar, or shortcut menu you want in the Selected Toolbar box, and then select the new type for the menu bar, toolbar, or shortcut menu in the Type box. You can't change the type of a built-in menu bar, toolbar, or shortcut menu.

If you set the type of a command bar to "Popup", the command bar disappears from the Toolbars list in the Customize dialog box. The command bar moves to the menu bar that's displayed when you select the Shortcut Menus box in the Toolbars list (this menu bar displays all the shortcut menus in Microsoft Access).


ConnectionString Property Example

The following example displays the ConnectionString property setting of the currently active data access page:

Dim objCurrent As Object
Set objCurrent = Application.DataAccessPages(0)
MsgBox "The current base connection is " _
    & objCurrent.ConnectionString


Connect, SourceTableName Properties Example

Connect, SourceTableName Properties Example (MDB)

The following example creates a TableDef object in the specified database. The procedure then sets its Connect and SourceTableName properties and appends the object to the TableDefs collection.

Sub ConnectSource()
    Dim dbs As Database, tdf As TableDef

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create new TableDef object.
    Set tdf = dbs.CreateTableDef("PDXAuthor")
    ' Attach Paradox table Author in database C:\PDX\Publish.
    tdf.Connect = "Paradox 4.X;Database=C:\PDX\Publish"
    tdf.SourceTableName = "Author"
    dbs.TableDefs.Append tdf
    Set dbs = Nothing
End Sub


Container, Permissions Properties Example

Container, Permissions Properties Example (MDB)

The following example determines the name of the Container object to which a Document object belongs, and sets permissions accordingly for the specified group account. Remember that you must denote a particular user or group account before you set permissions for an object. The following example assumes that you have defined a Marketers group.

Microsoft Access defines additional Container objects beyond those defined by the Microsoft Jet database engine. These include the Form, Report, Script, and Module Container objects.

Note that the Or operator performs a bitwise comparison to determine whether an attribute is currently set.

Sub SetDocPermissions(docUnknown As Document)
    Dim strContainerName As String

    ' Set UserName property to valid existing group account.
    docUnknown.UserName = "Marketers"
    ' Get value of Container property.
    strContainerName = docUnknown.Container.Name
    Select Case strContainerName
        Case "Forms"
            ' Set permissions for Form Document object.
            docUnknown.Permissions = docUnknown.Permissions Or _
                acSecFrmRptWriteDef
        Case "Reports"
            ' Set permissions for Report Document object.
            docUnknown.Permissions = docUnknown.Permissions Or _
                acSecFrmRptExecute
        Case "Scripts"
            ' Set permissions for Script Document object.
            docUnknown.Permissions = docUnknown.Permissions Or _
                acSecMacWriteDef
        Case "Modules"
            ' Set permissions for Module Document object.
            docUnknown.Permissions = docUnknown.Permissions Or _
                acSecModReadDef
        Case Else
            Exit Sub
    End Select
End Sub


Context Property

This property is not supported in Microsoft Access.


ControlBox Property Example

The following example sets the ControlBox property on the WarningDialog form to False (0):

Forms!WarningDialog.ControlBox = False


ControlSource Property Example

The following example sets the ControlSource property for a text box named AddressPart to a field named City:

Forms!Customers!AddressPart.ControlSource = "City"

The next example sets the ControlSource property for a text box named Expected to the expression =Date() + 7.

Me!Expected.ControlSource = "=Date() + 7"


ControlType, AllowAdditions, AllowDeletions, AllowEdits Properties Example

The following example examines the ControlType property for all controls on a form. For each label and text box control, the procedure toggles the SpecialEffect property for those controls. When the label controls' SpecialEffect property is set to Shadowed and the text box controls' SpecialEffect property is set to Normal and the AllowAdditions, AllowDeletions, and AllowEdits properties are all set to True, the intCanEdit variable is toggled to allow editing of the underlying data.

Sub ToggleControl(frm As Form)
    Dim ctl As Control
    Dim intI As Integer, intCanEdit As Integer
    Const conTransparent = 0
    Const conWhite = 16777215
    For Each ctl in frm.Controls
        With ctl
            Select Case .ControlType
                Case acLabel
                    If .SpecialEffect = acEffectShadow Then
                        .SpecialEffect = acEffectNormal
                        .BorderStyle = conTransparent
                        intCanEdit = True
                    Else
                        .SpecialEffect = acEffectShadow
                        intCanEdit = False
                    End If
                Case acTextBox
                    If .SpecialEffect = acEffectNormal Then
                        .SpecialEffect = acEffectSunken
                        .BackColor = conWhite
                    Else
                        .SpecialEffect = acEffectNormal
                        .BackColor = frm.Detail.BackColor
                    End If
            End Select
        End With
    Next ctl
    If intCanEdit = IFalse Then
        With frm
            .AllowAdditions = False
            .AllowDeletions = False
            .AllowEdits = False
        End With
    Else
        With frm
            .AllowAdditions = True
            .AllowDeletions = True
            .AllowEdits = True
        End With
    End If
End Sub


CountOfLines, CountOfDeclarationLines Properties Example

The following example counts the number of lines and declaration lines in each standard module in the Modules collection. Note that the Modules collection contains only modules that are open in the module editor.

Function ModuleLineTotal(strModuleName As String)
    Dim mdl As Module

    ' Open module to include in Modules collection.
    DoCmd.OpenModule strModuleName
    ' Return reference to Module object.
    Set mdl = Modules(strModuleName)
    ' Print number of lines in module.
    Debug.Print "Number of lines: ", mdl.CountOfLines
    ' Print number of declaration lines.
    Debug.Print "Number of declaration lines: ", _
        mdl.CountOfDeclarationLines
End Function


Count Property Example

The following example uses the Count property to control a loop that prints information about all open forms and their controls.

Sub Print_Form_Controls()
    Dim frm As Form, intI As Integer
    Dim intJ As Integer
    Dim intControls As Integer, intForms As Integer
    intForms = Forms.Count        ' Number of open forms.
    If intForms > 0 Then
        For intI = 0 To intForms - 1
            Set frm = Forms(intI)
            Debug.Print frm.Name
            intControls = frm.Count
            If intControls > 0 Then
                For intJ = 0 To intControls - 1
                    Debug.Print vbTab; frm(intJ).Name
                Next intJ
            Else
                Debug.Print vbTab; "(no controls)"
            End If
        Next intI
    Else
        MsgBox "No open forms.", vbExclamation, "Form Controls"
    End If
End Sub

The next example determines the number of controls on a form and a report and assigns the number to a variable.

Dim intFormControls As Integer
Dim intReportControls As Integer
intFormControls = Forms!Employees.Count
intReportControls = Reports!FreightCharges.Count


CurrentObjectType, CurrentObjectName Properties Example

The following example uses the CurrentObjectType and CurrentObjectName properties with the SysCmd function to determine if the active object is the Products form and if this form is open and has been changed but not saved. If these conditions are true, the form is saved and then closed.

Sub CheckProducts()
    Dim intState As Integer
    Dim intCurrentType As Integer
    Dim strCurrentName As String

    intCurrentType = Application.CurrentObjectType
    strCurrentName = Application.CurrentObjectName
    If intCurrentType = acForm And strCurrentName = "Products" Then
        intState = SysCmd(acSysCmdGetObjectState, intCurrentType, _
             strCurrentName)
        ' Products form changed but not saved.
        If intState = acObjStateDirty + _
            acObjStateOpen Then
            ' Close Products form and save changes.
            DoCmd.Close intCurrentType, _
                strCurrentName, acSaveYes
        End If
    End If
End Sub


CurrentPage, PageCount Properties Example

The following example shows how to use the CurrentPage and PageCount properties to navigate to a page within a snapshot file.

Sub Navigate()
    Dim lngPageNum As Long
    Dim snpCtl As SnapshotViewer
    Set snpCtl = Me.SnapShot1.Object
    lngPageNum = InputBox("Enter snapshot page to display")
    If IsNumeric(lngPageNum) And Len(lngPageNum) > 0 Then
        If lngPageNum <= snpCtl.PageCount Then
            snpCtl.CurrentPage = lngPageNum
        Else
            Msgbox "Please enter a value between 1 and " _
                & snpCtl.PageCount
            Exit Sub
        End If
    End If
End Sub


CurrentRecord Property Example

The following example shows how to use the CurrentRecord property to determine the record number of the current record being displayed. The general-purpose CurrentFormRecord procedure assigns the value of the current record to the variable lngrecordnum.

Sub CurrentFormRecord(frm As Form)
    Dim lngrecordnum As Long

    lngrecordnum = frm.CurrentRecord
End Sub


CurrentSectionLeft, CurrentSectionTop Properties Example

The following example displays the CurrentSectionLeft and CurrentSectionTop property settings for a control on a continuous form. Whenever the user moves to a new record, the property settings for the current section are displayed in the lblStatus label in the form's header.

Private Sub Form_Current()
    Dim intCurTop As Integer, intCurLeft As Integer

    intCurTop = Me.CurrentSectionTop
    intCurLeft = Me.CurrentSectionLeft
    Me!lblStatus.Caption = intCurLeft & " , " & intCurTop
End Sub


CurrentView Property Example

The following example uses the GetCurrentView subroutine to determine whether a form is in Form or Datasheet view. If it's in Form view, a message to the user is displayed in a text box on the form; if it's in Datasheet view, the same message is displayed in a message box.

GetCurrentView Me, "Please contact system administrator."

Sub GetCurrentView(frm As Form, strDisplayMsg As String)
    Const conFormView = 1
    Const conDataSheet = 2
    Dim intView As Integer
    intView = frm.CurrentView
    Select Case intView
        Case conFormView
            frm!MessageTextBox.SetFocus
            ' Display message in text box.
            frm!MessageTextBox = strDisplayMsg
        Case conDataSheet
            ' Display message in message box.
            MsgBox strDisplayMsg
    End Select
End Sub


AllowZeroLength Property Example

AllowZeroLength Property Example (MDB)

The following example creates a new Field object and sets its AllowZeroLength property to True (-1):

Sub ZeroLengthField()
    Dim dbs As Database, tdf As TableDef, fld As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Employees table.
    Set tdf = dbs.TableDefs!Employees
    ' Create new field in Employees table.
    Set fld = tdf.CreateField("SpouseName", dbText, 15)
    ' Allow zero-length strings in field.
    fld.AllowZeroLength = True
    ' Append Field object.
    tdf.fields.Append fld
    Set dbs = Nothing
End Sub


Bookmark, Bookmarkable Properties Example

Bookmark, Bookmarkable Properties Example (MDB)

The following example moves through the records of the Employees table from the beginning of the file to the end and stores the value of the Bookmark property for each record in an array.

' Include this statement in Declarations section of module.
Option Compare Binary

Sub RecordPositions()
    Dim dbs As Database, rst As Recordset, fld As Field
    Dim intI As Integer
    ' Declare array to hold bookmarks.
    Dim varRecord() As Variant

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Open table-type Recordset object.
    Set rst = dbs.OpenRecordset("Employees")
    ' Return reference to LastName field.
    Set fld = rst.Fields!LastName
    ' Redimension array with value of RecordCount
    ' property as upper bound.
    ReDim varRecord(0 To rst.RecordCount - 1)
    intI = 0
    ' Check Bookmarkable property of Recordset object.
    If rst.Bookmarkable Then
        Do Until rst.EOF
            ' Populate array with bookmarks.
            varRecord(intI) = rst.Bookmark
            ' Increment counter.
            intI = intI + 1
            rst.MoveNext
        Loop
    End If
    rst.Close
    Set dbs = Nothing
End Sub


Count Property Example

Count Property Example (MDB)

The following example prints the names and total number of fields in an Orders table:

Sub CountFields()
    Dim dbs As Database, tdf As TableDef
    Dim fld As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Orders table.
    Set tdf = dbs.TableDefs!Orders
    ' Count fields in Fields collection of TableDef object.
    Debug.Print tdf.Fields.Count
    ' List names of all fields.
    For Each fld In tdf.Fields
        Debug.Print fld.Name
    Next fld
    Set dbs = Nothing
End Sub


DefaultValue Property Example

DefaultValue Property Example (MDB)

The following example creates a new Field object and sets its DefaultValue property. The procedure then appends the new object to the Fields collection of the Employees table in the TableDefs collection of the database.

Sub NewField()
    Dim dbs As Database, tdf As TableDef
    Dim fld As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Employees table.
    Set tdf = dbs.TableDefs!Employees
    ' Create Field object.
    Set fld = tdf.CreateField("DaysOfVacation", dbText, 20)
    ' Set field properties.
    fld.DefaultValue = "10"
    ' Append fld to Fields collection.
    tdf.Fields.Append fld
    Set dbs = Nothing
End Sub


 FieldSize Property (MDB)

FieldSize Property (MDB)

The DAO FieldSize property is different from the Microsoft Access FieldSize property, which is set in table Design view. The DAO FieldSize property returns the number of bytes in a Field object of type Memo or OLE Object.

You set the Microsoft Access FieldSize property in order to limit the size of a field in a table. The FieldSize property is only available in table Design view. From Visual Basic, use the Size property to set the size of a field in a table.


Filter Property Example

Filter Property Example (MDB)

The following example prompts the user to enter the name of a country on which to filter, and then sets the Filter property of a dynaset-type Recordset object. For example, if the user enters "Italy", the filtered recordset will contain only those records in which the ShipCountry field contains the string "Italy".

Note that you first create a dynaset-type Recordset object and set its Filter property, then open a second dynaset-type Recordset object based on the first. Setting the Filter property of the first Recordset object doesn't actually affect the records that it contains, so you need to create a second Recordset object in order to see the effects of the filter.

Sub SetRecordsetFilter()
    Dim dbs As Database, strInput As String
    Dim rstOrders As Recordset, rstFiltered As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Prompt for value on which to filter.
    strInput = InputBox("Enter name of country on "
        & "which to filter.")
    ' Create dynaset-type Recordset object.
    Set rstOrders = dbs.OpenRecordset("Orders", dbOpenDynaset)
    ' Set filter condition.
    rstOrders.Filter = "ShipCountry = '" & strInput & "'"
    ' Create filtered dynaset-type Recordset object.
    Set rstFiltered = rstOrders.OpenRecordset
    rstOrders.Close
    rstFiltered.Close
    Set dbs = Nothing
End Sub

Tip In most situations, it's more efficient to create the second Recordset object with the desired conditions in one step. When you know what data you want to select, it's generally more efficient to create a recordset with an SQL statement. The next example shows how you can create just one recordset and obtain the same results as in the preceding example:

Sub CreateRecordsetWithSQL()
    Dim dbs As Database, rst As Recordset
    Dim strInput As String

    Set dbs = CurrentDb
    strInput = InputBox("Enter name of country on which to filter.")
    Set rst = dbs.OpenRecordset("SELECT * FROM " _
        & "Orders WHERE ShipCountry = '" & strInput _
        & "';")
    rst.MoveLast
    MsgBox "Recordset contains " & rst.RecordCount & " records."
    rst.Close
    Set dbs = Nothing
End Sub


IgnoreNulls, Unique Properties Example

IgnoreNulls, Unique Properties Example (MDB)

The following example adds a new index to a TableDef object and sets the IgnoreNulls and Unique properties to True (-1):

Sub NewIndex()
    Dim dbs As Database, tdf As TableDef
    Dim idx As Index, fldID As Field, fldName As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Products table.
    Set tdf = dbs.TableDefs!Products
    ' Return Index object that points to new index.
    Set idx = tdf.CreateIndex("IDName")
    ' Create and append index fields.
    Set fldID = idx.CreateField("ProductID")
    Set fldName = idx.CreateField("ProductName")
    idx.Fields.Append fldID
    idx.Fields.Append fldName
    ' Set index properties.
    idx.IgnoreNulls = True
    idx.Unique = True
    ' Append new Index object to Indexes collection.
    tdf.Indexes.Append idx
    Set dbs = Nothing
End Sub


Name Property Example

Name Property Example (MDB)

The following example creates two new TableDef objects and names them. The name of the first TableDef object is included as an argument to the CreateTableDef method. The name of the second TableDef object is set by using the Name property, after the TableDef object has been created.

Note that you must define fields in the table before the TableDef object can be appended to the TableDefs collection.

Sub NameNewTables()
    Dim dbs As Database
    Dim tdfDefinitions As TableDef, tdfSynonyms As TableDef

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create new TableDef object.
    Set tdfDefinitions = dbs.CreateTableDef("Definitions")
    ' Create second TableDef object.
    Set tdfSynonyms = dbs.CreateTableDef("")
    ' Set Name property for second TableDef object.
    tdfSynonyms.Name = "Synonyms"
    .                            ' Create fields.
    .
    .
    dbs.TableDefs.Append tdfDefinitions
    dbs.TableDefs.Append tdfSynonyms
    Set dbs = Nothing
End Sub


ODBCTimeout Property Example

ODBCTimeout Property Example (MDB)

The following example sets the ODBCTimeout property to 120 seconds, creates a query, and runs it on a database on an ODBC server:

Sub SetTimeout()
    Dim dbs As Database
    Dim qdf As QueryDef, rst As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create new QueryDef object.
    Set qdf = dbs.CreateQueryDef("All Cust", _
        "SELECT * FROM Customers;")
    qdf.Connect = "ODBC;DSN=HumanResources;SERVER=HRSRVR: " _
        & "UID=Smith; PWD=Sesame"
    ' Log on to server and run query.
    qdf.ODBCTimeout = 120
    Set rst = qdf.OpenRecordset()
    ' Perform operations with recordset.
    .
    .
    .
    rst.Close
    Set dbs = Nothing
End Sub


Primary Property Example

Primary Property Example (MDB)

The following example checks the Primary property of each index on a Products table, and prints the fields making up the primary key:

Sub SetIndex()
    Dim dbs As Database, tdf As TableDef, fld As Field
    Dim idx As Index

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Products table.
    Set tdf = dbs.TableDefs!Products
    ' Enumerate through Indexes collection of TableDef object.
    For Each idx In tdf.Indexes
        ' Check Primary property of Recordset object.
        If idx.Primary Then
            For Each fld In idx.Fields
                Debug.Print fld.Name
            Next fld
        End If
    Next idx
    Set dbs = Nothing
End Sub


Required Property Example

Required Property Example (MDB)

The following example creates a new Index object on an Employees table and sets the Required property for the index. The new index consists of two fields, LastName and FirstName.

Sub NewIndex()
    Dim dbs As Database, tdf As TableDef, idx As Index
    Dim fldLastName As Field, fldFirstName As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Employees table.
    Set tdf = dbs.TableDefs!Employees
    ' Create new index.
    Set idx = tdf.CreateIndex("FullName")
    ' Create and append index fields.
    Set fldLastName = idx.CreateField("LastName", dbText)
    Set fldFirstName = idx.CreateField("FirstName", dbText)
    idx.Fields.Append fldLastName
    idx.Fields.Append fldFirstName
    ' Ensure value is entered for each field in index.
    idx.Required = True
    ' Append Index object.
    tdf.Indexes.Append idx
    Set dbs = Nothing
End Sub


ValidationRule, ValidationText Properties Example

ValidationRule, ValidationText Properties Example (MDB)

The following example sets the ValidationRule and ValidationText properties for two fields in an Order Details table. Once these properties have been set, you can view them in table Design view as well.

Sub SetValidation()
    Dim dbs As Database, tdf As TableDef
    Dim fldQuantity As Field, fldDiscount As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return referent to Order Details table.
    Set tdf = dbs.TableDefs![Order Details]
    Set fldQuantity = tdf.Fields!Quantity
    Set fldDiscount = tdf.Fields!Discount
    ' Set ValidationRule and ValidationText.
    fldQuantity.ValidationRule = ">= 4"
    fldQuantity.ValidationText = "Quantity must be " _
        & "four or more items."
    fldDiscount.ValidationRule = "Between .05 and .30"
    fldDiscount.ValidationText = "Discount must be " _
        & "between 5% and 30%."
    Set dbs = Nothing
End Sub


Database Properties Example

In the following example, you can set or create a custom user-defined property that will appear on the Custom tab of the DatabaseName Properties dialog box. For example, you could call the SetCustomProperty function to add a new property called LastUserName to the UserDefined Document object in the database. The arguments passed to the SetCustomProperty function are those required to execute the CreateProperty method.

Dim strName As String, strValue As String

' Set property name variable.
strName = "LastUserName"
' Set property value variable.
strValue = InputBox("Please enter your full name")
If SetCustomProperty(strName, dbText, strValue) <> True Then
    ' Error occurred trying to set property.
    MsgBox "Error occurred trying to set property."
End If

Function SetCustomProperty(strPropName As String, intPropType _
    As Integer, strPropValue As String) As Integer

    Dim dbs As Database, cnt As Container
    Dim doc As Document, prp As Property

    Const conPropertyNotFound = 3270    ' Property not found error.
    Set dbs = CurrentDb                    ' Define Database object.
    Set cnt = dbs.Containers!Databases    ' Define Container object.
    Set doc = cnt.Documents!UserDefined    ' Define Document object.
    On Error GoTo SetCustom_Err
    doc.Properties.Refresh
    ' Set custom property name. If error occurs here it means
    ' property doesn't exist and needs to be created and appended
    ' to Properties collection of Document object.
    Set prp = doc.Properties(strPropName)
    prp = strPropValue                    ' Set custom property value.
    SetCustomProperty = True

SetCustom_Bye:
    Exit Function

SetCustom_Err:
    If Err = conPropertyNotFound Then
        Set prp = doc.CreateProperty(strPropName, intPropType, strPropValue)
        doc.Properties.Append prp        ' Append to collection.
        Resume Next
    Else                                        ' Unknown error.
        SetCustomProperty = False
        Resume SetCustom_Bye
    End If
End Function

The next example demonstrates how to display information from the Summary tab of the DatabaseName Properties dialog box. The application's title, subject, and author are displayed in text box controls on a form. In this example, if the property hasn't already been set, "None" is returned from the procedure. If an unknown error occurs, a zero-length string (" ") is returned.

Private Sub Form_Open(Cancel As Integer)
    Dim strTitle As String, strSubject As String, strAuthor As String

    strTitle = "Title"
    strSubject = "Subject"
    strAuthor = "Author"

    Me!txtTitle = GetSummaryInfo(strTitle)
    Me!txtSubject = GetSummaryInfo(strSubject)
    Me!txtAuthor = GetSummaryInfo(strAuthor)
End Sub

Function GetSummaryInfo(strPropName As String) As String
    Dim dbs As Database, cnt As Container
    Dim doc As Document, prp As Property

    ' Property not found error.
    Const conPropertyNotFound = 3270
    On Error GoTo GetSummary_Err
    Set dbs = CurrentDb
    Set cnt = dbs.Containers!Databases
    Set doc = cnt.Documents!SummaryInfo
    doc.Properties.Refresh
    GetSummaryInfo = doc.Properties(strPropName)

GetSummary_Bye:
    Exit Function

GetSummary_Err:
    If Err = conPropertyNotFound Then
        Set prp = doc.CreateProperty(strPropName, dbText, "None")
        ' Append to collection.
        doc.Properties.Append prp
        Resume
    Else
        ' Unknown error.
        GetSummaryInfo = ""
        Resume GetSummary_Bye
    End If
End Function


DatasheetBackColor, DatasheetForeColor Properties Example

The following example uses the SetTableProperty procedure to set a table's font color to dark blue and its background color to light gray. If a "Property not found" error occurs when the property is set, the CreateProperty method is used to add the property to the object's Properties collection.

Dim dbs As Object, objProducts As Object
Const lngForeColor As Long = 8388608        ' Dark blue.
Const lngBackColor As Long = 12632256        ' Light gray.
Const DB_Long As Long = 4
Set dbs = CurrentDb
Set objProducts = dbs!Products
SetTableProperty objProducts, "DatasheetBackColor", DB_Long, lngBackColor
SetTableProperty objProducts, "DatasheetForeColor", DB_Long, lngForeColor

Sub SetTableProperty(objTableObj As Object, strPropertyName As String, _
        intPropertyType As Integer, varPropertyValue As Variant)
    Const conErrPropertyNotFound = 3270
    Dim prpProperty As Variant
    On Error Resume Next                ' Don't trap errors.
    objTableObj.Properties(strPropertyName) = varPropertyValue
    If Err <> 0 Then                    ' Error occurred when value set.
        If Err <> conErrPropertyNotFound Then
            ' Error is unknown.
            MsgBox "Couldn't set property '" & strPropertyName _
                & "' on table '" & tdfTableObj.Name & "'", vbExclamation, Err.Description
            Err.Clear
        Else
            ' Error is "Property not found", so add it to collection.
            Set prpProperty = objTableObj.CreateProperty(strPropertyName, _
                intPropertyType, varPropertyValue)
            objTableObj.Properties.Append prpProperty
            Err.Clear
        End If
    End If
    objTableObj.Properties.Refresh
End Sub


DatasheetFontItalic, DatasheetFontUnderline Properties Example

The following example displays the data and field names in Datasheet view of the Products form as italic and underlined.

Forms![Products].DatasheetFontItalic = True
Forms![Products].DatasheetFontUnderline = True

The next example displays the data and field names in Datasheet view of the Products table as italic and underlined.

To set the DatasheetFontItalic and DatasheetFontUnderline properties, the example uses the SetTableProperty procedure, which is in the database's standard module.

Dim dbs As Object, objProducts As Object
Const DB_Boolean As Long = 1
Set dbs = CurrentDb
Set objProducts = dbs![Products]
SetTableProperty objProducts, "DatasheetFontItalic", DB_Boolean, True
SetTableProperty objProducts, "DatasheetFontUnderline", DB_Boolean, True

Sub SetTableProperty(objTableObj As Object, strPropertyName As String, _
        intPropertyType As Integer, varPropertyValue As Variant)
    ' Set Microsoft Access-defined table property without causing
    ' nonrecoverable run-time error.
    Const conErrPropertyNotFound = 3270
    Dim prpProperty As Variant
    On Error Resume Next                ' Don't trap errors.
    objTableObj.Properties(strPropertyName) = varPropertyValue
    If Err <> 0 Then                    ' Error occurred when value set.
        If Err <> conErrPropertyNotFound Then
            On Error GoTo 0
            MsgBox "Couldn't set property '" & strPropertyName _
                & "' on table '" & objTableObj.Name & "'", 48, "SetTableProperty"
        Else
            On Error GoTo 0
            Set prpProperty = objTableObj.CreateProperty(strPropertyName, _
                intPropertyType, varPropertyValue)
            objTableObj.Properties.Append prpProperty
        End If
    End If
    objTableObj.Properties.Refresh
End Sub


DatasheetFontName, DatasheetFontHeight, DatasheetFontWeight Properties Example

The following example sets the font to MS Serif, the font size to 10 points, and the font weight to medium (500) in Datasheet view of the Products table.

To set these properties, the example uses the SetTableProperty procedure, which is shown in the DatasheetFontItalic, DatasheetFontUnderline properties example.

Dim dbs As Object, objProducts As Object
Set dbs = CurrentDb
Const DB_Text As Long = 10
Const DB_Integer As Long = 3
Set objProducts = dbs!Products
SetTableProperty objProducts, "DatasheetFontName", DB_Text, "MS Serif"
SetTableProperty objProducts, "DatasheetFontHeight", DB_Integer, 10
SetTableProperty objProducts, "DatasheetFontWeight", DB_Integer, 500

The next example makes the same changes as the preceding example in Datasheet view of the open Products form.

Forms!Products.DatasheetFontName = "MS Serif"
Forms!Products.DatasheetFontHeight = 10
Forms!Products.DatasheetFontWeight = 500


 DataType Property

DataType Property

Language-specific information

Microsoft Access 2000 has revised the DataType property so the Date/Time setting can accommodate the Hijri calendar.

Remarks

If Hijri is the current Visual Basic Calendar setting, Access 2000 stores date and time values for the Hijri years 100 to 9666. More specifically, the supported Hijri date range is 1/1/100 (Gregorian Aug 2, 718) through 4/3/9666 (Gregorian Dec 31, 9999).


DataUpdatable Property Example

DataUpdatable Property Example (MDB)

The following example creates two Recordset objects, a dynaset-type Recordset object and a snapshot-type Recordset object, from the same table. The procedure then checks the DataUpdatable property for the LastName field in each Recordset object. The setting of the DataUpdatable property is True (-1) for the dynaset-type Recordset object, and False (0) for the snapshot-type Recordset object.

Sub CheckUpdatable()
    Dim dbs As Database
    Dim rstDynaset As Recordset, rstSnapshot As Recordset
    Dim fldDynaset As Field, fldSnapshot As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Open dynaset-type Recordset object.
    Set rstDynaset = dbs.OpenRecordset("Employees", _
        dbOpenDynaset)
    ' Open snapshot-type Recordset object.
    Set rstSnapshot = dbs.OpenRecordset("Employees", _
        dbOpenSnapshot)
    ' Get Field object variables pointing to field in
    ' each Recordset object.
    Set fldDynaset = rstDynaset.Fields!LastName
    Set fldSnapshot = rstSnapshot.Fields!LastName
    ' Get current record.
    rstDynaset.MoveFirst
    rstSnapshot.MoveFirst
    ' Display value of DataUpdatable property for each
    ' Recordset object.
    Debug.Print "DataUpdatable (Dynaset-type Recordset): "; _
        fldDynaset.DataUpdatable
    Debug.Print "DataUpdatable (Snapshot-type Recordset): "; _
        fldSnapshot.DataUpdatable
    rstDynaset.Close
    rstSnapshot.Close
    Set dbs = Nothing
End Sub


DateCreated, LastUpdated Properties Example

DateCreated, LastUpdated Properties Example (MDB)

The following example enumerates through all QueryDef objects in the database and lists those which have been created or changed within the last sixty days:

Sub TimeUpdated()
    Dim dbs As Database, tdf As TableDef, qdf As QueryDef
    Dim strList As String, dtePast As Date

    ' Return reference to current database.
    Set dbs = CurrentDb
    dtePast = Date - 60
    ' Enumerate through QueryDefs collection.
    For Each qdf In dbs.QueryDefs
        ' Evaluate LastUpdated and DateCreated properties.
        If (qdf.LastUpdated > dtePast) Or (qdf.DateCreated > dtePast) Then
            ' Create list.
            strList = strList & vbCrLf & qdf.Name
        End If
    Next qdf
    MsgBox strList
    Set dbs = Nothing
End Sub


 DefaultValue Property

DefaultValue Property

If the ADO DefaultValue property setting is an expression, it can't contain user-defined functions, Microsoft Access domain aggregate functions, SQL aggregate functions, the CurrentUser function, the Eval function, or references to queries, forms, or other Field objects.


 DefaultValue Property (MDB)

DefaultValue Property (MDB)

In Microsoft Access, if you set the DAO DefaultValue property to GenUniqueID( ) to create an AutoNumber field, you must also set the Attributes property to dbAutoIncrement. If you don't set the Attributes property in this way, Microsoft Access won't assign the AutoNumber data type to the field, and you'll get an error when you try to view the table in Datasheet view.

The following code shows how you can create a field with the AutoNumber data type, given a TableDef object variable tdf and a Field object variable fld.

Set fld = tdf.CreateField("EmployeeID", dbLong)
fld.DefaultValue = "GenUniqueID()"
fld.Attributes = dbAutoIncrField
tdf.Fields.Append fld

If the DAO DefaultValue property setting is an expression, it can't contain user-defined functions, Microsoft Access domain aggregate functions, SQL aggregate functions, the CurrentUser function, the Eval function, or references to queries, forms, or other Field objects.


 DefinedSize Property

DefinedSize Property

The ADO DefinedSize property is equivalent to the Size property in DAO as well as the FieldSize property in table Design view. Use the DefinedSize property to set the FieldSize using Visual Basic.

Note In Microsoft Access, the Memo data type field can contain up to 2.14 gigabytes of information. However, the amount of data displayed in a control on a form or report is limited by the amount of system memory.


Description Property

The Description property applies to the Error object and returns a string associated with an error. You can access it only by using Visual Basic.

Note Don't confuse this property with the Microsoft Access Description property, which describes a table or query and its fields.


DestConnectStr, DestinationDB, DestinationTable Properties Example

The following example appends the records in the Customer table to the Clients table in a Microsoft Access database named Clients in the C:\Data directory. You enter this SQL statement in SQL view of the Query window.

INSERT INTO Clients IN 'C:\Data\Clients.mdb'
SELECT Customer.[CompanyName], Customer.Phone
FROM Customer;

The next example creates a new table named Contacts in a Paradox version 3.x database in the C:\Pdoxdata directory.

SELECT Customer.CompanyName, Customer.Phone
INTO Contacts IN 'C:\Pdoxdata' [Paradox 3.x;] FROM Customer;


Dirty Property Example

The following example enables the btnUndo button when data is changed. The UndoEdits( ) subroutine is called from the AfterUpdate event of text box controls. Clicking the enabled btnUndo button restores the original value of the control by using the OldValue property.

Sub UndoEdits()
    If Me.Dirty Then
        Me!btnUndo.Enabled = True    ' Enable button.
    Else
        Me!btnUndo.Enabled = False    ' Disable button.
    End If
End Sub

Sub btnUndo_Click()
    Dim ctlC As Control
        ' For each control.
        For Each ctlC in Me.Controls
            If ctlC.ControlType = acTextBox Then
                ' Restore Old Value.
                ctlC.Value = ctlC.OldValue
            End If
        Next ctlC
End Sub


DistinctCount Property Example

DistinctCount Property Example (MDB)

The following example prints the number of unique values in the indexes on the OrderID and OrderDate fields of an Orders table. Note that the DistinctCount property is guaranteed to return the number of unique values in an index only immediately after an index has been created with the CreateIndex method, or after a database has been compacted or converted by using the CompactDatabase method.

Sub CountKeys()
    Dim dbs As Database, tdf As TableDef
    Dim idx As Index, fldOrderID As Field, fldOrderDate As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Orders table.
    Set tdf = dbs.TableDefs!Orders
    ' Create new index.
    Set idx = tdf.CreateIndex("OrderDateIndex")
    ' Create and append index fields.
    Set fldOrderDate = idx.CreateField("OrderDate", dbDate)
    idx.Fields.Append fldOrderDate
    ' Append new index.
    tdf.Indexes.Append idx
    ' Refresh Indexes collection.
    tdf.Indexes.Refresh
    ' Print value of DistinctCount property for new index.
    Debug.Print idx.DistinctCount
    Set dbs = Nothing
End Sub


CurrentProject Object, Document, and IsLoaded Property Example

This procedure illustrates how to use VBA code to add text to a data access page. The following information is supplied in the arguments to this procedure:

strPageName | The name of an existing data access page.
strID | The ID property (attribute) for the tag that contains the text you want to work with.
strText | The text to insert.
blnReplace | Whether to replace existing text in the tag.

Function DAPInsertText(strPageName As String, _
    strID As Variant, strText As String, _
    Optional blnReplace As Boolean = True) As Boolean

    Dim blnWasLoaded As Boolean

    On Error GoTo DAPInsertText_Err

    ' Determine if the page exists and whether it is
    ' currently open. If not open then open it in
    ' design view.
    If DAPExists(strPageName) = True Then
        If CurrentProject.AllDataAccessPages(strPageName) _
            .IsLoaded = False Then
            blnWasLoaded = False
            With DoCmd
                .Echo False
                .OpenDataAccessPage strPageName, _
                    acDataAccessPageDesign
            End With
        Else
            blnWasLoaded = True
        End If
    Else
        DAPInsertText = False
        Exit Function
    End If

    ' Add the new text to the specified tag.
    With DataAccessPages(strPageName).Document
        If blnReplace = True Then
            .All(strID).innerText = strText
        Else
            .All(strID).innerText = .All(strID).innerText & strText
        End If
        ' Make sure the text is visible.
        With .All(strID).Style
            If .display = "none" Then .display = ""
        End With
    End With

    ' Clean up after yourself.
    With DoCmd
        If blnWasLoaded = True Then
        .Save
    Else
        .Close acDataAccessPage, strPageName, acSaveYes
        End If
    End With
    DAPInsertText = True
DAPInsertText_End:
    DoCmd.Echo True
    Exit Function
DAPInsertText_Err:
    MsgBox "Error #" & Err.Number & ": " & Err.Description
    DAPInsertText = False
    Resume DAPInsertText_End
End Function


DownloadComponents Property Example

This example allows the Office Web components to be downloaded with the specified Web page, if they are not already installed.

Application.DefaultWebOptions.DownloadComponents = True
Application.DefaultWebOptions.LocationOfComponents = _
    Application.CurrentProject & "\foo"


 Enabled Property (FormatCondition Object)

Enabled Property (FormatCondition Object)

You can use the Enabled property to set or return the status of the conditional format in the FormatCondition object.

Setting

The Enabled property setting is a Boolean value that indicates whether the conditional format is enabled or disabled. True (-1) enables the conditional format. False (0) disables the conditional format. The default is True.

The Enabled property is available only by using Visual Basic.

Remarks

When the Enabled property is True, the conditional format can be displayed in the Conditional Formatting dialog box. The Conditional Formatting dialog box is available by clicking Conditional Formatting on the Format menu.


 Enabled Property (Command Bars)

Enabled Property (Command Bars)

You can use this property to disable (dimmed) or enable a menu item or command button. This property applies to menu names, submenu names, and items on submenus. The Enabled property replaces the functionality supplied by the SetMenuItem action and SetMenuItem method in Microsoft Access 95.

You can disable a menu item that Microsoft Access would normally enable, but you can't enable a menu item that Microsoft Access would normally disable.


Enabled, Locked Properties Example

The following example toggles the Enabled property of a command button and the Enabled and Locked properties of a control, depending on the type of employee displayed in the current record. If the employee is a manager, then the SalaryDetails button is enabled and the PersonalInfo control is unlocked and enabled.

Sub Form_Current()
    If Me!EmployeeType = "Manager" Then
        Me!SalaryDetails.Enabled = True
        Me!PersonalInfo.Enabled = True
        Me!PersonalInfo.Locked = False
    Else
        Me!SalaryDetails.Enabled = False
        Me!PersonalInfo.Enabled = False
        Me!PersonalInfo.Locked = True
    End If
End Sub


Encoding Property Example

This example checks to see whether the default document encoding is Western.

If Application.DefaultWebOptions.Encoding = msoEncodingWestern Then
    strDocEncoding = "Western"
Else
    strDocEncoding = "Other"
End If


Error, ReadyState, SnapshotPath Properties Example

The following example shows one way to use the Error, ReadyState, and SnapshotPath properties to load a snapshot file into a snapshot control. In this example, snpCtl is a variable representing a snapshot control on a form and strFilePath is the fully-qualified path to a snapshot file to be displayed.

Function LoadSnapshotFile(snpCtl As Object, strFilePath As String) As Boolean
    Const conSnpFinishedDownload As Integer = 4
    With snpCtl
        .SnapshotPath = strFilePath
        Do While .ReadyState < conSnpFinishedDownload
            DoEvents
        Loop
        If .Error = 0 Then
            LoadSnapshotFile = True
            Exit Function
        Else
            MsgBox "Error loading snapshot file", _
                vbOKOnly, "Snapshot Error = " & .Error
            LoadSnapShotFile = False
        End If
    End With
End Function


Event Properties - Visual Basic Example

The following example shows how you can use the value entered in the Country control to determine which of two different macros to run when you click the Print Country Report button.

Private Sub Country_AfterUpdate()
    If Country = "Canada" Then
        [Print Country Report].OnClick = "PrintCanadaReport"
    ElseIf Country = "USA" Then
        [Print Country Report].OnClick = "PrintUSAReport"
    End If
End Sub


Event Properties and Objects They Apply To

Event Property | Applies To
AfterDelConfirm | Forms.
AfterInsert | Forms.
AfterUpdate* | Forms. Controls (bound object frame, check box, combo box, list box, option button, option group, text box, toggle button) on a form.
BeforeDelConfirm | Forms.
BeforeInsert | Forms.
BeforeUpdate* | Forms. Controls (bound object frame, check box, combo box, list box, option button, option group, text box, toggle button) on a form.
OnActivate | Forms and reports.
OnApplyFilter | Forms.
OnChange | Controls (combo box, tab, text box) on a form.
OnClick* | Forms. Form sections. Controls (bound object frame, chart, check box, combo box, command button, image, label, list box, option button, option group, rectangle, tab, text box, toggle button, unbound object frame) on a form.
OnClose | Forms and reports.
OnCurrent | Forms.
OnDblClick* | Forms. Form sections. Controls (bound object frame, chart, check box, combo box, command button, image, label, list box, option button, option group, rectangle, tab, text box, toggle button, unbound object frame) on a form.
OnDeactivate | Forms and reports.
OnDelete | Forms.
OnDirty | Forms
OnEnter* | Controls (ActiveX, bound object frame, chart, check box, combo box, command button, list box, option button, option group, subform/subreport, tab, text box, toggle button, unbound object frame) on a form.
OnError | Forms and reports.
OnExit* | Controls (ActiveX, bound object frame, chart, check box, combo box, command button, list box, option button, option group, subform/subreport, tab, text box, toggle button, unbound object frame) on a form.
OnFilter | Forms.
OnFormat | Report sections.
OnGotFocus | Forms. Controls (ActiveX, bound object frame, check box, combo box, command button, list box, option button, tab, text box, toggle button, unbound object frame) on a form.
OnKeyDown | Forms. Controls (bound object frame, check box, combo box, command button, list box, option button, tab, text box, toggle button, unbound object frame) on a form.
OnKeyPress | Forms. Controls (bound object frame, check box, combo box, command button, list box, option button, tab, text box, toggle button, unbound object frame) on a form.
OnKeyUp | Forms. Controls (bound object frame, check box, combo box, command button, list box, option button, tab, text box, toggle button, unbound object frame) on a form.
OnLoad | Forms.
OnLostFocus | Forms. Controls (ActiveX, bound object frame, check box, combo box, command button, list box, option button, tab, text box, toggle button, unbound object frame) on a form.
OnMouseDown | Forms. Form sections. Controls (bound object frame, chart, check box, combo box, command button, image, label, list box, option button, option group, rectangle, tab, text box, toggle button, unbound object frame) on a form.
OnMouseMove | Forms. Form sections. Controls (bound object frame, chart, check box, combo box, command button, image, label, list box, option button, option group, rectangle, tab, text box, toggle button, unbound object frame) on a form.
OnMouseUp | Forms. Form sections. Controls (bound object frame, chart, check box, combo box, command button, label, list box, option button, option group, rectangle, tab, text box, toggle button, unbound object frame) on a form.
OnNoData | Reports.
OnNotInList | Controls (combo box) on a form.
OnOpen | Forms and reports.
OnPage | Reports.
OnPrint | Report sections.
OnResize | Forms.
OnRetreat | Report sections.
OnTimer | Forms.
OnUnload | Forms.
OnUpdated | Controls (ActiveX, bound object frame, unbound object frame) on a form.

* These properties don't apply to check boxes, option buttons, or toggle buttons in an option group. They apply only to the option group itself.


FastLaserPrinting Property Example

The following example shows how to set the FastLaserPrinting property for the Invoice report while in report Design view:

DoCmd.OpenReport "Invoice", acDesign
Reports!Invoice.FastLaserPrinting = True
DoCmd.Close acReport, "Invoice", acSaveYes


FeatureInstall Property Example

This example checks the value of the FeatureInstall property. If the property is set to msoFeatureInstallNone, the code displays a message box that asks the user whether they want to change the property setting. If the user responds "Yes", the property is set to msoFeatureInstallOnDemand. The example uses an object variable named MyOfficeApp that is dimensioned as an application object.

With MyOfficeApp
    If .FeatureInstall = msoFeatureInstallNone Then
        Reply = MsgBox("Uninstalled features for " _
            & "this application may " & vbCrLf _
            & "cause a run-time error when called." _
            & vbCrLf & vbCrLf _
            & "Would you like to change this setting" & vbCrLf _
            & "to automatically install missing features?", _
            vbYesNo, "Feature Install Setting")
            If Reply = vbYes Then
                .FeatureInstall = msoFeatureInstallOnDemand
            End If
    End If
End With


FeatureTips Property

This property isn't available in Microsoft Access.


FillColor, FillStyle Properties Example

The following example uses the Circle method to draw a circle and create a pie slice within the circle. Then it uses the FillColor and FillStyle properties to color the pie slice red. It also draws a line from the upper left to the center of the circle.

To try this example in Microsoft Access, create a new report. Set the OnPrint property of the Detail section to [Event Procedure]. Enter the following code in the report's module, then switch to Print Preview.

Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
    Const conPI = 3.14159265359

    Dim sngHCtr As Single, sngVCtr As Single, sngRadius As Single
    Dim sngStart As Single, sngEnd As Single

    sngHCtr = Me.ScaleWidth / 2            ' Horizontal center.
    sngVCtr = Me.ScaleHeight / 2            ' Vertical center.
    sngRadius = Me.ScaleHeight / 3            ' Circle radius.
    Me.Circle(sngHCtr, sngVCtr), sngRadius    ' Draw circle.
    sngStart = -0.00000001                    ' Start of pie slice.

sngEnd = -2 * conPI / 3                        ' End of pie slice.
    Me.FillColor = RGB(255,0,0)            ' Color pie slice red.
    Me.FillStyle = 0                            ' Fill pie slice.
    ' Draw Pie slice within circle
    Me.Circle(sngHCtr, sngVCtr), sngRadius, , sngStart, sngEnd

    ' Draw line to center of circle.
    Dim intColor As Integer
    Dim sngTop As Single, sngLeft As Single
    Dim sngWidth As Single, sngHeight As Single

    Me.ScaleMode = 3                    ' Set scale to pixels.
    sngTop = Me.ScaleTop                ' Top inside edge.
    sngLeft = Me.ScaleLeft            ' Left inside edge.
    sngWidth = Me.ScaleWidth / 2    ' Width inside edge.
    sngHeight = Me.ScaleHeight / 2    ' Height inside edge.
    intColor = RGB(255, 0, 0)        ' Make color red.

    ' Draw line.
    Me.Line (sngTop, sngLeft)-(sngWidth, sngHeight), intColor
End Sub


 Filter Property

Filter Property

The Filter property applies a filter to a Recordset object. You can set it only by using Visual Basic.

Note The Microsoft Access Filter property applies a filter to a form. You can set it by using a macro, Visual Basic, or a form's property sheet in form Design view.


FolderSuffix Property Example

This example returns the folder suffix used by the data access page ("Inventory"). The suffix is returned in the string variable strFolderSuffix.

strFolderSuffix = DataAccessPages("Inventory").WebOptions.FolderSuffix


FontBold Property Example

The following Print event procedure prints a report title and the current date in a bold style on a report at the coordinates specified by the CurrentX and CurrentY property settings.

Private Sub ReportHeader0_Print(Cancel As Integer, _
     PrintCount As Integer)
    Dim MyDate

    MyDate = Date
    Me.FontBold = True
    ' Print report title in bold.
    Me.Print("Sales Management Report")
    Me.Print(MyDate)
End Sub


ForceNewPage Property Example

The following example returns the ForceNewPage property setting for the detail section of the Sales By Date report and assigns it to the intGetVal variable.

Dim intGetVal As Integer
intGetVal = Reports![Sales By Year].Section(acDetail).ForceNewPage


ForeignName, ForeignTable, Table Properties Example

ForeignName, ForeignTable, Table Properties Example (MDB)

The following example shows how you can use the ForeignName, ForeignTable, and Table properties when you create a relationship between two existing tables - in this case, Employees (the primary table) and Orders (the foreign table) in the current database. EmployeeID is the primary key in the Employees table, and also a foreign key in the Orders table. The relationship is one-to-many and referential integrity is enforced.

Note that the And operator performs a bitwise comparison to determine what permissions are currently set.

Sub NewRelation()
    Dim dbs As Database
    Dim fld As Field, rel As Relation

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Find existing EmployeesOrders relation.
    For Each rel In dbs.Relations
        If rel.Table = "Employees" _
            And rel.ForeignTable = "Orders"
            Then
            ' Prompt user before deleting relation.
            If MsgBox(rel.Name & " already exists. " _
                & vbCrLf & "The relation will " _
                & "be deleted and re-created.", _
                    vbOK) = vbOK
            Then
                dbs.Relations.Delete rel.Name
            ' If user chooses Cancel, exit procedure.
            Else
                Exit Sub
            End If
        End If
    Next rel
    ' Create new relationship and set its properties.
    Set rel = dbs.CreateRelation("EmployeesOrders")
    ' Set Table property.
    rel.Table = "Employees"
    ' Set ForeignTable property.
    rel.ForeignTable = "Orders"
    ' Set Relation object attributes to enforce
    ' referential integrity.
    rel.Attributes = dbRelationDeleteCascade And _
        dbRelationUpdateCascade
    ' Create field in Fields collection of Relation.
    Set fld = rel.CreateField("EmployeeID")
    ' Provide name of foreign key field.
    fld.ForeignName = "EmployeeID"
    ' Append field to Relation and Relation to database.
    rel.Fields.Append fld
    dbs.Relations.Append rel
    MsgBox "Relation '" & rel.Name & "' created."
    Set dbs = Nothing
End Sub


Foreign Property Example

Foreign Property Example (MDB)

The following example prints the value of the Foreign property for each index in an Orders table:

Sub CheckForeign()
    Dim dbs As Database, tdf As TableDef, idx As Index

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Orders table.
    Set tdf = dbs.TableDefs!Orders
    ' Enumerate through Indexes collection of table.
    For Each idx In tdf.Indexes
        ' Print value of Foreign property.
        Debug.Print idx.Name; "        "; idx.Foreign
    Next idx
    Set dbs = Nothing
End Sub


 Format Property - Date/Time Data Type

Format Property - Date/Time Data Type

You can set the Format property to predefined date and time formats or use custom formats for the Date/Time data type.

Setting

Predefined Formats

The following table shows the predefined Format property settings for the Date/Time data type.

Setting | Description
General Date | (Default) If the value is a date only, no time is displayed; if the value is a time only, no date is displayed. This setting is a combination of the Short Date and Long Time settings. Examples: 4/3/93, 05:34:00 PM, and 4/3/93 05:34:00 PM.
Long Date | Same as the Long Date setting in the Regional Settings Properties dialog box in Windows Control Panel. Example: Saturday, April 3, 1993.
Medium Date | Example: 3-Apr-93.
Short Date | Same as the Short Date setting in the Regional Settings Properties dialog box in Windows Control Panel. Example: 4/3/93. Warning The Short Date setting assumes that dates between 1/1/00 and 12/31/29 are twenty-first century dates (that is, the years are assumed to be 2000 to 2029). Dates between 1/1/30 and 12/31/99 are assumed to be twentieth century dates (that is, the years are assumed to be 1930 to 1999).
Long Time | Same as the setting on the Time tab in the Regional Settings Properties dialog box in Windows Control Panel. Example: 5:34:23 PM.
Medium Time | Example: 5:34 PM.
Short Time | Example: 17:34.

Custom Formats

You can create custom date and time formats by using the following symbols.

Symbol | Description
: (colon) | Time separator. Separators are set in the Regional Settings Properties dialog box in Windows Control Panel.
/ | Date separator.
c | Same as the General Date predefined format.
d | Day of the month in one or two numeric digits, as needed (1 to 31).
dd | Day of the month in two numeric digits (01 to 31).
ddd | First three letters of the weekday (Sun to Sat).
dddd | Full name of the weekday (Sunday to Saturday).
ddddd | Same as the Short Date predefined format.
dddddd | Same as the Long Date predefined format.
w | Day of the week (1 to 7).
ww | Week of the year (1 to 53).
m | Month of the year in one or two numeric digits, as needed (1 to 12).
mm | Month of the year in two numeric digits (01 to 12).
mmm | First three letters of the month (Jan to Dec).
mmmm | Full name of the month (January to December).
q | Date displayed as the quarter of the year (1 to 4).
y | Number of the day of the year (1 to 366).
yy | Last two digits of the year (01 to 99).
yyyy | Full year (0100 to 9999).
h | Hour in one or two digits, as needed (0 to 23).
hh | Hour in two digits (00 to 23).
n | Minute in one or two digits, as needed (0 to 59).
nn | Minute in two digits (00 to 59).
s | Second in one or two digits, as needed (0 to 59).
ss | Second in two digits (00 to 59).
ttttt | Same as the Long Time predefined format.
AM/PM | Twelve-hour clock with the uppercase letters "AM" or "PM", as appropriate.
am/pm | Twelve-hour clock with the lowercase letters "am" or "pm", as appropriate.
A/P | Twelve-hour clock with the uppercase letter "A" or "P", as appropriate.
a/p | Twelve-hour clock with the lowercase letter "a" or "p", as appropriate.
AMPM | Twelve-hour clock with the appropriate morning/afternoon designator as defined in the Regional Settings Properties dialog box in Windows Control Panel.

Custom formats are displayed according to the settings specified in the Regional Settings Properties dialog box in Windows Control Panel. Custom formats inconsistent with the settings specified in the Regional Settings Properties dialog box are ignored.

Note If you want to add a comma or other separator to your custom format, enclose the separator in quotation marks like this: mmm d", "yyyy.


Format Property - Date/Time Data Type Example

The following are examples of custom date/time formats.

Setting | Display
ddd", "mmm d", "yyyy | Mon, Jun 2, 1997
mmmm dd", "yyyy | June 02, 1997
"This is week number "ww | This is week number 22
"Today is "dddd | Today is Tuesday

You could use a custom format to display "A.D." before or "B.C." after a year depending on whether a positive or negative number is entered. To see this custom format work, create a new table field, set its data type to Number and enter a format as follows:

"A.D. " #;# " B.C."

Positive numbers are displayed as years with an "A.D." before the year. Negative numbers are displayed as years with a "B.C." after the year.


 Format Property - Number and Currency Data Types

Format Property - Number and Currency Data Types

You can set the Format property to predefined number formats or custom number formats for the Number and Currency data types.

Setting

Predefined Formats

The following table shows the predefined Format property settings for numbers.

Setting | Description
General Number | (Default) Display the number as entered.
Currency | Use the thousand separator; follow the settings specified in Regional Settings in Windows Control Panel for negative amounts, decimal and currency symbols, and decimal places.
Euro | Use the currency format, with the euro symbol ( [image] ), regardless of the currency symbol specified in Regional Settings in Windows Control Panel.
Fixed | Display at least one digit; follow the settings specified in Regional Settings in Windows Control Panel for negative amounts, decimal and currency symbols, and decimal places.
Standard | Use the thousand separator; follow the settings specified in Regional Settings in Windows Control Panel for negative amounts, decimal symbols, and decimal places.
Percent | Multiply the value by 100 and append a percent sign (%); follow the settings specified in Regional Settings in Windows Control Panel for negative amounts, decimal symbols, and decimal places.
Scientific | Use standard scientific notation.

Custom Formats

Custom number formats can have one to four sections with semicolons (;) as the list separator. Each section contains the format specification for a different type of number.

Section | Description
First | The format for positive numbers.
Second | The format for negative numbers.
Third | The format for zero values.
Fourth | The format for Null values.

For example, you could use the following custom Currency format:

$#,##0.00[Green];($#,##0.00)[Red];"Zero";"Null"

This number format contains four sections separated by semicolons and uses a different format for each section.

If you use multiple sections but don't specify a format for each section, entries for which there is no format either will display nothing or will default to the formatting of the first section.

You can create custom number formats by using the following symbols.

Symbol | Description
. (period) | Decimal separator. Separators are set by double-clicking Regional Settings in Windows Control Panel.
, (comma) | Thousand separator.
0 | Digit placeholder. Display a digit or 0.
# | Digit placeholder. Display a digit or nothing.
$ | Display the literal character "$".
% | Percentage. The value is multiplied by 100 and a percent sign is appended.
E- or e- | Scientific notation with a minus sign (-) next to negative exponents and nothing next to positive exponents. This symbol must be used with other symbols, as in 0.00E-00 or 0.00E00.
E+ or e+ | Scientific notation with a minus sign next to negative exponents and a plus sign (+) next to positive exponents. This symbol must be used with other symbols, as in 0.00E+00.

Remarks

You can use the DecimalPlaces property to override the default number of decimal places for the predefined format specified for the Format property.

The predefined currency and euro formats follow the settings in Regional Settings in Windows Control Panel. You can override these by entering your own currency format.


Format Property - Number and Currency Data Types Example

The following are examples of the predefined number formats.

Setting | Data | Display
General Number | 3456.789 -3456.789 $213.21 | 3456.789 -3456.789 $213.21
Currency | 3456.789 -3456.789 | $3,456.79 ($3,456.79)
Fixed | 3456.789 -3456.789 3.56645 | 3456.79 -3456.79 3.57
Standard | 3456.789 | 3,456.79
Percent | 3 0.45 | 300% 45%
Scientific | 3456.789 -3456.789 | 3.46E+03 -3.46E+03

The following are examples of custom number formats.

Setting | Description
0;(0);;"Null" | Display positive values normally; display negative values in parentheses; display the word "Null" if the value is Null.
+0.0;-0.0;0.0 | Display a plus (+) or minus (-) sign with positive or negative numbers; display 0.0 if the value is zero.


 Format Property - Text and Memo Data Types

Format Property - Text and Memo Data Types

You can use special symbols in the setting for the Format property to create custom formats for Text and Memo fields.

Setting

You can create custom text and memo formats by using the following symbols.

Symbol | Description
@ | Text character (either a character or a space) is required.
& | Text character is not required.
< | Force all characters to lowercase.
> | Force all characters to uppercase.

Custom formats for Text and Memo fields can have up to two sections. Each section contains the format specification for different data in a field.

Section | Description
First | Format for fields with text.
Second | Format for fields with zero-length strings and Null values.

For example, if you have a text box control in which you want the word "None" to appear when there is no string in the field, you could type the custom format @;"None" as the control's Format property setting. The @ symbol causes the text from the field to be displayed; the second section causes the word "None" to appear when there is a zero-length string or Null value in the field.

Note You can use the Format function to return one value for a zero-length string and another for a Null value, and you can similarly use the Format property to automatically format fields in table Datasheet view or controls on a form or report.


Format Property - Text and Memo Data Types Example

The following are examples of text and memo custom formats.

Setting | Data | Display
@@@-@@-@@@@ | 465043799 | 465-04-3799
@@@@@@@@@ | 465-04-3799 465043799 | 465-04-3799 465043799
> | davolio DAVOLIO Davolio | DAVOLIO DAVOLIO DAVOLIO
< | davolio DAVOLIO Davolio | davolio davolio davolio
@;"Unknown" | Null value | Unknown
 | Zero-length string | Unknown
 | Any text | Same text as entered is displayed


Format Property Example

The following three examples set the Format property by using a predefined format:

Me!Date.Format = "Medium Date"
Me!Time.Format = "Long Time"
Me!Registered.Format = "Yes/No"

The next example sets the Format property by using a custom format. This format displays a date as: Jan 1995.

Forms!Employees!HireDate.Format = "mmm yyyy"

The following example demonstrates a Visual Basic function that formats numeric data by using the Currency format and formats text data entirely in capital letters. The function is called from the OnLostFocus event of an unbound control named TaxRefund.

Function FormatValue() As Integer
    Dim varEnteredValue As Variant

    varEnteredValue = Forms!Survey!TaxRefund.Value
    If IsNumeric(varEnteredValue) = True Then
        Forms!Survey!TaxRefund.Format = "Currency"
    Else
        Forms!Survey!TaxRefund.Format = ">"
    End If
End Function


 Format Property - Yes/No Data Type

Format Property - Yes/No Data Type

You can set the Format property to the Yes/No, True/False, or On/Off predefined formats or to a custom format for the Yes/No data type.

Setting

Microsoft Access uses a check box control as the default control for the Yes/No data type. Predefined and custom formats are ignored when a check box control is used. Therefore, these formats apply only to data that is displayed in a text box control.

Predefined Formats

The Format property provides the Yes/No, True/False, and On/Off predefined formats. Yes, True, and On are equivalent, as are No, False, and Off. If you specify one predefined format and then enter an equivalent value, the predefined format of equivalent value will be displayed. For example, if you enter True or On in a text box control with its Format property set to Yes/No, the value is automatically converted to Yes.

Custom Formats

The Yes/No data type can use custom formats containing up to three sections.

Section | Description
First | This section has no effect on the Yes/No data type. However, a semicolon (;) is required as a placeholder.
Second | The text to display in place of Yes, True, or On values.
Third | The text to display in place of No, False, or Off values.


Format Property - Yes/No Data Type Example

The following example shows a custom yes/no format for a text box control. The control displays the word "Always" in blue text for Yes, True, or On, and the word "Never" in red text for No, False, or Off.

;"Always"[Blue];"Never"[Red]


Form, Report Properties Example

The following example uses the Form and Report properties to refer to a control on a subform and a subreport.

Dim curTotalAmount As Currency
Dim curTotalSales As Currency
curTotalAmount = Forms!Orders!OrderDetails.Form!TotalAmount
curTotalSales = Reports!Sales!Employees.Report!TotalSales


FrozenColumns Property Example

The following example uses the FrozenColumns property to determine how many columns are frozen in a table in Datasheet view. If more than three columns are frozen, the table size is maximized so you can see as many unfrozen columns as possible.

Sub CheckFrozen(strTableName As String)
    Dim dbs As Object
    Dim tdf As Object
    Dim prp As Variant
    Const DB_Integer As Integer = 3
    Const conPropertyNotFound = 3270  ' Property not found error.
    Set dbs = CurrentDb      ' Get current database.
    Set tdf = dbs.TableDefs(strTableName)      ' Get object for table.
    DoCmd.OpenTable strTableName, acNormal  ' Open table.
    tdf.Properties.Refresh
    On Error GoTo Frozen_Err
    If tdf.Properties("FrozenColumns") > 3 Then   ' Check property.
        DoCmd.Maximize
    End If
Frozen_Bye:
    Exit Sub
Frozen_Err:
    If Err = conPropertyNotFound Then      ' Property not in collection.
        Set prp = tdf.CreateProperty("FrozenColumns", DB_Integer, 1)
        tdf.Properties.Append prp
        Resume Frozen_Bye
    End If
End Sub


FullName Property Example

The following example interates through the AllDataAccessPages collection and returns the name of the link and the path of each data access page in the current project.

Sub PrintDAPLocationInfo()
    Dim dapObject As AccessObject
    For Each dapObject In CurrentProject.AllDataAccessPages
        Debug.Print "The '" & dapObject.Name & _
        "' is located at: "; dapObject.FullName
    Next dapObject
End Sub


FullPath, GUID, IsBroken, Major, Minor Properties Example

The following example prints the value of the FullPath, GUID, IsBroken, Major, and Minor properties for each Reference object in the References collection:

Sub ReferenceProperties()
    Dim ref As Reference

    ' Enumerate through References collection.
    For Each ref In References
        ' Check IsBroken property.
        If ref.IsBroken = False Then
            Debug.Print "Name: ", ref.Name
            Debug.Print "FullPath: ", ref.FullPath
            Debug.Print "Version: ", ref.Major & "." & ref.Minor
        Else
            Debug.Print "GUIDs of broken references:"
            Debug.Print ref.GUID
        EndIf
    Next ref
End Sub


Grouping Properties Example

The following example sets the SortOrder and grouping properties for the first group level in the Products By Category report to create an alphabetical list of products.

Private Sub Report_Open(Cancel As Integer)
    ' Set SortOrder property to ascending order.
    Me.GroupLevel(0).SortOrder = False
    ' Set GroupOn property.
    Me.GroupLevel(0).GroupOn = 1
    ' Set GroupInterval property to 1.
    Me.GroupLevel(0).GroupInterval = 1
    ' Set KeepTogether property to With First Detail.
    Me.GroupLevel(0).KeepTogether = 2
End Sub


Height, Width Properties Example

The following code resizes a command button to a 1-inch by 1-inch square button (the default unit of measurement in Visual Basic is twips; 1440 twips equals one inch):

Me!cmdSizeButton.Height = 1440    ' 1440 twips = 1 inch.
Me!cmdSizeButton.Width = 1440


 HelpContextId Property (Command Bars)

HelpContextId Property (Command Bars)

In Microsoft Access 2000, you can use the Toolbar Control Properties dialog box for command bar controls to set the HelpContextId property for a control on a command bar. Display the Customize dialog box by pointing to Toolbars on the View menu and clicking Customize. For menu bar and toolbar controls, display the menu bar or toolbar, and then right-click the control whose HelpContextId property you want to set. For shortcut menu controls, select the Shortcut Menus check box on the Toolbars tab of the Customize dialog box, then find the shortcut menu control you want on the menu bar that's displayed and right-click the control. Click the Properties command. Enter the context ID number of the Help topic you want in the Help ContextID box.


 HelpContext, HelpFile Properties

HelpContext, HelpFile Properties

The HelpContext and HelpFile properties apply to the Error object. You can access them only by using Visual Basic.

Note Don't confuse these properties with the Microsoft Access HelpContextID and HelpFile properties. These properties are similar, but they apply only to forms, reports, and controls. You can set them by using Visual Basic, a macro, or the property sheet within form Design view or report Design view.


 HelpFile Property

HelpFile Property

In Microsoft Access 2000, you can use the Toolbar Control Properties dialog box for command bar controls to set the HelpFile property for a control on a command bar. Display the Customize dialog box by pointing to Toolbars on the View menu and clicking Customize. For menu bar and toolbar controls, display the menu bar or toolbar, and then right-click the control whose HelpFile property you want to set. For shortcut menu controls, select the Shortcut Menus check box on the Toolbars tab of the Customize dialog box, then find the shortcut menu control you want on the menu bar that's displayed and right-click the control. Click the Properties command. Enter the name of the Help file you want in the Help File box.


HideDuplicates Property Example

The following example returns the HideDuplicates property setting for the CategoryName text box and assigns the value to the intCurVal variable.

Dim intCurVal As Integer
intCurVal = Me!CategoryName.HideDuplicates


HighPriorityTips Property

This property isn't available in Microsoft Access.


hWnd Property Example

The following example uses the hWnd property with the Windows API IsZoomed function to determine if a window is maximized.

' Enter on single line in Declarations section of Module window.
Declare Function IsZoomed Lib "user32" (ByVal hWnd As Long) As Long

Sub Form_Activate()
    Dim intWindowHandle As Long
    intWindowHandle = Screen.ActiveForm.hWnd
    If Not IsZoomed(intWindowHandle) Then
        DoCmd.Maximize
    End If
End Sub


Hyperlink Property Example

The CreateHyperlink procedure in the following example sets the hyperlink properties for a command button, label, or image control to the address and subaddress values passed to the procedure. The address setting is an optional argument, because a hyperlink to an object in the current database uses only the subaddress setting, To try this example, create a form with two text box controls (txtAddress and txtSubAddress) and a command button (cmdFollowLink) and paste the following into the Declarations section of the form's module:

Private Sub cmdFollowLink_Click()
    CreateHyperlink Me!cmdFollowLink, Me!txtSubAddress, _
         Me!txtAddress
End Sub

Sub CreateHyperlink(ctlSelected As Control, _
     strSubAddress As String, Optional strAddress As String)
    Dim hlk As Hyperlink
    Select Case ctlSelected.ControlType
        Case acLabel, acImage, acCommandButton
            Set hlk = ctlSelected.Hyperlink
            With hlk
                If Not IsMissing(strAddress) Then
                    .Address = strAddress
                Else
                    .Address = ""
                End If
                .SubAddress = strSubAddress
                .Follow
                .Address = ""
                .SubAddress = ""
            End With
        Case Else
            MsgBox "The control '" & ctlSelected.Name _
                 & "' does not support hyperlinks."
    End Select
End Sub


 Id Property

Id Property

The Id property can only be set when you create a new control. Set the Id argument of the Add method of the CommandBarControls collection to an Integer value that corresponds to a built-in command button or menu item, or to one of the equivalent intrinsic constants used with the RunCommand method in Microsoft Access. For a custom control, set the Id argument to 1 or leave it blank.

You can use the Id property to determine the Integer value corresponding to a built-in control. For example, to determine the Integer value corresponding to the Paste command on the Edit menu of the main menu bar, use the following reference:

CommandBars("Menu Bar").Controls("Edit").Controls("Paste").Id


ImageHeight, ImageWidth Properties Example

The following example prompts the user to enter the name of a bitmap and then assigns that bitmap to the Picture property of the Image1 image control. The ImageHeight and ImageWidth properties are used to resize the image control to fit the size of the bitmap.

Sub GetNewPicture(frm As Form)
    Dim ctlImage As Control
    Set ctlImage = frm!Image1
    ctlImage.Picture = InputBox("Enter path and " _
        & "file name for new bitmap")
    ctlImage.Height = ctlImage.ImageHeight
    ctlImage.Width = ctlImage.ImageWidth
End Sub


IMESentenceMode

IMESentenceMode Property

Language-specific information

You can use the IMESentenceMode property specify or determine the IME Sentence Mode of fields of a table or controls of a form that switch when the focus moves.

Setting

The IMESentenceMode property uses the following settings.

Setting | Description | Visual Basic
Normal | (Default) Set IME Sentence Mode to "Normal" mode. | 0
Plural | Set IME Sentence Mode to "Plural" mode. | 1
Speaking | Set IME Sentence Mode to "Speaking" mode. | 2
No Conversion | Doesn't set IME Sentence Mode. | 3

You can set this property by using the property sheet, a macro, or Visual Basic.

Remarks

Normal mode

Use this mode when creating a literary Japanese document.

Plural mode

Use this mode when entering name or address data. In this mode, two additional dictionaries are available. The "Biographical/Geographical Dictionary" contains names not covered in the normal dictionary and the "Postal Code Dictionary", useful in creating addresses. (Factory setting.)

Speaking mode

Use this mode when entering data that contains conversational language.

No Conversion

In this mode, inputted characters are settled without conversion.


Index Property Example

Index Property Example (MDB)

The following example sets the index for a table-type Recordset object to the primary key. "PrimaryKey" is the default name of an Index object if the index corresponds to the primary key set in table Design view. Next, the procedure asks the user for a value to search on and locates the record with a matching key field value. Note that the current index must be set before certain operations, such as the Seek method, can be performed on a table-type Recordset object.

Sub UsePrimaryKey()
    Dim dbs As Database, rst As Recordset
    Dim fld As Field, strInput As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create table-type Recordset object.
    Set rst = dbs.OpenRecordset("Orders", dbOpenTable)
    ' Set current index.
    rst.Index = "PrimaryKey"
    strInput = InputBox("Enter the OrderID on which to search.")
    ' Locate record.
    rst.Seek "=", strInput
    If Not rst.NoMatch Then
        For Each fld in rst.Fields
            Debug.Print fld.Name; "   "; fld.Value
        Next fld
    End If
    rst.Close
    Set dbs = Nothing
End Sub


 Inherited Property (MDB)

Inherited Property (MDB)

Microsoft Access defines a number of properties that apply to Data Access Objects. Because these properties are defined by Microsoft Access, the Microsoft Jet database engine doesn't recognize them automatically. To set one of these properties by using Visual Basic, you must first create the property by using the CreateProperty method and then append it to the Properties collection of the object. For more information, search the Help index for the Property object topic.

When you create an object based on another object, the derived object inherits the properties of the original object. You can use the Inherited property to determine whether one of these properties was created for the object it is applied to, or if the property was inherited from another object.

For example, suppose you want to set the Microsoft Access DatasheetFontName property for a TableDef object. If you are setting this property for the first time, you will need to create a corresponding Property object and append it to the Properties collection of the TableDef object. The Inherited property of the new Property object returns False (0).

If you then create a new QueryDef object based on the table corresponding to the TableDef object, the DatasheetFontName property will be included in the Properties collection of the QueryDef object. The Inherited property of a Property object corresponding to this property returns True (-1).


Inherited Property Example

Inherited Property Example (MDB)

The following example creates a Property object in the Properties collection of a TableDef object, and then creates a new QueryDef object based on the same table. The Property object automatically exists in the Properties collection of the new QueryDef object. Next, the procedure checks the Inherited property for the Property objects in the Properties collections of both the TableDef and the QueryDef objects.

In this example, the Microsoft Access DatasheetFontItalic property is created and appended to the Properties collection of the TableDef object. The DatasheetFontItalic property is defined by Microsoft Access rather than by the Microsoft Jet database engine. However, the property applies to DAO objects. Therefore, in order to set it from Visual Basic code, you must first create a Property object corresponding to that property and append it to the Properties collection of the DAO object. It's necessary to create the property only the first time you set it.

Sub CheckInherited()
    Dim dbs As Database, tdf As TableDef, qdf As QueryDef
    Dim strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Orders table.
    Set tdf = dbs.TableDefs!Orders
    ' Call SetAccessProperty function.
    If SetAccessProperty(tdf, "DatasheetFontItalic", _
            dbBoolean, True) = True Then
        ' Create QueryDef object based on Orders table.
        strSQL = "SELECT * FROM Orders WHERE ShipCountry = 'USA';"
        Set qdf = dbs.CreateQueryDef("USAOrders", strSQL)
        ' Return Property object pointing to property.
        Debug.Print "Value of Inherited, TableDef object:", _
            tdf.Properties!DatasheetFontItalic.Inherited
        Debug.Print "Value of inherited, QueryDef object:", _
            qdf.Properties!DatasheetFontItalic.Inherited
            ExitCheckInherited
    Else
        MsgBox "Property not set successfully."
        ExitCheckInherited
    End If

ExitCheckInherited:
    Set dbs = Nothing
    Exit Sub
End Sub

This procedure calls the following function, which sets the property, creating it in the Properties collection if necessary:

Function SetAccessProperty(obj As Object, strName As String, _
        intType As Integer, varSetting As Variant) As Boolean
    Dim prp As Property
    Const conPropNotFound As Integer = 3270

    On Error GoTo ErrorSetAccessProperty
    ' Explicitly refer to Properties collection.
    obj.Properties(strName) = varSetting
    obj.Properties.Refresh
    SetAccessProperty = True

ExitSetAccessProperty:
    Exit Function

ErrorSetAccessProperty:
    If Err = conPropNotFound Then
        ' Create property, denote type, and set initial value.
        Set prp = obj.CreateProperty(strName, intType, varSetting)
        ' Append Property object to Properties collection.
        obj.Properties.Append prp
        obj.Properties.Refresh
        SetAccessProperty = True
        Resume ExitSetAccessProperty
    Else
        MsgBox Err & ": " & vbCrLf & Err.Description
        SetAccessProperty = False
        Resume ExitSetAccessProperty
    End If
End Function


Inherit Property Example

Inherit Property Example (MDB)

The following example sets the Inherit property of the Forms Container object to True (-1), and then sets the Permissions property to give users full security access to all forms. All new Document objects of the Form type will inherit these permissions. The procedure then creates a new Form object and displays the permissions for that object.

Note that the Forms Container object is different from the Forms collection. The Forms Container object includes all Form Document objects in the database; the Forms collection contains only currently open forms.

Also note that the Or operator performs a bitwise comparison to determine what permissions are currently set.

Sub FormPermissions()
    Dim dbs As Database, ctrForms As Container
    Dim docForm As Document, frmNew As Form

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Forms container.
    Set ctrForms = dbs.Containers!Forms
    ' Set Inherit property.
    ctrForms.Inherit = True
    ' Set permissions to be inherited.
    ctrForms.Permissions = ctrForms.Permissions Or _
        acSecFrmRptWriteDef
    ' Create new form.
    Set frmNew = CreateForm()
    ' Save form.
    DoCmd.Save , "OrderForm"
    ' Return Document object associated with new form.
    Set docForm = ctrForms.Documents!OrderForm
    ' Compare permissions for Container and Document objects.
    If docForm.Permissions <> ctrForms.Permissions Then
        MsgBox "Error!"
    Else
        MsgBox "Permissions successfully inherited."
    End If
    Set dbs = Nothing
End Sub


InputMask Property Example - Useful Input Masks

The following table shows some useful input masks and the type of values you can enter in them.

Input mask | Sample values
(000) 000-0000 | (206) 555-0248
(999) 999-9999 | (206) 555-0248
 | ( ) 555-0248
(000) AAA-AAAA | (206) 555-TELE
#999 | -20
 | 2000
>L????L?000L0 | GREENGR339M3
 | MAY R 452B7
>L0L 0L0 | T2F 8M4
00000-9999 | 98115-
 | 98115-3007
>L<?????????????? | Maria
 | Brendan
SSN 000-00-0000 | SSN 555-55-5555
>LL00000-0000 | DB51392-0493


InSelection Property Example

The following function uses the InSelection property to determine whether the strControlName control on a form is selected.

To test this code, paste the IsControlSelected function code in the Declarations section of a code module in the Northwind sample database, open the Customers form in Design view, and select the CompanyName control. Then enter the following line in the Debug window:

? IsControlSelected (Forms!Customers, "CompanyName")

Function IsControlSelected(frm As Form, _
     strControlName As String) As Integer
    Dim intI As Integer, ctl As Control
    If frm.CurrentView <> 0 Then
        ' Form is not in Design view.
        Exit Function
    Else
        For intI = 0 To frm.Count - 1
            Set ctl = frm(intI)
            If ctl.InSelection = True Then
                ' Is desired control selected?
                If UCase(ctl.Name) = UCase(strControlName) Then
                    IsControlSelected = True
                    Exit Function
                End If
            Else
                IsControlSelected = False
            End If
        Next intI
    End If
End Function


InsideHeight, InsideWidth Properties Example

The following example shows how to use the InsideHeight and InsideWidth properties to compare the inside height and width of a form with the height and width of the form's window. If the window's dimensions don't equal the size of the form, then the window is resized to match the form's height and width.

Sub ResetWindowSize(frm As Form)
    Dim intWindowHeight As Integer
    Dim intWindowWidth As Integer
    Dim intTotalFormHeight As Integer
    Dim intTotalFormWidth As Integer
    Dim intHeightHeader As Integer
    Dim intHeightDetail As Integer
    Dim intHeightFooter As Integer

    ' Determine form's height.
    intHeightHeader = frm.Section(acHeader).Height
    intHeightDetail = frm.Section(acDetail).Height
    intHeightFooter = frm.Section(acFooter).Height
    intTotalFormHeight = intHeightHeader _
        + intHeightDetail + intHeightFooter
    ' Determine form's width.
    intTotalFormWidth = frm.Width
    ' Determine window's height and width.
    intWindowHeight = frm.InsideHeight
    intWindowWidth = frm.InsideWidth

    If intWindowWidth <> intTotalFormWidth Then
        frm.InsideWidth = intTotalFormWidth
    End If
    If intWindowHeight <> intTotalFormHeight Then
        frm.InsideHeight = intTotalFormHeight
    End If
End Sub


IsVisible Property Example

The following example uses the IsVisible property of a text box to control the display of a line control on a report. The report is based on a Products table and uses three controls with the following properties.

Properties | Line control | Text box #1 | Text box #2
Name | Line0 | CategoryID | ProductName
ControlSource |  | CategoryID | ProductName
HideDuplicates |  | Yes | No
Left | 0 | 0 | 2.0
Top | 0 | .1 | .1
Width | 4.0 | 1.0 | 1.0

Paste the following code into the Declarations section of the report module, and then view the report to see the line formatting controlled by the IsVisible property:

Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
    If Me!CategoryID.IsVisible Then
        Me!Line0.Visible = True
    Else
        Me!Line0.Visible = False
    End If
End Sub


ItemData Property Example

The following example prints the value of the bound column for each selected row in a list box EmployeeList on an Employees form. The list box's MultiSelect property must be set to Simple or Extended.

Sub RowsSelected()
    Dim ctlList As Control, varItem As Variant

    ' Return Control object variable pointing to list box.
    Set ctlList = Forms!Employees!EmployeeList
    ' Enumerate through selected items.
    For Each varItem in ctlList.ItemsSelected
        ' Print value of bound column.
        Debug.Print ctlList.ItemData(varItem)
    Next varItem
End Sub


ItemsSelected Property Example

The following example prints the value of the bound column for each selected row in a Names list box on a Contacts form. To try this example, create the list box and set its BoundColumn property as desired and its MultiSelect property to Simple or Extended. Switch to Form view, select several rows in the list box, and run the following code:

Sub BoundData()
    Dim frm As Form, ctl As Control
    Dim varItm As Variant

    Set frm = Forms!Contacts
    Set ctl = frm!Names
    For Each varItm In ctl.ItemsSelected
        Debug.Print ctl.ItemData(varItm)
    Next varItm
End Sub

The next example uses the same list box control, but prints the values of each column for each selected row in the list box, instead of only the values in the bound column.

Sub AllSelectedData()
    Dim frm As Form, ctl As Control
    Dim varItm As Variant, intI As Integer

    Set frm = Forms!Contacts
    Set ctl = frm!Names
    For Each varItm In ctl.ItemsSelected
        For intI = 0 To ctl.ColumnCount - 1
            Debug.Print ctl.Column(intI, varItm)
        Next intI
        Debug.Print
    Next varItm
End Sub


KeepTogether Property - Sections Example

The following example returns the KeepTogether property setting for a report's detail section and assigns the value to the intGetVal variable.

Dim intGetVal As Integer
intGetVal = Me.Section(acDetail).KeepTogether


KeyboardShortcutTips Property

This property isn't available in Microsoft Access.


KeyPreview Property Example

In the following example, the KeyPreview property is set to True (-1) in the form's Load event procedure. This causes the form to receive keyboard events before they are received by any control. The form KeyDown event then checks the KeyCode argument value to determine if the F2, F3, or F4 keys were pushed.

Private Sub Form_Load()
    Me.KeyPreview = True
End Sub

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    Select Case KeyCode
        Case vbKeyF2
            ' Process F2 key events.
        Case vbKeyF3
            ' Process F3 key events.
        Case vbKeyF4
            ' Process F4 key events.
        Case Else
    End Select
End Sub


LabelAlign, TextAlign Properties

Language-specific information

Microsoft Access 2000 has modified the LabelAlign and TextAlign properties by adding context sensitive behavior to the General alignment choice.

Remarks

For general alignment, text in the control will be right aligned if the first character is a right-to-left language character, and left aligned if the first character is a left-to-right language character. In a combo box or list box, TextAlign determines alignment behavior for both the text box and list box components of the control.

For more information about right-to-left properties, see Learn more about right-to-left properties in Microsoft Access 2000.


LabelX, LabelY Properties

Language-specific information

Microsoft Access 2000 has modified the LabelX and LabelY property behavior for right-to-left controls.

Remarks

The LabelX and LabelY properties specify the placement of the label for a new control. If the orientation is left to right for a form or report, LabelX and LabelY behavior matches standard Microsoft Access left-to-right orientation. For more information about orientation, see the Orientation property.

If orientation is right to left, the origin of the coordinate system for LabelX and LabelY is the upper right corner of the attached control. A negative number for LabelX places the label to the right of the control. A negative number for LabelY places the label above the control.

For General and Right alignment when orientation is RTL, LabelX and LabelY specify the location of the upper-right corner of the label relative to the upper-right corner of the label's attached control. For Left and Center alignment, LabelX and LabelY specify the location of the upper-left corner and top center, respectively, of the label relative to the upper-right corner of the label's attached control.


LastModified Property Example

LastModified Property Example (MDB)

The following example determines the most recently modified record in a recordset and sets a bookmark for that record:

Sub LastChangedRecord()
    Dim dbs As Database, rst As Recordset, varBook As Variant

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create dynaset-type Recordset object.
    Set rst = dbs.OpenRecordset("SELECT * " _
        & "FROM Orders ORDER BY ShipCountry;")
    With rst
        .FindFirst "ShipCountry = 'UK'"
        ' Alter record and save changes.
        .Edit
        !ShipCountry = "USA"
        .Update
    End With
    ' Check to see if recordset supports bookmarks.
    If rst.Bookmarkable Then
        ' Set bookmark to most recently modified record.
        varBook = rst.LastModified
        ' Set currency to last modified record.
        rst.Bookmark = varBook
    End If
    rst.Close
    Set dbs = Nothing
End Sub


Left, Top Properties Example

The following example checks the Left property setting for the current report. If the value is less than the minimum margin setting, the NextRecord and PrintSection properties are set to False (0). The section doesn't advance to the next record, and the next section isn't printed.

Sub Detail1_Format(Cancel As Integer, FormatCount As Integer)
Const conLeftMargin = 1880
' Don't advance to next record or print next section
' if Left property setting is less than 1880 twips.
    If Me.Left < conLeftMargin Then
        Me.NextRecord = False
        Me.PrintSection = False
    End If
End Sub


ListCount, ListRows Properties Example

The following example uses the ListCount property to find the number of rows in the list box portion of the CustomerList combo box on a Customers form. It then sets the ListRows property to display a specified number of rows in the list.

Sub SizeCustomerList()
    Dim ListControl As Control

    Set ListControl = Forms!Customers!CustomerList
    With ListControl
        If .ListCount < 8 Then
            .ListRows = .ListCount
        Else
            .ListRows = 8
        End If
    End With
End Sub


LocationOfComponents Property Example

This example sets the path where Office components are downloaded.

Application.DefaultWebOptions.LocationOfComponents = _
    Application.Path & Application.PathSeparator & "foo"


LockEdits Property Example

LockEdits Property Example (MDB)

The following example opens a dynaset-type Recordset object and sets its LockEdits property to False (0). This enables optimistic locking so other users can change the database records at any time. Microsoft Access triggers a trappable error if the data changes before you use the Update method.

Sub ShowLockStatus()
    Dim dbs As Database, rst As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Open dynaset-type Recordset object.
    Set rst = dbs.OpenRecordset("Customers", dbOpenDynaset)
    rst.LockEdits = False
    On Error Goto ErrorLockEdits
    ' Enable editing.
    rst.Edit
    .                        ' Change records.
    .
    .
    rst.Update            ' Try to post changes.

ExitLockEdits:
    rst.Close
    Set dbs = Nothing
    Exit Sub

ErrorLockEdits:
        If Err.Number = 3197 Then
            MsgBox "Data changed by another user."
            Resume Next
        Else
            MsgBox "Some other error."
            Resume ExitLockEdits
        End If
End Sub


LoginTimeout Property Example

LoginTimeout Property Example (MDB)

The following example sets the LoginTimeout property to 120 seconds, then creates a query, and runs it on a database on an ODBC server:

Sub Login()
    Dim dbs As Database
    Dim qdf As QueryDef, rst As Recordset

    ' Set timeout to 120 seconds.
    DBEngine.LoginTimeout = 120
    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create new QueryDef object.
    Set qdf = dbs.CreateQueryDef("All Employees", _
        "SELECT * FROM Employees;")
    qdf.Connect = "ODBC;DSN=Human Resources; " _
        & "Database=HRSRVR; UID=Smith; PWD=Sesame"
    ' Log on to server and run query.
    Set rst = qdf.OpenRecordset()
    ' Perform operations with recordset.
    .
    .
    .
    rst.Close
    Set dbs = Nothing
End Sub


MDE Property Example

The following example uses the IsItMDE function to check the MDE property for the current database:

Dim dbs As Object
Set dbs = CurrentDb
If IsItMDE(dbs) <> True Then
    ' Process custom database code.
End If

Function IsItMDE(dbs as Object) As Boolean
    Dim strMDE As String
    On Error Resume Next
    strMDE = dbs.Properties("MDE")
    If Err = 0 AND strMDE = "T" Then
        ' This is an MDE database.
        IsItMDE = True
    Else
        IsITMDE = False
    End if
End Function


MenuBar Property Example

The following example sets the MenuBar property to a menu bar named CustomerMenu:

Forms!Customers.MenuBar = "CustomerMenu"

To display the built-in menu bar for the form or the application global menu bar, you set the MenuBar property to a zero-length string (" ").

Forms!Customers.MenuBar = ""


Me Property Example

The following example shows how to change the caption of a Customers form to a value supplied by the user. The ChangeCaption subroutine passes the Me property (representing the Form object) to specify the active form. Because the ChangeCaption procedure changes the caption of the active form (not a specific form), it can be called from other procedures in an application.

ChangeCaption Me, InputBox("Enter new caption "
    & "for form")

Sub ChangeCaption(frmCurrentForm As _
    Form, strCaption As String)
' Change caption.
    If TypeName(frmCurrentForm.Caption) = "Null" Then
        frmCurrentForm.Caption = strCaption
        Exit Sub
    End If
    If UCase(strCaption) _
            <> UCase(frmCurrentForm.Caption) Then
        frmCurrentForm.Caption = strCaption
    End If
End Sub


Module Property Example

The following example uses the Module property to insert the Beep method in a form's Open event.

Dim strFormOpenCode As String
Dim mdl As Module

Set mdl = Forms!MyForm.Module
strFormOpenCode = "Sub Form_Open(Cancel As Integer)" _
    & vbCrLf & "Beep" & vbCrLf & "End Sub"
    With mdl
        .InsertText strFormOpenCode
    End With


MouseTips Property

This property isn't available in Microsoft Access.


 Name Property (Command Bars)

Name Property (Command Bars)

In Microsoft Access 2000, you can use the Toolbar Properties dialog box to change the name of a custom menu bar, toolbar, or shortcut menu. Point to Toolbars on the View menu and click Customize, then click the Properties button in the Customize dialog box. Select the custom menu bar, toolbar, or shortcut menu you want in the Selected Toolbar box, and then enter the new name in the Toolbar Name box. You can't change the name of a built-in menu bar, toolbar, or shortcut menu.


NewRecord Property Example

The following example shows how to use the NewRecord property to determine if the current record is a new record. The NewRecordMark procedure sets the current record to the variable intnewrec. If the record is new, a message is displayed notifying the user of this. You could run this procedure when the Current event for a form occurs.

Sub NewRecordMark(frm As Form)
    Dim intnewrec As Integer

    intnewrec = frm.NewRecord
    If intnewrec = True Then
    MsgBox "You're in a new record." _
        & "@Do you want to add new data?" _
        & "@If not, move to an existing record."
    End If
End Sub


NewRowOrCol Property Example

The following example returns the NewRowOrCol property setting and assigns it to the intGetVal variable.

Dim intGetVal As Integer
intGetVal = Me.Section(1).NewRowOrCol

The next example presents two layouts for a report that divides data into four groups (Head1 to Head4). Each group includes three to six records, and each record has field a and field b. The layouts differ only in their settings under Column Layout on the Columns tab of the Page Setup dialog box and the values of their NewRowOrCol properties. Note that the Width box under Column Size on the Columns tab must be set to the actual width of the field. Also, the Before Section setting of the NewRowOrCol property requires a page header section greater than zero for the Down, Then Across option to function correctly.

  • Column Layout - Across, Then Down

    Head1

    1a 1b2a 2b3a 3b4a 4b

    5a 5b

    Head2

    1a 1b2a 2b3a 3b4a 4b

    Head3

    1a 1b2a 2b3a 3b

    Head4

    1a 1b2a 2b3a 3b4a 4b

    5a 5b6a 6b

  • Grid Settings - Number of Columns set to 4

  • NewRowOrCol property setting for group header section - Before & After
  • Column Layout - Down, Then Across

    Head1Head2Head3Head4

    1a 1b1a 1b1a 1b1a 1b

    2a 2b2a 2b2a 2b2a 2b

    3a 3b3a 3b3a 3b3a 3b

    4a 4b4a 4b4a 4b

    5a 5b5a 5b

    6a 6b

  • Grid Settings - Number of Columns set to 4

  • NewRowOrCol property setting for group header section - Before Section


NoMatch Property Example

NoMatch Property Example (MDB)

The following example uses the NoMatch property to determine whether a FindFirst method process has been successful:

Function FindCountry() As Integer
    Dim dbs As Database, rst As Recordset
    Dim strCountry As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create dynaset-type Recordset object.
    Set rst = dbs.OpenRecordset("Orders", dbOpenDynaset)
    strCountry = InputBox("Please enter country name.")
    rst.FindFirst "ShipCountry = '" & strCountry & "'"
    If rst.NoMatch Then
        FindCountry = False
    Else
        FindCountry = True
        Debug.Print rst!OrderID
    End If
    rst.Close
    Set dbs = Nothing
End Function


ObjectPalette, PaintPalette Properties Example

The following example sets the PaintPalette property of the Seascape form to the ObjectPalette property of the Ocean control on the DisplayPictures form. (Ocean can be a bound object frame, command button, chart, toggle button, or unbound object frame.)

Forms!Seascape.PaintPalette = _
     Forms!DisplayPictures!Ocean.ObjectPalette

The ObjectPalette and PaintPalette properties are useful for programmatically altering the color palette in use by an open form at run time. A common use of these properties is to set the current form's PaintPalette property to the palette of a graphic displayed in a control that has the focus.

For example, you can have a form with an ocean picture, showing many shades of blue, and a sunset picture, showing many shades of red. Since Windows only allows one color palette active at a time, one picture will look much better than the other. The following example uses a control's Enter event for setting the form's PaintPalette property to the control's ObjectPalette property so the graphic that has the focus will have an optimal appearance.

Sub OceanPicture_Enter()
    Me.PaintPalette = Me!OceanPicture.ObjectPalette
End Sub

Sub SunsetPicture_Enter()
    Me.PaintPalette = Me!SunsetPicture.ObjectPalette
End Sub


Object Properties Example

The following example uses the PrintObjectProperties subroutine to print the values of an object's Object properties to the Debug window. The subroutine requires the object type and object name as arguments.

Dim strObjectType As String
Dim strObjectName As String
Dim strMsg As String

strMsg = "Enter object type (e.g., Forms, Scripts, " _
    & "Modules, Reports, Tables)."
' Get object type.
strObjectType = InputBox(strMsg)
strMsg = "Enter the name of a form, macro, module, " _
    & "query, report, or table."
' Get object name from user.
strObjectName = InputBox(strMsg)
' Pass object type and object name to
' PrintObjectProperties subroutine.
PrintObjectProperties strObjectType, strObjectName

Sub PrintObjectProperties(strObjectType As String, strObjectName _
    As String)
Dim dbs As Database, ctr As Container, doc As Document
Dim intI As Integer
Dim strTabChar As String
Dim prp As Property

Set dbs = CurrentDb
strTabChar = vbTab
' Set Container object variable.
Set ctr = dbs.Containers(strObjectType)
' Set Document object variable.
Set doc = ctr.Documents(strObjectName)
doc.Properties.Refresh
' Print the object name to Debug window.
Debug.Print doc.Name
' Print each Object property to Debug window.
For Each prp in doc.Properties
    Debug.Print strTabChar & prp.Name & " = " & prp.Value
Next
End Sub


ObjectVerbs, ObjectVerbsCount Properties Example

The following example returns the verbs supported by the OLE object in the OLE1 control and displays each verb in a message box.

Sub GetVerbList(frm As Form, OLE1 As Control)
    Dim intX As Integer, intNumVerbs As Integer
    Dim strVerbList As String

    ' Update verb list.
    With frm!OLE1
        .Action = acOLEFetchVerbs
        intNumVerbs = .ObjectVerbsCount
        For intX = 0 To intNumVerbs - 1
            strVerbList = strVerbList & .ObjectVerbs(intX) & "; "
        Next intX
    End With

    ' Display verbs in message box.
    MsgBox Left(strVerbList, Len(strVerbList) - 2)
End Sub


Object Property Example

The following example uses the Object property of an unbound object frame named OLE1. Customer name and address information is inserted in an embedded Microsoft Word document formatted as a form letter with placeholders for the name and address information and boilerplate text in the body of the letter. The procedure replaces the placeholder information for each record and prints the form letter. It doesn't save copies of the printed form letter.

Sub PrintFormLetter_Click()
    Dim objWord As Object
    Dim strCustomer As String, strAddress As String
    Dim strCity As String, strRegion As String

    ' Assign object property of control to variable.
    Set objWord = Me!OLE1.Object.Application.Wordbasic
    ' Assign customer address to variables.
    strCustomer = Me!CompanyName
    strAddress = Me!Address
    strCity = Me!City & ", "
    If Not IsNull(Me!Region) Then
        strRegion = Me!Region
    Else
        strRegion = Me!Country
    End If
    ' Activate ActiveX control.
    Me!OLE1.Action = acOLEActivate
    With objWord
        .StartOfDocument
        ' Go to first placeholder.
        .LineDown 2
        ' Highlight placeholder text.
        .EndOfLine 1
        ' Insert customer name.
        .Insert strCustomer
        ' Go to next placeholder.
        .LineDown
        .StartOfLine
        ' Highlight placeholder text.
        .EndOfLine 1
        ' Insert address.
        .Insert strAddress
        ' Go to last placeholder.
        .LineDown
        .StartOfLine
        ' Highlight placeholder text.
        .EndOfLine 1
        ' Insert City and Region.
        .Insert strCity & strRegion
        .FilePrint
        .FileClose
    End With
    Set objWord = Nothing
End Sub


OldValue Property Example

The following example checks to determine if new data entered in a field is within 10 percent of the value of the original data. If the change is greater than 10 percent, the OldValue property is used to restore the original value. This procedure could be called from the BeforeUpdate event of the control that contains data you want to validate.

Sub Validate_Field()
    Dim curNewValue As Currency
    Dim curOriginalValue As Currency
    Dim curChange As Currency, strMsg As String

    curNewValue = Forms!Products!UnitPrice
    curOriginalValue = Forms!Products!UnitPrice.OldValue
    curChange = Abs(curNewValue - curOriginalValue)
    If curChange > (curOriginalValue * .1) Then
        strMsg = "Change is more than 10% of original unit price. " _
        & "Restoring original unit price."
        MsgBox strMsg, vbExclamation, "Invalid change"
        Forms!Products!UnitPrice = curOriginalValue
    End If
End Sub


OLEType Property Example

The following example illustrates how to display the Insert Object dialog box and how to display an error message if the Cancel button in the Insert Object dialog box is clicked.

Sub InsertObject_Click()
    Dim conUserCancelled As Integer

    ' Error message returned when user cancels.
    conUserCancelled = 2001
    On Error GoTo ButtonErr
    If OLE1.OLEType = acOLENone Then
        ' No OLE object created.
        ' Display Insert Object dialog box.
        OLE1.Action = acOLEInsertObjDlg
    End If
    Exit Sub

ButtonErr:
    If Err = conUserCancelled Then ' Display message.
        MsgBox "You clicked the Cancel button; " _
            & "no object was created."
    End If
    Resume Next
End Sub


 OnAction Property

OnAction Property

In Microsoft Access 2000, you can use the Toolbar Control Properties dialog box for command bar controls to set the OnAction property for a control on a command bar. Display the Customize dialog box by pointing to Toolbars on the View menu and clicking Customize. For menu bar and toolbar controls, display the menu bar or toolbar, and then right-click the control whose OnAction property you want to set. For shortcut menu controls, select the Shortcut Menus check box on the Toolbars tab of the Customize dialog box, then find the shortcut menu control you want on the menu bar that's displayed and right-click the control. Click the Properties command. Enter the macro or Sub procedure you want to run in the On Action box.

You can use the OnAction property only to run a macro or a Sub procedure. To run a macro, select it from the drop-down list in the On Action box, or enter its name in the box. To run a Sub procedure, enter its name in the form =subname( ) in the box.

You can also set the OnAction property to an expression. The expression can contain a built-in or user-defined Sub procedure or combination of Sub procedures. When Microsoft Access evaluates an expression, it performs all of the operations in the expression. For example, the following is an expression that runs the user-defined Sub procedure "CustomControlProc":

=CustomControlProc()

In Visual Basic, the OnAction property takes a string, so to set it to an expression, you must pass it a string that contains the expression. In passing the string, be careful to enclose strings within the string in quotation marks ("). (Note that in the On Action box in the Toolbar Control Properties dialog box, an enclosed string in the expression should only have one set of quotation marks around it.) Also, make sure you include the equal sign (=) to specify that the string contains an expression. Your Sub procedure must contain no arguments, remember to include parentheses [( )] within the string. You can set the OnAction property to the previous expression with the following string:

"=CustomControlProc()"

Note that you must set the OnAction property to the name of a macro or Sub procedure; you can't set it to the name of a Function procedure.

For custom command bar controls, you must set this property in order for the control to perform any action. If you set this property for a built-in control, the OnAction property setting overrides the normal actions that the control performs; that is, you can force a built-in control to perform different actions from its default actions. The control becomes in effect a custom control.


OpenArgs Property Example

The following example uses the OpenArgs property to open the Employees form to a specific employee record and demonstrates how the OpenForm method sets the OpenArgs property. You can run this procedure as appropriate - for example, when the AfterUpdate event occurs for a custom dialog box used to enter new information about an employee.

Sub OpenToCallahan()
    DoCmd.OpenForm "Employees", acNormal, , , acReadOnly, _
     , "Callahan"
End Sub

Sub Form_Open(Cancel As Integer)
    Dim strEmployeeName As String
    ' If OpenArgs property contains employee name, find
    ' corresponding employee record and display it on form. For
    ' example,if the OpenArgs property contains "Callahan",
    ' move to first "Callahan" record.
    strEmployeeName = Forms!Employees.OpenArgs
    If Len(strEmployeeName) > 0 Then
        DoCmd.GoToControl "LastName"
        DoCmd.FindRecord strEmployeeName, , True, , True, , True
    End If
End Sub

The next example uses the FindFirst method to locate the employee named in the OpenArgs property.

Private Sub Form_Open(Cancel As Integer)
    If Not IsNull(Me.OpenArgs) Then
        Dim strEmployeeName As String
        strEmployeeName = Me.OpenArgs
        Dim RS As Recordset
        Set RS = Me.RecordsetClone
        RS.FindFirst "LastName = '" & strEmployeeName & "'"
        If Not RS.NoMatch Then
            Me.Bookmark = RS.Bookmark
        End If
    End If
End Sub


OrdinalPosition Property Example

OrdinalPosition Property Example (MDB)

The following example changes the setting of the OrdinalPosition property for the first field in a Products table. If you examine the table in Datasheet view before and after running this example, you'll see that it moves the ProductID field from the first column to the last column.

Sub SetPosition()
    Dim dbs As Database, tdf As TableDef
    Dim fldFirst As Field, fld As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Products table.
    Set tdf = dbs.TableDefs!Products
    ' Return reference to first field in table.
    Set fldFirst = tdf.Fields(0)
    ' Set OrdinalPosition property to last position in collection.
    fldFirst.OrdinalPosition = tdf.Fields.Count
    ' Refresh Fields collection.
    tdf.Fields.Refresh
    ' Enumerate all fields and print ordinal position.
    For Each fld In tdf.Fields
        Debug.Print fld.Name, fld.OrdinalPosition
    Next fld
    Set dbs = Nothing
End Sub


OrganizeInFolder Property Example

This example specifies that all image files are saved in the same folder when the document is saved as a Web page.

Application.DefaultWebOptions.OrganizeInFolder = False


OutputAllFields Property Example

The following example uses an asterisk in an SQL statement to select all the fields in the Shippers table. It then displays the fields in text boxes on a form by setting the ControlSource property for the text boxes to the names of the individual fields in the query.

Dim strGetSQL AS String
strGetSQL = "SELECT * FROM Shippers"
Forms!Form1.RecordSource = strGetSQL
Text1.ControlSource = "ShipperID"
Text2.ControlSource = "CompanyName"

In the output for the next SQL statement, the values in the CompanyName and ProductName fields are sorted in ascending order, and all the fields in the Suppliers and Products tables are displayed in the field lists and in Datasheet view. You enter this SQL statement in SQL view of the Query window.

SELECT * FROM Suppliers INNER JOIN Products
ON Suppliers.[SupplierID] = Products.[SupplierID]
ORDER BY Suppliers.[CompanyName], Products.[ProductName];


PageHeader, PageFooter Properties Example

The following example sets the PageHeader property for a report to Not With Rpt Hdr. To run this example, type the following line in the Debug window for a report named Report1.

Reports!Report1.PageHeader = 1


Page, Pages Properties Example

The following example displays a message that tells how many pages the report contains. For this example to work, the report must include a text box for which the ControlSource property is set to the expression =Pages. To test this example, paste the following code into the Page Event for the Alphabetical List of Products form.

Dim intTotalPages As Integer, strMsg As String
intTotalPages = Me.Pages
strMsg = "This report contains " & intTotalPages & " pages."
MsgBox strMsg


Painting Property Example

The following example uses the Painting property to enable or disable form painting depending on whether the SetPainting variable is set to True (-1) or False (0). If form painting is turned off, Microsoft Access displays the hourglass icon while painting is turned off.

Function EnablePaint(frmName As Form,_
     ByVal SetPainting As Integer) As Integer
    frmName.Painting = SetPainting
    If SetPainting = False Then    'Form painting is turned off.
        DoCmd.Hourglass True            'Display hourglass icon.
    Else
        DoCmd.Hourglass False        'Don't hourglass display icon.
    End If
End Function


 Parameter Property

Parameter Property

In Microsoft Access 2000, you can use the Toolbar Control Properties sheet for command bar controls to set the Parameter property for a control on a command bar. Display the Customize dialog box by pointing to Toolbars on the View menu and clicking Customize. For menu bar and toolbar controls, display the menu bar or toolbar, and then right-click the control whose Parameter property you want to set. For shortcut menu controls, select the Shortcut Menus check box on the Toolbars tab of the Customize dialog box, then find the shortcut menu control you want on the menu bar that's displayed and right-click the control. Click the Properties command. Enter the parameter information you want in the Parameter box.


Parent Property Example

The following example uses the Parent property to examine the parent of the Speedy Label label control, the Speedy check box control, and the ShipVia option group.

Dim frm As Form
Dim ctl As Control
Set frm = Forms!Orders
Set ctl = frm.[Speedy Label]
' Returns name of control attached to label.
MsgBox "The parent control is " & ctl.Parent.Name
Set ctl = frm.Speedy
' Returns name of control containing control.
MsgBox "The parent control is " & ctl.Parent.Name
Set ctl = frm.ShipVia
' Returns name of form containing option group control.
MsgBox "The parent control is " & ctl.Parent.Name

The next example also returns the name of the form containing the option group control.

MsgBox Forms!Orders! _
    [Speedy Label].Parent.Parent.Parent.Name


PercentPosition Property Example

PercentPosition Property Example (MDB)

The following example expresses the current position of a record in a recordset as a percent, then displays it in a message box:

Sub PercentOfRecords()
    Dim dbs As Database, rst As Recordset
    Dim strInput As String, strSQL As String

    strSQL = "SELECT * FROM Products ORDER BY ProductName;"
    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Open dynaset-type Recordset object.
    Set rst = dbs.OpenRecordset(strSQL, dbOpenDynaset)
    ' Move to end of recordset.
    rst.MoveLast
    ' Return to start of recordset.
    rst.MoveFirst
    ' Prompt user to input name of product.
    strInput = InputBox("Please enter the full product name.")
    ' Find first occurrence.
    rst.FindFirst "ProductName = '" & strInput & "'"
    ' Display current position as a percent.
    MsgBox("The current position in the Recordset is " _
        & rst.PercentPosition & "%.")
    rst.Close
    Set dbs = Nothing
End Sub


 Permissions Property (MDB)

Permissions Property (MDB)

Microsoft Access defines four types of Container objects in addition to those defined by the Microsoft Jet database engine. These include the Forms, Reports, Scripts, or Modules Container objects. Individual Form, Report, Script and Module Document objects belong to the Documents collections of these Container objects. For these Container and Document objects, you can also set the Permissions property to the following constants.

Constant | User or group can
acSecFrmRptReadDef | Open the form or report in Design view but not make any changes.
acSecFrmRptWriteDef | Modify or delete the form or report in Design view.
acSecFrmRptExecute | Open the form in Form view or Datasheet view; print or open the report in Sample Preview or Print Preview.
acSecMacReadDef | Open the Macro window and view a macro without making changes.
acSecMacWriteDef | Modify or delete the macro in the Macro window.
acSecModReadDef | Open the module but not make any changes.
acSecModWriteDef | Modify or delete the contents of a module.
acSecMacExecute | Run the macro.

Note acSecModReadDef and acSecModWriteDef are included for backward compatibility only. Since Module access is now controlled by the Protection property in the Visual Basic envronment, these constants are no longer valid parameters in Microsoft Access2000.


Permissions, UserName Properties Example

Permissions, UserName Properties Example (MDB)

The following example adds a new user account by creating a User object and appending it to the Users collection of the default workspace. It then sets permissions for the new user for all tables in the database. The procedure first sets the UserName property of a Tables Container object to the name of the new user, then sets the Permissions property to the appropriate permissions.

Note that the And operator performs a bitwise comparison to determine whether an attribute is currently set.

Note When programming security, you should avoid including actual password and PID information in your code. The following example is intended for demonstration purposes only.

Function SetPermissions(strName As String, strPID As String, _
        strPassword As String) As Boolean
    Dim dbs As Database, ctrTables As Container
    Dim wspDefault As Workspace, usrNew As User

    On Error GoTo ErrorSetPermissions
    ' Return reference to default workspace.
    Set wspDefault = DBEngine.Workspaces(0)
    ' Create User object, specifying name, PID, and password.
    Set usrNew = wspDefault.CreateUser(strName, _
            strPID, strPassword)
    ' Append to Users collection of default workspace.
    wspDefault.Users.Append usrNew
    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Tables container.
    Set ctrTables = dbs.Containers!Tables
    ctrTables.UserName = usrNew.Name
    ' Set new user's permissions for tables.
    ctrTables.Permissions = dbSecInsertData _
        And dbSecReplaceData And dbSecDeleteData
    SetPermissions = True

ExitSetPermissions
    Set dbs = Nothing
    Exit Function

ErrorSetPermissions
    MsgBox Err & ": " & Err.Description
    SetPermissions = False
    Resume ExitSetPermissions
End Function

The next procedure prompts the user to enter their name and a password and creates a PID value:

Sub NewUserPrompt()
    Dim strName As String, strPassword As String
    Dim intR As Integer, strPID As String
    Dim blnReturn As Boolean

    ' Prompt user for name and password.
    strName = InputBox("Enter your name.")
    strPassword = InputBox("Enter a password with " _
        & "up to 14 characters.")
    ' Seed random number generator.
    Randomize
    ' Generate PID string.
    For intR = 0 To 19
        strPID = strPID & Chr$(Int(256 * Rnd))
    Next intR
    ' Call SetPermissions function.
    blnReturn = SetPermissions(strName, strPID, strPassword)
End Sub


PictureData Property Example

The following example uses three image controls to animate a butterfly image across a form. The Hidden1 image control contains a picture of a butterfly with its wings up and the Hidden2 image control contains a picture of the same butterfly with its wings down. Both image controls have their Visible property set to False (0). The TimerInterval property is set to 200. Each time the Timer event occurs, the picture in the image control Visible1 is changed by using the PictureData property of the hidden image controls, and the visible image control is moved 200 twips to the right. The visible image control is moved back to the left side of the form when its Left property value is greater than the width of the form stored in the public variable gfrmWidth. The value of gfrmWidth is set to Me.Width in the form's open event.

Private Sub Form_Timer()
    Static intPic As Integer
    Select Case intPic
        Case Is = 1
            Me!Visible1.PictureData = Me!Hidden1.PictureData
        Case Is = 2
            Me!Visible1.PictureData = Me!Hidden2.PictureData
        Case Else
    End Select
    If intPic = 2 Then intPic = 0
    intPic = intPic + 1
    If (Me!Visible1.Left > gfrmWidth) Then Me!Visible1.Left = 0
    Me!Visible1.Left = Me!Visible1.Left + 200
End Sub


 Position Property

Position Property

You can't set the Position property to the intrinsic constant msoBarPopup. To create a shortcut menu, use the Position argument of the Add method of the CommandBars collection.


PostalAddress

PostalAddress Property

You can use the PostalAddress property to specify or determine the postal code and the Customer Barcode data corresponding to the address information displayed in a specified field/textbox. The PostalAddress wizard enables the setting of these properties.

Setting

For processing the conversion, correct settings are necessary for all properties of field/textbox that will contain postal code, address, Customer Barcode data.

For settings, use section 1 to 3, delimiting with semicolon (;).

Setting for field/textbox for Postal code

Specifies the type of postal code for the field/textbox.

Section | Description
1 | Specifies field/textbox for Prefecture names
2 | Specifies field/textbox for City/Ward/County
3 | Specifies field/textbox for Street/Town/Village

Setting for field/textbox for address

Specifies the field/textbox contains a postal code or Customer Barcode data.

Section | Description
1 | Specifies field/textbox for postal code
2 | Specifies field/textbox for Customer Barcode data

Note Two semicolons are required at the end of the value.

Setting for field/textbox for Customer Barcode data

Specifies the type of Customer Barcode data in the field/textbox. This setting is the same as the field/textbox for postal code.

Section | Description
1 | Specifies field/textbox for Prefecture names
2 | Specifies field/textbox for City/Ward/County
3 | Specifies field/textbox for Street/Town/Village

Remarks

The postal code consist of 3 address items; Prefecture, City/Ward/County, Street/Town/Village. Sections in PostalAddress property of field/textbox for a postal code can be omitted. The following table shows how to omit sections from the property setting.

Property Settings | Address input in field/textbox
 | Address1 | Address2 | Address3
Address1 | Prefecture+City/Ward/County+Street/Town/Village |  |
Address1; | Prefecture |  |
;Address1 | City/Ward/County+Street/Town/Village |  |
;Address1; | City/Ward/County |  |
;;Address1 | Street/Town/Village |  |
Address1;Address2 | Prefecture | City/Ward/County+Street/Town/Village |
Address1;Address1 | Prefecture+City/Ward/County+Street/Town/Village |  |
Address1;Address2; | Prefecture | City/Ward/County |
Address1;Address1; | Prefecture+City/Ward/County |  |
;Address1;Address2 | City/Ward/County | Street/Town/Village |
;Address1;Address1 | City/Ward/County+Street/Town/Village |  |
Address1;Address2;Address3 | Prefecture | City/Ward/County | Street/Town/Village
Address1;Address2;Address2 | Prefecture | City/Ward/County+Street/Town/Village |
Address1;Address1;Address2 | Prefecture+City/Ward/County | Street/Town/Village |
Address1;Address1;Address1 | Prefecture+City/Ward/County+Street/Town/Village |  |

The postal code converter program has been developed and licensed by Advanced Giken Corporation for Microsoft Corporation.


PreviousControl Property Example

The following example displays a message if the control that last received the focus wasn't the txtFinalEntry text box.

Function ProcessData() As Integer
    Dim ctlPrevious As Control
    ' No previous control error.
    Const conNoPreviousControl = 2483
    On Error GoTo Process_Err
    Set ctlPrevious = Screen.PreviousControl
    If ctlPrevious.Name = "txtFinalEntry" Then
        ' Process Data Here.
            .
            .
            .
        ProcessData = True
    Else
        ' Set focus to txtFinalEntry and display message.
        Me!txtFinalEntry.SetFocus
        MsgBox "Please enter a value here."
        ProcessData = False
    End If
Process_Bye:
    Exit Function
Process_Err:
    If Err = conNoPreviousControl Then
        Me!txtFinalEntry.SetFocus
        MsgBox "Please enter a value to process."
        ProcessData = False
    End If
    Resume Process_Bye
End Function


 PrimaryKey Property

PrimaryKey Property

In Microsoft Access, when you set a primary key for a table in table Design view, the primary key is automatically defined as the primarykey index.


 Primary Property (MDB)

Primary Property (MDB)

In Microsoft Access, when you set a primary key for a table in table Design view, the primary key is automatically defined as the primary index.


ProcOfLine Property Example

The following function procedure lists the names of all procedures in a specified module:

Function AllProcs(strModuleName As String)
    Dim mdl As Module
    Dim lngCount As Long, lngCountDecl As Long, lngI As Long
    Dim strProcName As String, astrProcNames() As String
    Dim intI As Integer, strMsg As String
    Dim lngR As Long

    ' Open specified Module object.
    DoCmd.OpenModule strModuleName
    ' Return reference to Module object.
    Set mdl = Modules(strModuleName)
    ' Count lines in module.
    lngCount = mdl.CountOfLines
    ' Count lines in Declaration section in module.
    lngCountDecl = mdl.CountOfDeclarationLines
    ' Determine name of first procedure.
    strProcName = mdl.ProcOfLine(lngCountDecl + 1, lngR)
    ' Initialize counter variable.
    intI = 0
    ' Redimension array.
    ReDim Preserve astrProcNames(intI)
    ' Store name of first procedure in array.
    astrProcNames(intI) = strProcName
    ' Determine procedure name for each line after declarations.
    For lngI = lngCountDecl + 1 To lngCount
        ' Compare procedure name with ProcOfLine property value.
        If strProcName <> mdl.ProcOfLine(lngI, lngR) Then
            ' Increment counter.
            intI = intI + 1
            strProcName = mdl.ProcOfLine(lngI, lngR)
            ReDim Preserve astrProcNames(intI)
            ' Assign unique procedure names to array.
            astrProcNames(intI) = strProcName
        End If
    Next lngI
    strMsg = "Procedures in module '" & strModuleName & "': " _
        & vbCrLf & vbCrLf
    For intI = 0 To UBound(astrProcNames)
        strMsg = strMsg & astrProcNames(intI) & vbCrLf
    Next intI
    ' Dialog box listing all procedures in module.
    MsgBox strMsg
End Function

You could call this function with a procedure such as the following:

Sub GetAllProcs()
    AllProcs "Utility Functions"
End Sub


ProcStartLine, ProcBodyLine, ProcCountLines Properties Example

The following function prints information about a specified procedure in a module to the Debug window:

Function ProcLineInfo(strModuleName As String, _
     strProcName As String)
    Dim mdl As Module
    Dim lngStartLine As Long, lngBodyLine As Long
    Dim lngCount As Long, lngEndProc As Long

    ' Open specified Module object.
    DoCmd.OpenModule strModuleName
    ' Return reference to Module object.
    Set mdl = Modules(strModuleName)

    ' Count lines in procedure.
    lngCount = mdl.ProcCountLines(strProcName, vbext_pk_Proc)
    ' Determine start line.
    lngStartLine = mdl.ProcStartLine(strProcName, vbext_pk_Proc)
    ' Determine body line.
    lngBodyLine = mdl.ProcBodyLine(strProcName, vbext_pk_Proc)
    Debug.Print

    ' Print all lines in procedure preceding body line.
    Debug.Print "Lines preceding procedure " & strProcName & ": "
    Debug.Print mdl.Lines(lngStartLine, lngBodyLine - lngStartLine)

    ' Determine line number of last line in procedure.
    lngEndProc = (lngBodyLine + lngCount - 1) _
         - Abs(lngBodyLine - lngStartLine)

    ' Print all lines in body of procedure.
    Debug.Print "Body lines: "
    Debug.Print mdl.Lines(lngBodyLine, (lngEndProc - lngBodyLine) _
     + 1)
End Function

You could call this function from the Northwind sample database with a procedure such as the following:

Sub GetProcInfo()
    ProcLineInfo "Utility Functions", "IsLoaded"
End Sub


Properties Property (Properties Collection) Example

The following example enumerates the Properties collection of the open Orders form and prints the name of each property and its value.

Sub CurrentPropSettings()
    Dim frm As Object, prp As Integer
    Set frm = Application.Forms("Orders")
    ' Enumerate Properties collection.
    For prp = 0 To frm.Properties.Count - 1
        ' Print name of property and value.
        Debug.Print frm.Properties(prp).Name & " = " _
            & frm.Properties(prp).Value
    Next prp
End Sub


Properties Property Example

The following procedure uses the Properties property to print all the properties associated with the controls on a form to the Debug window. To run this code, place a command button named cmdListProperties on a form and paste the following code into the form's Declarations section. Click the command button to print the list of properties in the Debug window.

Sub cmdListProperties_Click()
    ListControlProps Me
End Sub

Sub ListControlProps(frm As Form)
    Dim ctl As Control, prp As Property

    On Error GoTo props_err
    For Each ctl In frm.Controls
        Debug.Print ctl.Properties("Name")
        For Each prp In ctl.Properties
            Debug.Print vbTab & prp.Name & " = " & prp.Value
        Next prp
    Next ctl

props_bye:
    Exit Sub

props_err:
    If Err = 2187 Then
        Debug.Print vbTab & prp.Name & " = Only available " _
            & "at design time."
        Resume Next
    Else
        Debug.Print vbTab & prp.Name & " = Error Occurred: " & Err
        Resume Next
    End If
End Sub


 Protection Property

Protection Property

In Microsoft Access 2000, you can use the Toolbar Properties sheet to set the various options of the Protection property that prevent or allow user customization of a menu bar, toolbar, or custom shortcut menu. Point to Toolbars on the View menu and click Customize, then click the Properties button in the Customize dialog box. Select the menu bar, toolbar, or custom shortcut menu you want in the Selected Toolbar box, and then use the Docking combo box and the Allow Customizing, Allow Resizing, Allow Moving, and Allow Showing/Hiding check boxes to set the protection you want. For custom shortcut menus, the only option that's available is Allow Customizing.


PrtDevMode Property Example

The following example uses the PrtDevMode property to check the user-defined page size for a report:

Type str_DEVMODE
    RGB As String * 94
End Type

Type type_DEVMODE
    strDeviceName As String * 16
    intSpecVersion As Integer
    intDriverVersion As Integer
    intSize As Integer
    intDriverExtra As Integer
    lngFields As Long
    intOrientation As Integer
    intPaperSize As Integer
    intPaperLength As Integer
    intPaperWidth As Integer
    intScale As Integer
    intCopies As Integer
    intDefaultSource As Integer
    intPrintQuality As Integer
    intColor As Integer
    intDuplex As Integer
    intResolution As Integer
    intTTOption As Integer
    intCollate As Integer
    strFormName As String * 16
    lngPad As Long
    lngBits As Long
    lngPW As Long
    lngPH As Long
    lngDFI As Long
    lngDFr As Long
End Type

Sub CheckCustomPage(rptName As String)
    Dim DevString As str_DEVMODE
    Dim DM As type_DEVMODE
    Dim strDevModeExtra As String
    Dim rpt As Report
    Dim intResponse As Integer
    ' Opens report in Design view.
    DoCmd.OpenReport rptName, acDesign
    Set rpt = Reports(rptName)
    If Not IsNull(rpt.PrtDevMode) Then
        strDevModeExtra = rpt.PrtDevMode
        ' Gets current DEVMODE structure.
        DevString.RGB = strDevModeExtra
        LSet DM = DevString
        If DM.intPaperSize = 256 Then
            ' Display user-defined size.
            intResponse = MsgBox("The current " _
                & "custom page size is " _
                & DM.intPaperWidth / 254 _
                 & " inches wide by " _
                & DM.intPaperLength / 254 _
                 & " inches long. Do you want " _
                & "to change the settings?", 4)
        Else
            ' Currently not user-defined.
            intResponse = MsgBox("The report " _
                & "does not have a custom page " _
                & "size. " _
                & "Do you want to define one?", 4)
        End If
        If intResponse = 6 Then
            ' User wants to change settings.
            ' Initialize fields.
            DM.lngFields = DM.lngFields Or _
             DM.intPaperSize Or DM.intPaperLength _
                Or DM.intPaperWidth
            DM.intPaperSize = 256    ' Set custom page.
            ' Prompt for length and width.
            DM.intPaperLength =_
             InputBox("Please enter page length " _
                & "in inches.") * 254
            DM.intPaperWidth =_
             InputBox("Please enter page width " _
                & "in inches.") * 254
            LSet DevString = DM        ' Update property.
            Mid(strDevModeExtra, 1, 94) = DevString.RGB
            rpt.PrtDevMode = strDevModeExtra
        End If
    End If
End Sub

The following example shows how to change the orientation of the report. This example will switch the orientation from portrait to landscape or landscape to portrait depending on the report's current orientation.

Sub SwitchOrient(strName As String)
    Const DM_PORTRAIT = 1
    Const DM_LANDSCAPE = 2
    Dim DevString As str_DEVMODE
    Dim DM As type_DEVMODE
    Dim strDevModeExtra As String
    Dim rpt As Report
    ' Opens report in Design view.
    DoCmd.OpenReport strName, acDesign
    Set rpt = Reports(strName)
    If Not IsNull(rpt.PrtDevMode) Then
        strDevModeExtra = rpt.PrtDevMode
        DevString.RGB = strDevModeExtra
        LSet DM = DevString
        DM.lngFields = DM.lngFields Or _
             DM.intOrientation    ' Initialize fields.
        If DM.intOrientation = DM_PORTRAIT Then
            DM.intOrientation = DM_LANDSCAPE
        Else
            DM.intOrientation = DM_PORTRAIT
        End If
        LSet DevString = DM            ' Update property.
        Mid(strDevModeExtra, 1, 94) = DevString.RGB
        rpt.PrtDevMode = strDevModeExtra
    End If
End Sub


PrtMip Property Example

The following PrtMip property example demonstrates how to set up the report with two horizontal columns.

Type str_PRTMIP
    strRGB As String * 28
End Type
Type type_PRTMIP
    xLeftMargin As Long
    yTopMargin As Long
    xRightMargin As Long
    yBotMargin As Long
    fDataOnly As Long
    xWidth As Long
    yHeight As Long
    fDefaultSize As Long
    cxColumns As Long
    yColumnSpacing As Long
    xRowSpacing As Long
    rItemLayout As Long
    fFastPrint As Long
    fDatasheet As Long
End Type

Sub PrtMipCols(strName As String)
    Dim PrtMipString As str_PRTMIP
    Dim PM As type_PRTMIP
    Dim rpt As Report
    Const PM_HORIZONTALCOLS = 1953
    Const PM_VERTICALCOLS = 1954
    DoCmd.OpenReport strName, acDesign
    Set rpt = Reports(strName)
    PrtMipString.strRGB = rpt.PrtMip
    LSet PM = PrtMipString
    ' Create two columns.
    PM.intColumns = 2
    ' Set 0.25 inch between rows.
    PM.intRowSpacing = 0.25 * 1440
    ' Set 0.5 inch between columns.
    PM.intColumnSpacing = 0.5 * 1440
    PM.intItemLayout = PM_HORIZONTALCOLS

    LSet PrtMipString = PM            ' Update property.
    rpt.PrtMip = PrtMipString.strRGB
End Sub

The next PrtMip property example shows how to set all margins to 1 inch.

Sub SetMarginsToDefault(strName As String)
    Dim PrtMipString As str_PRTMIP
    Dim PM As type_PRTMIP
    Dim rpt As Report
    DoCmd.OpenReport strName, acDesign
    Set rpt = Reports(strName)
    PrtMipString.strRGB = rpt.PrtMip
    LSet PM = PrtMipString
    PM.intLeftMargin = 1 * 1440    ' Set margins.
    PM.intTopMargin = 1 * 1440
    PM.intRightMargin = 1 * 1440
    PM.intBotMargin = 1 * 1440
    LSet PrtMipString = PM            ' Update property.
    rpt.PrtMip = PrtMipString.strRGB
End Sub


QueryTimeout Property Example

QueryTimeout Property Example (MDB)

The following example sets the QueryTimeout property of the current database:

Sub SetTimeout()
    Dim dbs As Database

    ' Return reference to current database.
    Set dbs = CurrentDb
    dbs.QueryTimeout = 120
    Set dbs = Nothing
End Sub


Error Property, PageCount Property, SnapshotPath Property, and ReadyStateChange Event Examples

The following example uses a Select Case statement in a Snapshot control's ReadyStateChange event procedure to determine the status of the ReadyState property. If a snapshot file is successfully loaded into the control, a message box is displayed showing file path and page count information. If an error occurs loading the snapshot, a custom error handling procedure is called to display information about the error that occurred. At the beginning of the procedure, constants are defined for each of the possible values for the ReadyState property.

Private Sub Snapshot1_ReadyStateChange(ByVal ReadyState As Long)
    Const conSnpNotInitialized = 0
    Const conSnpLoading = 1
    Const conSnpStillDownloading = 2
    Const conSnpDownloadComplete = 4
    Select Case ReadyState
        Case conSnpNotInitialized
            ' Snapshot control is not initialized.
        Case conSnpLoading
            ' Snapshot control is loading.
        Case conSnpStillDownloading
            ' Snapshot control is loaded, but the snapshot
            ' file is still downloading.
        Case conSnpDownloadComplete
            ' Snapshot loading is complete.
        With Snapshot1
            If .Error = 0 Then
                ' Snapshot file successfully loaded into control.
                    Msgbox .SnapshotPath & _
                    " has been successfully loaded into the " _
                    & "Snapshot Viewer control." & vbCrLf & vbCrLf _
                    & "This snapshot file contains " & .PageCount _
                    & " pages."
            Else
                ' An error occurred loading the snapshot file.
                Call HandleSnapError(.SnapshotPath, .Error)
                Exit sub
            End If
        End With
    End Select
End Sub

Sub HandleSnapError(strFile As String, lngError As Long)
    Dim strError As String
    Select Case lngError
        Case 2500
            strError = "Error " & CStr(lngError) & ": Invalid value."
        Case 2501
            strError = "Error " & CStr(lngError) & ": Invalid page."
        Case 2502
            strError = "Error " & CStr(lngError) & _
                ": Missing or invalid snapshot file."
        Case 2503
            strError = "Error " & CStr(lngError) & _
                ": Property is read-only."
        Case 2504
            strError = "Error " & CStr(lngError) & _
                ": Operation canceled by user."
        Case 2505
            strError = "Error " & CStr(lngError) & _
                ": You need a newer version of the " _
                & "Snapshot Viewer control to view this snapshot file."
        Case 2506
            strError = "Error " & CStr(lngError) & _
                ": An error occurred while printing."
        Case 2507
            strError = "Error " & CStr(lngError) & _
                ": An error occurred while opening a snapshot file."
        Case 2508
            strError = "Error " & CStr(lngError) & ": Out of memory."
        Case 2509
            strError = "Error " & CStr(lngError) & _
                ": An error occurred writing to a " _
                & "temporary file while opening a snapshot file."
        Case 2510
            strError = "Error " & CStr(lngError) & _
                ": You have no printer installed, or no printer " _
                & "has been selected as the default."
        Case Else
            strError = "Error " & CStr(lngError) & _
                ": An unknown error occurred."
    End Select

    MsgBox strError & " File: " & strFile
End Sub


RecordCount Property Example

RecordCount Property Example (MDB)

The following example creates a Recordset object based on the Orders table and then determines the number of records in the Recordset object:

Sub CountRecords()
    Dim dbs As Database, rst As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Open table-type Recordset object.
    Set rst = dbs.OpenRecordset("Orders")
    Debug.Print rst.RecordCount
    rst.Close
    Set dbs = Nothing
End Sub


RecordsAffected Property Example

RecordsAffected Property Example (MDB)

The following example prints the number of records updated by an action query:

Sub RecordsUpdated()
    Dim dbs As Database, qdf As QueryDef
    Dim strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    strSQL = "UPDATE Employees SET Title = " _
        & "'Senior Sales Representative' " _
        & "WHERE Title = 'Sales Representative';"
    ' Create new QueryDef object.
    Set qdf = dbs.CreateQueryDef("UpdateTitles", strSQL)
    ' Execute QueryDef object.
    qdf.Execute
    Debug.Print qdf.RecordsAffected
    Set dbs = Nothing
End Sub


RecordsetClone Property Example

The following example uses the RecordsetClone property to create a new clone of the Recordset object from the Orders form and then prints the names of the fields in the Immediate window.

Sub Print_Field_Names()
    Dim rst As Recordset, intI As Integer
    Dim fld As Field

    Set rst = Me.RecordsetClone
    For Each fld in rst.Fields
        ' Print field names.
        Debug.Print fld.Name
    Next
End Sub

The next example uses the RecordsetClone property and the Recordset object to synchronize a recordset's record with the form's current record. When a company name is selected from a combo box, the FindFirst method is used to locate the record for that company and the Recordset object's DAO Bookmark property is assigned to the form's Bookmark property, causing the form to display the found record.

Sub SupplierID_AfterUpdate()
    Dim rst As Recordset
    Dim strSearchName As String

    Set rst = Me.RecordsetClone
    strSearchName = Str(Me!SupplierID)
    rst.Find "SupplierID = " & strSearchName
        If rst.NoMatch Then
            MsgBox "Record not found"
        Else
            Me.Bookmark = rst.Bookmark
        End If
    rst.Close
End Sub


RecordsetType Property Example

In the following example, only if the user ID is ADMIN can records be updated. This code sample sets the RecordsetType property to Snapshot if the public variable gstrUserID value is not ADMIN.

Sub Form_Open(Cancel As Integer)
    Const conSnapshot = 2
    If gstrUserID <> "ADMIN" Then
        Forms!Employees.RecordsetType = conSnapshot
    End If
End Sub


Recordset Property Example

The following example uses the Recordset property to create a new copy of the Recordset object from the currently form and then prints the names of the fields in the Debug window.

Sub Print_Field_Names()
    Dim rst As DAO.Recordset, intI As Integer
    Dim fld As Field

    Set rst = Me.Recordset
    For Each fld in rst.Fields
        ' Print field names.
        Debug.Print fld.Name
    Next
End Sub

The next example uses the Recordset property and the Recordset object to synchronize a recordset's record with the form's current record. When a company name is selected from a combo box, the FindFirst method is used to locate the record for that company, causing the form to display the found record.

Sub SupplierID_AfterUpdate()
    Dim rst As DAO.Recordset
    Dim strSearchName As String

    Set rst = Me.Recordset
    strSearchName = Str(Me!SupplierID)
    rst.FindFirst "SupplierID = " & strSearchName
        If rst.NoMatch Then
            MsgBox "Record not found"
        End If
    rst.Close
End Sub

The following code helps to determine what type of recordset is returned by the Recordset property under different conditions.

Sub CheckRSType()
    Dim rs as Object

    Set rs=Forms(0).Recordset
    If TypeOf rs Is DAO.Recordset Then
    MsgBox "DAO Recordset"
    ElseIf TypeOf rs is ADODB.Recordset Then
    MsgBox "ADO Recordset"
    End If
End Sub


RecordSource Property Example

The following example sets a form's RecordSource property to the Customers table:

Forms!frmCustomers.RecordSource = "Customers"

The next example changes a form's record source to a single record in the Customers table, depending on the company name selected in the cmboCompanyName combo box control. The combo box is filled by an SQL statement that returns the customer ID (in the bound column) and the company name. The CustomerID has a Text data type.

Sub cmboCompanyName_AfterUpdate()
    Dim strNewRecord As String
    strNewRecord = "SELECT * FROM Customers " _
        & " WHERE CustomerID = '" _
        & Me!cmboCompanyName.Value & "'"
    Me.RecordSource = strNewRecord
End Sub


ReplicationConflictFunction Property Example

The following function sets a Microsoft Access property on a DAO object. You can use this function to set the ReplicationConflictFunction property. If the property doesn't already exist in the Properties collection of the UserDefined Document object, Microsoft Access creates and appends it. Note that in order to set this property, you must provide a value of True (-1) for the optional blnDDL argument.

Function SetAccessProperty(obj As Object, strName As String, _
        intType As Integer, varSetting As Variant, _
        Optional blnDDL As Boolean) As Boolean
    Dim prp As Property
    Const intPropNotFound As Integer = 3270

    On Error GoTo Error_SetAccessProperty
    ' Explicitly refer to Properties collection.
    obj.Properties(strName) = varSetting
    obj.Properties.Refresh
    SetAccessProperty = True

Exit_SetAccessProperty:
    Exit Function

Error_SetAccessProperty:
    If Err = intPropNotFound Then
        ' Check whether optional argument has been passed.
        If Not IsMissing(blnDDL) Then
            ' Create property, denote type, set initial value, indicate DDL.
            Set prp = obj.CreateProperty(strName, intType, varSetting, blnDDL)
        Else
            ' Create property, denote type, set initial value.
            Set prp = obj.CreateProperty(strName, intType, varSetting)
        End If
        ' Append Property object to Properties collection.
        obj.Properties.Append prp
        obj.Properties.Refresh
        SetAccessProperty = True
        Resume Exit_SetAccessProperty
    Else
        MsgBox Err & ": " & vbCrLf & Err.Description
        SetAccessProperty = False
        Resume Exit_SetAccessProperty
    End If
End Function

The following procedure calls the SetAccessProperty function to set the ReplicationConflictFunction property:

Sub SetConflictResolver()
    Dim dbs As Database, ctr As Container, doc As Document
    Dim blnReturn As Boolean

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Databases container.
    Set ctr = dbs.Containers!Databases
    ' Return reference to SummaryInfo Document object.
    Set doc = ctr.Documents!userdefined
    blnReturn = SetAccessProperty(doc, _
        "ReplicationConflictFunction", dbText, "CustomResolver", True)
    ' Evaluate return value.
    If blnReturn = True Then
        Debug.Print "Property set successfully."
    Else
        Debug.Print "Property not set successfully."
    End If
End Sub


ResyncCommand and UniqueTable Properties Example Scenario

There are two SQL Server tables involved in these scenarios, Patients and Doctors, with a one-to-many relationship from Doctors to Patients. Both tables have an identity column as a primary key.

Patients table

Column | Datatype | Attributes
ID | int | identity, Primary Key
LastName | varchar(30) | not null
FirstName | varchar(20) | not null
PrimaryDoc | int | null Foreign Key references Doctors(DocID)

Doctors table

Column | Datatype | Attributes
DocID | int | identity, Primary Key
DocName | varchar(30) | not null Unique
DocPhone | char(15) | not null

The user wants to create an updatable datasheet view of data on patients and their doctors. The user wants the grid to show the following:

ID | LastName | FirstName | PrimaryDoc | DocName | DocPhone
1 | Jones | Peter | 10 | Welby | (206) 882-8080
2 | Williams | Jay | 20 | McCoy | (206) 936-4321
3 | Roberts | George | 20 | McCoy | (206) 936-4321
4 | Crary | Dave | 10 | Welby | (206) 882-8080

The actual query underlying this form is logically:

SELECT P.ID, P.LastName, P.FirstName, P.PrimaryDoc, D.DocName, _
    D.DocPhone FROM Patients P JOIN Doctors D ON _
    ( P.PrimaryDoc = D.DocID)

User interface actions

  1. The user wants to change the assigned doctor for George Roberts to Dr. Gui (who is an existing doctor with no currently assigned patients). User types in Dr. GUI's DocID value of 30 in the PrimaryDoc column of the 3rd row. User now expects to see "Gui" under DocName and Dr. Gui's phone number in this row.

    Note Normally the Microsoft Access user would want a Lookup column defined on PrimaryDoc so the user could selecta name from a dropdown list and wouldn't have to know the ID for Dr. GUI. In this case there wouldn't likely be a separate column for the DocName-- it would show up in the place of the Primary Doc column. But the user would still expect Dr. Gui's correct phone to appear after the update was made.

  2. The user clicks on * row, wants to add a new patient and assign him to Dr. Welby. Since the ID column is an Identity column for the Patients table, the UI should display something like "(AutoNumber)" in that first cell and not allow the user to enter a value. The user enters in a new patient first name and last name and an existing DocID value in the PrimaryDoc column. A new record is inserted in the Patients table, the ID column should be updated with the newly generated value and displayed on the grid, and the Doctor name and phone columns should be looked up from existing data.

  3. The user wants to delete Peter Jones. The user selects the row and selects Delete. Peter Jones' record is deleted from the Patients table, the row is removed from the cursor, but the cursor does not attempt to delete Dr. Welby's record from the Doctors table (this would generate a server error if DRI was enforced, but even if not enforced by the database, deleting Dr. Welby's record would invalidate the data in row 4, so it should not be attempted by the cursor.)


RowHeight, ColumnWidth Properties Example

The following example changes the row height in Datasheet view of the Customers table to display two lines of data (450 twips) and sets the width of the Address column to 1.5 inches (2160 twips). These property settings will take effect the next time the Customers table is opened in Datasheet view.

To set the RowHeight and ColumnWidth properties, the example uses the SetTableProperty procedure, which is shown in the example for the DatasheetFontItalic and DatasheetFontUnderline properties, and the SetFieldProperty procedure, which is shown in the example for the ColumnHidden property.

Dim dbs As Object, tdfCustomers As Object
Const DB_Long As Long = 4
Const DB_Integer As Integer = 3
Set dbs = CurrentDb
Set tdfCustomers = dbs![Customers]
SetTableProperty tdfCustomers, "RowHeight", DB_Long, 450
SetFieldProperty tdfCustomers![Address], "ColumnWidth", DB_Integer, 2160

The next example takes effect in Datasheet view of the open Customers form. It sets the row height to 450 twips and sizes the column to fit the size of the visible text.

Forms![Customers].RowHeight = 450
Forms![Customers]![Address].ColumnWidth = -2


RowSourceType, RowSource Properties Example - Settings

The following examples show sample RowSource property settings for each RowSourceType property setting.

When the RowSourceType Property Is Set to Value List

If the RowSourceType property is set to Value List, the following table shows valid settings for the RowSource and ColumnCount properties and an illustration of the resulting list.

RowSource setting | List
Mon;Tue;Wed (ColumnCount = 1) | One-column list with three rows
1;Monday;2;Tuesday;3;Wednesday;4;Thursday (ColumnCount = 2) | Two-column list with four rows
Country;Capital;China;Beijing;Brazil;Brasilia (ColumnCount = 2, ColumnHeads = Yes) | Two-column list with one row of column heads and two rows of data

When the RowSourceType Property Is Set to Table/Query

If the RowSourceType property is set to Table/Query, you can set the RowSource property to a table or query name - for example, CategoryList.

The following is a valid SQL statement for a two-column list drawn from the Categories table:

SELECT CategoryID, CategoryName FROM Categories _
 ORDER BY CategoryName;

If the CategoryList query and the SQL statement define the same set of records, the list for either property setting looks like the following illustration.

When the RowSourceType Property Is Set to Field List

If the RowSourceType property is set to Field List and the RowSource property to CategoryList (the query described in the previous example), the resulting list looks like the following illustration.

When the RowSourceType Property Is Set to a User-Defined Function

If the RowSourceType property is set to the name of a user-defined function, then the RowSource property setting can be left blank. For example, a user-defined function named ListMDBs that fills a combo box with the names of all the databases in the current directory is entered in the property sheet as in the following illustration.


RowSourceType, RowSource Properties Example - Visual Basic

The following example sets the RowSourceType property for a combo box to Table/Query, and it sets the RowSource property to a query named EmployeeList.

Forms!Employees!cmboNames.RowSourceType = "Table/Query"
Forms!Employees!cmboNames.RowSource = "EmployeeList"


 RowSourceType Property (User-Defined Function) - Code Argument Values

RowSourceType Property (User-Defined Function) - Code Argument Values

The Visual Basic function you create must accept five arguments. The first argument must be declared as a control and the remaining arguments as Variants. The function itself must return a Variant.

Syntax

Function functionname(fld As Control, id As Variant, row As Variant, col As Variant, code As Variant) As Variant

The Function procedure has the following five required arguments.

Argument | Description
fld | A control variable that refers to the list box or combo box being filled.
id | A unique value that identifies the control being filled. This is useful when you want to use the same user-defined function for more than one list box or combo box and must distinguish between them. (The example sets this variable to the value of the Timer function.)
row | The row being filled (zero-based).
col | The column being filled (zero-based).
code | An intrinsic constant that specifies the kind of information being requested.

Note Because Microsoft Access calls a user-defined function several times to insert items into a list, often you must preserve information from call to call. The best way to do this is to use Static variables.

Microsoft Access calls the user-defined function by repeatedly using different values in the code argument to specify the information it needs. The code argument can use the following intrinsic constants.

Constant | Meaning | Function returns
acLBInitialize | Initialize | Nonzero if the function can fill the list; False (0) or Null otherwise.
acLBOpen | Open | Nonzero ID value if the function can fill the list; False or Null otherwise.
acLBGetRowCount | Number of rows | Number of rows in the list (can be zero); -1 if unknown.
acLBGetColumnCount | Number of columns | Number of columns in the list (can't be zero); must match the property sheet value.
acLBGetColumnWidth | Column width | Width (in twips) of the column specified by the col argument; -1 to use the default width.
acLBGetValue | List entry | List entry to be displayed in the row and column specified by the row and col arguments.
acLBGetFormat | Format string | Format string to be used to format the list entry displayed in the row and column specified by the row and col arguments; -1 to use the default format.
acLBEnd | End (the last call to a user-defined function always uses this value) | Nothing.
acLBClose | (Not used) | Not used.

Microsoft Access calls your user-defined function once for acLBInitialize, acLBOpen, acLBGetRowCount, and acLBGetColumnCount. It initializes the user-defined function, opens the query, and determines the number of rows and columns.

Microsoft Access calls your user-defined function twice for acLBGetColumnWidth - once to determine the total width of the list box or combo box and a second time to set the column width.

The number of times your user-defined function is called for acLBGetValue and acLBGetFormat to get list entries and to format strings varies depending on the number of entries, the user's scrolling, and other factors.

Microsoft Access calls the user-defined function for acLBEnd when the form is closed or each time the list box or combo box is queried.

Whenever a particular value (such as the number of columns) is required, returning Null or any invalid value causes Microsoft Access to stop calling the user-defined function with that code.

Tip You can use the Select Case code structure from the example as a template for your own RowSourceType property user-defined functions.


RowSourceType Property (User-Defined Function) - Code Argument Values Example

The following user-defined function returns a list of the next four Mondays following today's date. To call this function from a list box control, enter ListMondays as the RowSourceType property setting and leave the RowSource property setting blank.

Function ListMondays(fld As Control,id As Variant, _
    row As Variant,col As Variant,code As Variant) _
     As Variant
    Dim intOffset As Integer
    Select Case code
        Case acLBInitialize            ' Initialize.
            ListMondays = True
        Case acLBOpen                    ' Open.
            ListMondays = Timer        ' Unique ID.
        Case acLBGetRowCount            ' Get rows.
            ListMondays = 4
        Case acLBGetColumnCount    ' Get columns.
            ListMondays = 1
        Case acLBGetColumnWidth    ' Get column width.
            ListMondays = -1            ' Use default width.
        Case acLBGetValue                ' Get the data.
            intOffset = Abs((9 - Weekday(Now))Mod 7)
            ListMondays = Format(Now() + _
             intOffset + 7 * row,"mmmm d")
    End Select
End Function

The next example uses a static array to store the names of the databases in the current directory. To call this function, enter ListMDBs as the RowSourceType property setting and leave the RowSource property setting blank.

Function ListMDBs(fld As Control, id As Variant, _
     row As Variant, col As Variant, _
     code As Variant) As Variant
    Static dbs(127) As String, Entries As Integer
    Dim ReturnVal As Variant
    ReturnVal = Null
    Select Case code
        Case acLBInitialize                ' Initialize.
            Entries = 0
            dbs(Entries ) = Dir("*.MDB")
            Do Until dbs(Entries) = "" Or Entries >= 127
                Entries = Entries+1
                dbs(Entries) = Dir
            Loop
            ReturnVal = Entries
        Case acLBOpen                        ' Open.
            ' Generate unique ID for control.
            ReturnVal = Timer
        Case acLBGetRowCount            ' Get number of rows.
            ReturnVal = Entries
        Case acLBGetColumnCount    ' Get number of columns.
            ReturnVal = 1
        Case acLBGetColumnWidth    ' Column width.
            ' -1 forces use of default width.
            ReturnVal = -1
        Case acLBGetValue                    ' Get data.
            ReturnVal = dbs(row)
        Case acLBEnd                        ' End.
            Erase dbs
    End Select
    ListMDBs = ReturnVal
End Function


RunningSum Property Example - Sales Report

The following example shows a sales report with two group levels - Month and Type of Food. Each text box in the Type of Food group footer (January Chocolates, January Meat, and so on) contains the following expression:

=Sum([Sales])

The RunningSum property of each text box is set to one of the three different values: No, Over Group, and Over All.

Group levels | No | Over Group | Over All
Month: January
Type of Food: Chocolates
02-Jan | 25 |  |
22-Jan | 75 |  |
January Chocolates | 100 | Jan Food 100 | YTD Sales 100
Type of Food: Meat
03-Jan | 90 |  |
20-Jan | 60 |  |
January Meat | 150 | Jan Food 250 | YTD Sales 250
Month: February
Type of Food: Chocolates
05-Feb | 70 |  |
19-Feb | 80 |  |
February Chocolates | 150 | Feb Food 150 | YTD Sales 400
Type of Food: Meat
12-Feb | 150 |  |
22-Feb | 100 |  |
February Meat | 250 | Feb Food 400 | YTD Sales 650


RunningSum Property Example - Visual Basic

The following example sets the RunningSum property for a text box named SalesTotal to 2 (Over All):

Reports!rptSales!SalesTotal.RunningSum = 2


RunPermissions Property Example

The following example is a select query based on the Categories table that enables all users to have the owner's permissions for the query. You enter this SQL statement in SQL view of the Query window.

SELECT Categories.CategoryID, Categories.CategoryName, Categories.Description
FROM Categories WITH OWNERACCESS OPTION;


Selected Property Example

The following example uses the Selected property to move selected items in the lstSource list box to the lstDestination list box. The lstDestination list box's RowSourceType property is set to Value List and the control's RowSource property is constructed from all the selected items in the lstSource control. The lstSource list box's MultiSelect property is set to Extended. The CopySelected( ) function is called from the cmdCopyItem command button.

Sub cmdCopyItem_Click()
    CopySelected Me
End Sub

Function CopySelected(frm As Form) As Integer
    Dim ctlSource As Control
    Dim ctlDest As Control
    Dim strItems As String
    Dim intCurrentRow As Integer
    Set ctlSource = frm!lstSource
    Set ctlDest = frm!lstDestination
    For intCurrentRow = 0 To ctlSource.Listcount - 1
        If ctlSource.Selected(intCurrentRow) Then
            strItems = strItems & ctlSource.Column(0, _
                 intCurrentRow) & ";"
        End If
    Next intCurrentRow
    ' Reset destination control's RowSource property.
    ctlDest.RowSource = ""
    ctlDest.RowSource = strItems
End Function


SelHeight, SelWidth, SelTop, and SelLeft Properties Example

The following example shows how to use the SelHeight, SelWidth, SelTop, and SelLeft properties to determine the position and size of a selection rectangle in datasheet view. The SetHeightWidth procedure assigns the height and width of the current selection rectangle to the variables lngNumRows, lngNumColumns, lngTopRow, and lngLeftColumn, and displays those values in a message box.

Sub SetHeightWidth(frm As Form)
    Dim lngNumRows As Long, lngNumColumns As Long
    Dim lngTopRow As Long, lngLeftColumn As Long
    Dim strMsg As String

    If frm.CurrentView = 2 Then        'Form is in Datasheet view.
        lngNumRows = frm.SelHeight        'Number of rows selected.
        lngNumColumns = frm.SelWidth        'Number of columns
                                                ' selected.
        lngTopRow = frm.SelTop            'Topmost row selected.
        lngLeftColumn = frm.SelLeft        'Leftmost column
                                                ' selected.
        strMsg = "Number of rows: " & lngNumRows & vbCrLf
        strMsg = strMsg & "Number of columns: " _
             & lngNumColumns & vbCrLf
        strMsg = strMsg & "Top row: " & lngTopRow & vbCrLf
        strMsg = strMsg & "Left column: " & lngLeftColumn
        MsgBox strMsg
    End If
End Sub


SelLength, SelStart, SelText Properties Example

The following example uses two event procedures to search for text specified by a user. The text to search is set in the form's Load event procedure. The Click event procedure for the Find button (which the user clicks to start the search) prompts the user for the text to search for and selects the text in the text box if the search is successful.

Sub Form_Load()
    Dim ctlTextToSearch As Control
    Set ctlTextToSearch = Forms!Form1!TextBox1
    ctlTextToSearch.SetFocus      ' SetFocus to text box.
    ctlTextToSearch.Text = "This company places large orders " _
        & "twice a year for garlic, oregano, chilies and cumin."
End Sub

Sub Find_Click()
    Dim strSearch As String, intWhere As Integer
    Dim ctlTextToSearch As Control
    ' Get search string from user.
    With Me!Textbox1
        strSearch = InputBox("Enter text to find:")
        ' Find string in text.
        intWhere = InStr(.Value, strSearch)
        If intWhere Then
            ' If found.
            .SetFocus
            .SelStart = intWhere - 1
            .SelLength = Len(strSearch)
        Else
            ' Notify user.
            MsgBox "String not found."
        End If
    End With
End Sub


ShortcutMenu Property Example

The following example disables the shortcut menus for the Invoice form and its controls:

Forms!Invoice.ShortcutMenu = False


 ShortcutText Property

ShortcutText Property

In Microsoft Access 2000, you can use the Toolbar Control Properties dialog box for command bar controls to set the shortcut text that's displayed to the right of a built-in button control on a menu, submenu, or shortcut menu. Display the Customize dialog box by pointing to Toolbars on the View menu and clicking Customize. For menu bar and toolbar controls, display the menu bar or toolbar, and then right-click the button control whose ShortcutText property you want to set. For shortcut menu controls, select the Shortcut Menus check box on the Toolbars tab of the Customize dialog box, then find the shortcut menu control you want on the menu bar that's displayed and right-click the control. Click the Properties command. Enter the shortcut text you want in the Shortcut Text box. You can set this property for any built-in button control in Microsoft Access, but not for custom button controls.

Setting this property in Microsoft Access just causes the shortcut text to be displayed next to the control. If you change or add shortcut text for a built-in control, typing this shortcut key or key combination doesn't run the command associated with this control. To run this command, you must assign the shortcut key or key combination in an AutoKeys macro. In the AutoKeys macro, assign the key or key combination to a macro that uses the RunCommand action to run the command.

For custom commands, you can't display the shortcut text next to the control, but you can use the AutoKeys macro to assign a shortcut key or key combination that will run the same set of actions as the macro or function that's the setting of the control's OnAction property. Assign the key or key combination to the desired set of macro actions, or use the RunMacro or RunCode action to run the macro or function you want this key or key combination to carry out.


 Size Property (MDB)

Size Property (MDB)

The Size property is equivalent to the FieldSize property in table Design view. You can't set the FieldSize property by using Visual Basic; you must use the Size property instead.

In Microsoft Access, the Memo data type field can contain up to 1.2 gigabytes of information. However, Microsoft Access only displays the first 32 kilobytes of data in a control on a form or report.


Size, Type Properties Example

Size, Type Properties Example (MDB)

The following example creates a new Field object and sets its Size and Type properties. The procedure then appends the new object to the Fields collection of the Employees table in the TableDefs collection of the database.

Sub NewField()
    Dim dbs As Database, tdf As TableDef
    Dim fld As Field

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Return reference to Employees table.
    Set tdf = dbs.TableDefs!Employees
    ' Create Field object.
    Set fld = tdf.CreateField("DaysOfVacation")
    ' Set field properties.
    fld.Type = dbText
    fld.Size = 20
    ' Append fld to Fields collection.
    tdf.Fields.Append fld
    Set dbs = Nothing
End Sub

You can also use the CreateField method to set the Name, Type, and Size properties if you provide name, type, and size as arguments.

Set fld = tdfEmployees.CreateField("DaysOfVacation", dbText, 20)


OutputTo and SendObject Methods, Snapshot Object Type Examples

The following example outputs a snapshot file to disk or embedded in a mail message depending on the value supplied in the intOutputTO argument. There are two global constants defined in the declarations section of the module that are used to specify the type of output desired. If the intOutputTO argument contains the constant conSaveSnapshotToDisk, then the file is saved using the location and file name supplied in the strPath argument. If the intOutputTO argument contains the constant conSaveSnapshotToMail, then the file is embedded in a mail message addressed to the name supplied in the strRecipName argument. The strName argument is the name of a Report object in the current database. The strPath argument is the full path and file name representing the snapshot file to be saved to disk.

Const conSaveSnapshotToDisk As Integer = 1
Const conSaveSnapshotToMail As Integer = 2

Sub OutputSnapshotFile(intOutputTO As Integer, _
    strName As String, Optional strPath As String, _
    Optional strRecipName As String)

    Dim strOutputFormat As String
    DoCmd.Hourglass True
    strOutputFormat = "Snapshot Format"

    Select Case intOutputTO
        Case conSaveSnapshotToDisk
            If Len(strPath) > 0 Then
                DoCmd.OutputTo acOutputReport, _
                    strName, strOutputFormat, strPath
            Else
                DoCmd.Hourglass False
                Exit Sub
            End If
        Case conSaveSnapshotToMail
            If Len(strRecipName) > 0 Then
                DoCmd.SendObject acSendReport, _
                    strName, strOutputFormat, strRecipName
            Else
                DoCmd.Hourglass False
                Exit Sub
            End If
        Case Else
    End Select
    DoCmd.Hourglass False
End Sub


Sort Property Example

Sort Property Example (MDB)

The following example uses the Sort property to set the sort order of a dynaset-type Recordset object based on an Orders table. The records in the rstSorted recordset variable will be ordered alphabetically by ship country.

Note that you first create a dynaset-type Recordset object and set its Sort property, then open a second dynaset-type Recordset object based on the first. Setting the Sort property of the first Recordset object doesn't actually affect the order of the records that it contains, so you need to create a second Recordset object in order to see the effects of the sort.

Sub SortByCountry()
    Dim dbs As Database
    Dim rstOrders As Recordset, rstSorted As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create dynaset-type Recordset object.
    Set rstOrders = dbs.OpenRecordset("Orders", dbOpenDynaset)
    ' Set sort order.
    rstOrders.Sort = "ShipCountry"
    ' Create second dynaset-type Recordset object.
    Set rstSorted = rstOrders.OpenRecordset()
    ' Perform operations with recordset.
    .
    .
    .
    rstOrders.Close
    rstSorted.Close
    Set dbs = Nothing
End Sub

Tip In most situations, it's more efficient to create the second Recordset object with the desired conditions in one step. When you know the data you want to select, it's generally more efficient to create a Recordset object with an SQL statement. The next example shows how you can create just one Recordset object and obtain the same results as in the preceding example:

Sub CreateRecordsetWithSQL()
    Dim dbs As Database, rst As Recordset
    Dim strSelect As String

    Set dbs = CurrentDb
    strSelect = "SELECT * FROM Orders ORDER BY ShipCountry;"
    Set rst = dbs.OpenRecordset(strSelect)
    rst.MoveLast
    MsgBox "Recordset contains " & rst.RecordCount & " records."
    rst.Close
End Sub


OLE Object Properties Example

The following example creates a linked OLE object using an unbound object frame named OLE1 and sizes the control to display the object's entire contents when the user clicks a command button.

Sub Command1_Click
    OLE1.Class = "Excel.Sheet"    ' Set class name.
    ' Specify type of object.
    OLE1.OLETypeAllowed = acOLELinked
    ' Specify source file.
    OLE1.SourceDoc = "C:\Excel\Oletext.xls"
    ' Specify data to create link to.
    OLE1.SourceItem = "R1C1:R5C5"
    ' Create linked object.
    OLE1.Action = acOLECreateLink
    ' Adjust control size.
    OLE1.SizeMode = acOLESizeZoom
End Sub


SourceField, SourceTable Properties Example

SourceField, SourceTable Properties Example (MDB)

The following example creates a Recordset object by using an SQL statement that creates aliases for fields in two different tables in the database. The example then prints the name of the field, the original table, and the original field.

Sub SourceInfo()
    Dim dbs As Database, rst As Recordset, fld As Field
    Dim strSQL As String

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Construct SQL statement.
    strSQL = "SELECT ProductID As ProductCode, " _
        & "CategoryName As TypeOfProduct FROM Categories " _
        & "INNER JOIN Products ON Categories.CategoryID " _
        & " = Products.CategoryID;"
    ' Open dynaset-type Recordset object.
    Set rst = dbs.OpenRecordset(strSQL)
    For Each fld In rst.Fields
        ' Print field name.
        Debug.Print "Field Name: "; fld.Name
        ' Print original table name.
        Debug.Print "Source Table: "; fld.SourceTable
        ' Print original field name.
        Debug.Print "Source Field: "; fld.SourceField
        Debug.Print
    Next fld
    rst.Close
    Set dbs = Nothing
End Sub


SourceObject Property Example

The following example displays the name of the form that is the source of the ProductList subform control in the Debug window.

Debug.Print Forms!Categories! _
    [Product List].SourceObject


 Source Property

Source Property

The Source property applies to the Error object and can be read only from Visual Basic.

Note Don't confuse this property with the Microsoft Access Source property, which applies to a query and specifies the source connection string and source database for the query's input table or query.


Source Property Example

The following example sets the RowSource property for the lstContact list box control to a field in a dBASE IV table.

Dim strGetSQL AS String
strGetSQL = "SELECT Customer.COMPANYNAM, Customer.PHONE FROM Customer IN 'c:\dbdata'[dBASE IV;];"
Me.lstContact.RowSource = strGetSQL

In the next example, the source of data for the query is a dBASE IV table named Customer in the C:\Dbdata folder. You can enter this SQL statement in SQL view of a Query window.

SELECT Customer.COMPANYNAM, Customer.PHONE
FROM Customer IN 'c:\dbdata'[dBASE IV;];


SQL Property Example

SQL Property Example (MDB)

The following example creates a parameter query based on an Orders table. The query selects all orders for which the order date falls between the dates entered by the user.

Sub RangeOfOrders()
    Dim dbs As Database, qdf As QueryDef, rst As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Create new query.
    Set qdf = dbs.CreateQueryDef("RangeOfOrders")
    ' Construct SQL statement including parameters.
    qdf.SQL = "PARAMETERS [Start] DATETIME, [End] DATETIME; " & _
        "SELECT * FROM Orders WHERE OrderDate BETWEEN " _
        & "[Start] AND [End];"
    qdf.Parameters("Start") = #1/1/96#
    qdf.Parameters("End") = #1/31/96#
    ' Create snapshot-type Recordset object from QueryDef object.
    Set rst = qdf.OpenRecordset(dbOpenSnapshot)
    ' Perform operations with recordset.
    .
    .
    .
    rst.Close
    Set dbs = Nothing
End Sub


Startup Properties Example

The following example shows a procedure named SetStartupProperties that passes the name of the property to be set, its data type, and its desired setting. The general purpose procedure ChangeProperty attempts to set the startup property and, if the property isn't found, uses the CreateProperty method to append it to the Properties collection. This is necessary because these properties don't appear in the Properties collection until they've been set or changed at least once.

Sub SetStartupProperties()
Const DB_Text As Long = 10
Const DB_Boolean As Long = 1
    ChangeProperty "StartupForm", DB_Text, "Customers"
    ChangeProperty "StartupShowDBWindow", DB_Boolean, False
    ChangeProperty "StartupShowStatusBar", DB_Boolean, False
    ChangeProperty "AllowBuiltinToolbars", DB_Boolean, False
    ChangeProperty "AllowFullMenus", DB_Boolean, True
    ChangeProperty "AllowBreakIntoCode", DB_Boolean, False
    ChangeProperty "AllowSpecialKeys", DB_Boolean, True
    ChangeProperty "AllowBypassKey", DB_Boolean, True
End Sub

Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer
    Dim dbs As Object, prp As Variant
    Const conPropNotFoundError = 3270

    Set dbs = CurrentDb
    On Error GoTo Change_Err
    dbs.Properties(strPropName) = varPropValue
    ChangeProperty = True

Change_Bye:
    Exit Function

Change_Err:
    If Err = conPropNotFoundError Then    ' Property not found.
        Set prp = dbs.CreateProperty(strPropName, _
            varPropType, varPropValue)
        dbs.Properties.Append prp
        Resume Next
    Else
        ' Unknown error.
        ChangeProperty = False
        Resume Change_Bye
    End If
End Function


 State Property

State Property

You can use the State property to place or remove a check beside a menu item or command button. This property replaces the functionality supplied by the SetMenuItem action and SetMenuItem method in Microsoft Access 95.


 Style Property

Style Property

In Microsoft Access 2000, you can use the Toolbar Control Properties dialog box for command bar controls to set the display style for a button control on a command bar. Display the Customize dialog box by pointing to Toolbars on the View menu and clicking Customize. For menu bar and toolbar controls, display the menu bar or toolbar, and then right-click the control whose Style property you want to set. For shortcut menu controls, select the Shortcut Menus check box on the Toolbars tab of the Customize dialog box, then find the shortcut menu control you want on the menu bar that's displayed and right-click the control. Click the Properties command. Select the style you want in the Style box.

The settings in the Style box correspond to the intrinsic constants used as the setting of the Style property in the following way.

Style box setting | Style property constant
Default Style | msoButtonAutomatic
Text Only (Always) | msoButtonCaption
Text Only (in Menus) | msoButtonIcon
Image and Text | msoButtonIconAndCaption
No Label | msoComboNormal
Show Label | msoComboLabel


TabIndex Property Example

The following example reverses the tab order of a command button and a text box. Because TextBox1 was created first, it has a TabIndex property setting of 0 and Command1 has a setting of 1.

Sub Form_Click()
    Me!Command1.TabIndex = 0
    Me!TextBox1.TabIndex = 1
End Sub


 Tag Property (Command Bars)

Tag Property (Command Bars)

In Microsoft Access 2000, you can use the Toolbar Control Properties dialog box for command bar controls to set the Tag property for a control on a command bar. Display the Customize dialog box by pointing to Toolbars on the View menu and clicking Customize. For menu bar and toolbar controls, display the menu bar or toolbar, and then right-click the control whose Tag property you want to set. For shortcut menu controls, select the Shortcut Menus check box on the Toolbars tab of the Customize dialog box, then find the shortcut menu control you want on the menu bar that's displayed and right-click the control. Click the Properties command. Enter the information you want in the Tag box.


Tag Property Example

The following example uses the Tag property to display custom messages about controls on a form. When a control has the focus, descriptive text is displayed in a label control called lblMessage. You specify the text for the message by setting the Tag property for each control to a short text string. When a control receives the focus, its Tag property is assigned to the label control's Caption property. This example displays the descriptive text for a text box named txtDescription and a command button named cmdButton on a form.

Sub Form_Load()
    Dim frmMessageForm As Form
    Set frmMessageForm = Forms!Form1
    frmMessageForm!lblMessage.Caption = ""         ' Clear text.
    frmMessageForm!txtDescription.Tag = "Help text for the text box."
    frmMessageForm!cmdButton.Tag = "Help text for the command button."
End Sub

Sub txtDescription_GotFocus()
    Me!lblMessage.Caption = Me!txtDescription.Tag     ' Tag property setting as caption.
End Sub

Sub txtDescription_LostFocus()
    Me!lblMessage.Caption = ""
End Sub

Sub cmdButton_GotFocus()
    Me!lblMessage.Caption = Me!cmdButton.Tag         ' Tag property setting as caption.
End Sub

Sub cmdButton_LostFocus()
    Me.lblMessage.Caption = " "
End Sub


Text Property Example

The following example uses the Text property to enable a Next button named btnNext whenever the user enters text into a text box named txtName. Anytime the text box is empty, the Next button is disabled.

Sub txtName_Change()
    btnNext.Enabled = Len(Me!txtName.Text & "")<>0
End Sub


TimerInterval Property Example

The following example shows how to create a flashing button on a form by displaying and hiding an icon on the button. The form's Load event procedure sets the form's TimerInterval property to 1000 so the icon display is toggled once every second.

Sub Form_Load()
    Me.TimerInterval = 1000
End Sub

Sub Form_Timer()
    Static intShowPicture As Integer
    If intShowPicture Then
        ' Show icon.
        Me!btnPicture.Picture = "C:\Icons\Flash.ico"
    Else
        ' Don't show icon.
        Me!btnPicture.Picture = ""
    End If
    intShowPicture = Not intShowPicture
End Sub


 TooltipText Property

TooltipText Property

In Microsoft Access 2000, you can use the Toolbar Control Properties dialog box for command bar controls to set the ToolTip (ScreenTip) for a control on a command bar. Display the Customize dialog box by pointing to Toolbars on the View menu and clicking Customize. For menu bar and toolbar controls, display the menu bar or toolbar, and then right-click the control whose TooltipText property you want to set. For shortcut menu controls, select the Shortcut Menus check box on the Toolbars tab of the Customize dialog box, then find the shortcut menu control you want on the menu bar that's displayed and right-click the control. Click the Properties command. Enter the text you want in the ToolTip box.


TopValues Property Example

The following example assigns an SQL string that returns the top 10 most expensive products to the RecordSource property for a form that will display the ten most expensive products.

Dim strGetSQL As String
strGetSQL = "SELECT TOP 10 Products.[ProductName] " _
    & "AS TenMostExpensiveProducts, Products.UnitPrice FROM Products " _
    & "ORDER BY Products.[UnitPrice] DESC;"
Me.RecordSource = strGetSQL


 Type Property

Type Property

In Microsoft Access, you can set the data type for a field in table Design view, and you can set the data type for a parameter in the Query Parameters dialog box. These actions are equivalent to setting the ADO Type property for a Field object or a Parameter object by using Visual Basic.

The following table lists the ADO Type property constants and the corresponding Microsoft Access settings for field and parameter data types if you are setting them from table Design view or the Query Parameters dialog box.

When creating a table field with data type Number, set the FieldSize property to specify which of the six numeric data types the field will be. By default this property is set to Long Integer. The other settings are Byte, Integer, Single, Double, and ReplicationID.

Constant | Table field setting | Query parameter setting
adBoolean | Yes/No | Yes/No
adUnsignedTinyInt | Number (FieldSize = Byte) | Byte
adCurrency | Currency | Currency
adDate | Date/Time | Date/Time
adDouble | Number (FieldSize = Double) | Double
adGUID | Number or AutoNumber (FieldSize = ReplicationID) | Not supported
adSmallInt | Number (FieldSize = Integer) | Integer
adInteger | Number (FieldSize = Long Integer) | Long Integer
adInteger | AutoNumber (FieldSize = Long Integer) | Not supported
adLongVarBinary | OLE Object | OLE Object
 | Not supported | Binary
adLongVarWChar | Memo | Memo
adSingle | Number (FieldSize = Single) | Single
adVarWChar | Text | Text
adDecimal | Number (FieldSize = Decimal) | Not Supported
adBinary | Not Supported | Binary
Not supported | Not supported | Value

Note In Access databases (.mdb) the parameter data type Value doesn't correspond to a data type defined by the Microsoft Jet database engine. It corresponds to the SQL reserved word VALUE, which can be used to create a parameter query. In Microsoft Access or SQL queries, VALUE can be considered a valid synonym for the Visual Basic Variant data type.


 Type Property (MDB)

Type Property (MDB)

In Microsoft Access, you can set the data type for a field in table Design view, and you can set the data type for a parameter in the Query Parameters dialog box. These actions are equivalent to setting the DAO Type property for a Field object or a Parameter object by using Visual Basic.

The following table lists the DAO Type property constants and the corresponding Microsoft Access settings for field and parameter data types if you are setting them from table Design view or the Query Parameters dialog box.

When creating a table field with data type Number, set the FieldSize property to specify which of the six numeric data types the field will be. By default this property is set to Long Integer. The other settings are Byte, Integer, Single, Double, and ReplicationID.

Constant | Table field setting | Query parameter setting
dbBoolean | Yes/No | Yes/No
dbByte | Number (FieldSize = Byte) | Byte
dbCurrency | Currency | Currency
dbDate | Date/Time | Date/Time
dbDouble | Number (FieldSize = Double) | Double
dbGUID | Number or AutoNumber (FieldSize = ReplicationID) | Not supported
dbInteger | Number (FieldSize = Integer) | Integer
dbLong | Number (FieldSize = Long Integer) | Long Integer
 | AutoNumber (FieldSize = Long Integer) | Not supported
dbLongBinary | OLE Object | OLE Object
 | Not supported | Binary
dbMemo | Memo | Memo
dbSingle | Number (FieldSize = Single) | Single
dbText | Text | Text
Not supported | Not supported | Value

Note: The parameter data type Value doesn't correspond to a data type defined by the Microsoft Jet database engine. It corresponds to the SQL reserved word VALUE, which can be used to create a parameter query. In Microsoft Access or SQL queries, VALUE can be considered a valid synonym for the Visual Basic Variant data type.


Type Property Example

The following example determines whether a Module object represents a standard module or a class module:

Function CheckModuleType(strModuleName As String) As Integer
    Dim mdl As Module

    ' Open module to include in Modules collection.
    DoCmd.OpenModule strModuleName
    ' Return reference to Module object.
    Set mdl = Modules(strModuleName)
    ' Check Type property.
    If mdl.Type = acClassModule Then
        ' Insert comment.
        mdl.InsertLines 1, "' Class module."
        CheckModuleType = acClassModule
    Else
        ' Insert comment.
        mdl.InsertLines 1, "' Standard module."
        CheckModuleType = acStandardModule
    End If
End Function


UniqueRecords Property Example

The query in this example returns a list of customers from the Customers table who have at least one order in the Orders table.

Customers Table

Company name | Customer ID
Ernst Handel | ERNSH
Familia Arquibaldo | FAMIA
FISSA Fabrica Inter. Salchichas S.A. | FISSA
Folies gourmandes | FOLIG

Orders Table

Customer ID | Order ID
ERNSH | 10698
FAMIA | 10512
FAMIA | 10725
FOLIG | 10763
FOLIG | 10408

The following SQL statement returns the customer names in the following table:

SELECT DISTINCTROW Customers.CompanyName, Customers.CustomerID
FROM Customers INNER JOIN Orders
ON Customers.CustomerID = Orders.CustomerID;
Customers returned | Customer ID
Ernst Handel | ERNSH
Familia Arquibaldo | FAMIA
Folies gourmandes | FOLIG


UniqueValues Property Example

The SELECT statement in this example returns a list of the countries in which there are customers. Because there may be many customers in each country, many records could have the same country in the Customers table. However, each country is represented only once in the query results.

This example uses the Customers table, which contains the following data.

Country | Company name
Brazil | Familia Arquibaldo
Brazil | Gourmet Lanchonetes
Brazil | Hanari Carnes
France | Du monde entier
France | Folies gourmandes
Germany | Frankenversand
Ireland | Hungry Owl All-Night Grocers

This SQL statement returns the countries in the following table:

SELECT DISTINCT Customers.Country
FROM Customers;
Countries returned
Brazil
France
Germany
Ireland


Updatable Property Example

Updatable Property Example (MDB)

The following example adds a record to a Recordset object if the object's Updatable property setting is True (-1).

Sub UpdateData()
    Dim dbs As Database, rstUnknown As Recordset

    ' Return reference to current database.
    Set dbs = CurrentDb
    ' Open table-type Recordset object.
    Set rstUnknown = dbs.OpenRecordset("Unfamiliar Table")
    ' Check Updatable property before adding new record.
    If rstUnknown.Updatable = True Then
        With rstUnknown
            .AddNew
            !SomeField = "Some new data"
            .Update
        End With
    End If
    rstUnknown.Close
    Set dbs = Nothing
End Sub


UseLongFileNames Property Example

This example cancels the use of long file names as the global default for the application.

Application.DefaultWebOptions.UseLongFileNames = False


 ValidationRule Property (MDB)

ValidationRule Property (MDB)

Use the data access ValidationRule property to set validation rules for a Field, Recordset, or TableDef object by using Visual Basic.

You can also set validation rules for a field or control in the Microsoft Access user interface. Set the Microsoft Access ValidationRule property for a field or a table in table Design view. Set the ValidationRule property of a control by using the property sheet in form Design view.

In Microsoft Access, the string expression specified by the ValidationRule property of a Field object can't refer to user-defined functions, domain aggregate functions, SQL aggregate functions, the CurrentUser function, the Eval function, or queries.


ValidationRule, ValidationText Properties Example

The following example creates a validation rule for a field that allows only values over 65 to be entered. If a number less than 65 is entered, a message is displayed. The properties are set by using the SetFieldValidation function.

Dim strTblName As String, strFldName As String
Dim strValidRule As String
Dim strValidText As String, intX As Integer

strTblName = "Customers"
strFldName = "Age"
strValidRule = ">= 65"
strValidText = "Enter a number greater than or equal to 65."
intX = SetFieldValidation(strTblName, strFldName, _
    strValidRule, strValidText)

Function SetFieldValidation(strTblName As String, _
    strFldName As String, strValidRule As String, _
    strValidText As String) As Integer

    Dim dbs As Database, tdf As TableDef, fld As Field

    Set dbs = CurrentDb
    Set tdf = dbs.TableDefs(strTblName)
    Set fld = tdf.Fields(strFldName)
    fld.ValidationRule = strValidRule
    fld.ValidationText = strValidText
End Function

The next example uses the SetTableValidation function to set record-level validation to ensure that the value in the EndDate field comes after the value in the StartDate field.

Dim strTblName As String, strValidRule As String
Dim strValidText As String
Dim intX As Integer

strTblName = "Employees"
strValidRule = "EndDate > StartDate"
strValidText = "Enter an EndDate that is later than the StartDate."
intX = SetTableValidation(strTblName, strValidRule, strValidText)

Function SetTableValidation(strTblName As String, _
    strValidRule As String, strValidText As String) _
    As Integer

    Dim dbs As Database, tdf As TableDef

    Set dbs = CurrentDb
    Set tdf = dbs.TableDefs(strTblName)
    tdf.ValidationRule = strValidRule
    tdf.ValidationText = strValidText
End Function


Value Property Example

The following example shows how you can call one of two procedures, depending whether the Credit check box on the Customers form is selected or cleared.

Sub PaymentType()
    If Forms!Customers!Credit.Value = False Then
        ProcessCash
    ElseIf Forms!Customers!Credit.Value = True Then
        ProcessCredit
    End If
End Sub


VBE Property Example

This example displays the number of references available for the active project.

MsgBox "Number of References = " & VBE.ActiveVBProject _
    .References.Count


 Version Property

Version Property (MDB)

The Version property of a Database object returns the version of the Microsoft Jet database engine that applies to that database. For databases created in or converted to Microsoft Access 2000, Version returns 4.0. For Access 97 and Access 95 databases, Version returns 3.0. If you need to distinguish between databases in Microsoft Access 2000 format and databases in Access 97 format, use the SysCmd function with the intrinsic constant acSysCmdAccessVer as the action argument to determine which version of Microsoft Access created the database. For an Microsoft Access 2000 database, the SysCmd function will return 9.0. For an Access 97 database, it will return 8.0.


 Стандартная рабочая папка

Стандартная рабочая папка

При первом открытии диалоговых окон Открытие файла базы данных и Файл новой базы данных после запуска Microsoft Access, папка «Мои документы» по умолчанию установлена как активная. Если установлена панель Office, то папка «Мои документы» также является активной и открывается при помощи кнопки Открыть базу данных [image] на панели Office и при помощи команды Открыть документ Office в главном меню Windows (Пуск).

Папка «Мои документы» расположена в корневом каталоге. Каталог Personal помещается в программный каталог Windows NT Workstation. Эти папки удобно использовать для хранения документов, книг, презентаций, баз данных и других файлов.

Возврат в раздел Задание стандартной рабочей папки


 Последствия изменения типа данных поля

Последствия изменения типа данных поля

По какой-либо причине изменение типа данных полей, уже содержащих данные, может оказаться необходимым. Например, в Microsoft Access были импортированы данные, а необходимый тип данных установлен не был. Или установленный тип данных полей больше не соответствует содержащимся в этих полях данным.

Прежде чем изменять тип данных, оцените последствия этого преобразования для всей базы данных. Какие запросы, формы, отчеты используют поле, тип данных которого необходимо изменить? Возможно, понадобится изменить выражения, которые зависят от изменяемого поля.

Наиболее часто встречающиеся преобразования типов данных можно представить следующими четырьмя категориями: преобразование в текст других типов данных; преобразование текстовых данных в числовые, денежные, логические форматы или в формат «Дата/время»; преобразование денежного типа данных в числовой, текстового в поле MЕМО и наоборот; а также изменение настройки свойства Размер поля (FieldSize) для числовых полей.

Данный раздел содержит справочные сведения по следующим вопросам.

Преобразование в текст других типов данных

Преобразование текстовых данных в числовые, денежные, логические или в форматы даты/времени

Преобразование денежного типа данных в числовой, текстового в поле MEMO и наоборот

Изменение настройки свойства «Размер поля» (FieldSize) для числовых полей

Преобразование в текст других типов данных

Числа, используемые в вычислениях, хранятся в числовых или денежных полях, но может оказаться, что в поле, которое изначально использовалось только для чисел, теперь необходимо вводить буквы и другие нечисловые символы. Например, в числовом поле хранятся коды. В дальнейшем в кодах стали использоваться буквы, дефисы, скобки и другие нечисловые символы; следовательно, тип данных этого поля необходимо преобразовать в текстовый.

В Microsoft Access числовые данные преобразуются в текстовые при помощи стандартного числового формата, а даты преобразуются в текст при помощи полного формата даты. Преобразованные значения не будут содержать никаких обозначений валют и других специальных символов, указываемых для этого поля.

Возврат в начало

Преобразование текстовых данных в числовые, денежные, логические или в форматы даты/времени

Если данные, хранящиеся в текстовом поле, необходимо преобразовать в другой тип, то преобразовать можно только значения, подходящие для нового типа данных. Например, если необходимо произвести математические вычисления с числами, хранящимися в текстовом поле, то тип этого поля нужно преобразовать в числовой или денежный. Если все данные, хранящиеся в этом поле, являются числами, то никакие данные в результате преобразования не будут потеряны.

При преобразовании текстового типа данных в числовой десятичные запятые и разделители разрядов воспринимаются должным образом. Обозначения валют воспринимаются в соответствии с установленными языком и национальными настройками. Определить их можно с помощью значка «Язык и стандарты» на панели управления Windows.

При преобразовании текстового типа данных в тип «Дата/время» большинство дат и форматов времени изменяются должным образом. Форматы дат и времени воспринимаются в соответствии с установленными языком и национальными настройками. Определить их можно с помощью значка «Язык и стандарты» на панели управления Windows.

При преобразовании текстового типа данных в логический, слова «Да», «True» и «Вкл» преобразуются в значение «Да», а слова «Нет», «False» и «Выкл» в значение «Нет». Для вывода на экран значений «Да» или «Нет» в режиме конструктора таблицы необходимо перейти на вкладку Подстановка и задать для свойства Тип элемента управления (DisplayControl) значение Поле. (Также можно преобразовать числовой тип данных в логический тип, при этом нулевые и пустые (Null) значения преобразуются в «Нет», а ненулевые в «Да»).

Возврат в начало

Преобразование денежного типа данных в числовой, текстового в поле MEMO и наоборот

Числовой тип данных всегда можно преобразовать в денежный, а денежный в числовой. Для обеспечения правильности вычислений для хранения значений валют должен быть использован денежный тип данных. Если с данными, содержащими от одного до четырех знаков после запятой, необходимо производить много вычислений, то рекомендуется также использовать денежный тип. В денежных полях для вычислений используется метод с фиксированной запятой, что позволяет избежать ошибок при округлении. Также всегда можно преобразовать текстовый тип данных в поле MEMO и наоборот. Например, если в поле необходимо хранить более длинный текст, чем предполагалось ранее, тип данных поля можно преобразовать в поле MEMO. Если нет необходимости хранить в поле более 255 символов, то следует использовать текстовый тип данных.

Возврат в начало

Изменение настройки свойства «Размер поля» (FieldSize) для числовых полей

Для полей с числовым типом данных конкретный тип определяется одним из следующих значений свойства Размер поля (FieldSize): Байт, Целое, Длинное целое, Одинарное с плавающей точкой, Двойное с плавающей точкой, Действительное или Код репликации. При преобразовании поля к числовому типу определите, может ли потребоваться для уже введенных в поле значений изменение свойства Размер поля (FieldSize). Если свойство Размер поля (FieldSize) преобразуется от большего, например, Двойное с плавающей точкой, к меньшему, например Целое, то имеющиеся значения должны соответствовать новому размеру поля. Если размер имеющихся значений не соответствует свойству Размер поля (FieldSize), значения будут округляться. Например, при преобразовании от размера Двойное с плавающей точкой к размеру Длинное целое число округляется до ближайшего целого. Кроме того, значения, размеры которых превышают новый размер поля, удаляются и заменяются значениями Null.

Для получения сводки результатов преобразования типов полей нажмите кнопку [image] .

Для получения дополнительных сведений о диапазонах допустимых значений для всех размеров полей нажмите кнопку [image] .

Возврат в начало


Изменение международных форматов отображения данных

В Microsoft Access есть возможности отображения многих международных форматов. Для обеспечения согласованности в работе приложений в Microsoft Access существуют настройки языка и стандартов. Для этого в окне «Язык и стандарты» панели инструментов Windows указаны встроенные числовые форматы и форматы даты/времени, перечисленные в таблице.

Формат Microsoft Access | Вкладка диалогового окна «Язык и стандарты»
Стандартный (и другие числовые форматы кроме денежного) | Вкладка Числа
Денежный | Вкладка Денежная единица
Краткий формат даты | Вкладка Дата
Длинный формат даты | Вкладка Дата
Длинный формат времени | Вкладка Время

Если данные отображаются в формате, не подходящем для вашей страны, измените настройки языка и стандартов на панели управления.

Примечание. Передача данных между компьютерами с не совпадающими национальными настройками может привести к появлению неверных денежных значений. Например, значение 5,47 рублей с компьютера, настроенного на русские стандарты, будет отображаться как $5.47 на компьютере, настроенном на стандарты США. Для предотвращения подобных ошибок определите пользовательский формат денежных значений в виде #,## р. Пользовательский формат переопределяет настройки языка и стандартов панели управления Windows. Такие проблемы не возникнут при передаче стандартных числовых данных, а также значений времени и дат между компьютерами, имеющими разные национальные настройки.


 Основные спецификации базы данных Microsoft Access

Основные спецификации базы данных Microsoft Access

Атрибут | Максимальное значение
Размер файла базы данных Microsoft Access (.mdb) | 2 Гбайт. Однако, поскольку база данных может включать связанные таблицы в других файлах, ее общий размер ограничивается только имеющимися возможностями хранения данных.
Число объектов в базе данных | 32 768
Модули (включая формы и отчеты, свойство Наличие модуля (HasModule) которых имеет значение True) | 1 000
Число символов в имени объекта | 64
Число символов в пароле | 14
Число символов в имени пользователя или имени группы | 20
Число одновременно работающих пользователей | 255


Результаты преобразования типов полей

В следующей таблице приведена сводка результатов преобразования типов полей для таблиц, содержащих данные, а также краткие комментарии.

Исходный | Конечный | Результат | Комментарии
Все типы данных | Счетчик | В Microsoft Access запрещено | Отсутствует.
Текстовый | Числовой, Денежный, Дата/время, Логический | Текст преобразуется в соответствующее значение | Необходимо обеспечить соответствие исходных значений новому типу данных; недопустимые значения удаляются.
Поле MЕМО | Текстовый | Простое преобразование | Обрезаются данные, размеры которых превышают размер, заданный в свойстве Размер поля (FieldSize).
Числовой | Текстовый | Значения преобразуются в текст | Числа записываются в общем формате.
Числовой | Денежный | Числа преобразуются в денежные значения | Необходимо обеспечить соответствие исходных значений новому типу данных; недопустимые значения удаляются.
Дата, время | Текстовый | Значения преобразуются в текст | Значения даты или времени преобразуются к полному формату даты.
Денежный | Текстовый | Значения преобразуются в текст | В текстовое значение не включаются символы денежных единиц, например символ $.
Денежный | Числовой | Простое преобразование | Необходимо обеспечить соответствие исходных значений новому типу данных; недопустимые значения удаляются.
Счетчик | Текстовый | Значения преобразуются в текст | Возможно обрезание значений в соответствии со значением свойства Размер поля (FieldSize).
Счетчик | Числовой | Простое преобразование | Возможно обрезание значений в соответствии со значением свойства Размер поля (FieldSize).
Логический | Текстовый | Значения преобразуются в текст | Отсутствует.


 Преобразование баз данных Access предыдущих версий к формату Access 2000

Преобразование баз данных Access предыдущих версий к формату Access 2000

Данный раздел содержит справочные сведения по следующим вопросам.

Вопросы преобразования базы данных Access

Совместная работа с базой данных Access пользователей разных версий Microsoft Access

Создание и изменение объектов

Изменение разрешений на доступ к базе данных

Новые панели инструментов и строки меню

Совместимость программ

Замена макрокоманды «КомандаМеню» на «ВыполнитьКоманду»

Вопросы преобразования базы данных Access

В большинстве случаев преобразование базы данных Microsoft Access предыдущей версии в формат Microsoft Access 2000 желательно. Задействовать базу данных Access предыдущей версии в Microsoft Access 2000 можно и без ее преобразования; однако изменять структуру объектов или пользоваться преимуществами большого числа новых возможностей в Microsoft Access 2000 можно только после преобразования базы данных предыдущей версии. Базу данных Access, преобразованную в Microsoft Access 2000, нельзя открыть в предыдущей версии. Базу даных Access 2000 невозможно преобразовать обратно в Access версии 2.0 или 95, но можно преобразовать базу данных Access 2000 в Access 97. Для получения дополнительных сведений о задействовании базы данных Access нажмите кнопку [image] .

Возврат в начало

Совместная работа с базой данных Access пользователей разных версий Microsoft Access

Если база данных является многопользовательской (с общим доступом) и одновременный переход всех пользователей на Microsoft Access 2000 невозможен, то для поддержки новых средств допустимо обновление частей базы данных без изменения ее в целом. Для получения дополнительных сведений о совместном использовании баз данных пользователями, работающими в различных версиях Microsoft Access, нажмите кнопку [image] .

Возврат в начало

Создание и изменение объектов

При работе в Microsoft Access 2000 с задействованной базой данных Access предыдущей версии можно использовать объекты базы данных для просмотра и изменения данных, но невозможно сохранить вносимые изменения. Для изменения структуры существующего объекта или для создания нового объекта необходимо либо открыть базу данных в предыдущей версии, либо преобразовать ее к формату Microsoft Access 2000.

Возврат в начало

Изменение разрешений на доступ к базе данных

Для изменения или добавления разрешений на доступ в базу данных Access предыдущей версии необходимо либо открыть базу данных в предыдущей версии, либо преобразовать ее в формат Microsoft Access 2000. Для использования расширенных средств защиты Microsoft Access 2000 и для полной защиты исходной базы данных необходимо повторное создание учетных записей и паролей пользователей и рабочих групп при помощи файла рабочей группы Microsoft Access 2000. См. сведения о преобразовании защищенной базы данных Access.

Защита модулей на уровне пользователей больше недоступна; однако можно защитить модули с помощью защиты программы на языке Visual Basic для приложений (VBA) паролем.

Возврат в начало

Новые панели инструментов и строки меню

В Microsoft Access 97 и более поздних версиях поддерживаются новые стили панелей инструментов и строк меню. При преобразовании базы данных Microsoft Access версии 2.0 или 95 к формату Microsoft Access 2000 также производится автоматическое преобразование к новому виду всех панелей инструментов, как пользовательских, так и встроенных. При открытии преобразованной базы данных пользовательские меню, созданные макросом или при помощи построителя меню Microsoft Access 95, используются так же, как и строки меню нового вида, но автоматического их преобразования не происходит, поэтому их редактирование в диалоговом окне Настройка невозможно. Для создания строк меню нового стиля из макросов, использующих макрокоманду «ДобавитьМеню», можно использовать внутренние команды Создать меню из макроса и Создать контекстное меню из макроса подменю Макрос (меню Сервис). Созданные таким образом строки меню можно редактировать в диалоговом окне Настройка. См. сведения о преобразовании панелей инструментов и строк меню.

Возврат в начало

Совместимость программ

Microsoft Access 2000 не поддерживает библиотеку совместимости DAO версии 2.5/3.x. При попытке преобразовать базу данных Access, программа в которой содержит старые версии объектов, методов и свойств DAO, зависящие от библиотеки совместимости DAO 2.5/3.x, выдается сообщение об ошибках компиляции при преобразовании базы данных. Прежде чем преобразовать базу данных Access, обновите программу, чтоб она не зависела от библиотеки совместимости DAO 2.5/3.x. Если сообщение об ошибках компиляции при преобразовании будет выдано снова, откройте преобразованную базу данных в Microsoft Access 2000, удалите ссылку на отсутствующую библиотеку совместимости DAO 2.5/3.x, а затем задайте ссылку на библиотеку объектов Microsoft DAO 3.6.

Если база данных Access использует надстройки или библиотечные базы данных, созданные в предыдущей версии Microsoft Access, их тоже необходимо преобразовать. Для получения дополнительных сведений об изменениях методов, макрокоманд, свойств, синтаксиса и прочих языковых элементов, а также о совместимости программ и проблемах их преобразования нажмите кнопку [image] .

Возврат в начало

Замена макрокоманды «КомандаМеню» на «ВыполнитьКоманду»

В Microsoft Access 2000 вместо макрокоманды «КомандаМеню» используется макрокоманда «ВыполнитьКоманду»; старая макрокоманда сохранена для поддержки совместимости. При преобразовании базы данных происходит автоматическая замена макрокоманды «КомандаМеню» на «ВыполнитьКоманду».

Для получения дополнительных сведений о совместимости программ Visual Basic для приложений (VBA) между версиями Microsoft Access 95 или 97 и Microsoft Access 2000 нажмите кнопку [image] .

Возврат в начало


Примеры самообъединений

Для отображения в поле «Подчиняется» имен менеджеров вместо их кодов выполните следующие действия.

  1. В режиме конструктора дважды добавьте в запрос таблицу «Сотрудники». См. инструкции по переименованию второй таблицы в запросе.

  2. Создайте объединение. Для этого переместите поле «Подчиняется» списка полей первой таблицы в поле «КодСотрудника» списка полей второй таблицы.

  3. Добавьте из первого списка полей в бланк запроса поля «Фамилия», «Имя» и «Должность».

  4. Из второго списка полей в бланк запроса добавьте поле «Фамилия». Чтобы поле отображалось с подписью «Менеджер» вместо «Фамилия», введите новое значение в ячейку свойства Подпись (Caption) в окне свойств этого поля. Для получения дополнительных сведений об изменении свойства Подпись (Caption) для поля нажмите кнопку [image] .


Примеры масок ввода

Маски ввода используются в полях (в таблицах и запросах), в текстовых полях и в полях со списком (в формах) для форматирования данных и управления вводимыми значениями. Маска ввода состоит из текстовых символов (таких как точки, тире, скобки), разделяющих пустые интервалы, предназначенные для заполнения. Свойство Маска ввода (InputMask) состоит из текстовых и специальных символов, определяющих тип значений, которые могут быть введены в данную позицию. В основном маски ввода используются в текстовых полях и полях даты/времени, а также в числовых и денежных.

Данный раздел содержит справочные сведения по следующим вопросам.

Примеры масок ввода

Определение масок ввода

Допустимые символы масок ввода

Примеры масок ввода

В приведенной ниже таблице указаны описания некоторых масок ввода и примеры значений, которые в них могут быть введены. В конце данного раздела снова обратитесь к таблице за сведениями о кодах, используемых для создания масок ввода.

Описание маски ввода | Примеры значений
(000) 000-0000 | (206) 555-0248
(999) 999-9999! | (206) 555-0248
 | ( ) 555-0248
(000) AAA-AAAA | (206) 555-TELE
#999 | -20
 | 2000
>L????L?000L0 | GREENGR339М3
 | МАЙ Р 452Ю7
>L0L 0L0 | Т2Ф 8М4
00000-9999 | 98115-
 | 98115-3007
>L<?????????????? | Мария
 | Иван
ISBN 0-&&&&&&&&&-0 | ISBN 1-55615-507-7
 | ISBN 0-13-964262-5
>LL00000- | DB51392-0493

Возврат в начало

Определение масок ввода

Определение маски ввода может состоять из трех разделов, разделенных знаком точка с запятой, например, (999) 000-0000!;0;" ".

Раздел | Описание
Первый | Собственно маска ввода.
Второй | Указывает, следует ли сохранять текстовые символы. 0 = текстовые символы сохраняются вместе с введенными значениями 1 или пустое значение = сохраняются только введенные символы
Третий | Символ, выводящийся в маске ввода на месте пустых символов. Допускается использование любого символа; для отображения пробела, следует ввести " " (прямые кавычки, пробел, прямые кавычки). Если данный раздел описания оставить пустым, то для представления пустых символов используется символ подчеркивания ( _ ).

Возврат в начало

Допустимые символы масок ввода

В приведенной ниже таблице указано, как Microsoft Access интерпретирует символы, содержащиеся в первой части описания в свойстве Маска ввода (InputMask). Чтобы включить в маску текстовые константы, отличные от представленных в таблице, в том числе символы и пробелы, следует просто ввести их в нужную позицию. Чтобы включить один из следующих символов в качестве текстовой константы, необходимо перед ним ввести символ обратной косой черты \.

Символ | Описание
0 | Цифра (от 0 до 9, ввод обязателен; символы плюс [+] и минус [-] не допускаются).
9 | Цифра или пробел (ввод не обязателен; символы плюс и минус не допускаются).
# | Цифра или пробел (ввод не обязателен; пустые символы преобразуются в пробелы, допускаются символы плюс и минус).
L | Буква (от A до Z или от А до Я, ввод обязателен).
? | Буква (от A до Z или от А до Я, ввод не обязателен).
A | Буква или цифра (ввод обязателен).
a | Буква или цифра (ввод необязателен).
& | Любой символ или пробел (ввод обязателен).
C | Любой символ или пробел (ввод необязателен).
. , : ; - / | Десятичный разделитель и разделители тысяч, значений дат и времени. (Отображаемый символ зависит от настроек языка и стандартов на панели управления Windows.)
< | Указывает перевод всех следующих символов на нижний регистр.
> | Указывает перевод всех следующих символов на верхний регистр.
! | Указывает заполнение маски ввода справа налево, а не слева направо. Заполнение маски символами всегда происходит слева направо. Восклицательный знак в маске ввода можно помещать в любую позицию.
\ | Указывает ввод любого следующего символа в качестве текстовой константы. Используется для отображения всех перечисленных в данной таблице символов как текстовых констант (например, \A выводится как символ «A»).
Пароль | Значение Пароль, заданное для свойства Маска ввода (InputMask), создает поле для ввода пароля. Любой символ, введенный в поле, сохраняется как символ, но отображается как звездочка (*).

Возврат в начало

Дополнительные сведения

Создание маски ввода


 Примеры значений, используемых по умолчанию в полях

Примеры значений, используемых по умолчанию в полях

Поле | Выражение | Значение по умолчанию
Количество | 1 | 1
Город | "Тверь" | Тверь
Город | "Звенигород, Московская обл." | Звенигород, Московская обл. (если значение содержит знаки препинания, то его следует поместить в кавычки)
Факс | " " | Пустая строка указывает, что по умолчанию данное поле должно быть пустым
Дата заказа | Date( ) | Сегодня


 Примеры адресов гиперссылок

Примеры адресов гиперссылок

В следующей таблице приведены примеры адресов гиперссылок. Обратите внимание, что в адресах URL используется обычная косая черта, а в адресах UNC обратная косая.

Адрес гиперссылки | Описание
Корпорация Майкрософт#http://www.microsoft.com# | Домашняя Web-страница корпорации Майкрософт. Отображается как «Корпорация Майкрософт».
#http://www.microsoft.com# | Домашняя Web-страница корпорации Майкрософт.
#http://www.microsoft.com#образец# | Именованная ссылка «образец» в документе HTML для основной страницы корпорации Майкрософт.
#\\northwind\public\товары.doc##Список товаров со скидкой | Файл Microsoft Word с именем Товары.doc в общем каталоге public на сервере Northwind. Всплывающая подсказка «Список товаров со скидкой».
Записка#c:\windows\Избранное\Записка.doc# | Файл Word с названием Записка.doc, расположенный в папке \Windows\Избранное. Отображается строка «Записка».
#c:\windows\personal\резюме.doc# | Файл Резюме.doc, расположенный в папке \Windows\Personal. Поскольку отображаемый текст отсутствует, будет отображаться путь.
#c:\windows\personal\резюме.doc#Профессии | Раздел файла Резюме.doc, отмеченный с помощью закладки с названием «Профессии».
#c:\windows\избранное\борей.mdb#Form Поставщики | Форма «Поставщики» в базе данных «Борей», расположенной в папке \Windows\Избранное.
Поставщики##Form Поставщики#Щелкните для просмотра и редактирования сведений о поставщике | Форма «Поставщики» в текущей базе данных. Отображается как надпись «Поставщики» со всплывающей подсказкой «Щелкните для просмотра и редактирования сведений о поставщике».
#c:\windows\избранное\продажи 1996.ppt#13 | Слайд номер 13 в документе PowerPoint «Продажи 1996», расположенном в папке \Windows\Избранное.
#c:\windows\избранное\бюджет.xls#Лист1!A2 | Ячейка A2 на Листе1 файла Бюджет.xls, расположенного в папке \Windows\Избранное.

Для облегчения ввода адреса гиперссылки некоторые части адреса можно пропускать.

  • При вводе http://example.microsoft.com распознается протокол «http:» и адрес преобразуется в форму #http://example.microsoft.com# (пользователю не придется самому вводить знак #).

  • Чтобы указать на объект в текущей базе данных Microsoft Access, достаточно указать имя объекта, на который требуется перейти; путь UNC указывать не обязательно. Если существует несколько объектов с одинаковыми именами, то при определении ссылок в Microsoft Access используется следующий порядок: формы, отчеты, запросы, таблицы, страницы доступа к данным, макросы, модули, схемы, сохраненные процедуры, связанные таблицы SQL, связанные таблицы и триггеры. Например, если в базе данных содержатся форма «Заказы» и таблица «Заказы», то будет принята ссылка на форму «Заказы». Также можно указать определенный тип объекта. Для этого необходимо ввести тип объекта имя объекта. Например, чтобы определить ссылку на таблицу «Заказы», а не на форму «Заказы», в дополнительном адресе укажите Table Заказы. Для типов объектов из нескольких слов пробелы между словами опускаются; например, dataaccesspage Заказы

  • Если введенный текст не содержит символ #, имя протокола (например «http:») и ссылку на объект текущей базы данных, то введенный текст воспринимается как отображаемый текст и в качестве адреса к «http://» добавляется тот же текст. Например, при вводе example.microsoft.com адрес воспринимается как example.microsoft.com#http://example.microsoft.com#.


 Примеры ссылок на значения элементов управления страниц доступа к данным

Примеры ссылок на значения элементов управления страниц доступа к данным

Следующая таблица содержит примеры выражений, которые используются в вычисляемых элементах управления на страницах доступа к данным.

Используемое выражение | Отображаемые значения
=Document.All("MSODSC").CurrentSection.ChildSection.HTMLContainer.Children("КодТовара") | Значение элемента управления «КодТовара» в разделе, находящемся на один уровень группировки ниже текущего раздела.
=Document.All("MSODSC").CurrentSection.ParentSection.HTMLContainer.Children("КодКлиента") | Значение элемента управления «КодКлиента» в разделе, находящемся на один уровень группировки выше текущего раздела.
=Document.All("MSODSC").CurrentSection.Parent.Parent.HTMLContainer.Children("Страна") | Значение элемента управления «Страна» в разделе, находящемся на два уровня группировки выше текущего раздела.
=Document.All("MySpreadsheet").Range("A1") | Значения из диапазона A1 электронной таблицы.

В следующей таблице приводятся примеры ссылок из электронной таблицы на элементы управления страницы.

Используемое выражение | Отображаемые значения
=document.Количество.value*document.Цена.value | Результат умножения значения элемента управления «Количество» на значение элемента управления «Цена».
=$C$1*document.Цена.value | Результат умножения значения элемента управления «Цена» на процентную ставку, хранящуюся в ячейке C1 электронной таблицы.


Примеры условий на значение поля в таблицах и элементах управления форм

Условие на значение поля | Сообщение об ошибке
<>0 | Введите, пожалуйста, значение, отличное от нуля.
0 Or >100 | Значение должно быть либо равно 0, либо больше 100.
Like "K???" | Значение должно содержать четыре символа и начинаться с буквы K.
<#1/1/96# | Введите дату, предшествующую 1996.
>=#1/1/97# And <#1/1/98# | Дата должна быть в пределах 1997 года.
StrComp(UCase([Фамилия]), [Фамилия],0) = 0 | Данные в поле «Фамилия» должны вводиться прописными буквами.

См. сведения об условиях на значение.

Примечание. Для получения примера проверки уровня формы при помощи макроса или процедуры обработки события нажмите кнопку [image] .


Спецификации форм и отчетов

Атрибут | Максимальное значение
Число символов в надписи | 2 048
Число символов в поле | 65 535
Ширина формы или отчета | 22 дюйма (55,87 см)
Высота раздела | 22 дюйма (55,87 см)
Высота всех разделов с заголовками (в режиме конструктора) | 200 дюймов (508 см)
Число уровней вложения форм или отчетов | 7
Число полей или выражений, которые можно отсортировать или сгруппировать в отчете | 10
Число заголовков и примечаний в отчете | 1 заголовок/примечание отчета; 1 заголовок/примечание страницы; 10 заголовков/примечаний групп
Число печатаемых страниц в отчете | 65 536
Число элементов управления и разделов, которые можно добавить за время существования формы или отчета | 754


 Использование общих сочетаний клавиш Microsoft Access

Использование общих сочетаний клавиш Microsoft Access

Сочетание клавиш | Действие (в справочной системе)
F1 | Отображение помощника Office и справки Microsoft Access; контекстной справки по выделенному свойству, элементу управления, макрокоманде или ключевому слову Visual Basic; дополняет кнопку Справка
SHIFT+F1 | Вывод всплывающей подсказки; нажмите клавиши SHIFT+F1, а затем щелкните команду меню, кнопку панели инструментов или область экрана
SHIFT+F1 | Вывод всплывающей подсказки в диалоговом окне после выбора параметра с помощью клавиатуры

Сочетание клавиш | Действие
CTRL+N | Открытие новой базы данных
CTRL+O | Открытие существующей базы данных

Сочетание клавиш | Действие
CTRL+P | Печать текущего или выделенного объекта
CTRL+S или SHIFT+F12 или ALT+SHIFT+F2 | Сохранение объекта базы данных
F12 или ALT+F2 | Открытие диалогового окна Сохранение

Сочетание клавиш | Действие
F4 или ALT+СТРЕЛКА ВНИЗ | Открытие поля со списком
F9 | Обновление содержимого подстановочного поля списка или поля со списком
СТРЕЛКА ВНИЗ | Переход на одну строку вниз
PAGE DOWN | Переход на одну страницу вниз
СТРЕЛКА ВВЕРХ | Переход на одну строку вверх
PAGE UP | Переход на одну страницу вверх
TAB | Выход из окна списка или поля со списком

Сочетание клавиш | Действие
CTRL+F | Открытие вкладки Поиск диалогового окна Поиск и замена (только в режимах таблицы и формы)
CTRL+H | Открытие вкладки Замена диалогового окна Поиск и замена (только в режимах таблицы и формы)
SHIFT+F4 | Поиск следующего вхождения текста, указанного в диалоговом окнеПоиск и замена, при закрытом диалоговом окне (только в режимах таблицы и формы)

Сочетание клавиш | Действие (в режиме конструктора)
F2 | Переключение между режимом редактирования (при отображении курсора) и режимом перемещения
F5 | Переключение формы из режима конструктора в режим формы
F6 | Переключение между верхней и нижней частями окна (в режиме конструктора для таблиц, макросов и запросов и только в окне расширенного фильтра)

Сочетание клавиш | Действие (форма или отчет в режиме конструктора)
SHIFT+ENTER Добавление элемента управления в раздел

См. инструкции по помещению поля или другого элемента управления в форму или отчет с помощью клавиатуры

См. инструкции по копированию поля или другого элемента управления формы или отчета с помощью клавиатуры
CTRL+C | Копирование выделенного элемента управления в буфер обмена
CTRL+X | Вырезание выделенного элемента управления с копированием в буфер обмена
CTRL+V | Вставка содержимого буфера обмена в левый верхний угол выделенного раздела
CTRL+ СТРЕЛКА ВПРАВО | Перемещение выделенного элемента управления вправо
CTRL+СТРЕЛКА ВЛЕВО | Перемещение выделенного элемента управления влево
CTRL+ СТРЕЛКА ВВЕРХ | Перемещение выделенного элемента управления вверх
CTRL+СТРЕЛКА ВНИЗ | Перемещение выделенного элемента управления вниз
SHIFT+СТРЕЛКА ВНИЗ | Увеличение высоты выделенного элемента управления
SHIFT+СТРЕЛКА ВПРАВО | Увеличение ширины выделенного элемента управления
SHIFT+СТРЕЛКА ВВЕРХ | Уменьшение высоты выделенного элемента управления
SHIFT+СТРЕЛКА ВЛЕВО | Уменьшение ширины выделенного элемента управления

Сочетание клавиш | Действие
F11 или ALT+F1 | Перевод окна базы данных на передний план
CTRL+F6 | Переход между открытыми окнами по порядку
ENTER | Восстановление выделенного свернутого окна, когда все окна свернуты
CTRL+F8 | Включение режима изменения размера активного окна, когда оно развернуто; для изменения размера окна используются клавиши со стрелками
ALT+ПРОБЕЛ | Открытие оконного меню
SHIFT+F10 | Открытие контекстного меню
CTRL+W или CTRL+F4 | Закрытие активного окна
ALT+F11 | Переключение между редактором Visual Basic и предыдущим активным окном
ALT+SHIFT+F11 | Переключение между редактором сценариев Microsoft Script Editor и предыдущим активным окном

Сочетание клавиш | Действие
F2 | Отображение полного адреса выделенной гиперссылки
F7 | Проверка орфографии
SHIFT+F2 | Открытие окна «Область ввода» для удобного ввода выражений и другого текста в небольшие области ввода
ALT+ENTER | Отображение окна свойств в режиме конструктора
ALT+F4 | Выход из Microsoft Access, закрытие диалогового окна или окна свойств
CTRL+F2 | Вызов построителя
CTRL+F11 | Переключение между пользовательской строкой меню и встроенной строкой меню


Инструкции по возвращению встроенных панелей инструментов и меню при их исчезновении с экрана

Если все встроенные панели инструментов и некоторые из встроенных меню исчезли с экрана во всех режимах, возможно, следует изменить настройки в диалоговом окне Параметры запуска или временно обойти эти настройки.

Чтобы изменить настройки

Выберите в меню Сервис команду Параметры запуска, а затем установите флажки Встроенные панели инструментов, чтобы вывести все встроенные панели инструментов, и Полный набор меню Access, чтобы вывести все встроенные меню. Закройте базу данных или проект Microsoft Access, а затем вновь откройте его.

Если некоторые меню по-прежнему отсутствуют, возможно, они были удалены из строки меню. Существует возможность повторного добавления конкретного встроенного меню в строку меню. Для получения дополнительных сведений нажмите кнопку [image] .

Чтобы временно обойти настройки параметров в диалоговом окне «Параметры запуска»

Вместо повторного выбора параметров можно временно обойти все настройки диалогового окна Параметры запуска. Для этого при открытии базы данных удерживайте в нажатом положении клавишу SHIFT.


Синтаксис дополнительных адресов гиперссылок

Для перехода по месту
в файлах данного типа
Введите
Microsoft Access Тип и имя объекта. Например, введите Table Клиенты для перемещения в таблицу «Клиенты».

Примечания. Если тип объекта был пропущен, а в базе данных содержится несколько объектов с одинаковыми именами, то для определения ссылок будет использован следующий порядок: формы, отчеты, запросы, таблицы, страницы доступа к данным, макросы, модули, режимы отображения, схемы, сохраненные процедуры, связанные таблицы SQL, связанные таблицы и триггеры. Например, если в базе данных существуют форма и таблица с именем «Заказы», то будет определена ссылка на форму «Заказы». Чтобы указать ссылку на таблицу «Заказы», необходимо ввести Table Заказы.

В системах не с английским языком Access распохнает тип объекта только на английском; строки на национальном языке не распознаются. Все гиперссылки, созданные с помощью диалогового окна Добавление гиперссылки или Изменение гиперссылки используют строку для типа объекта на английском языке.
Microsoft Excel | Определенное имя или лист!диапазон. Например, введите sheet1!A2 для перемещения в ячейку A2 на листе 1.
Microsoft PowerPoint | Номер слайда
Microsoft Word | Имя закладки
Документ HTML | Имя закладки (определяется с помощью атрибута NAME тега <A>)


Спецификации макросов

Атрибут | Максимальное значение
Число макрокоманд в макросе | 999
Число символов в условии | 255
Число символов в комментарии | 255
Число символов в аргументе макрокоманды | 255


 Повышение быстродействия Microsoft Access и системы пользователя

Повышение быстродействия Microsoft Access и системы пользователя

Соблюдение следующих правил поможет повысить производительность Microsoft Access.

  • При работе с базами данных, которые не используются другими пользователями, устанавливайте Microsoft Access и все свои базы данных на собственном жестком диске, а не на сетевом сервере.

  • Чтобы быть единственным пользователем базы данных, откройте ее в монопольном режиме. Для этого в диалоговом окне Открытие файла базы данных нажмите стрелку рядом с кнопкой Открыть и выберите в списке вариант Монопольно.

  • Чтобы освободить память, закройте не используемые приложения.

  • Увеличьте оперативную память компьютера. При работе в системе Microsoft Windows 95 или более поздней рекомендуется 24 Мбайт памяти — 16 Мбайт плюс дополнительные 8 Мбайт памяти для Microsoft Access. При работе в системе Windows NT версии 4.0 или более поздней рекомендуется 40 Мбайт памяти — 32 Мбайт плюс дополнительные 8 Мбайт для Microsoft Access.

  • Не выделяйте часть оперативной памяти под электронный диск.

  • Регулярно удаляйте ненужные файлы, выполняйте сжатие базы данных, а после этого проводите дефрагментацию диска с помощью служебной программы дефрагментации. Для запуска этой программы нажмите кнопку Пуск в Windows, последовательно выберите пункты Программы, Стандартные, Служебные и выполните команду Дефрагментация диска.

  • В большинстве случаев настройки виртуальной памяти, используемые Windows по умолчанию, оказываются оптимальными. Однако в некоторых случаях для повышения производительности требуются некоторые изменения параметров виртуальной памяти. Если проблемы с быстродействием возникают и после удаления ненужных файлов, изменение стандартных настроек виртуальной памяти может оказаться полезным в следующих случаях:
    • недостаточно места на текущем диске, на котором выделено место под виртуальную память, и имеется свободное место на другом локальном диске;

    • имеется другой локальный диск, более быстрый чем текущий (за исключением случая высокой нагрузки на данный диск).

    В этих случаях использование другого локального диска приведет к повышению производительности.

    Кроме того, можно повысить быстродействие, если выделить для виртуальной памяти объем, равный по меньшей мере 25 Мбайт за вычетом текущего объема ОЗУ. Например, если компьютер имеет 12 Мбайт оперативной памяти, то под виртуальную память следует выделить не менее 13 Мбайт. Если на компьютере выполняется несколько больших приложений, следует выделить еще больший объем виртуальной памяти.

    Для изменения параметров виртуальной памяти Windows дважды щелкните значок «Система» на панели управления Windows, выберите вкладку Быстродействие, нажмите кнопку Виртуальная память и установите переключатель в положение Параметры виртуальной памяти устанавливаются вручную. После этого укажите другой жесткий диск или введите в поле Минимум значение, не меньшее чем 25 минус объем ОЗУ.

  • Замените рисунок или фоновый узор, выбранный для рабочего стола Windows, на однородный экран.

  • При использовании заставки как энергосберегающей функции монитора используйте пустой экран или не используйте заставку вообще.

  • Не используйте программы сжатия диска или переместите базы данных на несжатый диск.

Дополнительные сведения по повышению быстродействия базы данных содержатся в главе 10 «Optimizing Your Application» руководства Building Applications with Forms and Reports.


 Повышение быстродействия внешней базы данных SQL

Повышение быстродействия внешней базы данных SQL

Если данные в приложении, разделенном на клиентскую и серверную части, состоят только из таблиц Microsoft SQL Server, то в качестве клиентской части приложения можно использовать проект Microsoft Access или базу данных Microsoft Access. Однако, если требуется, чтобы данные приложения состояли как из таблиц Microsoft Access, так и из таблиц Microsoft SQL Server, то в качестве клиентской части следует использовать базу данных Access.

При подключении к таблице внешней базы данных SQL достичь наилучшей производительности позволяет связывание с таблицами SQL вместо прямого их открытия. Прямое открытие внешних таблиц SQL возможно только с помощью программы на Visual Basic. Связанные таблицы значительно быстрее, мощнее и эффективнее, чем непосредственно открываемые таблицы.

Советы по повышению быстродействия

  • Загружайте и просматривайте только необходимые данные. Используйте запросы, ограничивающие отбираемый набор записей, и включайте в запрос только необходимые поля. Это снизит объем данных, передаваемых по сети.

  • Не создавайте обновляемые наборы записей, если не планируется обновление данных, не требуется отбирать большое количество записей или просматривать изменения, вносимые другими пользователями. Чтобы сделать невозможным обновление результатов через форму, задайте для свойства Тип набора записей (RecordsetType) значение Статический набор. Статические наборы записей открываются и просматриваются быстрее, чем динамические.

  • При отборе большого количества записей динамический набор будет гораздо быстрее и эффективнее статического. Например, для перехода на последнюю запись статического набора необходимо загрузить на компьютер пользователя весь набор записей, а для динамического набора только последний экран данных. Кроме того, самым быстрым способом добавления новых записей в таблицу, форму или запрос является выбор команды Ввод данных в меню Записи. (Команда Ввод данных недоступна, если для свойства Тип набора записей (RecordsetType) задано значение Статический набор.)

  • Используйте временный буфер (кэш-память). Если последние данные, затребованные с сервера, могут понадобиться при дальнейшей работе с приложением, быстрее сразу загрузить большую порцию данных (много строк) и поместить их во временный буфер, чем загружать большое число записей по отдельности. Формы и объекты в режиме таблицы Microsoft Access используют временный буфер автоматически. При отборе данных с помощью объекта Recordset, созданного на Microsoft Visual Basic, можно использовать свойство CacheSize для указания числа записей, отбираемых в локальную память за один прием.

  • Старайтесь не использовать запросы, приводящие к обработке данных на компьютере локального клиента сети. При доступе к внешним данным ядро базы данных Jet обрабатывает данные на локальном уровне только в тех случаях, когда невозможно выполнить их обработку на сервере внешней базы данных. В число операций запросов (определяемых вызывающими их командами SQL), которые выполняются на локальном уровне, входят следующие.
    • Объединение таблиц из различных удаленных источников данных. (Следует отметить, что если в объединение включены локальная таблица или запрос, содержащие несколько записей, и удаленная таблица с большим количеством записей, объединяемые поля которой индексированы, возвращаются только записи, соответствующие локальной таблице или запросу, что значительно повышает быстродействие запроса.)

    • Объединения, основанные на запросе с предикатом DISTINCT или предложением GROUP BY.

    • Внешние объединения, синтаксис которых не поддерживается данным сервером.

    • Предикаты DISTINCT, содержащие операции, которые не могут быть выполнены на удаленном сервере.

    • Оператор LIKE, используемый в текстовых полях и полях MЕМО (может не поддерживаться некоторыми серверами).

    • Аргументы многоуровневой инструкции GROUP BY в отчетах с несколькими уровнями группировки.

    • Аргументы первой инструкции GROUP BY в запросе с предикатом DISTINCT или предложением GROUP BY.

    • Перекрестные запросы, которые включают несколько статистических функций или предложение ORDER BY, определяемое пользователем.

    • Предикаты TOP n или TOP n PERCENT.

    • Определяемые пользователем функции, операторы, а также функции, не поддерживаемые данным сервером.

    • Сложные комбинации операций INNER JOIN, LEFT JOIN или RIGHT JOIN в подчиненных запросах.
  • Повысьте скорость выполнения на сервере запросов на обновление больших объемов данных из источников данных ODBC, задав для свойства FailOnError значение Да. Для получения дополнительных сведений нажмите кнопку [image] .


 Статистические функции в строке «Групповая операция» бланка запроса и их использование

Статистические функции в строке «Групповая операция» бланка запроса и их использование

В бланке запроса девять из двенадцати элементов раскрывающегося списка в ячейке строки Групповая операция являются статистическими функциями. В следующей таблице перечислены все эти функции, кроме функций First и Last. Для вывода описания функций First и Last нажмите кнопку [image] . Остальные три элемента списка приведены во второй таблице.

Примечание. При вычислении статистических функций не учитываются записи, содержащие пустые (Null) значения. Например, функция Count возвращает количество всех непустых полей (не содержащих значения Null). Существуют способы подсчета количества значений Null, имеется также возможность преобразовать значения Null в нули для их включения в расчеты. Для получения дополнительных сведений нажмите кнопку [image] .

Элемент | Результат | Тип поля
Sum | Сумма значений поля. | Числовой, Дата/время, Денежный, Счетчик
Avg | Среднее от значений поля. | Числовой, Дата/время, Денежный, Счетчик
Min | Наименьшее значение поля. | Текстовый, Числовой, Дата/время, Денежный, Счетчик
Max | Наибольшее значение поля. | Текстовый, Числовой, Дата/время, Денежный, Счетчик
Count | Число значений поля без учета пустых (Null) значений. | Текстовый, Числовой, Дата/время, Денежный, Счетчик, Логический, Поле объекта OLE
StDev | Среднеквадратичное отклонение от среднего значения поля. | Числовой, Дата/время, Денежный, Счетчик
Var | Дисперсия значений поля. | Числовой, Дата/время, Денежный, Счетчик

Элемент | Назначение
Группировка | Определяет группы, для которых выполняются вычисления. Например, чтобы показать суммарные продажи по типам товаров, выберите элемент Группировка для поля «Тип».
Выражение | Создает вычисляемое поле с помощью выражения, включающего статистическую функцию. Обычно вычисляемое поле создается, если требуется включить в выражение несколько функций.
Условие | Определяет условия отбора для поля, которое не участвует в группировке. Если для поля выбирается этот параметр, автоматически снимается флажок Вывод на экран, и поле не выводится на экран при выполнении запроса.


 Основные спецификации проекта Microsoft Access

Основные спецификации проекта Microsoft Access

Атрибут | Максимальное значение
Число объектов в проекте Microsoft Access (.adp) | 32 768
Модули (включая формы и отчеты, свойство Наличие модуля (HasModule) которых имеет значение True) | 1 000
Число символов в имени объекта | 64


Спецификации запроса базы данных Microsoft Access

Атрибут | Максимальное значение
Число установленных связей | 32 на одну таблицу за вычетом числа индексов, находящихся в таблице для полей или сочетаний полей, не участвующих в связях
Число таблиц в запросе | 32
Число полей в наборе записей | 255
Размер набора записей | 1 Гбайт
Предел сортировки | 255 символов в одном или нескольких полях
Число уровней вложения запросов | 50
Число символов в ячейке на бланке запроса | 1 024
Число символов для параметра в запросе с параметрами | 255
Число операторов AND в предложении WHERE или HAVING | 40
Число символов в инструкции SQL | приблизительно 64 000


 RepaintObject, ShowAllRecords, Requery, and Refresh Action/Method Comparison

RepaintObject, ShowAllRecords, Requery, and Refresh Action/Method Comparison

The following table provides a brief comparison of the RepaintObject action, RepaintObject method, Repaint method, ShowAllRecords action, ShowAllRecords method, Requery action, DoCmd.Requery method, Refresh method, and Requery method.

Action or Method | Description
RepaintObject action
DoCmd.RepaintObject Repaint method 		Use the RepaintObject action, RepaintObject method or Repaint method to repaint controls in the specified object. They don't requery the database or display new records.
ShowAllRecords action
ShowAllRecords method 		Use the ShowAllRecords action to requery and display the most recent records and remove any applied filters, which the Requery action doesn't do.
Requery action
DoCmd.Requery method 		Use the Requery action or method to requery the source of the object or one of its controls. The Requery action or method does one of the following:

Reruns the query on which the control or object is based.

Displays any new or changed records, and removes any deleted records from the table on which the control or object is based.
Refresh method | Use the Refresh method to immediately update the records in the underlying record source for a specified form or datasheet to reflect changes made to the data by you and other users in a multiuser environment. The Refresh method shows only changes that have been made to the current set of records; it doesn't reflect new records or deleted records in the record source.
Requery method
  • Use the Requery method to update the data underlying a form or control to reflect records that are new to or have been deleted from the record source since it was last requeried.

    If you want to requery a control that isn't on the active object, you must use this method, not the Requery action or its corresponding DoCmd.Requery method.


Влияние способа выбора значений для фильтра на результирующий набор записей

В поле можно выбрать все значение или его часть. Способ выбора значения определяет, какие записи будет возвращать фильтр.

Выбор | Поиск записей | Пример
Выделяется все содержимое поля (или курсор устанавливается в поле без выделения значения). | Все содержимое данного поля должно совпадать с выбранным значению. | В поле «Город» выбрано значение «Берлин». Фильтр возвращает все записи, у которых в поле города содержится значение «Берлин».
Часть значения, начиная с первого символа в поле. | Значение данного поля должно начинаться с выбранных символов. | В поле «Название», содержащем значение «Прима», выделены символы «При». Фильтр отбирает все записи, содержащие в поле «Название» значения, которые начинаются с «При» (например, «Привет» и «Прибой»).
Часть значения, начиная не с первого символа в поле. | Все значение данного поля или его часть содержат выбранные символы. | В поле «Название», содержащем значение «Прима», выделены символы «рим». Фильтр отбираются все записи, содержащие «рим» в любом месте поля «Название» (например, «Рим», «Римма» и «Буриме»).


Технические спецификации базы данных Microsoft SQL Server

Технические спецификации Microsoft SQL Server приведены в документации по SQL Server. Спецификации включают сведения о максимальных размерах и значениях объектов SQL Server, минимальных и максимальных значениях параметров настройки, а также об использовании памяти различными объектами SQL Server. См. сведения о документации по SQL Server.


Спецификации таблицы базы данных Microsoft Access

Атрибут | Максимальное значение
Число символов в имени таблицы | 64
Число символов в имени поля | 64
Number of fields in a table | 255
Число открытых таблиц | 2048. Фактическое число может быть меньше из-за таблиц, открытых внутри Microsoft Access.
Размер таблицы | 1 Гбайт
Число символов в текстовом поле | 255
Число символов в поле MEMO | 65 535 при вводе данных через интерфейс пользователя; 1 Гбайт при программном вводе данных.
Размер поля объекта OLE | 1 Гбайт
Число индексов в таблице | 32
Число полей в индексе | 10
Число символов в сообщении об ошибке | 255
Число символов в условии на значение записи | 2 048
Число символов в описании таблицы или поля | 255
Число символов в записи (кроме полей MEMO и полей объектов OLE) | 2 000
Число символов в значении свойства поля | 255


Типы запросов, создаваемых в Microsoft Access

Типы

Запросы на выборку

Запросы с параметрами

Перекрестные запросы

Запросы на изменение (запросы на создание таблицы, удаление, обновление, добавление записей)

Запросы SQL (запросы на объединение, запросы к серверу, управляющие запросы, подчиненные запросы)

Возврат в раздел о создании запроса


 Пользователям не удается открыть мою интерактивную страницу доступа к данным

Пользователям не удается открыть мою интерактивную страницу доступа к данным

Для использования интерактивных данных Microsoft Access на странице доступа к данным пользователи должны иметь установленный пакет Microsoft Office 2000 профессионального, расширенного или стандартного выпуска, либо лицензию на узел Microsoft Office 2000 и установленные Web-компоненты.

Чтобы гарантировать наличие у пользователей интрасети установленных Web-компонентов, можно задать загрузку Web-компонентов на компьютеры пользователей при открытии страницы доступа к данным.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. В меню Сервис выберите команду Параметры, а затем вкладку Общие.

  3. Нажмите кнопку Параметры Web-документа и выберите вкладку Файлы.

  4. Установите флажок Загрузить Web-компоненты Office.

  5. В поле Расположение введите путь к файловому серверу, такой как «file:\\my server\my folder».

Примечание. Пользователи должны иметь доступ к файловому серверу. Web-компоненты невозможно загрузить через дополнительные системы защиты (брандмауэры).


 Использование сочетаний клавиш в режиме страницы

Использование сочетаний клавиш в режиме страницы

Примечание. Для использования следующих клавиш несколько раз нажмите клавишу TAB для перевода фокуса на маркер развертывания или панель перехода по записям. Если фокус в данный момент находится на сводном списке или электронной таблице, нажмите клавиши CTRL+TAB.

Сочетание клавиш | Назначение
ПРОБЕЛ или ENTER | Развертывание или свертывание группы записей, в соответствии с видом маркера развертывания на странице доступа к данным с группами.
СТРЕЛКА ВЛЕВО или ВПРАВО | Выбор кнопки на панели перехода по записям.
ПРОБЕЛ или ENTER | Активизация выбранной кнопки на панели перехода по записям.


 Использование сочетаний клавиш для диалоговых окон «Открытие файла базы данных», «Файл новой базы данных» и «Экспорт»

Использование сочетаний клавиш для диалоговых окон «Открытие файла базы данных», «Файл новой базы данных» и «Экспорт»

Сочетание клавиш | Конечный
ALT+1 | Переход к предыдущей папке ( [image] )
ALT+2 | Открытие папки, расположенной на один уровень выше открытой папки (кнопка Переход на один уровень вверх [image] )
ALT+3 | Закрытие диалогового окна и открытие страницы поиска Web (кнопка Найти в Web [image] )
ALT+4 | Удаление выделенной папки или файла (кнопка Удалить [image] )
ALT+5 | Создание новой подпапки в открытой папке (кнопка Создать папку [image] )
ALT+6 | Переключение между режимами «Список», «Таблица», «Свойства» и «Просмотр»
ALT+7 | Открытие меню Сервис (кнопка Сервис)


Устанавливаемые мастера

Данный раздел содержит справочные сведения по следующим вопросам.

Мастера, устанавливаемые при выборе компонента «Мастера» программы установки

Мастера, устанавливаемые при выборе компонента «Дополнительные мастера» программы установки

Мастера, устанавливаемые при выборе компонента «Мастера» программы установки

Автонабор номера | Связь с HTML
Автоформа | Связь с электронными таблицами
Автоформат | Связь с текстом
Автостраницы | Создание списков
Автоотчет | Подстановка
Создание полей со списком | Слияние с Microsoft Word
Кнопки | Страницы
Перекрестные запросы | Создание полей со списком для страниц
Создание баз данных | Кнопки для страниц
Экспорт | Создание списков для страниц
Построитель полей | Построитель рисунков
Формы | Сводные таблицы
Импорт из Exchange/Outlook | Печать схемы данных
Импорт HTML | Отчеты
Импорт электронных таблиц | Простые запросы
Импорт текста | Диспетчер кнопочных форм
Почтовые наклейки | Таблицы
Связь с Exchange/Outlook |

Возврат в начало

Мастера, устанавливаемые при выборе компонента «Дополнительные мастера» программы установки

Диспетчер надстроек | Построитель строк подключения ODBC
Разделение баз данных | Создание групп переключателей
Архивариус | Частичная репликация
Поиск повторяющихся записей | Анализ быстродействия
Поиск записей без подчиненных | Защита
Создание диаграмм | Создание подчиненных форм и отчетов
Создание масок ввода | Связь полей подчиненных форм и отчетов
Диспетчер связанных таблиц | Анализ таблиц
Преобразование макросов в модули | Преобразование в формат SQL Server
Базы данных Microsoft SQL Server |

Возврат в начало

Примечание. Следующие мастера устанавливаются при любом режиме установки: построитель цветов, построитель выражений, построитель запросов.


Работа с символами валюты евро

Microsoft Access 2000 предоставляет полную поддержку отображения, ввода и печати символа валюты евро Символ валюты евро. При использовании системы Microsoft Windows 95 или Microsoft Windows NT Workstation 4.0 может потребоваться добавление в систему поддержки символа валюты евро от корпорации Майкрософт.

Ввод символа валюты евро. Чтобы ввести символ валюты евро [image], воспользуйтесь следующими клавишами:

Сочетание клавиш | Тип клавиатуры
ALT+0128 (цифровая клавиатура) | Арабская, Иврит, Турецкая и США (101 клавиша)
ALTGR+E | Бельгийская, Голландская (KBD143), Голандская (Бельгия 120), Датская, Исландская, Итальянская, Итальянская (142), Испанская, Латвийская, Литовская, Литовская (новая), Македонская (кириллица), Немецкая (IBM), Немецкая (стандартная), Норвежская, Португальская (KBD163), Сербская (кириллица), Сербская (латиница), Словацкая, Словацкая (QWERTY), Словенская, Турецкая (F 440), Турецкая (Q 179), Фарерская, Финская, Французская, Хорватская, Чешская, Чешская (101), Чешская (для программистов), Шведская, Швейцарская (немецкая), Швейцарская (французская) и Эстонская
ALTGR+U | Венгерская, Венгерская (101), Польская и Польская (для программистов)
ALTGR+эпсилон | Греческая
ALTGR+4 | Британская, Ирландская и Латвийская (QWERTY)
ALTGR+5 | Греческая (латиница) и США (международная)
ALT+0136 (цифровая клавиатура) | Кириллическая

Отображение символа валюты евро. Шрифты, необходимые для отображения символа валюты евро, устанавливаются при установке Access. Отображение символа валюты евро возможно в следующих шрифтах:

Операционная система | Шрифты
Microsoft Windows 95 с обновлением для евровалюты | Arial Black, Arial, Comic Sans (обычный и полужирный), Courier New, Impact, MS Sans Serif, Tahoma (обычный и полужирный), Times New Roman, Verdana
Microsoft Windows 98 | Arial, Courier New, Tahoma (обычный и полужирный), Times New Roman
Microsoft Windows NT 4.0 с Service Pack 3 и обновлением для евровалюты | Arial, Courier New, Times New Roman
Microsoft Windows NT 4.0 с Service Pack 4 | Arial, Courier New, Lucida Console, Lucida Sans Unicode, Times New Roman

Печать символа валюты евро. Если среди резидентных шрифтов принтера нет ни одного шрифта с символом валюты евро, то вместо символа валюты евро будет печататься квадратик. За сведениями по приобретению обновленных шрифтов, включающих символ валюты евро, обращайтесь к поставщику принтера.


 ALL, DISTINCT, DISTINCTROW, TOP Predicates

ALL, DISTINCT, DISTINCTROW, TOP Predicates

In Microsoft Access, the use of the DISTINCT reserved word is equivalent to setting the UniqueValues property to Yes on the query's property sheet in query Design view.

The use of the DISTINCTROW reserved word is equivalent to setting the UniqueRecords property to Yes (the default value) in the query's property sheet in query Design view.

The use of the TOP reserved word is equivalent to setting the TopValues property on the query's property sheet in query Design view, or entering a value in the Top Values box Top value, list box on the Query Design toolbar.

The use of the PERCENT reserved word is equivalent to using the percent sign (%) with the TopValues property on the query's property sheet, or in the Top Values box.


ALL, DISTINCT, DISTINCTROW, TOP Predicates Example (MDB)

To try the following examples in Microsoft Access, create two new tables like those shown below. Create a new query in the Northwind sample database and close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

Clients Table

FirstName | ClientID
Bob | 1
Adam | 2
Beverly | 3
Bob | 4

Invoices Table

ClientID | InvoiceID
1 | 1
1 | 2
2 | 3
2 | 4
2 | 5
4 | 6
4 | 7

The following example returns all of the records returned by an inner join on the two tables. The result set is updatable.

SELECT ALL FirstName FROM Clients INNER JOIN Invoices
ON Clients.ClientID = Invoices.ClientID;
Result | Updatable
Bob Bob Adam Adam Adam Bob Bob | Yes

The next example selects only records with unique values returned by an inner join on the two tables. The result set isn't updatable.

SELECT DISTINCT FirstName FROM Clients
    INNER JOIN Invoices
    ON Clients.ClientID = Invoices.ClientID;
Result | Updatable
Bob Adam | No

The following example selects only unique records returned by an inner join on the two tables. The result set is updatable.

SELECT DISTINCTROW FirstName FROM Clients
    INNER JOIN Invoices
    ON Clients.ClientID = Invoices.ClientID;
Result | Updatable
Bob Adam Bob | Yes

The next example selects the first five records returned by an inner join on the two tables. The result set is updatable.

SELECT TOP 5 FirstName FROM Clients
    INNER JOIN Invoices
    ON Clients.ClientID = Invoices.ClientID
    ORDER BY Invoices.InvoiceID;
Result | Updatable
Bob Bob Adam Adam Adam | Yes


ALTER TABLE Statement Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

Warning These examples makes changes to the Northwind sample database. Before beginning, you may wish to make a backup copy of the sample database.

The following example adds a Salary field with a data type of Currency to the Employees table:

ALTER TABLE Employees ADD COLUMN Salary CURRENCY;

    The next example removes the Salary field from the Employees table:

    ALTER TABLE Employees DROP COLUMN Salary;

      Once you've run the next two queries, click Relationships on the Tools menu to view the changed relationships.

      The following example removes the existing foreign key from the Orders table:

      ALTER TABLE Orders DROP CONSTRAINT EmployeesOrders;

        The next example adds the foreign key back to the Orders table:

        ALTER TABLE Orders ADD CONSTRAINT EmployeesOrders _
    FOREIGN KEY (EmployeeID) REFERENCES Employees _
    (EmployeeID);


 Avg Function

Avg Function

In Microsoft Access, you can use the Avg function in the query design grid, in an SQL statement in SQL view of the Query window, or in an SQL statement within Visual Basic code. You can also use the Avg function in a calculated control on a form or report.

The Avg function is most useful in totals queries and crosstab queries. It functions the same way whether you create the query in the query design grid or as an SQL statement in SQL view.

In the query design grid, you can create a new totals query by clicking Totals [image] on the Query Design toolbar. The Total row is then inserted in the grid. You can set the Total cell beneath a field to the aggregate function to perform on the data in that field.

For example, suppose you have an Orders table that has both a Freight field and a ShipCity field. You can create a query that displays the average freight cost for orders sent to each city to which your company ships. Create a new totals query, and drag the ShipCity field to the query design grid. The Total cell beneath the ShipCity field should be set to Group By. Drag the Freight field to the query design grid, and set the Total cell beneath it to Avg. When you run the query, it will display the average freight cost by city.

You can view the SQL statement for this query by switching to SQL view. In this example, Microsoft Access creates the following SQL statement:

SELECT ShipCity, Avg(Freight) AS AvgOfFreight
FROM Orders GROUP BY ShipCity;

You can also use an SQL statement within Visual Basic Code. For example, the following procedure creates a dynaset-type Recordset object from the preceding SQL statement:

Sub AvgFreight()
    Dim dbs As Database, rst As Recordset, strSQL _
        AS String
    Set dbs = CurrentDb
    strSQL = "SELECT ShipCity, Avg(Freight) _
        AS AvgOfFreight FROM Orders " _
        & "GROUP BY ShipCity;"
    Set rst = dbs.OpenRecordset(strSQL)
    rst.MoveLast
    Debug.Print rst.RecordCount
    Set dbs = Nothing
End Sub

To use the Avg function in a calculated control, set the control's ControlSource property to an expression containing the Avg function. For example, to display the average freight cost for a set of orders in a text box, enter the following expression in the ControlSource property of the text box:

=Avg([Freight])

If you use the Avg function in a calculated control, you can restrict the set of records against which the function is performed by setting the form's Filter property.


Avg Function Example

The following example assumes that you have an Orders table that contains a field called Freight. You can use the Avg function to calculate the average freight charges for orders with freight charges over $100. Enter the following expression in SQL view in the Query window:

SELECT Avg([Freight]) AS [AverageFreight] FROM Orders
WHERE [Freight] > 100;

The next example creates a calculated control that displays the average freight charges for all of the underlying records in a form based on the same Orders table. Open a new form and set its RecordSource property to Orders. Enter this expression in the ControlSource property of a text box on the form. To apply a condition that limits the calculation to only some records, such as those for orders greater than $100, set the form's Filter property.

=Avg([Freight])


 Between...And Operator

Between...And Operator

In Microsoft Access, you can use the Between...And operator in a query expression or in a calculated control on a form or report.

You can use the Between...And operator in the Criteria row in the query design grid to create a parameter query. The Between...And operator enables you to prompt the user to enter a range of values by which the query is restricted. The expression supplied for the value1 argument serves as the prompt for the beginning of the range, and the expression supplied for the value2 argument serves as the prompt for the end of the range.

For example, suppose you have an Orders table that has an OrderDate field. Create a new query in the query design grid and drag the OrderDate field to the first Field cell in the grid. In the Criteria cell, enter the following statement:

Between [Enter beginning date:] And [Enter _
    ending date:]

    When you run the query, you will first be prompted with a dialog box that says "Enter beginning date:". Once you enter a value in that dialog and click OK, you will be prompted by a second dialog box that says "Enter ending date:". Assuming you enter valid dates, your results will include all the values in the OrderDate field that either match or fall between the dates you specified as parameters.

    You can also use the Between...And operator in a calculated control to determine whether the value of the control falls within a specified numeric range. The following example determines whether an order was shipped to a location within a range of postal codes. If the ShipPostalCode field is between 98101 and 98199, the IIf function returns "Local". Otherwise, it returns "Nonlocal".

    = IIf([ShipPostalCode] Between "98101" And "98199", _
     "Local", "Nonlocal")

    If any of the arguments supplied for the Between...And operator expression is Null, the Between...And operator returns a Null.


 Count Function

Count Function

In Microsoft Access, you can use the Count function in the query design grid, in an SQL statement in SQL view of the Query window, or in an SQL statement within Visual Basic code. You can also use the Count function in a calculated control on a form or report.

The Count function is most useful in totals queries and crosstab queries. It functions the same way whether you create the query in the query design grid or as an SQL statement in SQL view.

In the query design grid, you can create a new totals query by clicking Totals [image] on the Query Design toolbar. The Total row is then inserted in the grid. You can set the Total cell beneath a field to the aggregate function to perform on the data in that field.

The fastest way to count all the records in a query is to use the Count(*) function, which you can use in a calculated field in a query.

For example, suppose you have an Orders table that has both an OrderID field and a ShipCity field. You can create a query that displays the number of orders sent to each city. Create a new totals query, and drag the ShipCity field to the query design grid. Set the Total cell beneath the ShipCity field to Group By.

Next, create a calculated field by typing the following expression into a new Field cell:

CountOfOrders: Count(*)

Then, set the Total cell beneath this field to Expression. When you run the query, it will display the number of orders sent to each city.

You can view the SQL statement for this query by switching to SQL view. In this example, Microsoft Access creates the following SQL statement:

SELECT ShipCity, Count(*) AS CountOfOrders
FROM Orders GROUP BY ShipCity;

You can achieve the same results by dragging the OrderID field to the query design grid, and clicking Count in the Total cell beneath it. This query will be slightly slower than the one that uses the Count(*) function. Note how the following differs from the preceding SQL statement:

SELECT ShipCity, Count(OrderID) AS CountOfOrders
FROM Orders GROUP BY ShipCity;

You can also use an SQL statement within Visual Basic code. For example, the following procedure creates a dynaset-type Recordset object from the faster of the two preceding SQL statements:

Sub CountOrders()
    Dim dbs As Database, rst As Recordset, strSQL AS String
    Set dbs = CurrentDb
    strSQL = "SELECT ShipCity, Count(*) _
        AS CountOfOrders FROM Orders " _
        & "GROUP BY ShipCity;"
    Set rst = dbs.OpenRecordset(strSQL)
    rst.MoveLast
    Debug.Print rst.RecordCount
    Set dbs = Nothing
End Sub

To use the Count function in a calculated control, set the control's ControlSource property to an expression containing the Count function. For example, to display the number of orders in a set of orders in a text box, enter the following expression in the ControlSource property of the text box.

=Count([OrderID])

If you use the Count function in a calculated control, you can restrict the set of records against which the function is performed by setting the form's Filter property.


Count Function Example

The following example assumes that you have an Orders table that contains a field called ShipCountry. You can use the Count function to calculate the number of orders shipped to the United Kingdom. Enter the following expression in SQL view in the Query window:

SELECT Count([ShipCountry]) AS [UKOrders] FROM Orders
WHERE [ShipCountry] = 'UK';

The next example creates a calculated control that displays the number of orders in the same Orders table. Open a new form and set its RecordSource property to Orders. Enter the following expression in the ControlSource property of a text box on the form. To apply a condition that limits the count to only some records, such as those for orders shipped to the United Kingdom, set the form's Filter property.

=Count([ShipCountry])


CREATE INDEX Statement Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

Warning These examples makes changes to the Northwind sample database. Before beginning, you may wish to make a backup copy of the sample database.

The next example creates an index consisting of the fields HomePhone and Extension in the Employees table:

CREATE INDEX NewIndex ON Employees (HomePhone, _
    Extension);

The following example creates an index on the Customers table with the CustomerID field. No two records can have the same data in the CustomerID field, and no Null values are allowed.

CREATE UNIQUE INDEX CustID ON Customers (CustomerID) _
    WITH DISALLOW NULL;

To delete the index created in the preceding example, you must use the DROP statement. You can't delete the index from table Design view unless you also delete the relationship on the Customers table. The following statement deletes the new index by using the DROP statement:

DROP INDEX CustID ON Customers;

The following example creates an index on an ODBC linked table. The table's remote database is unaware of and unaffected by the new index. The following example won't work if you simply paste it into Microsoft Access; you first need to create an ODBC linked table called OrderDetailsODBC.

CREATE UNIQUE INDEX OrderID ON OrderDetailsODBC _
    (OrderID);


CREATE TABLE Statement, CONSTRAINT Clause Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

Warning These examples makes changes to the Northwind sample database. Before beginning, you may wish to make a backup copy of the sample database.

The following example creates a new table with two Text fields:

CREATE TABLE FirstTable (FirstName TEXT, _
    LastName TEXT);

The next example creates a new table with two Text fields, a Date/Time field, and a unique index made up of all three fields:

CREATE TABLE SecondTable (FirstName TEXT, _
    LastName TEXT, DateOfBirth DATETIME, _
    CONSTRAINT MyTableConstraint UNIQUE (FirstName, _
    LastName, DateOfBirth));

The following example creates a new table with two Text fields and an Integer Number field. The SSN field is the primary key.

CREATE TABLE ThirdTable (FirstName TEXT, _
    LastName TEXT, SSN INTEGER
CONSTRAINT MyFieldConstraint PRIMARY KEY);


 DELETE Statement

DELETE Statement

In Microsoft Access, no query result set or datasheet is produced when you use the DELETE statement. If you want to know which records will be deleted, first view the datasheet of a select query that uses the same criteria, and then run a delete query.


DELETE Statement Example (MDB)

To try the following example, add a few records to the Employees table with the Title value of "Trainee".

This example deletes all records for employees whose title is Trainee. When the FROM clause includes only one table, you don't have to list the table name in the DELETE statement.

DELETE * FROM Employees WHERE Title = 'Trainee';


DROP Statement Example (MDB)

To try the following example, create an index called MyIndex on the Employees table in the Northwind database, by using any field. Then create a new table called Trainees. Create a new query in the Northwind sample database and close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

Warning These examples makes changes to the Northwind sample database. Before beginning, you may wish to make a backup copy of the sample database.

The following example deletes the index MyIndex from the Employees table:

DROP INDEX MyIndex ON Employees;

The next example deletes the Trainees table from the database:

DROP TABLE Trainees;


 SQL Expressions

SQL Expressions

Many Visual Basic functions can be used in SQL strings. You can use Visual Basic functions in SQL strings included in Visual Basic code, in SQL view of the Query window, or in the query design grid. You can also write your own Visual Basic functions and use them in SQL strings.

Functions that can be included in SQL strings must return a value that is either a string or a Variant. Also, whatever operation is performed by the function can be performed only once. You can't include a function that must be performed on every record in the data set, because the SQL statement is only passed to the Microsoft Jet database engine once. For example, you can't create a function that takes a field value as an argument.

You can include Visual Basic functions in an SQL statement that you use to define a QueryDef object, or a dynaset-type or snapshot-type Recordset object in code. In the Microsoft Access query design grid, you can include Visual Basic functions in an SQL statement, in criteria expressions, or in calculated field expressions.


SQL Expressions Example

The following example creates a dynaset-type Recordset object from an SQL statement. The SQL statement includes the Year function in a WHERE clause to return only records for orders placed in 1995.

Sub Orders96()
    Dim dbs As Database, rst As Recordset, strSQL _
        AS String
    Dim fld As Field

    Set dbs = CurrentDb
    strSQL = "SELECT DISTINCTROW OrderID, OrderDate " _
        & "FROM Orders " _
        & "WHERE ((Year([OrderDate])=1996));"
    Set rst = dbs.OpenRecordset(strSQL, dbOpenDynaset)
    rst.MoveLast
    Debug.Print rst.RecordCount
End Sub

The next example shows how you can include a Visual Basic function in an SQL statement in SQL view in the Query window. The following SQL statement defines a query that displays the ShipName field from an Orders table, calculates the number of characters in that field for each record by using the Len function, and displays that calculation in another column.

SELECT DISTINCTROW ShipName, Len([ShipName]) _
    AS LengthOfShipName
FROM Orders;

You can create the same query in the query design grid. Create a new query and add the Orders table. Drag the ShipName field onto the Field cell in the first column in the grid. In another Field cell, create a calculated field expression by entering the following expression.

LengthOfShipName: Len([ShipName])


 First, Last Functions

First, Last Functions

In Microsoft Access, you can use the First and Last functions in the query design grid, in an SQL statement in SQL view of the Query window, or in an SQL statement within Visual Basic code. You can also use the First and Last functions in a calculated control on a form or report.

The First and Last functions are most useful in calculated controls on a report. For example, if you have an Order report that is grouped on a ShipCountry field and sorted on an OrderDate field, you can use the First and Last functions in calculated controls to show the range of earliest to latest order dates for each grouping. To group on the ShipCountry field, click Sorting And Grouping [image] on the Report Design toolbar. Choose ShipCountry in the Field/Expression column, and set the GroupHeader and GroupFooter properties to Yes. In Design view, create two new text boxes in the ShipCountry footer, and set the ControlSource property for both to the following expressions:

=First([OrderDate])
=Last([OrderDate])

When you switch to Print Preview, you will see the first and last order dates for each group of orders.

Notes If you want to return the first or last record in a set of records in Access 2000, you should create a query sorted as either ascending or descending and set the TopValues property to 1. For more information, see the TopValues property topic. From Visual Basic, you can also create a sorted result set of the query, and use the DAO MoveFirst or MoveLast method to return the first or last record in a set of records.

In Access projects (.adp), the First and Last functions operate as if the underlyng information is not sorted. The function will return the first entry that matches the criteria listed in the function which may not be the first or last matching entry in the underlying information.


 FROM Clause

FROM Clause

If you include a query or table name in the FROM clause of an SQL statement, that query or table will be automatically added to the Query window.

Conversely, any table or query that you add to the Query window will be included in the FROM clause of the corresponding SQL statement.


 GROUP BY Clause

GROUP BY Clause

Including a GROUP BY clause in an SQL statement is equivalent to creating a totals query in the Query window and setting the Total cell to Group By for the appropriate field.


GROUP BY Clause Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

The following example finds the average of the unit price for all products from each supplier and groups the list of prices by supplier:

SELECT SupplierID, Avg(UnitPrice) AS AvgOfUnitPrice
FROM Products GROUP BY SupplierID;

The next example finds the maximum unit price for a product in each category:

SELECT CategoryID, Max(UnitPrice) AS MaxOfUnitPrice
FROM Products GROUP BY CategoryID;

The following example counts the number of orders attributed to each employee in the database:

SELECT EmployeeID, Count(OrderID) AS CountOfOrderID
FROM Orders GROUP BY EmployeeID;


HAVING Clause Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

The following example finds the suppliers whose products have an average unit price over $25:

SELECT SupplierID, Avg(UnitPrice) AS AvgOfUnitPrice
FROM Products GROUP BY SupplierID
HAVING (Avg(UnitPrice)>25);

The next example selects employees who have sold more than 100 orders:

SELECT EmployeeID, Count(OrderID) AS CountOfOrderID
FROM Orders GROUP BY EmployeeID
HAVING Count(OrderID) > 100;


INNER JOIN Operation Example (MDB)

To try the following example in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste the example into the SQL window, and run the query.

The following example creates two equi-joins: one between the Order Details and Orders tables and another between the Orders and Employees tables. Both joins are necessary because the Employees table doesn't contain sales data, and the Order Details table doesn't contain employee data. The query produces a list of employees and their total sales.

SELECT DISTINCTROW Sum(UnitPrice * Quantity)
    AS Sales, FirstName & " " & LastName
    AS Name FROM Employees
    INNER JOIN(Orders INNER JOIN [Order Details]
    ON Orders.OrderID = [Order Details].OrderID)
    ON Employees.EmployeeID = Orders.EmployeeID
    GROUP BY FirstName & " " & LastName;


In Operator Example (MDB)

To try the following example in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste the example into the SQL window, and run the query.

This example creates a query on the Orders table that includes orders shipped to Colchester, Hedge End, and London:

SELECT * FROM Orders WHERE ShipCity _
    In ('Colchester','Hedge End','London');


 In Operator

In Operator

In Microsoft Access, you can use the In operator in a query expression or in a calculated control on a form or report.

You can use the In operator in a query expression when you need to set a number of criteria. For example, suppose you have an Orders table with both a ShipCountry field and an OrderID field, and you want to create a query to show all orders sent to the United States, Canada, or the United Kingdom. Create a new query in the Query window and add the Orders table. Drag the OrderID field and the ShipCountry field to the query design grid. Enter the following expression in the Criteria cell below the ShipCountry field:

In('USA', 'Canada', 'UK')

When you run the query, you will see all orders shipped to one of these three countries.

You can achieve the same result by entering the following expression in the Criteria cell:

"USA" Or "Canada" Or "UK"

With a long list of criteria, it may be more convenient to use the In operator than the Or operator. In addition, the SQL statement for the expression containing the In operator is shorter.

You can use the In operator in a calculated control to determine whether the value of a field in the current record is within a set of values. For example, you might use the In operator with the IIf function to determine whether the value of a control is among a set of specified values. In the following example, if the ShipRegion is WA, OR, or ID, the IIf function returns "Local". Otherwise, it returns "Nonlocal".

=IIf([ShipRegion] In ('WA','OR','ID'), "Local", _
     "Nonlocal")


 INSERT INTO Statement

INSERT INTO Statement

If you create an INSERT INTO...VALUES query in SQL view, save and close the query, and then reopen it, you'll see that Microsoft Access has converted the VALUES clause to a SELECT clause. This doesn't alter the results of the query.

The use of the INSERT INTO statement is equivalent to setting the DestinationTable property in the query's property sheet of an append query in query Design view.


INSERT INTO Statement Example (MDB)

Warning These examples makes changes to the Northwind sample database. Before beginning, you may wish to make a backup copy of the sample database.

To try the following example, create a copy of the Customers table and name it NewCustomers. This example selects all records in the New Customers table and adds them to the Customers table. When individual columns aren't designated, the SELECT table column names must match exactly those in the INSERT INTO table.

INSERT INTO Customers SELECT * FROM NewCustomers;

The next example creates a new record in the Employees table:

INSERT INTO Employees (FirstName,LastName, Title)
    VALUES ('Harry', 'Washington', 'Trainee');

The following example selects all trainees from an assumed Trainees table who were hired more than 30 days ago and adds their records to the Employees table.

INSERT INTO Employees SELECT Trainees.* FROM Trainees
    WHERE HireDate < Now() - 30;

You can use the INSERT INTO clause to back up information in your database before it is changed. For example, you can back up information in an Employees table immediately before a user makes any changes to the data in that table.

To try the following example, in the Database window copy the Employees table to a new table called EmployeeHistory by clicking the table, clicking Copy on the toolbar, then clicking Paste . Under Paste Options in the Paste Table As dialog box, click Structure Only. This will copy the structure of the table only, without any data. Next paste the following SQL statement into a new query and save the query as BackUpQuery:

INSERT INTO EmployeesHistory (FirstName, LastName, Title)
    VALUES (Forms!Employees!FirstName, _
        Forms!Employees!Lastname,Forms!Employees!Title);

Open the Employees form in form Design view and set the form's BeforeUpdate property to [Event Procedure]. In the BeforeUpdate event procedure, enter the following code:

DoCmd.OpenQuery "BackUpQuery"

Now the existing data in the Employees table will be copied to the backup table each time a user changes it.


IN Clause Example (MDB)

The following table shows how you can use the IN clause to retrieve data from an external database. Each example assumes the Customers table is stored in an external database.

Note The SQL IN clause is different than the SQL In operator, which is used to determine whether the value of an expression is equal to any of several values in a specified list.

External database SQL statement
Microsoft Jet database.

JetData.mdb is the name of the Jet database that contains the Customers table.

 SELECT CustomerID
FROM Customers
IN 'C:\My Documents\JetData.mdb'
WHERE CustomerID Like 'A*';
Microsoft Excel workbook (.xls file).

XLData.xls is a Microsoft Excel workbook that contains a worksheet called Customers. CustomersRange is a named range in that worksheet. Note that to denote the entire worksheet as the table, you must append a dollar sign ($) and enclose the name in brackets.

 SELECT CustomerID, CompanyName
FROM [Customers$]
IN 'C:\My Documents\XLData.xls' 'EXCEL 5.0;'
WHERE CustomerID Like 'A*';

- or -

SELECT CustomerID, CompanyName
FROM CustomersRange
IN 'C:\My Documents\XLData.xls' 'EXCEL 5.0;'
WHERE CustomerID Like 'A*';
dBASE III or IV.

To retrieve data from a dBASE III table, substitute dBASE III for dBASE IV.

 SELECT CustomerID
FROM Customers
IN C:\DBASE\DATA\SALES dBASE IV;
WHERE CustomerID Like A*;
dBASE III or IV (by using DATABASE syntax).

To retrieve data from a dBASE III table, substitute dBASE III for dBASE IV.

 SELECT CustomerID
FROM Customers
IN [dBASE IV;DATABASE=C:\DBASE\DATA\SALES;]
WHERE CustomerID Like A*;
Paradox 3.x or 4.x.

To retrieve data from a Paradox version 3.x table, substitute Paradox 3.x for Paradox 4.x.

 SELECT CustomerID
FROM Customers
IN C:\PARADOX\DATA\SALES Paradox 4.x;
WHERE CustomerID Like A*;
Paradox 3.x or 4.x (by using DATABASE syntax).

To retrieve data from a Paradox version 3.x table, substitute Paradox 3.x for Paradox 4.x.

 SELECT CustomerID
FROM Customers
IN [Paradox 4.x;DATABASE=C:\PARADOX\DATA\SALES;]
WHERE CustomerID Like A*;


LEFT JOIN, RIGHT JOIN Operations Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

The following example selects all customers, including those without orders:

SELECT Customers.CustomerID, CompanyName, OrderID
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID = Orders.CustomerID
ORDER BY OrderID;

The next example selects all suppliers, including those without products. Before you try this example, run the following query to add a record to the Suppliers table:

INSERT INTO Suppliers (CompanyName, ContactName, _
    ContactTitle)
VALUES ('Acme Supply Co.', 'That Coyote', _
    'Sales Manager');

Next create a new query, paste the following SQL statement into the SQL window, and run the query.

SELECT Suppliers.SupplierID, Suppliers.CompanyName, _
    Products.ProductID, Products.ProductName
    FROM Products RIGHT JOIN Suppliers
    ON Products.SupplierID = Suppliers.SupplierID
    ORDER BY Products.SupplierID;

To delete the additional record you created in the Suppliers table, you can run the following query:

DELETE * FROM Suppliers
WHERE CompanyName = 'Acme Supply Co.';


 SQL Like Operator

SQL Like Operator

In Microsoft Access, you can use the Like operator in a query expression or in a calculated control on a form or report.

You can use the Like operator to specify inexact criteria in the query design grid. For example, if you type Like "C*" in the Criteria row of the query design grid, the query returns all field values beginning with the letter C.

In a parameter query, you can use the Like operator to prompt the user for a pattern to search for. For example, suppose you have an Employees table that includes a LastName field. In the Query window, create a new query by adding the Employees table and dragging the LastName field to the grid. Enter the following expression in the Criteria cell:

Like [Enter first few letters of name:]&"*"

When the query is run, a dialog box prompts the user with "Enter first few letters of name:". If the user types Sm in the dialog box, the query looks for the pattern Sm* - that is, all names beginning with the letters Sm.

You can use the Like operator in an expression as a setting for the ValidationRule property. For example, you can restrict data entered in a text box control to an inexact specification. In the ValidationRule property of the text box, enter the following expression:

Like "P[A-F]###"

Data entered in this text box must now begin with the letter P, followed by any letter between A and F and three digits.


Like Operator Example (MDB)

The following example returns a list of employees whose names begin with the letters A through D. To try this example in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste the example into the SQL window, and run the query.

SELECT * FROM Employees WHERE LastName Like '[A-D]*';


 Min, Max Functions

Min, Max Functions

In Microsoft Access, you can use the Min and Max functions in the query design grid, in an SQL statement in SQL view of the Query window, or in an SQL statement within Visual Basic code. You can also use the Min and Max functions in a calculated control on a form or report.

The Min and Max functions are most useful in totals queries and crosstab queries. They function the same way whether you create the query in the query design grid or as an SQL statement in SQL view.

In the query design grid, you can create a new totals query by clicking Totals [image] on the Query Design toolbar. The Total row is then inserted in the grid. You can set the Total cell beneath a field to the aggregate function to perform on the data in that field.

For example, suppose you have an Orders table that has both a Freight field and a ShipCity field. You can create a query that displays the minimum freight cost for orders sent to each city. Create a new totals query, and drag the ShipCity field to the query design grid. The Total cell beneath the ShipCity field should be set to Group By. Drag the Freight field to the query design grid, and set the Total cell beneath it to Min. When you run the query, it will display the minimum freight cost for orders sent to each city.

You can view the SQL statement for this query by switching to SQL view. In this example, Microsoft Access creates the following SQL statement:

SELECT ShipCity, Min(Freight) AS MinOfFreight
FROM Orders GROUP BY ShipCity;

You can also use an SQL statement within Visual Basic code. For example, the following code creates a dynaset-type Recordset object from the preceding SQL statement:

Sub MinFreight()
    Dim dbs As Database, rst As Recordset, strSQL_
        AS String

    Set dbs = CurrentDb
    strSQL = "SELECT ShipCity, Min(Freight) _
        AS MinOfFreight FROM Orders " _
        & "GROUP BY ShipCity;"
    Set rst = dbs.OpenRecordset(strSQL)
    rst.MoveLast
    Debug.Print rst.RecordCount
    Set dbs = Nothing
End Sub

To use the Min and Max functions in a calculated control, set the control's ControlSource property to an expression containing either of these functions. For example, to display the minimum freight cost for a set of orders in a text box, enter the following expression in the ControlSource property of the text box:

=Min([Freight])

If you use the Min or Max function in a calculated control, you can restrict the set of records against which the function is performed by setting the form's Filter property.


Min, Max Functions Example

The following example assumes that you have an Orders table that contains fields called Freight and ShipCountry. You can use the Min and Max functions to return the lowest and highest freight charges for orders shipped to the United Kingdom. Enter the following expressions in SQL view in the Query window:

SELECT Min([Freight]) AS [LowFreight] FROM Orders
WHERE [ShipCountry] = 'UK';

SELECT Max([Freight]) AS [HighFreight] FROM Orders
WHERE [ShipCountry] = 'UK';

The next example creates a calculated control that displays the lowest freight charge for all records in the same Orders table. Open a new form and set its RecordSource property to Orders. Enter the following expression in the ControlSource property of a text box on the form. To apply a condition that limits the search to only some records, such as those for orders shipped to the United Kingdom, set the form's Filter property.

=Min([Freight])


 ORDER BY Clause

ORDER BY Clause

In Microsoft Access, an ORDER BY clause sorts the displayed data on a specified field or fields in ascending or descending order. The use of an ORDER BY clause is equivalent to clicking Ascending or Descending in a Sort cell in the query design grid.


ORDER BY Clause Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

The following SQL statements use the ORDER BY clause to sort records alphabetically and then by category.

This example sorts the records by last name in descending order (Z to A):

SELECT LastName, FirstName FROM Employees
    ORDER BY LastName DESC;

The next example sorts by category ID first, and then by product name:

SELECT CategoryID, ProductName, UnitPrice
    FROM Products ORDER BY CategoryID, ProductName;


 PARAMETERS Declaration

PARAMETERS Declaration

With a parameter query, Microsoft Access prompts you for the criteria when the query is run. This enables you to design a query that returns records based on criteria supplied by the user.

The name argument that you supply with the PARAMETERS declaration provides the text that is displayed in a dialog box when you run the query. Microsoft Access automatically creates this dialog box for you.

The use of the PARAMETERS declaration in SQL view is equivalent to defining parameters in the Criteria cell of the query design grid.


PARAMETERS Declaration Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

The following example prompts the user to provide an employee's last name and then uses that entry as the criteria for the query:

PARAMETERS [Enter a Last Name:] Text;
SELECT *
FROM Employees
WHERE LastName = [Enter a Last Name:];

The next example prompts the user to provide a category ID and then uses that entry as the criteria for the query:

PARAMETERS [Enter a Category ID:] Value;
SELECT CategoryID, ProductName, _
    Count([Order Details].OrderID) AS Tally
FROM Products
INNER JOIN [Order Details] ON Products.ProductID = _
    [Order Details].ProductID
GROUP BY CategoryID, ProductName
HAVING CategoryID = [Enter a Category ID:];


 PROCEDURE Clause

PROCEDURE Clause

When you copy a PROCEDURE clause into SQL view, Microsoft Access removes the clause from the SQL statement when you switch to another view. Removing the PROCEDURE clause doesn't affect the results of the query. If the PROCEDURE clause includes parameters, Microsoft Access replaces the PROCEDURE reserved word and the name argument with the PARAMETERS reserved word. The defined parameters aren't removed.


SELECT...INTO Statement Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

The following example selects all records in the Employees table and copies them into a new table named Employees Backup:

SELECT * INTO [Employees Backup] FROM Employees;

The next example creates a new table called Sales Representatives that contains only employee records that have the title Sales Representative:

SELECT Employees.FirstName, LastName _
    INTO [Sales Representatives]
FROM Employees
WHERE Title = 'Sales Representative';

The following example makes a copy of the Employees table and places the new table in the assumed database Backup.mdb:

SELECT Employees.* INTO Employees IN Backup.mdb
FROM Employees;

The next example assumes a Payroll table with two fields: EmployeeID and Salary. This example creates a new table that contains employee and payroll data for all trainees. The Employees and Payroll tables have a one-to-one relationship. The new table contains all of the data from the Employees table plus the Salary field from the Payroll table.

SELECT Employees.*, Salary INTO Trainees
FROM Employees
INNER JOIN Payroll ON Employees.EmployeeID = _
    Payroll.EmployeeID
WHERE Title = 'Trainee';


 SELECT Statement

SELECT Statement

In Microsoft Access, if you are working in SQL view in the Query window, field names (field1, field2) are used as column headings in Datasheet view. To display a different column heading for a column in the datasheet, use the AS reserved word. If you use the AS reserved word, then the alias1, alias2 arguments provide the column names to use in displaying the retrieved data in Datasheet view. The use of the AS clause is equivalent to setting the Alias property in the field list property sheet in query Design view.

The following example uses the title "Birthday" to head the column in the resulting datasheet:

SELECT [BirthDate] AS Birthday FROM Employees;

When you use aggregate functions or queries that return ambiguous or duplicate field names, you must also use the AS clause to provide an alternate name for the field. The following example creates the column heading "Head Count" in Datasheet view:

SELECT COUNT([EmployeeID])
AS [Head Count] FROM Employees;

If you are working with Data Access Objects (DAO) in Visual Basic code, the field1, field2 arguments are used to name the Field objects in the Recordset object returned by the query. If you include the AS reserved word, then the alias1, alias2 arguments provide the column headings to return as Field object names in the resulting Recordset object.


SELECT Statement, FROM Clause Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

The following example selects the LastName and FirstName fields of all records in the Employees table:

SELECT LastName, FirstName FROM Employees;

The next example selects all fields from the Employees table:

SELECT * FROM Employees;

The following example counts the number of records that have an entry in the PostalCode field and names the returned field Tally:

SELECT Count(PostalCode) AS Tally FROM Customers;

The next example shows what product unit prices would be if each were increased by 10 percent. It doesn't change the existing unit prices in the database.

SELECT ProductName, UnitPrice AS Current, _
    UnitPrice * 1.1 AS ProposedNewPrices
FROM Products;

The following example calculates the number of products in the database and the average and maximum unit prices:

SELECT Count(*) AS [Total Products], Avg(UnitPrice)
    AS [Average Unit Price], Max(UnitPrice)
    AS [Maximum Unit Price] FROM Products;

The next example displays the ProductName and UnitPrice for each record in the Products table. The string "has a unit price of" separates the two fields in the result set.

SELECT ProductName, 'has a unit price of', _
    UnitPrice FROM Products;


 StDev, StDevP Functions

StDev, StDevP Functions

In Microsoft Access, you can use the StDev and StDevP functions in the query design grid, in an SQL statement in SQL view of the Query window, or in an SQL statement within Visual Basic code. You can also use the StDev and StDevP functions in a calculated control on a form or report.

The StDev and StDevP functions are most useful in totals queries and crosstab queries. They function the same way whether you create the query in the query design grid or as an SQL statement in SQL view.

In the query design grid, you can create a new totals query by clicking Totals [image] on the Query Design toolbar. The Total row is then inserted in the grid. You can set the Total cell beneath a field to the aggregate function to perform on the data in that field.

For example, suppose you have an Orders table that has both a Freight field and a ShipCity field. You can create a query that displays the standard deviation of freight cost for orders sent to each city. Create a new totals query, and drag the ShipCity field to the query design grid. The Total cell beneath the ShipCity field should be set to Group By. Drag the Freight field to the query design grid, and set the Total cell beneath it to StDev. When you run the query, it will display the standard deviation of freight cost for orders sent to each city.

You can view the SQL statement for this query by switching to SQL view. In this example, Microsoft Access creates the following SQL statement:

SELECT ShipCity, StDev(Freight) AS StDevOfFreight
FROM Orders GROUP BY ShipCity;

You can also use an SQL statement within Visual Basic code. For example, the following code creates a dynaset-type Recordset object from the preceding SQL statement:

Sub StDevFreight()
    Dim dbs As Database, rst As Recordset, strSQL _
        AS String

    Set dbs = CurrentDb
    strSQL = "SELECT ShipCity, StDev(Freight) " _
    & "AS StDevOfFreight, ShipCity FROM Orders " _
    & "GROUP BY ShipCity;"
    Set rst = dbs.OpenRecordset(strSQL)
    rst.MoveLast
    Debug.Print rst.RecordCount
    Set dbs = Nothing
End Sub

To use the StDev and StDevP functions in a calculated control, set the control's ControlSource property to an expression containing either of these functions. For example, to display the standard deviation of freight costs for a set of orders in a text box, enter the following expression in the ControlSource property of the text box:

=StDev([Freight])

If you use the StDev or StDevP function in a calculated control, you can restrict the set of records against which the function is performed by setting the form's Filter property.


StDev, StDevP Functions Example

The following example assumes that you have an Orders table that contains fields called Freight and ShipCountry. You can use the StDev and StDevP functions to return the standard deviation of freight charges for orders shipped to the United Kingdom. Enter the following expressions in SQL view in the Query window:

SELECT StDev([Freight]) AS [FreightDev] FROM Orders
WHERE [ShipCountry] = 'UK';

SELECT StDevP([Freight]) AS [FreightDevP] FROM Orders
WHERE [ShipCountry] = 'UK';

The next example creates a calculated control that displays the standard deviation of freight charges for all records in the same Orders table. Open a new form and set its RecordSource property to Orders. Enter the following expression in the ControlSource property of a text box on the form. To apply a condition that limits the search to only some records, such as those for orders shipped to the United Kingdom, set the form's Filter property.

=StDev([Freight])


SQL Subqueries Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

The following example shows all non-discounted orders whose total is higher than the average order value:

SELECT OrderID, (UnitPrice * Quantity) _
    AS OrderTotal FROM [Order Details]
WHERE Discount = 0 AND (UnitPrice * Quantity) > _
    ALL(SELECT Avg(UnitPrice * Quantity)
    FROM [Order Details]);

The next example lists the name and unit price of every product whose unit price is the same as that of Aniseed Syrup:

SELECT ProductName, UnitPrice FROM Products
WHERE UnitPrice = (SELECT UnitPrice FROM [Products]
WHERE ProductName = 'Aniseed Syrup');

The following example lists the company and contact of every customer who placed an order in the second quarter of 1995:

SELECT ContactName, CompanyName, ContactTitle, Phone
    FROM Customers
WHERE CustomerID IN (SELECT CustomerID FROM Orders
WHERE OrderDate
BETWEEN #04/1/95# AND #06/30/95#);

The next example selects the name of every employee who has booked at least one order. This could also be done with an INNER JOIN.

SELECT FirstName, LastName FROM Employees
WHERE EXISTS (SELECT OrderID FROM Orders
WHERE Orders.EmployeeID = Employees.EmployeeID);


 Sum Function

Sum Function

In Microsoft Access, you can use the Sum function in the query design grid, in an SQL statement in SQL view of the Query window, or in an SQL statement within Visual Basic code. You can also use the Sum function in a calculated control on a form or report.

The Sum function is most useful in totals queries and crosstab queries. It functions the same way whether you create the query in the query design grid or as an SQL statement in SQL view.

In the query design grid, you can create a new totals query by clicking Totals [image] on the Query Design toolbar. The Total row is then inserted in the grid. You can set the Total cell beneath a field to the aggregate function to perform on the data in that field.

For example, suppose you have an Orders table that has both a Freight field and a ShipCity field. You can create a query that displays the sum of freight costs for orders sent to each city. Create a new totals query, and drag the ShipCity field to the query design grid. The Total cell beneath the ShipCity field should be set to Group By. Drag the Freight field to the query design grid, and set the Total cell beneath it to Sum. When you run the query, it will display the sum of freight costs by city.

You can view the SQL statement for this query by switching to SQL view. In this example, Microsoft Access creates the following SQL statement:

SELECT ShipCity, Sum(Freight) AS SumOfFreight
FROM Orders GROUP BY ShipCity;

You can also use an SQL statement within Visual Basic code. For example, the following code creates a dynaset-type Recordset object from the preceding SQL statement:

Sub SumFreight()
    Dim dbs As Database, rst As Recordset, strSQL _
        AS String

    Set dbs = CurrentDb
    strSQL = "SELECT ShipCity, Sum(Freight) _
        AS SumOfFreight FROM Orders " _
        & "GROUP BY ShipCity;"
    Set rst = dbs.OpenRecordset(strSQL)
    rst.MoveLast
    Debug.Print rst.RecordCount
    Set dbs = Nothing
End Sub

To use the Sum function in a calculated control, set the control's ControlSource property to an expression containing the Sum function. For example, to display the sum of freight costs for a set of orders in a text box, enter the following expression in the ControlSource property of the text box:

=Sum([Freight])

If you use the Sum function in a calculated control, you can restrict the set of records against which the function is performed by setting the form's Filter property.


Sum Function Example

The following example assumes that you have an Orders table that contains fields called OrderID and ShipCountry, and an Order Details table that contain fields called UnitPrice and Quantity. You can use the Sum function to calculate the total sales for orders shipped to the United Kingdom. Enter the following expression in SQL view in the Query window:

SELECT Sum([UnitPrice]*[Quantity]) AS [TotalUKSales]
FROM Orders INNER JOIN [Order Details]
ON Orders.[OrderID] = [Order Details].[OrderID]
WHERE ([ShipCountry] = 'UK');

The next example creates a calculated control that displays the total sales for records in the Order Details table. Open a new form and set its RecordSource property to Order Details. Enter the following expression in the ControlSource property of a text box on the form. To apply a condition that limits the search to only some records, such as those for orders shipped to the United Kingdom, set the form's Filter property.

=Sum([UnitPrice]*[Quantity])


TRANSFORM Statement Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

The following example creates a crosstab query that shows product sales by month for a user-specified year. The months are returned from left to right (pivoted) as columns, and the product names are returned from top to bottom as rows.

PARAMETERS [Sales for which year?] LONG;
TRANSFORM Sum([Order Details].Quantity * _
    ([Order Details].UnitPrice - _
    ([Order Details].Discount / 100) * _
    [Order Details].UnitPrice)) AS Sales
SELECT ProductName FROM Orders
INNER JOIN (Products INNER JOIN [Order Details]
ON Products.ProductID = [Order Details].ProductID)
ON Orders.OrderID = [Order Details].OrderID
WHERE DatePart("yyyy", OrderDate) = _
    [Sales for which year?]
GROUP BY ProductName
ORDER BY ProductName
PIVOT DatePart("m", OrderDate);

The next example creates a crosstab query that returns product sales by quarter for each supplier for a user-specified year. The quarters are returned from left to right (pivoted) as columns, and the supplier names are returned from top to bottom as rows.

PARAMETERS [Sales for which year?] LONG;
TRANSFORM Sum([Order Details].Quantity * _
    ([Order Details].UnitPrice - _
    ([Order Details].Discount / 100) * _
    [Order Details].UnitPrice)) AS Sales
SELECT CompanyName FROM Orders
INNER JOIN ((Suppliers INNER JOIN Products
ON Suppliers.SupplierID = Products.SupplierID)
INNER JOIN [Order Details] ON Products.ProductID = _
    [Order Details].ProductID)
ON Orders.OrderID = [Order Details].OrderID
WHERE DatePart("yyyy", OrderDate) = _
    [Sales for which year?]
GROUP BY CompanyName
ORDER BY CompanyName
PIVOT "Qtr " & DatePart("q", OrderDate) _
    In ('Qtr 1', 'Qtr 2', 'Qtr 3', 'Qtr 4');


 UNION Operation

UNION Operation

In Microsoft Access, the arguments for the UNION operation (query1, query2,...queryn) can be a SELECT statement, the name of a stored Microsoft Access query, or the name of a stored Microsoft Access table preceded by the TABLE reserved word.

You can view a union query only in SQL view, not in the query design grid.


UNION Operation Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

The following example retrieves the names and cities of all suppliers and customers in Brazil:

SELECT CompanyName, City FROM Suppliers
WHERE Country = 'Brazil'
UNION SELECT CompanyName, City FROM Customers
WHERE Country = 'Brazil';

The next example retrieves the names and cities of all suppliers and customers located in Brazil:

SELECT CompanyName, City, 'Supplier' AS Source
FROM Suppliers
WHERE Country = 'Brazil'
UNION SELECT CompanyName, City, 'Customer'
FROM Customers
WHERE Country = 'Brazil'
ORDER BY City, Source;

The following example retrieves the names and IDs of all suppliers and customers. This union assumes that there are the same number of columns in each table.

TABLE Customers UNION TABLE Suppliers;


 UPDATE Statement

UPDATE Statement

Since the UPDATE statement doesn't generate a result set, there is no query datasheet for Microsoft Access to display when you use this statement.

If you want to confirm each change, you can use the Replace command on the Edit menu of the form or datasheet rather than an update query.


UPDATE Statement Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

Warning These examples makes changes to the Northwind sample database. Before beginning, you may wish to make a backup copy of the sample database.

The following example changes values in the ReportsTo field to 5 for all employee records that currently have ReportsTo values of 2:

UPDATE Employees SET ReportsTo = 5 WHERE ReportsTo = _
    2;

The next example increases the UnitPrice for all non-discontinued products from supplier #8 by 10 percent:

UPDATE Products SET UnitPrice = UnitPrice * 1.1
WHERE SupplierID = 8 AND Discontinued = No;

The following example reduces the UnitPrice for all non-discontinued products supplied by Tokyo Traders by 5 percent. The Products and Suppliers tables have a many-to-one relationship.

UPDATE Suppliers INNER JOIN Products
ON Suppliers.SupplierID = Products.SupplierID SET UnitPrice = UnitPrice * .95
WHERE CompanyName = 'Tokyo Traders' _
    AND Discontinued = No;


 Var, VarP Functions

Var, VarP Functions

In Microsoft Access, you can use the Var and VarP functions in the query design grid, in an SQL statement in SQL view of the Query window, or in an SQL statement within Visual Basic code. You can also use the Var and VarP functions in a calculated control on a form or report.

The Var and VarP functions are most useful in totals queries and crosstab queries. They function the same way whether you create the query in the query design grid or as an SQL statement in SQL view.

In the query design grid, you can create a new totals query by clicking Totals [image] on the Query Design toolbar. The Total row is then inserted in the grid. You can set the Total cell beneath a field to the aggregate function to perform on the data in that field.

For example, suppose you have an Orders table that has both a Freight field and a ShipCity field. You can create a query that displays the variance of freight cost for orders sent to each city. Create a new totals query, and drag the ShipCity field to the query design grid. The Total cell beneath the ShipCity field should be set to Group By. Drag the Freight field to the query design grid, and set the Total cell beneath it to Var. When you run the query, it will display the variance of freight cost for orders sent to each city.

You can view the SQL statement for this query by switching to SQL view. In this example, Microsoft Access creates the following SQL statement:

SELECT ShipCity, Var(Freight) AS VarOfFreight
FROM Orders GROUP BY ShipCity;

You can also use an SQL statement within Visual Basic code. For example, the following code creates a dynaset-type Recordset object from the preceding SQL statement:

Sub VarFreight()
    Dim dbs As Database, rst As Recordset, strSQL _
        AS String

    Set dbs = CurrentDb
    strSQL = "SELECT ShipCity, Var(Freight) _
        AS VarOfFreight FROM Orders" _
        & "GROUP BY ShipCity;"
    Set rst = dbs.OpenRecordset(strSQL)
    rst.MoveLast
    Debug.Print rst.RecordCount
    Set dbs = Nothing
End Sub

To use the Var and VarP functions in a calculated control, set the control's ControlSource property to an expression containing either of these functions. For example, to display the variance across freight costs in a text box, enter the following expression in the ControlSource property of the text box:

=Var([Freight])

If you use the Var or VarP function in a calculated control, you can restrict the set of records against which the function is performed by setting the form's Filter property.


Var, VarP Functions Example

Var, VarP Functions Examples

The following example assumes that you have an Orders table that contains a field called Freight. You can use the Var and VarP functions to estimate the variance of freight costs for orders shipped to the United Kingdom. Enter the following expressions in SQL view in the Query window:

SELECT Var([Freight]) AS [UKFreightVariance]
FROM Orders WHERE [ShipCountry] = 'UK';

SELECT VarP([Freight]) AS [UKFreightVarianceP]
FROM Orders WHERE [ShipCountry] = 'UK';

The next example creates a calculated control that displays the estimated variance for freight costs for records in the same Orders table. Open a new form and set its RecordSource property to Orders. Enter the following expression in the ControlSource property of a text box on the form. To apply a condition that limits the search to only some records, such as those for orders shipped to the United Kingdom, set the form's Filter property.

=Var([Freight])


 WHERE Clause

WHERE Clause

In Microsoft Access, the conditions that you establish in a WHERE clause in SQL view are the same as those you might enter in the Criteria cell in the query design grid. If you enter criteria in the query design grid, you can change to SQL view to see the WHERE clause.

Conversely, if you enter a WHERE clause in an SQL statement in SQL view, you can change to Design view to see the criteria in the query design grid, unless you are creating a union query. Union queries can only be viewed in SQL view.


WHERE Clause Example (MDB)

To try the following examples in Microsoft Access, first create a new query in the Northwind sample database. Close the Show Table dialog box without specifying a table or query. Switch to SQL view, paste an individual example into the SQL window, and run the query.

The following example selects the LastName and FirstName fields of each record in which the last name is King:

SELECT LastName, FirstName FROM Employees
WHERE LastName = 'King';

The next example selects the LastName and FirstName fields for employees whose last names begin with the letter S:

SELECT LastName, FirstName FROM Employees
WHERE LastName Like 'S*';

The following example selects products whose unit prices are between $20 and $50, inclusive:

SELECT ProductName, UnitPrice FROM Products
WHERE (UnitPrice >=20.00 And UnitPrice <= 50.00);

The next example selects all products whose names fall in alphabetic order between "Cha" and "Out", inclusive. It doesn't retrieve "Outback Lager" because "Outback Lager" follows "Out" and therefore is outside the specified range.

SELECT ProductName, UnitPrice FROM Products
WHERE ProductName Between 'Cha' And 'Out';

The following example selects orders placed during the first half of 1995:

SELECT OrderID, OrderDate FROM Orders
WHERE OrderDate Between #1-1-95# And #6-30-95#;

The next example selects orders shipped to Idaho, Oregon, or Washington:

SELECT OrderID, ShipRegion FROM Orders
WHERE ShipRegion In ('ID', 'OR', 'WA');


 WITH OWNERACCESS OPTION Declaration

WITH OWNERACCESS OPTION Declaration

You can include the WITH OWNERACCESS OPTION declaration in an SQL statement to allow users to run a query and view the results even if they don't have security permissions on the underlying tables. When this option is set, a user is granted the same permissions as the owner of the query.

For example, the owner of a query on an Employees table can include the WITH OWNERACCESS OPTION declaration in the definition of the query that returns all fields except those that give employees' addresses. A user who does not have read permissions on the Employees table can then run the query and view only those fields included in the query. In effect, the user now has restricted read access to the table.

The use of this declaration is equivalent to setting the RunPermissions property to Owner's in the query's property sheet in query Design view. Omitting the WITH OWNERACCESS OPTION declaration is equivalent to setting the RunPermissions property to User's, which is the default setting.


 Const Statement

Const Statement

A constant in a Microsoft Access standard module is private by default. If you precede a constant with the keyword Public, however, it is then available to other modules in the current database. It is also available to modules that reference the current database.

A constant defined in a class module is always private to that module, and can't be made public by using the Public keyword.


 Const Statement Example

Const Statement Example

In Microsoft Access, you cannot declare public constants in the Declarations section of a class module. Constants in a class module must be private. You can declare both public and private constants in the Declarations section of a standard module.

' In class module.
Const conCommission As Single = .08

' In standard module.
Const conErrorNumber As Integer = 91
Public Const conAddress As String = _
    "8421 58th Avenue, College Park, MD"


Dynamic Data Exchange (DDE) Example

The following example establishes a DDE link with Microsoft Excel, places some values into cells in the first row of a new worksheet, and charts the values. First, the DDEInitiate function opens a channel to begin the DDE conversation. Then, the DDEExecute statement sends Microsoft Excel the command to open a new worksheet, and the DDERequest function asks Microsoft Excel for the name of the newly created worksheet. A new channel is opened, and the DDEPoke statement sends to Microsoft Excel the data to be charted. Finally, the DDETerminate statement terminates the DDE link with Microsoft Excel, and the DDETerminateAll statement terminates all active DDE links.

Sub ExcelDDE()
    Dim intI As Integer, intChan1 As Integer
    Dim strTopics As String, strResp As String, strSheetName As String

    On Error Resume Next                        ' Set up error handling.

    intChan1 = DDEInitiate("Excel", "System")    ' Establish link.
    If Err Then                                    ' If error occurs, Excel may
        Err = 0                                    ' not be running. Reset error
        Shell "C:\Excel\Excel.exe", 1        ' and start spreadsheet.
        If Err Then Exit Sub                    ' If another error, exit.
        ' Establish Spreadsheet link.
        intChan1 = DDEInitiate("Excel", "System")
    End If

    ' Create new worksheet.
    DDEExecute intChan1, "[New(1)]"
    ' Get topic list, worksheet name.
    strTopics = DDERequest(intChan1, "Selection")
    strSheetName = Left(strTopics, InStr(1, strTopics, "!") - 1)
    ' Terminate DDE link.
    DDETerminate intChan1
    ' Establish link with new worksheet.
    intChan1 = DDEInitiate("Excel", strSheetName)
    For intI = 1 To 10                        ' Put some values into
        DDEPoke intChan1, "R1C" & intI, intI    ' first row.
    Next intI
    ' Make chart.
    DDEExecute intChan1, "[Select(""R1C1:R1C10"")][New(2,2)]"
    ' Terminate all links.
    DDETerminateAll
End Sub


 Declare Statement

Declare Statement

In Microsoft Access, Declare statements are public by default. In a standard module, a public Declare statement is available to all procedures in the current database and in any referencing databases. You can preface a Declare statement with the Private keyword to ensure that it is not available outside of the current module.

To use a Declare statement in a class module, you must precede the statement with the Private keyword. If you fail to include the Private keyword, Microsoft Access generates a compile-time error.


Declare Statement Example

In Microsoft Access, you can use the Declare statement at the module level of a standard module to declare a reference to an external procedure in a dynamic-link library (DLL). A Declare statement is public by default. In order to include a Declare statement in a class module, precede it with the Private keyword.

The following example references a procedure in a DLL, then calls that procedure from Visual Basic.

' In standard module.
Declare Sub MessageBeep Lib "User32" (ByVal intN As _
    Integer)

' In class module.
Private Declare Sub MessageBeep Lib "User32" (ByVal _
    intN As Integer)

' Once you have referenced procedure in DLL with Declare
' statement, you can call that procedure normally from code.
Sub SystemBeep(intBeeps As Integer, sngPause As Single)
    Dim intI As Integer
    Dim sngStart As Single

    For intI = 1 To intBeeps
        ' Call system function.
        Call MessageBeep(intBeeps)
        ' Get start time.
        sngStart = Timer
        ' Pause between beeps.
        Do While Timer < sngStart + sngPause
            ' Return control to operating system.
            DoEvents
        Loop
    Next intI
End Sub


DeleteControl, DeleteReportControl Methods Example

The following example creates a form with a command button and displays a message that asks if the user wants to delete the command button. If the user clicks Yes, the command button is deleted.

Sub DeleteCommandButton()
    Dim frm As Form, ctlNew As Control
    Dim strMsg As String, intResponse As Integer, _
         intDialog As Integer

    ' Create new form and get pointer to it.
    Set frm = CreateForm
    ' Create new command button.
    Set ctlNew = CreateControl(frm.Name, acCommandButton)
    ' Restore form.
    DoCmd.Restore
    ' Set caption.
    ctlNew.Caption = "New Command Button"
    ' Size control.
    ctlNew.SizeToFit
    ' Prompt user to delete control.
    strMsg = "About to delete " & ctlNew.Name &". Continue?"
    ' Define buttons to be displayed in dialog box.
    intDialog = vbYesNo + vbCritical + vbDefaultButton2
    intResponse = MsgBox(strMsg, intDialog)
    If intResponse = vbYes Then
        ' Delete control.
        DeleteControl frm.Name, ctlNew.Name
    End If
End Sub


 Dim Statement

Dim Statement

You can use the New keyword with the Dim statement to declare an object variable of a specific type. If you include the New keyword in your variable declaration, you automatically create a new object and point the object variable to it. If you declare an object variable by using the New keyword, you don't need to use the Set statement.

By using the New keyword, you can create an object variable to point to any type of object. The New keyword is used most frequently to create a new instance of a class or to create a new Collection object, as shown in the following example.

' Create object variable and point it to new object.
Dim colInstances As New Collection

The following example shows how to use the New keyword to create a new instance of a class.

' Create new instance of class module.
Dim obj As New Class1

You can use the New keyword to create a new Microsoft Access object from some components that support Automation, formerly called OLE Automation. Check the component's documentation to determine whether or not it supports this syntax.

For example, from another component, assuming you have established a reference to the Microsoft Access type library, you can create a new Microsoft Access Application object with the following code.

Dim appAccess As New Access.Application


 Function Statement

Function Statement

In Microsoft Access, a public Function procedure is available to all other procedures in the current database and in referencing Microsoft Access databases. However, it is not available to any other applications.

If you declare a Function procedure as private in any module by preceding it with the Private keyword, that procedure is available only to other procedures in the same module.

If a Function procedure is declared as public within a private module, such as a class module, then the procedure is available to all other procedures in that database, but is not available to other Microsoft Access databases.


 Option Compare Statement

Option Compare Statement

In Microsoft Access, all modules by default contain the Option Compare Database statement in the Declarations section. This statement sets the string comparison method for the module to the one specified for the entire database.

You can change the string comparison method for all new databases by clicking Options on the Tools menu and changing the value in the New Database Sort Order box on the General tab of the Options dialog box. By default this value is set to General, which specifies a case-insensitive sort order based on the English alphabet.

Changing the New Database Sort Order option doesn't affect the string comparison method for the current database. It only affects databases that are created after the option has been set.

To specify a string comparison method for an individual module that is different from the one specified for the database, change Option Compare Database to Option Compare Binary or Option Compare Text. The Option Compare Binary statement compares strings by evaluating the ASCII values corresponding to the characters they contain, so the statement is case-sensitive. Option Compare Text is case-insensitive.

Note If you are using the Bookmark property of a Recordset object, you must include an Option Compare Binary statement in the Declarations section of the module. The setting and return value for the Bookmark property is a Variant array of Byte data. If you use a case-insensitive string comparison method, the Bookmark property may point you to the wrong record.


 Option Explicit Statement

Option Explicit Statement

In Microsoft Access, you can ensure that all new modules will automatically include the Option Explicit statement. Click Options on the Tool menu, click the Module tab, and select the Require Variable Declaration option.

Once you select this option, it will automatically be set for all other databases which you create or open with Microsoft Access.

Note When you select this option, only new modules will have the Option Explicit setting. You must enter the Option Explicit statement into the Declarations section of any existing modules. Or, when the module is open, click Options on the Tools menu, click the Module tab, and select the Require Variable Declaration option.


 Option Private Statement

Option Private Statement

When you include the Option Private statement in a standard module in Microsoft Access, any public variables or procedures in the module are still available to all other procedures in the current database. However, they are not available to procedures in other databases.

Since class modules are private by default, including the Option Private statement in a class module generates an error.


 Property Get Statement

Property Get Statement

You can use the Property Get statement to define a property procedure that returns the value of a property. You will probably want to use the Property Get and Property Let statements together to create a property in a class module. For example, you could define a Property Let procedure in a class module to set a new property, and a Property Get procedure to return the value of that setting. When you create a new instance of this class, the property procedures behave like custom properties for the new object. For more information about class modules, search the help index for "class modules".

Property procedures in a class module are public by default, and will be available to procedures in other modules in the current database, unless you preface them with the Private keyword.


 Property Let Statement

Property Let Statement

You can use the Property Let statement to define a property procedure that assigns the value of a property. You will probably want to use the Property Let and Property Get statements together to create a property in a class module. For example, you could define a Property Let procedure in a class module to set a new property, and a Property Get procedure to return the value of that setting. When you create a new instance of this class, the property procedures behave like custom properties for the new object. For more information about class modules, search the help index for "class modules".

Property procedures in a class module are public by default, and will be available to procedures in other modules in the current database, unless you preface them with the Private keyword.


 Public Statement

Public Statement

By default, module-level variables are private to that module. You must explicitly declare a public variable with the Public statement.

Module-level variables declared in standard modules with the Public statement are available to all other procedures in all modules in the current database and in referencing Microsoft Access databases. However, they are not available to any applications other than Microsoft Access.

If a public variable is declared in a module that contains the Option Private statement or in a class module, the variable is available to all procedures in the current database, but not to procedures in other databases.

Note The Public statement can't be used in a class module to declare a constant, a fixed-length string, or an array. In addition, if you include a Declare statement in a class module, you must precede it with the Private keyword. For more information about the Declare statement, search the help index for "Declare statement".


 Sub Statement

Sub Statement

In Microsoft Access, a public Sub procedure in a standard module is available to all other procedures in the current database and in referencing Microsoft Access databases. However, it is not available to any other applications.

If you declare a Sub procedure as private in any module, that procedure is available only to other procedures within the same module.

If a Sub procedure is declared as public within a private module, such as a class module, then the procedure is available to all other procedures in that database, but is not available to other Microsoft Access databases.

When you create an event procedure for a form or report, Microsoft Access automatically inserts a code stub for a Sub procedure and precedes it with the Private keyword. For example, create a command button on a new form, set its OnClick property to [Event Procedure], and click the Build button [image] to view the form's module. Microsoft Access inserts the following code for you in the module.

Private Sub Command0_Click

End Sub

You can then enter the code that you want to execute when that button's Click event occurs.


Type Statement

In Microsoft Access, user-defined types are public by default. You cannot define a public user-defined type within a class module. To declare a user-defined type within a class module, precede the Type statement with the Private keyword. If you fail to include the Private keyword, Microsoft Access generates a compile-time error.


 Не удается открыть или создать снимок отчета

Не удается открыть или создать снимок отчета

  • Возможно, отсутствует разрешение на открытие файла или папки, содержащей файл. Проверьте разрешения на доступ к файлу или папке или обратитесь к системному администратору.

  • Снимок отчета слишком велик, и на диске не хватает пространства. Освободите место на диске, чтобы можно было сохранить на нем список отчета.

  • Файл не является снимком отчета. Файлы снимков имеют расширение .snp и должны находиться в формате снимка. Убедитесь, что файл имеет правильное расширение и находится в формате снимка (щелкните файл правой кнопкой в проводнике Windows и выберите в контекстном меню пункт Свойства; тип данных должен иметь значение «Снимок».)

  • Не установлена программа Просмотр снимков. При необходимости Microsoft Access 2000 автоматически устанавливает программу «Просмотр снимков» при первом создании снимка отчета, но, возможно, снимок отчета еще не создавался. Также можно установить программу «Просмотр снимков» из программы установки или с Web-страницы загрузки программного обеспечения, расположенной на Web-узле разработчика Microsoft Access.

  • При попытке открыть снимок отчета с Web-страницы могут возникнуть проблемы с подключением или временем ожидания при загрузке снимка отчета. Для устранения затруднений попробуйте перезагрузить Web-страницу или перезапустить Web-обозреватель.


 Символ валюты евро не отображается в денежном поле на странице доступа к данным

Символ валюты евро не отображается в денежном поле на странице доступа к данным

При отображении на странице доступа к данным поля, которое имеет тип данных «Денежный» (в базе данных Microsoft Access) или тип данных money (в проекте Microsoft Access), используется символ денежной единицы, указанный в окне «Язык и стандарты» панели управления Windows на компьютере, на котором отображается страница. Поле не наследует форматы, в том числе формат денежных значений или формат валюты евро, указанные для соответствующего поля в базовом источнике записей.

Для отображения символа валюты евро ( [image]) с денежными значениями на странице доступа к данным, следует использовать выражение. Например, для поля с именем «Евро», содержащего денежные значения, можно использовать следующее выражение в ячейке свойства Данные (ControlSource) вычисляемого элемента управления:

IIf(Евро>=0, Format(Евро," [image] #,##0.00"), Format((Евро*-1),"( [image] #,##0.00)"))


Идентификатор как причина ошибки

Microsoft Access 97 и более поздние версии поддерживают некоторые новые ключевые слова Visual Basic, что является причиной запрета их использования в качестве имен идентификаторов. Это слова: AddressOf, Decimal, DefDec, Enum, Event, Friend, Implements, RaiseEvent, WithEvents. При преобразовании базы данных формату Microsoft Access 2000 наличие таких идентификаторов приведет к ошибке компиляции. Для устранения подобных затруднений необходимо заменить имена существующих идентификаторов словами, не являющимися ключевыми.


 Процедура как причина ошибки.

Процедура как причина ошибки.

В Microsoft Access версии 2.0 допускалось совпадение имени процедуры и имени модуля. Однако в Microsoft Access 95 и более поздних версиях подобное совпадение невозможно. Для решения этой проблемы необходимо переименовать либо процедуру, либо модуль. Этой ошибки можно также избежать, используя в программах Visual Basic для приложений (VBA) полные имена процедур.


 Условное форматирование, примененное к элементу управления, не работает так, как предполагалось

Условное форматирование, примененное к элементу управления, не работает так, как предполагалось

При применении условного форматирования к элементу управления Microsoft Access применяет форматирование в зависимости от того, отвечает ли значение элемента управления или другие оцениваемые данные заданным условиям.

  • Если условие форматирования основано на тексте, содержащемся в выбранном элементе управления (выбран параметр Значение поля равно в диалоговом окне Условное форматирование), то такое форматирование как выделение полужирным шрифтом или цветом может измениться при изменении текста в элементе управления.

  • Условное форматирование имеет приоритет перед форматированием, применяемым к элементу управления непосредственно, при помощи кнопки панели инструментов Форматирование. Если заданное условие истинно, то форматирование для этого условия переопределяет форматирование, используемое по умолчанию.


Access не применяет должным образом условное форматирование к элементу управления в форме или отчете

  • Проверьте наличие нескольких условий. Если задано несколько условий, а значение отвечает более чем одному условию, то Microsoft Access применяет только форматирование для первого выполняющегося условия.

  • Проверьте, не перекрываются ли условия. Если заданы перекрывающиеся условия, то Access применяет только форматирование для первого выполняющегося условия. Например, если задано условие, применяющее желтый фон для значений элемента управления от 100 до 200 включительно, а затем задано второе условие, применяющее красный фон для значений меньше 120, то значения элемента управления от 100 до 119 будут иметь желтый фон. Старайтесь избегать перекрытия условий.

  • Проверьте ссылки на элемент управления. Если в качестве условий форматирования используются выражения, то ссылки в формуле на элемент управления могут быть неправильными. См. сведения по созданию выражений.


 Не удается переслать снимок отчета в сообщении электронной почты

Не удается переслать снимок отчета в сообщении электронной почты

  • Если команда Сообщение (как вложение) из подменю Отправить меню Файл недоступна, возможно, почтовая программа не установлена должным образом или не поддерживает интерфейс MAPI (Messaging Application Programming Interface). Проверьте по документации к программе, поддерживает ли она MAPI, и если поддерживает, попробуйте переустановить программу, чтобы команда Отправить стала доступна.

  • В зависимости от настроек программа электронной почты может требовать может требовать регистрации и ввода информации вручную, что не позволит отправить снимок отчета программным путем. Например, Microsoft Outlook может при входе запрашивать профиль пользователя. В таком случае нужно изменить настройку программы электронной почты.


 При печати снимка отчета получился не отчет, а Web-страница

При печати снимка отчета получился не отчет, а Web-страница

Просматривая снимок отчета на Web-странице, не пользуйтесь командой Печать из меню Файл. Эта команда Печать выводит на печать только содержимое Web-страницы, а не каждую страницу снимка отчета. Вместо этого пользуйтесь кнопкой Печать [image], расположенной справа от кнопок перехода в нижней части окна, либо щелкните снимок отчета правой кнопкой мыши, а затем выберите команду Печать.


Не удается найти или заменить текст в поле с маской ввода

Если маска ввода была добавлена к таблице, уже содержащей данные, могут возникнуть сложности при поиске или замене данных (в диалоговых окнах Поиск или Замена) в полях, не удовлетворяющих маске ввода. Чтобы этого не происходило, следует удалить маску ввода, воспользоваться диалоговым окном Поиск или Замена, а потом опять добавить маску ввода. Также можно изменить данные в нужном поле так, чтобы они удовлетворяли маске ввода.


 Не удается найти или заменить существующий текст

Не удается найти или заменить существующий текст

  • Если в диалоговых окнах Поиск или Замена не удается найти записи, удовлетворяющие указанным условиям, следует проверить, является ли поле, в котором осуществляется поиск, подстановочным. Подстановочное поле выполняет подстановку значений из другой таблицы и сохраняет ссылки на значения в текущей таблице. Если данное поле является подстановочным, необходимо установить флажок С учетом формата полей.

  • При попытке поиска и замены данных в проекте Microsoft Access, операция выполняется только с данными, хранящимися на клиентском компьютере. Если в таблице или форме достигнуто предельное число записей, остальные данные находятся на сервере. Для поиска и замены всех данных на сервере снимите ограничение предельного числа записей с помощью кнопки, расположенной справа от кнопок перехода.


 Не удается найти файл HTML, относящийся к странице доступа к данным

Не удается найти файл HTML, относящийся к странице доступа к данным

Файл HTML, связанный со страницей доступа к данным, был переименован, перемещен или удален.

Хотя страница доступа к данным является объектом базы данных, большая часть сведений о странице хранится в соответствующем файле HTML. Имя и расположение этого файла HTML указывается при создании страницы доступа к данным. В окне базы данных имеется ярлык, указывающий на расположение соответствующего файла HTML в файловой системе. Для просмотра расположения файла HTML в окне базы данных задержите указатель мыши на имени страницы.

Если файл HTML был переименован или перемещен, то можно восстановить его исходное имя, переместить файл HTML в исходное расположение или изменить ярлык, поддерживаемый Microsoft Access, указав в нем новое имя или расположение файла (для этого нажмите кнопку Найти в окне сообщения о том, что Microsoft Access не удается найти файл HTML).

Внимание! В одной и той же либо различных базах данных Microsoft Access или проектах Microsoft Access может существовать две или более страницы, указывающих на один файл HTML. Например, если страница была скопирована или импортирована. Хотя это допускается, лучше изменять страницу в режиме конструктора только в одной базе данных Access или проекте Access во избежание проблем с совместным использованием и возможной утерей изменений структуры.

Предупреждение. Если файл HTML удален, восстановить страницу не удастся без использования резервной копии файла HTML. См. сведения по защите страниц.


 Не удается открыть окно свойств в режиме формы или таблицы

Не удается открыть окно свойств в режиме формы или таблицы

Чтобы иметь возможность открыть окно свойств, когда форма открыта в режиме формы или режиме таблицы, необходимо задать для свойства Разрешить изменения макета (AllowDesignChanges) значение Все режимы.


 При попытке открыть связанную таблицу получено сообщение «Не удается найти файл '<имяФайла>'»

При попытке открыть связанную таблицу получено сообщение «Не удается найти файл '<имяФайла>'»

Возможно, файл, содержащий открываемую таблицу, был перемещен или переименован, либо разорвано подключение к сети. Проверьте наличие подключения к сети у системного администратора или в службе поддержки. Если файл был перемещен или переименован, воспользуйтесь командой Диспетчер связанных таблиц (меню Сервис, подменю Надстройки), чтобы восстановить связь с файлом.

Если ссылка определена с использованием буквы подключенного сетевого диска в проводнике Windows, то, возможно, была изменена буква диска, либо диск не был подключен в текущем сеансе. Переопределите ссылку с использованием стандартного формата записи пути (UNC), являющегося надежным и согласованным с Microsoft Access способом указания на источник данных, содержащий связанную таблицу.


 Созданный в подтаблице фильтр никак не влияет на таблицу, в которой отображается подтаблица

Созданный в подтаблице фильтр никак не влияет на таблицу, в которой отображается подтаблица

Все правильно. Фильтр, созданный в подтаблице, применяется только к данной подтаблице. Для отбора записей таблицы, отображающей подтаблицу, щелкните таблицу правой кнопкой и создайте фильтр.


Получено сообщение о недоступности мастеров в настоящий момент

  • Мастер кнопок недоступен на отдельной странице доступа к данным; то есть, на странице, открытой без открытия базы данных. Этот мастер также недоступен, если страница не присоединена к таблице или запросу.

  • Мастер списков недоступен на отдельной странице доступа к данным. Он также недоступен, если страница связана не с той базой данных, которая открыта в настоящий момент.


 Получено сообщение «Введенное значение не подходит для данного свойства.»

Получено сообщение «Введенное значение не подходит для данного свойства.»

Вводя значение для свойства с раскрывающимся списком, выберите значение из списка. Для получения сведений о допустимых значениях свойств, не имеющих раскрывающегося списка, нажмите клавишу F1 в поле соответствующего свойства.

При вводе выражения в свойство Данные (ControlSource), соблюдайте следующие условия.

  • В начале выражения должен стоять знак равенства (=) или псевдоним выражения. Например, оба следующих значения являются допустимыми:

    =Количество*Цена

    ОбщаяСтоимость: Количество*Цена

  • Перед вводом выражения следует присоединить страницу доступа к данным к таблице, запросу или другому источнику записей. Использование выражений на не присоединенной странице доступа к данным невозможно.

  • В качестве значения свойства Код (ID) вычисляемого элемента управления должно быть задано уникальное имя. Не используйте имена полей, использованные в выражении, или код другого элемента управления, находящегося на этой же странице доступа к данным.


При вводе, казалось бы, допустимого значения свойства получено сообщение о недопустимости аргумента

На панели управления Windows в окне Язык и стандарты выбран регион, где в качестве десятичного разделителя используется не точка (.), а другой символ. Для настройки свойств на странице доступа к данным требуется, чтобы десятичным разделителем для всех языков была точка.


 Выводится сообщение об ошибке s_Generation

Выводится сообщение об ошибке s_Generation

Это сообщение может быть получено в реплицированной базе данных при запуске запроса на добавление, содержащего звездочку (*) в строке Поле бланка запроса, для отбора всех полей из базовой таблицы. Чтобы избежать появления этого сообщения об ошибке, следует удалить звездочку (*) из бланка запроса, а затем добавить в него каждое поле из списка полей таблицы.


 Трудности при просмотре страницы доступа к данным в Web-обозревателе

Трудности при просмотре страницы доступа к данным в Web-обозревателе

  • Возможно, используется неподходящий Web-обозреватель.

    Для просмотра или взаимодействия со страницей доступа к данным необходимо установить на компьютер Microsoft Internet Explorer версии 5 или более поздней. Кроме того, страница может содержать дополнительные элементы управления, включая электронные таблицы, сводные списки и диаграммы.

  • Возможно, база данных Microsoft Access или база данных Microsoft SQL Server, с которой связана страница, открыта другим пользователем в монопольном режиме.

    Такая ситуация может возникнуть, когда база данных Access или база данных SQL Server управляется администратором базы данных, которому потребовалось временно закрыть доступ пользователей к базе данных, либо когда кто-нибудь разрабатывает объекты в совместно используемой базе данных Access. Повторите попытку просмотра страницы через несколько минут или обратитесь к администратору базы данных.

  • Страница или сводный список на странице связан с неподдерживаемым источником данных OLE DB.

    Единственным источником данных, к которому можно подключиться со страницы, является база данных Access или база данных Microsoft SQL Server. Пользователь или автор страницы должен изменить подключение OLE DB к странице. Для этого, открыв страницу в режиме конструктора, щелкните правой кнопкой мыши значок базы данных в списке полей, а затем выполните команду Подключение.


Трудности при вставке или восстановлении значка на панели инструментов или в меню

Команда может иметь формат, исключающий появление значка. Поэтому чтобы вставить или восстановить значок, следует сначала изменить формат команды.

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Откройте панель инструментов или меню, содержащее команду, формат которой нужно изменить.

    Инструкции

  3. Оставьте открытым диалоговое окно Настройка. На панели инструментов или в меню щелкните правой кнопкой мыши команду, формат которой нужно изменить.

  4. В контекстном меню выберите параметр Основной стиль или Значок и текст.

Примечание. При выборе параметра Основной стиль в меню отображается текст команды и соответствующий значок (если он есть). На панели инструментов или в строке меню при выборе параметра Основной стиль выводятся только изображения кнопок.


 Трудности при сохранении изменений макета сетевой (общей) базы данных Access

Трудности при сохранении изменений макета сетевой (общей) базы данных Access

При совместном использовании базы данных Microsoft Access в многопользовательской среде способ сохранения изменений в Access отличается от того, который применяется при работе с базой данных Access одного пользователя. См. дополнительные сведения по сохранению изменений в общей базе данных Access.


 Превышение в таблице ограничения на 32 индекса

Превышение в таблице ограничения на 32 индекса

Во время преобразования к формату Microsoft Access 2000 базы данных Microsoft Access версии 2.0 с таблицами, содержащими более 32 индексов и отношений, возможно возникновение ошибки. Для ее устранения необходимо открыть эту базу данных в Microsoft Access версии 2.0 и уменьшить число отношений для ключевой таблицы, изменив ее структуру, или удалить некоторые индексы из таблицы с внешним ключом. После этого попытайтесь еще раз выполнить преобразование.


 Переполнение памяти при преобразовании большой базы данных

Переполнение памяти при преобразовании большой базы данных

В Visual Basic для приложений (VBA) число модулей базы данных Microsoft Access, содержащей формы и отчеты, свойство HasModule которых имеет значение Да, ограничивается верхним пределом в 1082 модуля. Для устранения проблем с нехваткой памяти необходимо уменьшить число объектов в базе данных Access. Полезно также разбить приложение на несколько баз данных. Если в одном из модулей содержится большой объем текста программы, то для его хранения допускается использование библиотечных баз данных.


 Страница доступа к данным была отправлена в виде сообщения электронной почты, но получатель не смог ее прочесть

Страница доступа к данным была отправлена в виде сообщения электронной почты, но получатель не смог ее прочесть

Для просмотра страницы доступа к данным, отправленной как сообщение электронной почты, получатель должен прочесть сообщение с помощью одного из следующих приложений:

  • Microsoft Outlook 2000;

  • Outlook Express версии 5.0

  • сочетание Microsoft Outlook 98 и Microsoft Internet Explorer версии 5 или более поздней;

  • сочетание Microsoft Outlook Express и Microsoft Internet Explorer версии 5 или более поздней.

Получатели электронной почты могут обратиться к системному администратору за дополнительными сведениями об установке и обновлении этого программного обеспечения.


Невозможно преобразовать 16-разрядные вызовы API

При преобразовании к формату Microsoft Access 2000 базы данных Microsoft Access версии 2.0, в модулях которой используются 16-разрядные вызовы API, возможно возникновение ошибки. Для ее устранения необходимо в преобразуемой базе данных изменить инструкцию API Declare на ее 32-разрядный эквивалент.

См. дополнительные сведения о преобразовании программ, вызывающих библиотеки динамической компоновки (DLL).


 Невозможно откомпилировать программу

Невозможно откомпилировать программу

При преобразовании базы данных Microsoft Access версии 2.0 к формату Microsoft Access 2000 средство преобразования переводит программы Access Basic в программы Visual Basic для приложений. Если компиляция не удалась, то после проведения преобразования к формату Microsoft Access 2000 возможно появление сообщения об ошибке.

Откройте модуль преобразованной базы данных в режиме конструктора и выберите в меню Debug команду Compile <ИмяПроекта>; по умолчанию <ИмяПроекта> представляет имя базы данных Access.

В некоторых случаях программа преобразования может не справляться с некоторыми синтаксическими элементами, например, при замене инструкции DoCmd на метод DoCmd. Возникновение ошибки компиляции также возможно при наличии синтаксических ошибок в базе данных Microsoft Access версии 2.0. Поэтому перед преобразованием баз данных предыдущих версий к формату Microsoft Access 2000 рекомендуется откомпилировать все ее модули.

Microsoft Access 2000 не поддерживает библиотеку совместимости DAO версии 2.5/3.x. При попытке преобразовать базу данных Access, программа в которой содержит старые версии объектов, методов и свойств DAO, зависящие от библиотеки совместимости DAO 2.5/3.x, выдается сообщение об ошибках компиляции при преобразовании базы данных. Прежде чем преобразовать базу данных Access, обновите программу, чтоб она не зависела от библиотеки совместимости DAO 2.5/3.x. Если сообщение об ошибках компиляции при преобразовании будет выдано снова, откройте преобразованную базу данных в Microsoft Access 2000, удалите ссылку на отсутствующую библиотеку совместимости DAO 2.5/3.x, а затем задайте ссылку на библиотеку объектов Microsoft DAO 3.6. Для получения дополнительных сведений об изменениях методов, макрокоманд, свойств, синтаксиса и прочих языковых элементов, а также о совместимости программ и проблемах их преобразования нажмите кнопку [image] .


 Изменение полей отчета при преобразовании из Microsoft Access версии 2.0

Изменение полей отчета при преобразовании из Microsoft Access версии 2.0

Во время печати преобразованного к формату Microsoft Access 2000 отчета Microsoft Access версии 2.0, в котором задана нулевая ширина некоторых полей, возможно возникновение ошибки. При преобразовании отчета из версии 2.0 нулевая ширина полей не устанавливается. Вместо этого в качестве их значений задается минимальная ширина полей, допустимая для текущего принтера. Это сделано для предотвращения печати данных в недоступных для принтера областях страницы.

Для устранения этого затруднения необходимо уменьшить ширину столбца, промежутки между столбцами или число столбцов в отчете так, чтобы суммарная ширина полей страницы и столбцов была меньше ширины используемой бумаги.


 Невозможно преобразовать элементы ActiveX (специальные элементы OLE)

Невозможно преобразовать элементы ActiveX (специальные элементы OLE)

При преобразовании базы данных Microsoft Access, содержащей элемент ActiveX, к формату Microsoft Access 2000, возможно возникновение ошибки. В Microsoft Access версии 2.0 поддерживаются 16-разрядные элементы ActiveX, тогда как в Microsoft Access 95 и более поздних версиях 32-разрядные. Автоматическое преобразование 16-разрядных элементов в 32-разрядные возможно только при наличии на компьютере пользователя зарегистрированной 32-разрядной версии.


 Трудности при редактировании данных в полях в режиме страницы

Трудности при редактировании данных в полях в режиме страницы

В режиме страницы есть несколько типов полей, которые нельзя изменять. Следующие поля отображают значения так же, как и обычные поля, но при попытке ввода в них данных ничего не происходит.

  • Поля типа «Счетчик». Если поле имеет тип данных «Счетчик» в базе данных Microsoft Access или тип данных numeric с заданным свойством Identity в проекте Microsoft Access, то Access автоматически вводит в это поле число для каждой добавляемой записи. Поля этого типа часто используются в качестве кода записи или первичного ключа.

  • Вычисляемые поля. В базе данных Access вычисляемые поля отображают результаты расчетов, в которых обычно используются значения других полей таблиц. Эти результаты не сохраняются в таблице.

  • Блокированные или недоступные поля. Если для свойства Блокировка (Locked) элемента управления в форме задано значение Да или если для его свойства Доступ (Enabled) задано значение Нет, то поле заблокировано или недоступно для ввода данных.

  • Поля в блокированной записи. Если при работе с базой данных Access в многопользовательской среде запись заблокирована другим пользователем, данные в этой записи изменять нельзя до тех пор, пока этот пользователь не завершит редактирование записи.

  • Поля формы, предназначенной только для чтения, или блокированной базы данных. Для свойства Разрешение изменений (AllowEdits) изменяемой формы задано значение Нет, либо базовый источник данных предназначен только для чтения или блокирован.

  • Поля страницы доступа к данным с группами. Страница доступа к данным с группами предназначена только для отображения данных.

  • Поля сводного списка. Сводный список предназначен только для отображения данных, но не для их изменения. Поля сводного списка редактировать нельзя.

Возможны трудности с вводом дат в поля с типом данных «Дата/время». При вводе данных в формате с разделением косой чертой (/) не вводите косую черту в конце. Например, дата 1/3 является допустимой, а 1/3/ недопустимой.


 Фильтр возвращает слишком много записей

Фильтр возвращает слишком много записей

Если фильтр возвращает слишком много записей, возможно, используемое условие отбора недостаточно для исключения ненужных записей.

Обычный фильтр

  • Введите значение или выражение или выберите значение из списка в других полях на вкладке Найти.

  • Удалите некоторые дополнительные условия для записей, удаляя одну или несколько вкладок Или.

Фильтр по выделенному

  • Выберите другое значение, которое должны содержать записи, и нажмите кнопку Фильтр по выделенному [image] на панели инструментов. Повторяйте эти шаги до тех пор, пока не получите нужный набор записей.

Фильтр с исключением выделенного

  • Убедитесь, что значения не были выбраны в нескольких строках одновременно. В этом случае Microsoft Access понимает это как команду «исключить первое выбранное значение ИЛИ второе» вместо «исключить первое выбранное значение И второе».

    Чтобы выполнить отбор по обоим значениям, выберите первое из них, щелкните его правой кнопкой мыши и выберите Исключить выделенное. Затем то же самое проделайте со вторым значением.

  • Измените фильтр, выбрав в меню Записи команду Фильтр и подкоманду Расширенный фильтр. В строке Условие замените оператор Or на And.

Фильтр по введенному

  • Укажите другое значение в поле Фильтр для и нажмите клавишу ENTER. Повторяйте эти шаги до тех пор, пока не получите нужный набор записей.

Окно расширенного фильтра

  • Добавьте поля в бланк и укажите для них условие отбора в строке Условие.

  • Удалите одну или несколько строк условий отбора (строки или) и воспользуйтесь выражениями с логическим оператором And вместо оператора Or.


 Фильтр возвращает неправильный набор записей

Фильтр возвращает неправильный набор записей

Если фильтр возвращает неправильный набор записей, убедитесь, что для указания искомых значений или других условий отбора используются нужные поля и введены правильные значения или условия отбора. Если выполняется отбор записей по полям из связанных таблиц, то значения, указанные в условиях отбора, должны совпадать со значениями в базовых таблицах с учетом регистра.

  • При использовании выражений в окне фильтра или расширенного фильтра убедитесь в использовании правильных операторов.

  • Если в окне расширенного фильтра задается несколько условий отбора, убедитесь, что они заданы в правильных строках и столбцах бланка.


Записи на странице доступа к данным не сортируются нужным образом

Правильно задайте свойство Сортировка по умолчанию (DefaultSort) для источника записей группы.


 В условиях запроса значения дат или времени возвращают различные результаты

В условиях запроса значения дат или времени возвращают различные результаты

При преобразовании базы данных Microsoft Access версии 2.0 к формату Microsoft Access 2000 запросы, содержащих условия, основанные на конкретных значениях времени в полях типа «Дата/время», могут возвращать значения, отличающиеся от предыдущих версий. Это же возможно в случае связывания таблиц из базы данных Microsoft Access версии 2.0 с базой данных Microsoft Access 2000. Изменяется только временная часть полей типа «Дата/время».

Запросы, содержащие условия с датами между 1900 и 1929 годами также могут возвращать отличающиеся результаты. Например, условие #01/01/15# в Microsoft Access версий 2.0 и 95 представляет 1 января 1915 года; то же условие в Microsoft Access 97 или более поздней версии представляет 1 января 2015 года. Для устранения такого расхождения измените данные в условии, указав в нем столетие — например, #01/01/1915#.


 Между двумя таблицами базы данных Access определена связь, но подтаблица не отображается

Между двумя таблицами базы данных Access определена связь, но подтаблица не отображается

Когда свойство таблицы Имя подтаблицы (SubdatasheetName) имеет значение Авто, а таблица находится на стороне «один» отношения «один-ко-многим» или участвует в отношении «один-к-одному», Microsoft Access автоматически создает подтаблицу. Однако в свойстве Имя подтаблицы (SubdatasheetName) может быть либо указана конкретная таблица или запрос базы данных, либо задано значение Нет. В этом случае подтаблица не создается. Для восстановления стандартных характеристик установите для свойства Имя подтаблицы (SubdatasheetName) значение Авто.


Пустые поля на странице доступа к данным

Возможны следующие причины.

  • Отображаемая страница доступа к данным может представлять собой форму для ввода данных. В пустые поля можно ввести свои данные.

  • Страница доступа к данным содержит раскрывающийся список, определяющий записи для отображения. Выберите в списке группу, записи которой требуется просмотреть на странице.


 Не удается сгруппировать текстовые поля или другие элементы управления

Не удается сгруппировать текстовые поля или другие элементы управления

Для создания группы элементов управления необходимо выделить сразу несколько полей или других элементов управления.

  • Выделите два или несколько элементов управления, а затем в меню Формат выберите команду Группировать. См. Выделение соседних элементов управления. См. также Выделение не соседних или перекрывающихся элементов управления.


Не удается разгруппировать выделенные поля или другие элементы управления

Выделенные поля и другие элементы управления можно разгруппировать только в том случае, если в форме или отчете выделено не более одной группы.

  • Для выделения группы щелкните любой элемент управления в группе, а затем выполните команду Разгруппировать из меню Формат.


 Не удается просмотреть внешний ключ или совпадающие поля в подтаблице

Не удается просмотреть внешний ключ или совпадающие поля в подтаблице

По умолчанию Access не отображает внешний ключ или совпадающие поля в подтаблице таблицы или запроса базы данных Microsoft Access. Можно на время отобразить внешний ключ или совпадающие поля с помощью команды Отображение столбцов (меню Формат), но при следующем открытии таблицы, содержащей подтаблицу, столбцы вновь будут скрыты. Скрытие или отображение этих полей изменяет только внешний вид подтаблицы, не изменяя отношений.

Если объектом-источником для подчиненной формы является форма, то в подтаблице, соответствующей этой подчиненной форме, можно постоянно отображать внешний ключ или совпадающие поля.


 При добавлении подтаблицы в запрос базы данных Microsoft Access поле «Основные поля» пусто

При добавлении подтаблицы в запрос базы данных Microsoft Access поле «Основные поля» пусто

Если запрос только что создан, необходимо сначала сохранить его, а затем добавить подтаблицу, чтобы просмотреть поля запроса в поле Основные поля.


 В подтаблице отображаются одни и те же данные для каждой строки таблицы

В подтаблице отображаются одни и те же данные для каждой строки таблицы

В таблице или запросе базы данных Microsoft Access необходимо указать совпадающие поля таблицы и подтаблицы в полях Подчиненные поля и Основные поля диалогового окна Вставка подтаблицы (команда Подтаблица в меню Вставка). Эти поля соответствуют свойствам Подчиненные поля (LinkChildFields) и Основные поля (LinkMasterFields) таблицы, содержащей подтаблицу.

В форме необходимо указать совпадающие поля главной формы и подчиненной формы в свойствах Подчиненные поля (LinkChildFields) и Основные поля (LinkMasterFields) элемента управления подчиненной формы в главной форме.


 Таблица, содержащая подтаблицу, выглядит не так, как при последнем сохранении

Таблица, содержащая подтаблицу, выглядит не так, как при последнем сохранении

Свойство Развернутая подтаблица (SubdatasheetExpanded) управляет состоянием подтаблицы в таблице или запросе, либо состоянием подчиненной формы в форме. Для этого свойства можно задать значение Да (все строки развернуты) с помощью команды Развернуть все из подменю Подтаблица меню Формат, либо значение Нет (все строки свернуты) с помощью команды Свернуть все из подменю Подтаблица меню Формат. Открытие одной или более строк подтаблицы щелчком одного или более маркеров развертывания не изменяет значение свойства Развернутая подтаблица (SubdatasheetExpanded); даже если щелкнуть все маркеры развертывания для отображения всех подтаблиц, свойство будет иметь значение Нет (все строки свернуты).


Скрытие повторяющихся значений, отображаемых в одной группе

Задайте значение Да для свойства Не выводить повторы (HideDuplicates) поля, в котором требуется скрыть повторяющиеся значения.

Инструкции


Печать заголовка группы в одной строке с первой записью из области данных группы

Существуют два способа создания отчета, имеющего блоковую структуру.

  • При создании нового отчета создавайте отчет с помощью мастера и выберите макет Блок.

    Инструкции

  • Для существующего отчета необходимо изменить структуры, скрыв повторяющиеся данные.

    Инструкции


Печать записей отчета в том же порядке, в котором они выводятся в базовом источнике записей

Задайте для отчета соответствующий порядок сортировки в окне Сортировка и группировка.

Инструкции


Записи в группах не сортируются

Необходимо в режиме конструктора отчета указать порядок сортировки записей внутри группы в окне Сортировка и группировка. Например, для сортировки по полю «КодЗаказа» заказов, отгружаемых каждый день, создайте группу по полю «ДатаИсполнения» и укажите порядок сортировки по полю «КодЗаказа».

Инструкции


 В отчете выводится приглашение ввести непонятные параметры

В отчете выводится приглашение ввести непонятные параметры

Проверьте, правильно ли указаны имена полей в следующих элементах макета отчета и соответствуют ли эти имена именам полей базовой таблицы или запроса.

  • Свойство Данные (ControlSource) присоединенного элемента управления.

  • Столбец «Поле/выражение» в окне Сортировка и группировка.

  • Выражения в элементах управления или в окне Сортировка и группировка.

    Проверьте также, что в статистических функциях ссылки делаются на имена полей базовой таблицы или запроса, а не на имена элементов управления. Для получения дополнительных сведений нажмите кнопку [image] .


 Сортировка записей в соответствии с правилами конкретного языка

Сортировка записей в соответствии с правилами конкретного языка

В базе данных Microsoft Access (.mdb) выберите в диалоговом окне Параметры язык, по правилам которого будет выполняться сортировка в базе данных.

Инструкции


 Получено сообщение о недопустимости выражения

Получено сообщение о недопустимости выражения

Была выполнена попытка ввести выражение, включающее имя поля, отсутствующего в определении данных страницы. Поля, ссылки на которые присутствуют в выражениях на странице доступа к данным, должны входить в определение данных этой страницы. Чтобы добавить поле в определение данных страницы, перетащите поле из списка полей на страницу доступа к данным. Если значения поля отображать на странице не требуется, элемент управления, присоединенный к этому полю, можно скрыть или удалить. Однако даже в случае удаления элемента управления поле, на которое ссылается выражение, остается частью определения данных страницы.


Получено сообщение о наличии неопределенной функции в выражении

Элемент управления страницы доступа к данным был присоединен к вычисляемому полю, которое использует функцию, не поддерживаемую на страницах доступа к данным. См. список функций, которые можно использовать в элементах управления страниц доступа к данным и в их базовых запросах.


 Получено сообщение о недопустимом значения свойства «Сортировка по умолчанию» (DefaultSort)

Получено сообщение о недопустимом значения свойства «Сортировка по умолчанию» (DefaultSort)

В поле свойства Сортировка по умолчанию (DefaultSort) вводится имя поля или полей, по которым требуется выполнить сортировку. Имена разделяются запятыми. После каждого имени может стоять пробел и ключевое слово ASC или DESC. Например, ДатаЗаказа DESC, КодЗаказа ASC. Если порядок сортировки не указан, Microsoft Access выполняет сортировку по возрастанию.

Если элемент управления, по которому требуется выполнить сортировку, присоединен к выражению, необходимо ввести псевдоним элемента управления, отображаемый в его свойстве Данные (ControlSource). Например, если свойство Данные (ControlSource) нужного элемента управления имеет значение ГруппаОтпускнойЦены: ОтпускнаяЦена, введите в ячейку свойства Сортировка по умолчанию (DefaultSort) значение ГруппаОтпускнойЦены.


 Требуется открыть файл HTML в Access, но он открывается в другой программе Office

Требуется открыть файл HTML в Access, но он открывается в другой программе Office

Если выбрать в диалоговом окне Открытие файла базы данных (меню Файл) файл HTML (Hypertext Markup Language), называемый также Web-страницей, и нажать кнопку Открыть или дважды щелкнуть этот файл, он откроется в программе, в которой был создан. Например, при попытке открыть файл формата HTML, созданный в Microsoft Word, файл будет открыт в Word, а не в Microsoft Access 2000 как страница доступа к данным. Чтобы открыть как страницу доступа к данным файл HTML, созданный в другой программе Office, щелкните этот файл правой кнопкой в диалоговом окне Открытие файла базы данных, а затем выберите в контекстном меню Открыть в Microsoft Access.


Поле «Порядок сортировки базы данных» в диалоговом окне «Параметры» больше не содержит список языковых настроек.

Некоторые языки теперь включены в порядок сортировки «Общий», хотя ранее они были перечислены отдельно в списке Порядок сортировки базы данных на вкладке Общие диалогового окна Параметры (меню Сервис). Общий порядок сортировки включает следующие языки: албанский, английский, арабский, африкаанс, баскский, белорусский, болгарский, греческий, иврит, индонезийский, итальянский, каталанский, малайский, немецкий (стандартный), нидерландский, персидский, португальский, русский, сербский, суахили, урду, фарерский и хинди.


 В диалоговом окне «Открытие файла базы данных» отсутствует нужный файл

В диалоговом окне «Открытие файла базы данных» отсутствует нужный файл

  • Введите имя файла в поле Имя файла диалогового окна Открытие файла базы данных, откройте меню Сервис и выполните команду Найти. Установите флажок Просмотреть вложенные, а затем нажмите кнопку Найти.

  • Убедитесь, что в поле Тип файлов диалогового окна Открытие файла базы данных выбран соответствующий тип файла.

  • Убедитесь, что условия в группе Условие диалогового окна Найти соответствуют искомым файлам. Чтобы очистить все текущие условия поиска, кроме расположения файла, и восстановить используемый по умолчанию тип файлов, нажмите кнопку Сброс.

  • Убедитесь, что диск и папка для поиска указаны правильно.

  • Если имя нужной папки неизвестно, можно выполнить поиск во всех папках и подпапках на указанном диске. Нажмите кнопку Сервис в диалоговом окне Открытие файла базы данных, выполните команду Найти, а затем установите флажок Просмотреть вложенные.

  • В диалоговом окне Открытие файла базы данных можно выполнять поиск по нескольким путям, указанным в поле Имя файла. Каждый путь следует отделить точкой с запятой, например: c:\Каталог Книг;c:\Опись.

  • Если выполняется поиск файла в сети, а сетевой диск не отображается в поле Папка диалогового окна Открытие файла базы данных, нажмите кнопку Сервис и выполните команду Подключить сетевой диск. В поле Диск выберите букву сетевого диска, который требуется подключить. В поле Путь введите путь к расположению файла в сети. Кроме того, если сеть поддерживает имена UNC, то для поиска файлов на сетевом диске достаточно ввести в поле Имя файла диалогового окна Открытие файла базы данных путь UNC, например: \\plans\documents.


Пароль, введенный для открытия файла, не работает

  • В паролях учитывается регистр символов (буквы в верхнем и нижнем регистре должны точно совпадать). Проверьте, горит ли индикатор CAPS LOCK.

  • Возможно, пароль написан неправильно. Попробуйте ввести его еще раз.


Отсутствуют кнопки на панели перехода по записям

Кнопки для этой страницы или группы удалены разработчиком страницы доступа к данным.


Добавление подчиненных записей в другую таблицу

Откройте таблицу, в которой мастер обнаружил записи, не имеющие подчиненных (вторая таблица была указана при вызове мастера), и добавьте подчиненные записи.

Инструкции


В подчиненной форме выводятся все записи. Записи не изменяются при переходе от записи к записи в главной форме.

Необходимо связать главную и подчиненную формы с помощью свойств Подчиненные поля (LinkChildFields) и Основные поля (LinkMasterFields). Для получения дополнительных сведений о связывании главной и подчиненной форм нажмите кнопку [image] .

Если значения свойств Подчиненные поля (LinkChildFields) и Основные поля (LinkMasterFields) уже определены, а подчиненная форма по-прежнему не работает, проверьте, не были ли удалены или переименованы поля, используемые для связи форм. Кроме того, проверьте, нет ли ошибок в именах полей, а также, не указаны ли в свойстве Имя (Name) имена элементов управления вместо имен полей.

Примечание. В некоторых ситуациях Microsoft Access автоматически связывает с главной формой подчиненную форму, создаваемую с помощью мастера. Для получения дополнительных сведений нажмите кнопку [image] .


 Данные добавляются не в те поля или не из тех полей

Данные добавляются не в те поля или не из тех полей

Выбор полей, из которых необходимо добавить данные

В бланке запроса на добавление должны быть указаны следующие поля:

  • поля, участвующие в добавлении;

  • поля, для которых задаются условия отбора;

  • поле, соответствующее ключевому полю таблицы, в которую производится добавление записей.

Выбор полей, в которые необходимо добавить данные

  • В столбце поля, содержащего добавляемые данные, выберите в раскрывающемся списке в ячейке строки Добавление имя поля, в которое требуется добавить данные.

Примечание. Если в ячейку строки Поле добавлена звездочка (*), необходимо также ввести звездочку в ячейку строки Добавление. Все имена полей в обеих таблицах должны точно совпадать. Указание условий отбора в столбце, содержащем звездочку, не допускается. Однако условия отбора можно определить в соседних столбцах.


 Выводится пустая форма. Почему не удается вывести данные?

Выводится пустая форма. Почему не удается вывести данные?

Пустая форма может выводиться в следующих случаях.

  • Форма не присоединена к базовому источнику записей (таблице, запросу или инструкции SQL). Чтобы связать форму с базовым источником записей, откройте форму в режиме конструктора и дважды щелкните область выделения формы для открытия окна свойств. Выберите ячейку свойства Источник записей (RecordSource) и выберите источник записей в раскрывающемся списке или, если в качестве источника записей используется запрос, нажмите кнопку построителя запросов [image] , чтобы открыть построитель запросов.

  • Форма связана с источником записей, который не содержит данных. Проверьте, не является ли пустым базовый источник записей формы.

  • Форма связана с запросом, в котором не возвращаются данные. Чтобы проверить, возвращает ли запрос данные, откройте окно свойств формы, нажмите кнопку построителя запросов рядом с ячейкой свойства Источник записей (RecordSource), а затем нажмите кнопку Вид Вид на панели инструментов окна построителя запросов.

  • Форма открыта в режиме ввода данных. В форме, открытой в режиме ввода данных, выводится только пустая запись, в которую пользователь может вводить новые данные. Для того чтобы вывести в форме все записи, выберите в меню Записи команду Удалить фильтр.

  • Для заголовка формы или для примечания формы задана настолько большая высота, что не остается места для области данных.


 Значение, введенное в поле формы со списком, не добавляется в список

Значение, введенное в поле формы со списком, не добавляется в список

Чтобы автоматически добавить значение в список формы, необходимо написать процедуру обработки события и связать ее со свойством поля со списком Отсутствие в списке (OnNotInList).

Примечание. Для использования события «Отсутствие в списке» (NotInList) следует задать для свойства Ограничиться списком (LimitToList) значение Да.


Выводится сообщение «Невозможно присоединить имя <имя>»

Получено сообщение «Невозможно присоединить имя имя»

Данное сообщение выводится на экран, если в диалоговом окне Параметры запроса не были четко определены параметры, используемые для перекрестных запросов или для запросов, на которых основан перекрестный запрос или диаграмма. Для разрешения этой проблемы выполните следующие действия.

  1. В запросе, содержащем данный параметр, в диалоговом окне Параметры запроса укажите параметр и его тип данных. Для получения дополнительных сведений нажмите кнопку [image] .

  2. В том же самом запросе установите свойство Заголовки столбцов (ColumnHeadings). Для получения дополнительных сведений нажмите кнопку [image] .


 Не удается изменить формат подписей на диаграмме в форме или отчете

Не удается изменить формат подписей на диаграмме в форме или отчете

Если для изменения формата подписей осей диаграммы используется приложение Microsoft Graph, то внесенные изменения будут отменены при обновлении диаграммы. Для того чтобы сделать изменения постоянными, необходимо изменить запрос, указанный в свойстве диаграммы Источник строк (RowSource).

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что нужная диаграмма выделена, и нажмите кнопку Свойства [image] .

  3. Нажмите кнопку построителя [image] справа от ячейки Источник строк (RowSource).

  4. В запросе замените имя поля, которое требуется отформатировать, на имя поля с функцией Format.

    Например, для изменения представления дат на диаграмме в базе данных Microsoft Access замените это имя на выражение Format([ДатаЗаказа],"YY"). Для получения дополнительных сведений о функции Format нажмите кнопку [image] .

  5. Закройте запрос и сохраните изменения.

  6. Переключитесь в режим формы или режим предварительного просмотра для просмотра изменений.

Примечание. Не все специальные форматы Microsoft Access поддерживаются в Microsoft Graph.


 Не удается вывести заголовок и примечание для подчиненной формы в режиме таблицы

Не удается вывести заголовок и примечание для подчиненной формы в режиме таблицы

В форме или подчиненной форме, открытой в режиме таблицы, не отображается заголовок и примечание, даже если они были включены в форму в режиме конструктора. Для того чтобы вывести подчиненную форму в режиме таблицы, но с заголовком и примечанием, следует задать для области данных размеры, достаточные для вывода только одной записи, и задать для свойства этой формы Режим по умолчанию (DefaultView) значение Ленточная форма. Для получения дополнительных сведений нажмите кнопку [image] .


 Не удается изменить данные в форме

Не удается изменить данные в форме

Пользователь не может изменять данные в форме в следующих случаях.

  • Форма создана как доступная только для чтения. Если свойства Разрешить удаление (AllowDeletions), Разрешить добавление (AllowAdditions)и Разрешить изменения (AllowEdits) имеют значения Нет, внести изменения в базовые данные невозможно.

  • Для свойства Блокировка (Locked) для одного или нескольких элементов управления задано значение Да.

  • Другой пользователь одновременно с вами работает с формой, у которой для свойства Блокировка записей (RecordLocks) задано значение Всех записей или Изменяемой записи. В этом случае в области выделения записей выводится индикатор блокировки [image] , показывающий, что запись заблокирована. Подождите, пока другой пользователь закончит работу, и повторите попытку изменить данные.

  • Вы пытаетесь изменить данные в вычисляемом элементе управления, в котором выводятся результаты расчета выражения. Данные, выводящиеся в вычисляемом элементе управления, не сохраняются и, следовательно, не допускают изменения.

  • Базовый запрос формы или базовая инструкция SQL могут быть необновляемыми. Для получения дополнительных сведений о том, какие типы запросов являются обновляемыми в базе данных Microsoft Access (.mdb), нажмите кнопку [image] . Для получения сведений о том, какие типы являются обновляемыми в проекте Microsoft Access (.adp), нажмите кнопку [image] .


При попытке открыть связанный или внедренный объект двойным нажатием кнопки мыши возвращается сообщение о невозможности открыть файл

Microsoft Access выводит сообщение, если не удается открыть исходный файл объекта OLE. Проверьте, выполняются ли следующие условия.

  • Приложение, необходимое для редактирования файла, установлено на вашем компьютере.

  • Имеется достаточно свободной памяти для запуска приложения объекта. Для того чтобы освободить память, закройте другие приложения.

  • Если приложение, требуемое для открытия файла, уже выполняется, проверьте, нет ли в нем открытых диалоговых окон.

  • При попытке открыть связанный объект проверьте, не открыт ли файл объекта другим пользователем.

  • При попытке открыть связанный объект формы проверьте, не был ли переименован или перемещен файл источника. Для просмотра имени исходного файла выделите объект в режиме конструктора и выберите в меню Правка команду Связи OLE/DDE. Имя исходного файла выводится в диалоговом окне Связи. Если файл был переименован или перемещен, выделите связь в диалоговом окне Связи и нажмите кнопку Сменить источник для восстановления связи.


 Не удается открыть или обновить связанную таблицу Microsoft Visual FoxPro или dBASE

Не удается открыть или обновить связанную таблицу Microsoft Visual FoxPro или dBASE

  • После связывания файла .dbf присоединенный к нему индексный файл (.idx, .cdx, .ndx или .mdx) будет использоваться для открытия связанной таблицы в Microsoft Access. Если удалить или переместить индексные файлы Microsoft Visual FoxPro или dBASE, либо создаваемый Microsoft Access информационный файл (.inf), то открыть связанную таблицу будет невозможно.

  • Если связанная таблица Visual FoxPro или dBASE содержит поле MEMO, то для открытия связанной таблицы необходим файл с данными полей MEMO (.dbt). Если этот файл удален или перемещен, связанную таблицу открыть невозможно.

  • При обновлении данных в файле .dbf в Microsoft Access, автоматически обновляются индексные файлы. Если данные обновляются в Visual FoxPro или dBASE, то индексы следует также обновить в Visual FoxPro или dBASE. Microsoft Access не может использовать связанную таблицу, если указанные индексы устарели.

  • Нельзя обновлять таблицу Visual FoxPro или dBASE, если ее файлы данных (.dbf) или индексные файлы (.idx, .cdx, .ndx или .mdx) доступны только для чтения. Для проверки откройте папку с нужными файлами в окне «Мой компьютер» или в проводнике Windows, щелкните файл правой кнопкой, выберите команду Свойства и перейдите на вкладку Общие. Если установлен флажок Только чтение, снимите его и нажмите кнопку ОК.

  • Если таблицы Visual FoxPro или dBASE хранятся на диске, доступном только для чтения, или на компакт диске, Microsoft Access не может создать файл .inf в той же папке, где находятся файлы .dbf. Выполняя связывание таблицы, хранящейся на диске с доступом только для чтения, необходимо указать в реестре Windows путь к диску с доступом на чтение и запись, где Microsoft Access создаст файл .inf. Для получения дополнительных сведений нажмите кнопку [image] .

  • Чтобы связать (для чтения и записи) таблицу dBASE 7, необходимо установить на компьютер Borland Database Engine (BDE) версии 4.x или более поздней. При отсутствии установленного пакета BDE версии 4.x или более поздней можно установить его совместно с dBASE 7 или Delphi. При наличии более старой версии BDE, не поддерживающей формат файлов dBASE 7, можно обновить ядро с Web-узла Borland. Кроме того, если на компьютере не установлен BDE, сохраняется возможность создания связи с файлами формата dBASE версий III, IV и 5.0.


 Не удается открыть или обновить связанную таблицу Paradox

Не удается открыть или обновить связанную таблицу Paradox

  • Если связанная таблица Paradox имеет ключ, то для открытия связанной таблицы необходим индексный файл (.px). Если связанная таблица Paradox содержит поле MEMO, для открытия связанной таблицы необходим файл с данными полей MEMO (.mb). Если эти файлы удалены или перемещены, открыть связанную таблицу будет невозможно.

  • Если связать таблицу Paradox, не имеющую ключа, то данные этой таблицы нельзя будет обновлять в Microsoft Access. Чтобы иметь возможность обновлять данные в таблице, следует определить в Paradox ключ для этой таблицы.

  • Объекты OLE, сохраняемые в связанной или импортированной таблице Paradox, невозможно открыть в Microsoft Access.

  • Нельзя обновлять таблицу Paradox, если ее файл данных (.dbf) или индексный файл (.idx, .cdx, .ndx или .mdx) доступны только для чтения. Для проверки откройте папку с файлами с помощью папки «Мой компьютер» или проводника Windows, щелкните файл правой кнопкой, выберите команду Свойства, а затем перейдите на вкладку Общие. Если установлен флажок Только чтение, снимите его и нажмите кнопку OK.

  • Нельзя обновлять таблицу Paradox, если ее файл данных (.db) или индексный файл (.px) доступны только для чтения. Для проверки откройте папку с файлами с помощью папки «Мой компьютер» или проводника Windows, щелкните файл правой кнопкой, выберите команду Свойства, а затем перейдите на вкладку Общие. Если установлен флажок Только чтение, снимите его и нажмите кнопку OK.

  • Чтобы связать (для чтения и записи) таблицу Paradox 8.0, необходимо установить на компьютер Borland Database Engine (BDE) версии 4.x или более поздней. При отсутствии установленного пакета BDE версии 4.x или более поздней можно установить его совместно с Paradox 8.0 или Delphi. При наличии более старой версии BDE, не поддерживающей формат файлов Paradox 8, можно обновить ядро с Web-узла Borland. Кроме того, если на компьютере не установлен BDE, сохраняется возможность создания связи с таблицами Paradox версий 3.x, 4.x и 5.0.

  • При установлении связи с таблицей Paradox, хранящейся на сетевом сервере и используемой в режиме общего доступа, следует указать в записи ParadoxNetPath в реестре Windows путь к файлу Paradox.net или Pdoxusrs.net. Кроме того, если для совместного доступа к данным в рабочей группе используется Paradox версии 4.x, следует указать в записи ParadoxNetStyle значение «4.x». Для получения дополнительных сведений об этих настройках нажмите кнопку [image] .

  • Если для связи данных Paradox в сети при работе пользователей с ними используется Microsoft Access, то необходимо определить все три параметра реестра: ParadoxUserName, ParadoxNetPath и ParadoxNetStyle. Параметр ParadoxUserName используется для определения имени пользователя при совместном доступе к данным Paradox. Параметр ParadoxNetPath используется для определения пути к папке, содержащей сетевой файл Paradox (для Paradox 3.x) или сетевой файл Pdoxusrs (для Paradox 4.x и 5.0). Параметр ParadoxNetPath (включая и название диска) должен быть согласованным для всех пользователей, работающих с определенной базой данных. Параметр ParadoxNetStyle используется для определения типа сетевой блокировки доступа к данным Paradox. Для Paradox 3.x возможны значения «3.x», а для Paradox 4.x и 5.0. - «4.x». Для получения дополнительных сведений см. книгу Paradox Network Administrator's Guide. Для получения дополнительных сведений об установке параметров нажмите кнопку [image] .


 Не удается открыть или обновить связанную таблицу SQL

Не удается открыть или обновить связанную таблицу SQL

  • В Microsoft Access для обновления, удаления или вставки данных в связанную таблицу SQL или в ее отображение требуется уникальный индекс. При установлении связи с обновляемым представлением Microsoft SQL Server или с таблицей базы данных SQL, не имеющей уникального индекса, Microsoft Access предлагает выбрать одно или несколько полей для создания такого индекса. Однако Microsoft Access не проверяет, действительно ли выбранные поля однозначно определяют каждую запись. Записи с повторяющимися значениями в построенном индексе обновить будет невозможно.

    Если индекс оказался неуникальным, удалите связь с таблицей, установите связь повторно и выберите поле или поля, подходящие для создания уникального индекса.

    С другой стороны, можно создать индекс в Microsoft Access с помощью управляющего запроса, содержащего инструкцию Create Index. При этом также необходимо выбрать поле или набор полей, которые будут однозначно определять каждую запись. Если индекс содержит повторяющиеся значения, в таблицу нельзя внести изменения. Для удаления индекса примените другой управляющий запрос. Для получения дополнительных сведений о создании управляющих запросов нажмите кнопку [image] .

  • Если устанавливается связь с таблицей SQL, имеющей свой собственный уникальный индекс, и этот индекс определен для числового поля с плавающей точкой, таблица может оказаться необновляемой. Разные серверы с разной точностью обрабатывают данные с плавающей точкой, поэтому иногда может иметь место потеря точности. Обычно различия настолько малы, что не оказывают никакого влияния, но если данные образуют часть закладки в таблице SQL, то в Microsoft Access затронутые записи могут выглядеть как удаленные.

  • Если при импорте, связывании или использовании таблицы базы данных SQL возникают другие ошибки, они могут быть вызвана проблемами с учетной записью на сервере базы данных SQL или с самой базой данных. Если нет доступа к таблице базы данных SQL, обратитесь к администратору базы данных SQL.


 Не удается вывести столбцы на диаграмме в нужном порядке в форме или в отчете

Не удается вывести столбцы на диаграмме в нужном порядке в форме или в отчете

Для того чтобы изменить порядок, в котором данные выводятся на диаграмме, следует изменить запрос, указанный в свойстве Источник строк (RowSource) диаграммы.

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что нужная диаграмма выделена, и нажмите кнопку Свойства [image] .

  3. Нажмите кнопку построителя [image] справа от ячейки Источник строк (RowSource).

  4. В запросе поместите поля для сортировки слева направо, в том порядке, в котором они должны быть отсортированы.

  5. Закройте запрос и сохраните изменения.

  6. Переключитесь в режим формы или режим предварительного просмотра для просмотра изменений.


В форме или отчете требуется ссылка на столбец списка или поля со списком, отличный от присоединенного столбца

Для ссылки на столбец списка или поля со списком, отличный от присоединенного столбца, следует использовать свойство Столбец (Column). Значения свойства Столбец (Column) отсчитываются от нуля. Например, для ссылки на второй столбец поля со списком «СписокПоставщиков» в форме «Товары» используется следующий синтаксис:

Forms![Товары]![СписокПоставщиков].Column(1)


 Вывод данных из нескольких таблиц

Вывод данных из нескольких таблиц

Для просмотра данных из нескольких таблиц необходимо сделать базовым источником данных формы запрос, объединяющий данные из нескольких таблиц. Для создания многотабличного запроса без закрытия формы выполните следующие действия.

  1. В режиме конструктора формы установите указатель на область выделения формы и откройте окно свойств двойным нажатием кнопки мыши.

  2. Выберите ячейку свойства Источник записей (RecordSource), а затем нажмите кнопку построителя [image] рядом с ячейкой, чтобы открыть построитель запросов.

  3. В окне построителя запросов добавьте в запрос таблицы и поля и закройте построитель запросов.

В значении свойства Источник записей (RecordSource) будет автоматически указан созданный запрос.

Для получения сведений о добавлении таблиц в построителе запросов для базы данных Microsoft Access (.mdb) нажмите кнопку [image] . Для получения сведений о добавлении полей нажмите кнопку [image] .

Для получения сведений о добавлении таблиц в построителе запросов для проекта Microsoft Access (.adp) нажмите кнопку [image] . Для получения сведений о добавлении полей нажмите кнопку [image] .

Примечание. Существует также мастер, создающий многотабличные формы. Для получения дополнительных сведений нажмите кнопку [image] .


Не удается выбрать значение из списка, раскрывающегося списка или поля со списком

Возможно, имя поля в свойстве Данные (ControlSource) указано с ошибкой. Источник элементов списка определяется значением свойства Источник строк (RowSource) для форм и отчетов или ListRowSource для страниц доступа к данным. При выборе элемента из списка необходимо указать Microsoft Access, в каком поле сохраняется выбранное значение. Получатель выбранного в списке элемента определяется значением свойства Данные (ControlSource).


Не удается ввести новое значение в поле со списком в форме

Свойство Ограничиться списком (LimitToList) имеет значение Да. Для того чтобы сделать возможным ввод новых значение в поле со списком, задайте для свойства Ограничиться списком (LimitToList) значение Нет. Если в поле со списком выводится значение из неприсоединенного столбца, то Microsoft Access автоматически задает для свойства Ограничиться списком (LimitToList) значение Да.


Не удается обновить данные в перекрестном запросе

Данные в перекрестном запросе не допускают обновления. Для получения сведений о возможности обновления данных в запросе нажмите кнопку [image] .


Не удается обновить данные в запросе

В запросах некоторых типов или для некоторых полей в запросах обновление невозможно. Для получения дополнительных сведений о возможности обновления данных в запросах нажмите кнопку [image] .


 Диаграмма в форме или отчете отображается как недоступная или пустая

Диаграмма в форме или отчете отображается как недоступная или пустая

Возможно, свойство Источник строк (RowSource) для диаграммы имеет недопустимое значение.

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Убедитесь, что нужная диаграмма выделена, и нажмите кнопку Свойства [image] .

  3. Убедитесь, что свойство Источник строк (RowSource) имеет допустимое значение.

    Для получения сведений о свойстве Источник строк (RowSource) нажмите кнопку [image] .

  4. Переключитесь в режим формы или режим предварительного просмотра для просмотра изменений.

Если диаграмма связана с записью, запрос, указанный в свойстве диаграммы Источник строк (RowSource) может не содержать поле, совпадающее с полями, указанными в свойствах формы или отчета Подчиненные поля (LinkChildFields) и Основные поля (LinkMasterFields). См. сведения о диаграммах, связанных с записями.


 Не сохраняются изменения диаграммы в форме или отчете

Не сохраняются изменения диаграммы в форме или отчете

Диаграмма использует данные из следующих источников в таком порядке старшинства:

  • данные базовой таблицы или другого источника записей;

  • свойство диаграммы Источник строк (RowSource);

  • приложение Microsoft Graph.

Microsoft Access заново строит диаграмму каждый раз при ее выводе на печать или просмотр, а также при переходе в режим формы. В результате, изменения, внесенные в диаграмму в приложении Microsoft Graph, могут быть отменены из-за их противоречий с базовым источником данных или значением свойства Источник строк (RowSource).

При изменении диаграммы необходимо помнить следующее.

  • Изменения базовых данных (например, формат данных) имеют приоритет над всеми другими изменениями. Однако, если в свойстве Источник строк (RowSource) задается вычисляемое поле, например, с помощью выражения =Format([НачальнаяДата],"MMM"), то форматирование определяется результатами вычислений, а не данными в базовом источнике.

  • Изменения значения свойства Источник строк (RowSource), такие как изменения заголовка и подписей на диаграмме, могут быть отменены в результате изменений в базовом источнике данных.

  • Изменения, внесенные в приложении Microsoft Graph, такие как изменения, основанные на имеющихся данных, могут быть отменены в результате изменений в базовой таблице или другом источнике записей, либо в значении свойства Источник строк (RowSource).

Для получения сведений о свойстве Источник строк (RowSource) нажмите кнопку [image] .


В заголовках строк или столбцов выводятся неверные значения полей

Убедитесь, что для полей, значения которых требуется вывести в заголовках столбцов, выбран элемент Заголовки столбцов в строке Перекрестная таблица бланка запроса, а для полей, значения которых требуется вывести в заголовках строк, выбран элемент Заголовки строк в строке Перекрестная таблица бланка запроса. Для того чтобы изменить значение в ячейке Перекрестная таблица, выберите ячейку, а затем выберите нужный элемент в раскрывающемся списке. Если требуется вывести в заголовках столбцов конкретные значения, укажите эти значения в свойстве запроса Заголовки столбцов (ColumnHeadings). Для получения дополнительных сведений нажмите кнопку [image] .


В запросе выводятся неверные столбцы

Возникающие проблемы

В запросе выводится слишком много столбцов

В запросе выводится слишком мало столбцов

В запросе выводятся не те столбцы


 В группу добавлен флажок, выключатель или переключатель, но группа не работает

В группу добавлен флажок, выключатель или переключатель, но группа не работает

Вероятно, элемент управления помещен вне границ группы. При добавлении в группу флажка, выключателя или переключателя Microsoft Access выделяет группу параметров, показывая, что элемент управления становится компонентом группы. Если группа не выделяется, то, скорее всего, элемент управления помещен слишком близко к границам группы.


Не удается снова вывести записи на экран после использования команды «Ввод данных»

  • В меню Записи выберите команду Удалить фильтр.


 Запрос на удаление удаляет записи не из той таблицы

Запрос на удаление удаляет записи не из той таблицы

Запрос на удаление записей должен включать в себя следующее.

  • Таблицу, из которой удаляются записи. Перетащите звездочку (*) из списка полей этой таблицы в бланк запроса.

  • Поля, для которых определяются условия отбора. Перетащите нужное поле из списка полей таблицы в бланк запроса.

В бланке запроса в ячейки строки Удаление автоматически вводятся слова Из или Условие. Слово Из появляется в ячейке Удаление таблицы, из которой удаляются записи, а Условие в ячейке Удаление полей, для которых задаются условия отбора.


 При изменении размера рисунок в форме или отчете искажается

При изменении размера рисунок в форме или отчете искажается

Для сохранения пропорций рисунка при изменении его размеров следует использовать свойство Масштабы рисунка (PictureSizeMode) (для фонового рисунка) или Установка размеров (SizeMode) (для присоединенной или свободной рамки объекта и для рамки рисунка). Для точечного рисунка рекомендуется использовать настройку По размеру рамки, а не Вписать в рамку. Кроме того, при необходимости изменять размеры рисунков, лучше использовать не точечные рисунки, а метафайлы, допускающие изменение размеров рисунка без искажений. Для получения сведений об использовании метафайлов и точечных рисунков нажмите кнопку [image] .


В поле со списком выводится сообщение «#Ошибка?» или поле со списком оказывается пустым

Вероятно, в форме или отчете неправильно указано значение одного из следующих свойств: Источник строк (RowSource), Данные (ControlSource), Присоединенный столбец (BoundColumn), Ширина столбцов (ColumnWidths) и Число столбцов (ColumnCount). Для получения справки об этих и других свойствах списка или поля со списком нажмите кнопку [image] .


 В элементе управления формы или отчета отображается сообщение «#Ошибка?» или «#Имя?»

В элементе управления формы или отчета отображается сообщение «#Ошибка?» или «#Имя?»

Существует ряд причин появления в элементе управления сообщений «#Ошибка?» или «#Имя?». Для того чтобы исправить ситуацию, попробуйте выполнить одно из следующих действий.

  • Убедитесь, что поле, указанное в свойстве элемента управления Данные (ControlSource), не было удалено из базовой таблицы или другого источника данных.

  • Проверьте правильность написания имени поля в свойстве элемента управления Данные (ControlSource).

  • Если свойство элемента управления Данные (ControlSource) определяется с помощью выражения, убедитесь, что выражение начинается со знака равенства.

  • Убедитесь, что содержащие пробелы ссылки на имена полей и элементов управления в выражениях заключены в квадратные скобки. Например, для того чтобы найти разность значений полей «Дата поставки» и «Дата отгрузки», введите в вычисляемый элемент управления следующее выражение: =[Дата поставки]-[Дата отгрузки].

  • Если используются встроенные функции, убедитесь, что указано правильное количество аргументов, что аргументы задаются в правильном порядке и что нет лишних знаков препинания. Для проверки правильности синтаксиса откройте раздел справки для используемой функции.

  • Проверьте правильность синтаксиса в ссылках на другие элементы управления. Для получения дополнительных сведений о ссылках на элементы управления нажмите кнопку [image] .

  • Убедитесь, в отсутствии циклических ссылок на элементы управления (т.е. ссылок на себя). Например, если указать имя «ТекущийЭлемент» в свойстве Имя (Name) элемента управления, а затем ввести выражение =[A]+[B]+[ТекущийЭлемент] в ячейку свойства Данные (ControlSource) этого элемента, то Microsoft Access не сможет обработать данное выражение.


Неверные результаты при ссылке на столбец в списке или в поле со списком

Свойство Column используется для ссылок на столбец списка или поля со списком. При использовании свойства Column неверные результаты возникают в следующих случаях.

  • Не указан индекс, определяющий в свойстве Column столбец, на который делается ссылка. Например, Column(0) определяет ссылку на первый столбец в списке или в поле со списком.

  • Указан индекс, соответствующий неверному столбцу. Следует помнить, что индексы в свойстве Column отсчитываются от нуля. Column(0) определяет ссылку на первый столбец, Column(1) на второй столбец и т.д.

  • Делается попытка числовых расчетов с использованием значения, возвращаемого в свойстве Column. Поскольку свойство Column возвращает текстовое значение, необходимо перед выполнением расчетов преобразовать это значение в числовое. Например, в следующем выражении перед операцией умножения функция CCur преобразует значение, возвращаемое в свойстве Column, в денежное:

    [Количество] * CCur([СписокЦен].Column(1))

Для получения дополнительных сведений о ссылках на столбцы списка нажмите кнопку [image] .


 Неверные результаты при попытке объединить в выражении значения элементов управления, полей, переменных или строк

Неверные результаты при попытке объединить в выражении значения элементов управления, полей, переменных или строк

Неверные результаты при попытке объединения (слияния) в выражении значений элементов управления, полей, переменных или строк могут возникать в следующих ситуациях.

  • Ссылка на элемент управления или поле, имя которого совпадает с именем текущего элемента управления, в результате чего образуется циклическая ссылка. Измените имя поля или элемента управления.

  • Ошибочное имя в ссылке на элемент управления или поле. Проверьте правильность имен.

  • Ссылка на элемент управления или поле, имя которого совпадает с именем свойства. Для таких полей или элементов управления требуется полный идентификатор. Для получения дополнительных сведений об использовании идентификаторов в выражениях нажмите кнопку [image] .

  • Ошибка при определении значения выражения из-за того, что некоторые компоненты выражения должны быть заключены в прямые скобки ( [ ] ), либо в одинарные (') или прямые (") кавычки. Проверьте, правильно ли используются в выражении прямые скобки или кавычки.

Для получения дополнительных сведений о слиянии строковых значений нажмите кнопку [image] .


Неверные результаты при попытке ввести значение даты в выражение

Неверные результаты иногда возникают при попытке ввести в выражение значение даты, не окружив его символами (#). Для получения дополнительных сведений о вводе выражений нажмите кнопку [image] .


 Неверные результаты при попытке выполнить действия над полями, содержащими пустые значения

Неверные результаты при попытке выполнить действия над полями, содержащими пустые значения

Результаты многих операций оказываются неверными, если в используемых выражениях имеются ссылки на поля, в которых содержатся пустые (Null) значения. Например, функции DCount или DSum в могут давать неверные результаты при использовании выражений, ссылающихся на поля со значением Null.

Существуют несколько способов решения этой проблемы.

  • Передавайте значения полей в выражение с помощью функции Nz. Если функция Nz принимает значение Null, она возвращает нуль или пустую строку. Для получения дополнительных сведений о функции Nz нажмите кнопку [image] .

  • Организуйте проверку на пустые значения (Null) с помощью функций IIf или IsNull с возвращением подходящих значений вместо пустых. Для получения дополнительных сведений о функции IIf нажмите кнопку [image] . Для получения дополнительных сведений о функции IsNull нажмите кнопку [image] .

Для получения дополнительных сведений о свойствах полей, определяющих обработку пустых значений, нажмите кнопку [image] .


Инструкции по преобразованию текста таким образом, чтобы первые буквы были прописными, а остальные строчными

Существует возможность преобразовать первую букву каждого слова в прописную с помощью функции StrConv.


 Неверные результаты при ссылке на свойство или элемент управления подчиненной формы или отчета

Неверные результаты при ссылке на свойство или элемент управления подчиненной формы или отчета

Неверные результаты при ссылке на свойство или элемент управления подчиненной формы или отчета могут возникнуть, если используется неправильный идентификатор.

Корректная ссылка на свойство подчиненной формы или отчета требует указания полного идентификатора формы или отчета с использованием свойств Form или Report подчиненной формы или отчета. Например, следующий идентификатор определяет ссылку на свойство Вывод на экран (Visible) подчиненной формы «Заказано»:

Forms![Заказы]![Заказано].Form.Visible

В данном примере:

  • Forms![Заказы]![Заказано] является ссылкой на элемент управления, в котором выводится подчиненная форма.

  • Forms![Заказы]![Заказано].Form является ссылкой на саму подчиненную форму. Указание свойства Form для ссылки на подчиненную форму или на ее свойства является обязательным.

В отличие от этого, для ссылки на элемент управления, содержащийся в подчиненной форме, или на свойства этого элемента управления ссылка на свойства Form или Report не требуется. Например, следующий идентификатор определяет ссылку на свойство Вывод на экран (Visible) элемента управления «Скидка» в подчиненной форме «Заказано»:

Forms![Заказы]![Заказано]![Скидка].Visible

Для получения дополнительных сведений о ссылках в выражениях на форму, отчет, подчиненную форму или подчиненный отчет нажмите кнопку [image] .

Для получения дополнительных сведений о ссылках в выражениях на значение элемента управления или свойства нажмите кнопку [image] .

Для получения дополнительных сведений об использовании идентификаторов в выражениях нажмите кнопку [image] .


Фильтр, созданный в подчиненной форме, никак не влияет на главную форму

Фильтр работает правильно. Фильтр, созданный в подчиненной форме, применяется только к данной подчиненной форме. Для применения фильтра к записям главной формы следует выбрать главную форму, а затем создать фильтр.


 Приглашение на ввод параметров выводится не там, где нужно

Приглашение на ввод параметров выводится не там, где нужно

Если при попытке выполнения запроса, отчета или страницы доступа к данным приглашение на ввод параметров выводится в тот момент, когда по мнению разработчика оно выводиться не должно, то возможна одна из следующих причин.

  • Параметр был удален из бланка запроса, но не удален из диалогового окна Параметры запроса.

  • Было переименовано или неправильно указано поле в запросе, отчете или на странице доступа к данным и его имя не совпадает с полем базовой таблицы запроса.

  • Имеется ссылка на вычисляемое поле. Если для поля в запросе определены операции с участием значения вычисляемого поля, необходимо в бланке запроса установить для вычисляемого поля флажок Вывод на экран.


Заголовки столбцов выводятся не в том порядке или некоторые из них являются лишними

Укажите в свойстве Заголовки столбцов (ColumnHeadings) имена заголовков столбцов и порядок, в котором они должны выводиться. Для получения дополнительных сведений нажмите кнопку [image] .


 Удаление повторяющихся записей после создания запроса на поиск повторяющихся записей с помощью мастера

Удаление повторяющихся записей после создания запроса на поиск повторяющихся записей с помощью мастера

Можно удалить дубликат или оригинал записи непосредственно в запросе в режиме таблицы. Выделите запись и нажмите кнопку Удалить запись [image] на панели инструментов.

Если требуется автоматически удалить все дубликаты и оставить оригиналы записей, не следует использовать мастер по созданию запросов на поиск повторяющихся записей или преобразовывать запрос на поиск повторяющихся записей в запрос на удаление. Для получения дополнительных сведений нажмите кнопку [image] .


 При нажатии кнопки для изменения сводной формы Microsoft Excel не позволяет вносить изменения

При нажатии кнопки для изменения сводной формы Microsoft Excel не позволяет вносить изменения

Прежде чем начинать изменение сводной формы, необходимо обновить выводящиеся в ней данные.

  1. Откройте сводную форму в режиме формы.

  2. Нажмите кнопку Изменить объект сводной таблицы.

  3. В меню Данные Microsoft Excel выберите команду Обновить данные.

После этого станет возможным изменение сводной формы.

Примечание. При изменении сводной формы используется Microsoft Excel, поэтому справку о сводных отчетах можно получить в справочной системе Microsoft Excel. Если эта информация окажется недостаточной, можно обратиться к справочной системе Microsoft Access при условии, что сводная форма открыта в режиме формы в Microsoft Access.


При открытии Microsoft Excel не через форму, содержащую сводную форму, не удается найти сводную форму

При открытии Excel не через форму, содержащую объект сводной таблицы, не удается найти объект сводной таблицы

Сводная таблица является внедренным объектом, сохраняемым в Microsoft Access. Для работы со сводной таблицей в мастере сводных таблиц Microsoft Excel необходимо нажать кнопку Изменить объект сводной таблицы форме Microsoft Access. Только после того, как сводная таблица будет открыта, можно будет сохранить ее как копию сводного отчета Microsoft Excel. Однако отчет Excel и объект Microsoft Access, содержащие одну и ту же сводную таблицу, не будут связаны между собой. Это означает, что изменения, внесенные в сводную таблицу в одном приложении, не будут автоматически отражаться в другом приложении, и данные в них, таким образом, будут несогласованными.


 На экран выводится сообщение «Запрос содержит неоднозначные внешние связи»

На экран выводится сообщение «Запрос содержит неоднозначные внешние связи»

Это может произойти при попытке запустить запрос с определенными комбинациями объединений. Для получения примера, что может вызвать такой конфликт, и сведений о способах его разрешения см. статью Q124937 «Explanation of 'Ambiguous outer joins' error message» в базе данных Microsoft Knowledge Base. Для получения сведений о доступе к базе данных Knowledge Base или другим техническим ресурсам нажмите кнопку [image] .


 При добавлении данных из электронной таблицы или текстового файла в существующую таблицу появляются сообщения об ошибках

При добавлении данных из электронной таблицы или текстового файла в существующую таблицу появляются сообщения об ошибках

Для большинства вызывающих ошибки записей база данных Microsoft Access добавляет строку в таблицу «Ошибки импорта». Чтобы просмотреть список встретившихся ошибок, откройте таблицу «Ошибки импорта» в окне базы данных. Для получения дополнительных сведений о сообщениях об ошибках, содержащихся в таблице «Ошибки импорта», нажмите кнопку [image] .

В проекте Microsoft Access таблица «Ошибки импорта» не создается. Пользуйтесь службами преобразования данных (Data Transformation Services — DTS), возможно, являющимися более быстрым и гибким способом импорта и преобразования данных. Дополнительные сведения см. в документации по Microsoft SQL Server.

Добавляемые записи должны быть совместимыми с существующей структурой таблицы: у каждого поля должен быть тот же тип данных, что и у соответствующего поля таблицы получателя, а поля должны следовать в том же порядке (кроме тех случаев, когда первая строка файла используется как набор имен полей; тогда должны совпадать имена полей).

Если вероятная ошибка вызвана неверными данными, измените электронную таблицу или текстовый файл и повторите импорт. В противном случае следует изменить таблицу-получатель. Можно переустановить значения полей, изменить тип данных, обновить запрос (например, для переформатирования или пересчета данных) или выполнить запрос на создание таблицы (например, для того, чтобы разбить одно поле на два или чтобы объединить несколько полей в одно).

Ниже перечислены наиболее типичные причины появления ошибок.

  • Имена полей в электронной таблице или текстовом файле не совпадают с именами полей в таблице, в которую добавляются записи.

  • Данные в исходном поле не соответствуют типу данных поля получателя. Например, результирующее поле имеет тип данных «Дата/время» в базе данных Access (или тип данных datetime в проекте Microsoft Access), но среди данных имеется текстовое значение, которое Microsoft Access не может преобразовать в значение даты или времени.

  • Размер данных в числовом поле превышают размер результирующего поля. Например, для свойства Размер поля (FieldSize) результирующего поля задано значение Байт, но данные содержат значения, превышающие 255.

  • Импортируемые записи содержат повторяющиеся значения, которые нельзя поместить в первичный ключ результирующей таблицы или в любое поле таблицы, у которого свойство Индексированное поле (Indexed) имеет значение Да (Совпадения не допускаются) в базе данных Access либо задан параметр Ignore Duplicate Key в проекте Access.

  • Одна или несколько строк текстового файла или электронной таблицы содержат больше полей, чем таблица-получатель.

  • Значения полей дат, импортированных из электронной таблицы Microsoft Excel, оказываются сдвинутыми на четыре года. Microsoft Excel для Windows использует систему дат 1900, в которой даты представляются целыми числами от 1 до 65 380, соответствующими датам от 1 января 1900 до 31 декабря 2078. Microsoft Excel для Macintosh использует систему дат 1904, в которой даты представляются целыми числами от 0 до 63 918, соответствующими датам от 1 января 1904 до 31 декабря 2078.

    Прежде чем импортировать данные, необходимо изменить систему дат для электронной таблицы Microsoft Excel или после импорта данных необходимо выполнить запрос на обновление, используя выражение [Имя поля даты] + 1462 для корректировки дат. Дополнительные сведения о системе дат Microsoft Excel см. в документации Microsoft Excel.


 При импорте электронной таблицы или текстового файла появляются сообщения об ошибках

При импорте электронной таблицы или текстового файла появляются сообщения об ошибках

Для большинства вызывающих ошибки записей база данных Microsoft Access добавляет строку в таблицу «Ошибки импорта». Чтобы просмотреть список встретившихся ошибок, откройте таблицу «Ошибки импорта» в окне базы данных. Для получения дополнительных сведений о сообщениях об ошибках, содержащихся в таблице «Ошибки импорта», нажмите кнопку [image] .

В проекте Microsoft Access таблица «Ошибки импорта» не создается. Пользуйтесь службами преобразования данных (Data Transformation Services — DTS), возможно, являющимися более быстрым и гибким способом импорта и преобразования данных. Дополнительные сведения см. в документации по Microsoft SQL Server.

Ниже перечислены наиболее типичные причины появления ошибок.

  • Поле содержит данные, которые нельзя поместить в поле того типа данных, который присвоен ему в Microsoft Access. Например, в числовом поле или поле даты случайно оказалось текстовое значение. Возможно, строка текстового файла или электронной таблицы содержит итоговое значение или не поддерживаемые символы.

    Если Microsoft Access присвоил правильный тип данных этому полю, исправьте ошибки в текстовом файле или электронной таблице и повторите импорт. В противном случае повторите импорт и задайте подходящий тип данных.

  • Microsoft Access присвоил полю неправильный тип данных. Microsoft Access присваивает каждому полю тип данных на основе данных из первой импортируемой строки. Например, если поле содержащее в основном текстовые значения, в первой строке содержит число, то в базе данных Access ему будет присвоен числовой тип данных, а в проекте Access тип данных numeric. В результате, Access не сможет импортировать остальные записи.

    Повторите импорт и задайте во время импорта подходящий тип данных.

  • Одна или несколько строк текстового файла или электронной таблицы содержат больше полей, чем первая строка. Например, во второй строке файла находится лишний символ разделителя полей, за которым следует значение, которое Microsoft Access не может поместить в новую таблицу.

    Измените текстовый файл или электронную таблицу таким образом, чтобы в каждой строке было равное количество полей, и повторите импорт.

  • Значения полей дат, импортированных из электронной таблицы Microsoft Excel, оказываются сдвинутыми на четыре года. Microsoft Excel для Windows использует систему дат 1900, в которой даты представляются целыми числами от 1 до 65 380, соответствующими датам от 1 января 1900 до 31 декабря 2078. Microsoft Excel для Macintosh использует систему дат 1904, в которой даты представляются целыми числами от 0 до 63 918, соответствующими датам от 1 января 1904 до 31 декабря 2078.

    Прежде чем импортировать данные, необходимо изменить систему дат для электронной таблицы Microsoft Excel или после импорта данных необходимо выполнить запрос на обновление, используя выражение [Имя поля даты] + 1462 для корректировки дат. Дополнительные сведения о системе дат Microsoft Excel см. в документации Microsoft Excel.


Требуется помощь в указании условий отбора

Возникающие вопросы

Определение условий отбора

Поиск записей, удовлетворяющих одному условию и/или другому условию для того же или для другого поля

Поиск записей, содержащих значения, равные, большие или меньшие указанных

Поиск записей, содержащих значения, начинающиеся или заканчивающиеся определенными символами или включающие определенные символы

Поиск записей, не совпадающих с определенным значением

Поиск записей, которые содержат непустые значения (значения, не равные Null)

Поиск записей, не содержащих значений

Поиск записей, содержащих текущую дату

Поиск записей, содержащих значение из списка значений

Ограничение записей, используемых в расчетах

Отображение части содержимого текстового поля

Отображение части содержимого поля даты

Разрешение ошибки несогласованности типов


 Возвращается сообщение о нарушении уникальности ключа

Возвращается сообщение о нарушении уникальности ключа

Нарушение уникальности ключа возникает в следующих ситуациях.

  • При попытке выполнить запрос на добавление, удаление или обновления записей, в результате которого нарушаются условия целостности данных для связанных таблиц.

  • При попытках выполнить добавление или обновление записей, в результате которых в ключевом поле появляется значение, уже существующее в таблице-получателе.

При попытке выполнить такой запрос изменения, приводящие к нарушению уникальности ключа, выполнены не будут.

Для того чтобы выполнить изменения, приводящие к нарушению уникальности ключа, необходимо сначала разорвать связи между таблицами или отключить режим поддержания условий целостности данных и только после этого вносить изменения в каждую из таблиц по отдельности. Однако следует помнить, что в результате этого в таблицах могут появиться противоречивые данные. Для получения дополнительных сведений об условиях целостности данных нажмите кнопку [image] .

Для получения дополнительных сведений о назначении и изменении ключа нажмите кнопку [image] .


 Неверные данные в режиме просмотра образца

Неверные данные в режиме просмотра образца

В режиме просмотра образца выводятся все разделы отчета и несколько записей в области данных. В этом режиме демонстрируется сортировка и группировка данных, но игнорируются любые параметры, условия отбора или межтабличные связи в базовом запросе. Например, в области группы могут быть выведены записи, не принадлежащие к этой группе.

Проверять выводящиеся в отчете данные следует в режиме предварительного просмотра. Для получения дополнительных сведений нажмите кнопку [image] .


 При выборе значения из списка это значение исчезает или выводится сообщение об ошибке

При выборе значения из списка это значение исчезает или выводится сообщение об ошибке

Скорее всего, в свойстве Присоединенный столбец (BoundColumn) (формы и отчеты) или ListBoundField указан неверный столбец. Свойство Присоединенный столбец (BoundColumn) или ListBoundField определяет, данные из какого столбца сохраняются в поле, указанном в свойстве Данные (ControlSource). Например, если создано поле со списком, в который включаются столбцы «КодПоставщика» и «Название», то присоединенным столбцом будет столбец «КодПоставщика» (поле внешнего ключа), даже если единственным видимым столбцом является столбец «Название».


 Инструкции по временному отключению макрокоманды в макросе

Инструкции по временному отключению макрокоманды в макросе

Временное отключение макрокоманд оказывается полезным при поиске ошибок в макросах. Такой прием аналогичен временному превращению строки программы Visual Basic для приложений в строку комментария с помощью символа одинарных кавычек (') в начале строки. Для того чтобы Microsoft Access временно игнорировал макрокоманду, введите в качестве условия значение False.

Для получения дополнительных сведений об условиях выполнения макрокоманд нажмите кнопку [image] .


 Макрокоманда «ЗапускПрограммы» (RunCode) не запускает модуль Visual Basic

Макрокоманда «ЗапускПрограммы» (RunCode) не запускает модуль Visual Basic

Макрокоманда «ЗапускПрограммы» (RunCode) запускает процедуру-функцию Function, а не модуль. В Microsoft Access выполняются не модули, а процедуры. Замените имя модуля на имя содержащейся в этом модуле функции, которую требуется вызвать. Для запуска процедуры-подпрограммы Sub следует вызвать эту процедуру в функции.

Для того чтобы открыть модуль, следует использовать макрокоманду «ОткрытьМодуль» (OpenModule).


Макрокоманда «КомандыКлавиатуры» (SendKeys) используется в макросе для передачи нажатий клавиш в диалоговое окно, но нажатия клавиш не передаются

Открытие диалогового окна прерывает выполнение макроса, поэтому макрокоманду «КомандыКлавиатуры» (SendKeys) следует поместить в макросе до макрокоманды, открывающей диалоговое окно. Для того чтобы выполнение макроса не прерывалось, следует задать для аргумента «Пауза» значение «Нет». Для получения дополнительных сведений о макрокоманде «КомандыКлавиатуры» (SendKeys) нажмите кнопку [image] .


При выполнении макроса Microsoft Access выводит ненужное сообщение

Существует возможность временно отключить вывод предупреждений и других сообщений на время выполнения макроса, вызвав в макросе макрокоманду «УстановитьСообщения» (SetWarnings). Повторный вызов макрокоманды «УстановитьСообщения» (SetWarnings) позволяет снова включить режим вывода сообщений. Для получения дополнительных сведений нажмите кнопку [image] .


 Аргумент «Условие отбора» макрокоманды «ОткрытьФорму» (OpenForm) или «ОткрытьОтчет» (OpenReport) дает неверные результаты

Аргумент «Условие отбора» макрокоманды «ОткрытьФорму» (OpenForm) или «ОткрытьОтчет» (OpenReport) дает неверные результаты

Аргумент «Условие отбора» макрокоманды «ОткрытьФорму» (OpenForm) или «ОткрытьОтчет» (OpenReport) может давать неверные результаты по одной из следующих причин.

  • Неверный синтаксис ссылок на значение элемента управления или свойства в выражении, определяющем аргумент «Условие отбора». Для получения дополнительных сведений о ссылках на значения элементов управления нажмите кнопку [image] .

  • Неверный синтаксис в операции, используемой в аргументе «Условие отбора» для слияния значения поля, элемента управления или свойства со строковым значением. Для получения дополнительных сведений об использовании значений в выражениях нажмите кнопку [image] .

  • Макрокоманда «ОткрытьФорму» (OpenForm) или «ОткрытьОтчет» (OpenReport) выполняется с помощью соответствующего метода в процедуре Visual Basic для приложений, а аргумент «Условие отбора» указан в неверном месте в списке аргументов. Аргумент «Условие отбора» должен быть четвертым аргументом. Если перед аргументом «Условие отбора» не задаются значения аргументов «Режим» и «Имя фильтра», то следует ввести запятую, представляющую необязательные аргументы.

    Для получения дополнительных сведений о макрокоманде «ОткрытьФорму» (OpenForm) нажмите кнопку [image] . Для получения дополнительных сведений о макрокоманде «ОткрытьОтчет» (OpenReport) нажмите кнопку [image] .


 Инструкции по использованию Microsoft Visual Basic для добавления новой записи в таблицу

Инструкции по использованию Microsoft Visual Basic для добавления новой записи в таблицу

Существует возможность программного добавления новой записи в таблицу или в результирующий набор записей с помощью методов AddNew и Update объекта Recordset. Для получения дополнительных сведений нажмите кнопку [image] или см. руководство Building Applications with Forms and Reports.


 Изменение базовой инструкции SQL запроса с помощью Visual Basic для приложений

Изменение базовой инструкции SQL запроса с помощью Visual Basic для приложений

Для того чтобы изменить базовую инструкцию SQL запроса, следует использовать свойство SQL объекта QueryDef. Например, следующая программа Visual Basic определяет базовую инструкцию SQL запроса «СписокСотрудников», указывающую отбор всех записей из таблицы «Сотрудники»:

Dim dbsCurrent As Database
Dim qryTest As QueryDef
Set dbsCurrent = CurrentDb
Set qryTest = dbsCurrent.QueryDefs("СписокСотрудников")
qryTest.SQL = "SELECT * FROM Сотрудники;"

Для получения дополнительных сведений о свойстве SQL нажмите кнопку [image] .


Процедура дает неверные результаты при вызове одного из методов Find

Методы FindFirst, FindLast, FindNext и FindPrevious могут давать неверные результаты по одной из следующих причин.

  • Неверный синтаксис ссылок на значение элемента управления или свойства в аргументе условие. Для получения дополнительных сведений о ссылках на значения элементов управления нажмите кнопку [image] .

  • Неверный синтаксис в операции, используемой в аргументе условие для слияния значения поля, элемента управления или свойства со строковым значением. Для получения дополнительных сведений об использовании значений в выражениях нажмите кнопку [image] .

Методы FindRecord и FindNext могут также давать неверные результаты в том случае, когда аргумент текущееПоле метода FindRecord определен с помощью константы acCurrent. Перед вызовом метода FindRecord или FindNext переведите фокус на нужный элемент управления с помощью метода GoToControl.


 Получено сообщение «Процедура Sub или Function не определена» при попытке вызвать функцию IsLoaded

Получено сообщение «Процедура Sub или Function не определена» при попытке вызвать функцию IsLoaded

Функция IsLoaded является примером процедуры Function. Эта функция, определенная в демонстрационной базе данных «Борей», не является встроенной функцией Visual Basic. Чтобы иметь возможность вызывать функцию IsLoaded в собственной базе данных, откройте базу данных «Борей», скопируйте функцию в буфер и вставьте ее в модуль в собственной базе данных.

Для получения сведений об открытии базы данных «Борей» нажмите кнопку [image] .


 Получено сообщение «Метод или компонент данных не найден» при ссылке в программе на поле в таблице

Получено сообщение «Метод или компонент данных не найден» при ссылке в программе на поле в таблице

Microsoft Access возвращает это сообщение, если в ссылке на поле таблицы используется оператор . (точка) вместо оператора ! (восклицательный знак). Например, данная ошибка возникнет в последней строке следующей программы Visual Basic:

Dim dbsCurrent As Database
Dim tblTest As TableDef
Dim fldTest As Field
Set dbsCurrent = CurrentDb
Set tblTest = dbsCurrent.TableDefs("Типы")
Set fldTest = tblTest.КодТипа

Для того чтобы исправить ошибку, замените в программе оператор . (точка) на оператор ! или сошлитесь на поле как на элемент семейства Fields. Любая из следующих конструкций является правильной, хотя первая будет выполняться несколько быстрее:

Set fldTest = tblTest!КодТипа
Set fldTest = tblTest.Fields("КодТипа")

Для получения дополнительных сведений об использовании операторов . (точка) и ! нажмите кнопку [image] .


 Проверка работы процедуры Function или Sub

Проверка работы процедуры Function или Sub

Для проверки промежуточных результатов процедуры Function или Sub можно использовать окно проверки редактора Visual Basic. Например, для вывода значения, возвращаемого специальной функцией «ПервыйДеньМесяца», введите вопросительный знак, пробел, имя функции и все необходимые аргументы в скобках:

? НачалоСледующегоМесяца(Now)

Для получения дополнительных сведений нажмите кнопку [image] .


 При выполнении программы Microsoft Access выводит ненужное сообщение

При выполнении программы Microsoft Access выводит ненужное сообщение

Для того чтобы временно отключить вывод предупреждений и других сообщений на время выполнения программы Visual Basic, следует с помощью метода SetWarnings выполнить макрокоманду «УстановитьСообщения» (SetWarnings). Повторный вызов метода SetWarnings позволяет снова включить режим вывода сообщений. Для получения дополнительных сведений нажмите кнопку [image] .


Не выполняется автоматический ввод данных в запросе с автоподстановкой

Для выполнения автоподстановки необходимо, чтобы связанные поля удовлетворяли определенным условиям. Кроме того, необходимо добавить в бланк запроса определенные поля из обеих таблиц. Для получения дополнительных сведений нажмите кнопку [image] .


При применении темы был выбран параметр «Активная графика», но анимация рисунков не действует

Анимация рисунков темы действует только при просмотре страницы доступа к данным в Web-обозревателе, но не в Access.


 Требуется вывести в форме или отчете содержимое объекта, но вместо этого выводится только значок

Требуется вывести в форме или отчете содержимое объекта, но вместо этого выводится только значок

  1. Откройте форму в режиме конструктора формы или отчет в режиме конструктора отчета.

  2. Выберите значок.

  3. В меню Правка установите указатель на соответствующую команду Объект (например, на команду Объект Лист для объекта Microsoft Excel) и выберите команду Преобразовать.

  4. В диалоговом окне Преобразование снимите флажок В виде значка.


 Один или несколько столбцов имеют заголовок «< >»

Один или несколько столбцов имеют заголовок «< >»

Microsoft Access возвращает символы «<>» в заголовке столбца для любого значения Null в поле, для которого в строке Перекрестная таблица указано Заголовки столбцов. Чтобы избежать этого, выполните одно из следующих действий.

  • В явном виде определите заголовки столбцов с помощью свойства запроса Заголовки столбцов (ColumnHeadings). Для получения дополнительных сведений нажмите кнопку [image] .

  • В бланке запроса введите выражение Is Not Null в ячейку Условие отбора в столбце поля Заголовки столбцов.

  • В ячейке Условие отбора в столбце поля Заголовки столбцов при помощи выражения с функцией Nz преобразуйте значения Null в более осмысленные, например, «Отсутствует». Для получения дополнительных сведений о функции Nz нажмите кнопку [image] .


 Возвращается сообщение о необходимости использовать запрос, допускающий обновление

Возвращается сообщение о необходимости использовать запрос, допускающий обновление

Такая ошибка возникает, если ячейка строки Обновление включает поле из перекрестного запроса или из запроса на выборку, в котором для этого поля выполняется расчет статистических (итоговых) значений (такие расчеты задаются либо в строке Групповая операция, либо с помощью статистической функции по подмножеству, введенной в строку Поле). Для того чтобы выполнить обновление для поля, участвующего в групповой операции, следует выполнить статистические расчеты в запросе на обновление, а не в другом запросе.

  1. В текущем запросе в режиме конструктора удалите поле, добавленное из перекрестного запроса или из запроса на выборку (в котором для этого поля определен расчет статистической функции).

  2. Введите в ячейку строки Обновление нужного поля статистическую функцию по подмножеству, выполняющую ту же операцию, которая выполнялась для этого поля в запросе на выборку или в перекрестном запросе.

    Например, если в таблице «Товары» имеется вычисляемое поле «Сумма продаж», можно обновить его до произведения полей «Количество» и «Цена» из таблицы «Заказано», для чего следует ввести в бланке запроса на обновление следующее выражение в ячейку строки Обновление в столбце этого поля:

    DSum("[Количество]*[Цена]","Заказано","[КодТовара]=" & [КодТовара])

  3. Для запуска запроса нажмите кнопку Запуск [image] на панели инструментов.

  4. Для просмотра результатов откройте таблицу, выбрав Таблицы [image] в списке Объекты окна базы данных и нажав кнопку Открыть на панели инструментов окна базы данных.


Искажение цветов на рисунке или в форме

Если выводящийся рисунок был создан на компьютере, в котором использовалось больше цветов, чем на вашем компьютере, Microsoft Windows выполнит автоматическую подстановку цветов вместо исходных. Такой процесс называют способом передачи полутонов. Например, искажение цветов может возникнуть при попытке вывести рисунок, созданный с использованием 256 цветов, на компьютере, использующем всего 16 цветов (стандарт VGA). Если компьютер поддерживает отображение большего количества цветов, используйте свойство формы или отчета Источник палитры (PaletteSource) для указания использования исходной палитры рисунка.

При использовании фоновых рисунков в форме с всплывающей формой, рекомендуется задать для свойства Источник палитры (PaletteSource) одно и тоже значение в обеих формах. Это справедливо в случае, если в форме есть фоновый рисунок, а во всплывающей форме его нет, и наоборот, а также когда обе формы содержат фоновые рисунки. В Windows нельзя использовать несколько палитр одновременно, поэтому если для свойства Источник палитры (PaletteSource) было задано одно и то же значение, это гарантирует, что цвета, необходимые для каждой формы, будут доступны для обеих форм одновременно.

Для получения дополнительных сведений о свойстве Источник палитры (PaletteSource) нажмите кнопку [image] .


Обновление не выполняется требуемым образом

  • Необходимо изменить выражения в строке Обновление, определяющие условия обновления записей. Например, если требуется повысить заработную плату сотрудникам на 5 процентов, следует ввести выражение [Оклад]*1,05 в ячейку строки Обновление в столбце поля «Оклад». Для просмотра примеров других запросов на обновление нажмите кнопку [image] .

  • Если обновляются данные не в том поле, определите условия обновления для нужного поля. Для указания условия обновления следует ввести выражение в ячейку строки Обновление в столбце этого поля в бланке запроса.


 Записи в запросе возвращаются в неверном порядке

Записи в запросе возвращаются в неверном порядке

  • Если порядок сортировки не указан, укажите его. Для получения дополнительных сведений нажмите кнопку [image] .

    При работе в сети другой пользователь может указать другой порядок сортировки. Порядок сортировки сохраняется вместе с запросом. Вы можете в любой момент изменить порядок сортировки.

  • Если порядок сортировки уже задан, возможно, выбрано неверное поле. Удалите текущее условие сортировки и укажите новый порядок сортировки для нужного поля.

  • Если порядок сортировки задан для нужного поля, возможно, выбрана сортировка По возрастанию вместо сортировки По убыванию или наоборот. Выберите правильный порядок сортировки.

  • Если определена сортировка по нескольким полям, проверьте правильность порядка полей в бланке запроса. Microsoft Access выполняет сортировку по нескольким полям в порядке их расположения в бланке запроса слева направо.

  • Поле, для которого определен порядок сортировки, может оказаться скрытым. Для того чтобы поле, по которому сортируются записи, выводилось на экран, необходимо, чтобы был установлен флажок Вывод на экран в столбце этого поля в бланке запроса.

  • Для поля гиперссылки задать порядок сортировки нельзя. Однако сортировку можно выполнить при помощи выражения с функцией HyperlinkPart. Для получения дополнительных сведений нажмите кнопку [image] .

  • Для получения дополнительных сведений о сортировке записей нажмите кнопку [image] .


Пустые места в отчете

Если отчет содержит слишком много пустых мест, следует уменьшить промежутки между разделами и элементами управления и сжать пустые места.

Уменьшение промежутков между разделами и элементами управления

  • Измените значение ширины отчета.

    Инструкции

  • Измените значение высоты разделов.

    Инструкции

  • Сдвиньте разделы ближе друг к другу.

    Инструкции

Сжатие пустых мест внутри подчиненной формы, подчиненного отчета или поля

  • Задайте значение Да для свойства элемента управления Сжатие (CanShrink).

    Инструкции


 При попытке вывести в главной форме записи из подчиненной формы возвращаются сообщения «#Ошибка?» или «#Имя?»

При попытке вывести в главной форме записи из подчиненной формы возвращаются сообщения «#Ошибка?» или «#Имя?»

Для вывода в главной форме значения из подчиненной формы создайте вычисляемый элемент управления, в котором для ссылки на подчиненную форму используется следующий синтаксис:

=Forms![имяФормы]![имяПодчиненнойФормы]![имяЭлемента]

Например, рассмотрим форму «Заказы» и подчиненную форму «Заказано». В области примечаний подчиненной формы имеется поле «ОтпускнаяЦена», в котором рассчитывается итоговое значение для записей подчиненной формы. Для вывода значения этого поля в главной форме следует использовать выражение:

=Forms![Заказы]![Заказано]![ОтпускнаяЦена].

Для получения дополнительных сведений о расчете итоговых значений для группы записей в форме нажмите кнопку [image] .

Если использован правильный синтаксис, но по-прежнему возвращается ошибка, проверьте правильность указанных имен формы, подчиненной формы и элементов управления. Проверьте совпадение указанных вами в выражении имен со значениями свойства Имя (Name) каждого объекта. Кроме того, проверьте, что в нужных местах выражения имеются восклицательные знаки.

Для ссылок на элементы управления рекомендуется использовать построитель выражений. Для получения сведений об использовании построителя выражений нажмите кнопку [image] .


В запросе возвращаются не те записи

Возникающие проблемы

В запросе возвращается слишком много записей

В запросе возвращается слишком мало записей

В запросе возвращаются неверные записи


 Запрос выполняется слишком медленно

Запрос выполняется слишком медленно

Для ускорения выполнения запроса выполните следующее.

  • Вызовите анализатор быстродействия, который автоматически проверит запрос и выдаст рекомендации по повышению его производительности. Для получения дополнительных сведений нажмите кнопку [image] .

  • Создайте индексы для базовых таблиц. Для получения дополнительных сведений об индексах и их использовании нажмите кнопку [image] .

    Примечание. В случае использования анализатора быстродействия, он выдает предложения по созданию необходимых индексов и связей.

  • Измените макет запроса или сделайте другие изменения в базе данных для повышения быстродействия запроса. Для получения дополнительных сведений нажмите кнопку [image] .


Часть данных сводной формы уходит за край окна, но нет полос прокрутки, позволяющих вывести эти данные на экран

  • Для прокрутки данных сводной формы нажмите кнопку Изменить объект сводной таблицы, открывающую таблицу в окне Microsoft Excel. В этом окне допускается просмотр всей сводной формы и прокрутка данных.


В подчиненном отчете не печатаются заголовки столбцов

Microsoft Access не печатает колонтитулы в подчиненном отчете, поэтому заголовки столбцов, помещенные в верхний колонтитул, на печать выведены не будут.

  • Если подчиненный отчет всегда умещается на одной странице, поместите заголовки столбцов в заголовок подчиненного отчета.

  • Если подчиненный отчет занимает несколько печатных страниц, поместите заголовки столбцов подчиненного отчета в заголовок группы и задайте для свойства Повторение раздела (RepeatSection) заголовка группы значение Да.


 Арифметические операции, определенные в бланке запроса, возвращают пустые значения

Арифметические операции, определенные в бланке запроса, возвращают пустые значения

Если арифметический оператор (например, +, -, *, /) используется в выражении типа [ТоварыНаСкладе]+[ЗаказанныеТовары], и одно из полей, входящих в выражение, содержит значение Null, результатом выражения также будет пустое значение (Null). Чтобы избежать появления в результирующем наборе записей пустых значений (Null), следует преобразовать их в нули. Для получения дополнительных сведений нажмите кнопку [image] .


 Фильтр возвращает слишком мало записей

Фильтр возвращает слишком мало записей

Если фильтр возвращает слишком мало записей, возможно, используемое условие отбора является слишком строгим.

Обычный фильтр

  • Добавьте дополнительное условие отбора записей на вкладке Или (в нижней части окна).

  • При наличии нескольких условий отбора на вкладках Найти или Или удалите значение или выражение, которое ограничивает набор нужных записей.

Фильтр по выделенному

  • Удалите фильтр, выберите значение для поиска, а затем нажмите кнопку Фильтр по выделенному [image] на панели инструментов. При необходимости повторяйте эти шаги до тех пор, пока не получите нужный набор записей.

  • При использовании фильтра по выделенному в поле со списком убедитесь, что присоединенный столбец для поля со списком является первым столбцом в списке. Если это не так, и в качестве условия отбора было выбрано значение из столбца, в котором должно выводиться поле со списком, оно не будет применяться к данным в присоединенном столбце. Необходимо либо сделать присоединенный столбец первым в списке, либо заполнить поле со списком значениями из таблицы или запроса.

Фильтр по введенному

  • Удалите фильтр и укажите другое значение или выражение в поле Фильтр для.

  • Переключитесь в окно расширенного фильтра и проверьте, не указано ли там неправильное условие отбора или более одного условия.

Окно расширенного фильтра

  • Удалите условие отбора для одного или нескольких полей в бланке.

  • Добавьте дополнительные строки Или для указания альтернативных условий отбора.

  • Воспользуйтесь выражениями с логическим оператором Или вместо оператора И.


 В запросе возвращается слишком много записей

В запросе возвращается слишком много записей

Если в запрос включено несколько таблиц или запросов, проверьте тип объединения для каждой линии связи. Тип объединения определяет, будут ли выбираться из данной таблицы или запроса все записи или только записи, связанные с записями в другой таблице.

Примеры типов объединения, инструкции по их изменению и влияние на результаты запросов
  • Если используется тип объединения, при котором из двух таблиц возвращаются только связанные записи, то любые записи, у которых в связанных полях содержатся значения Null, не будут включены в результаты запроса. Значения Null можно преобразовать в нули, пустые строки или другие указанные значения с тем, чтобы они были включены в результаты запроса. Для получения дополнительных сведений нажмите кнопку [image] .

  • Возможно, указаны слишком жесткие условия отбора. Например, если в строке Условие отбора заданы условия для двух различных полей, то возвращаются только те записи, для которых каждое из условий является истинным. Для того чтобы в запросе возвращалось больше записей, часть лишних условий следует удалить.

  • Проверьте правильность введенных условных выражений. Проверьте, нет ли ошибок в именах, лишних пробелов или посторонних символов. Убедитесь, что условия заданы для нужного поля, и что заданы именно нужные условия.

  • Если имя поля содержит двоеточие, необходимо заключать это имя в скобки всякий раз при ссылке на поле в выражении. В противном случае имя поля будет воспринято как простой текст, и нужные записи возвращаться не будут.

  • Если искомые значения известны неточно, то следует определять условия отбора с помощью подстановочных знаков. Если условия отбора уже задаются с помощью подстановочных знаков, но при этом возвращаются не те записи, возможно, используются подстановочные знаки, соответствующие неверному типу данных. Для получения дополнительных сведений об использовании подстановочных знаков нажмите кнопку [image] .

  • Добавьте альтернативные условия, расширяющие диапазон отбираемых записей. Для этого следует добавить выражение в ячейку строки Условие отбора или в ячейку строки Или и связать его с уже имеющимися выражениями с помощью оператора Or. Для просмотра примеров альтернативных условий отбора нажмите кнопку [image] .

  • Если в условиях отбора задается поиск определенных значений в поле или полях, то записи со значениями Null в этом поле или полях отбираться не будут. Для того чтобы включить в результирующий набор записей записи, содержащие пустые значения (Null), введите в строку Или выражение Is Null. Для получения дополнительных сведений о значениях Null нажмите кнопку [image] .


 В запросе возвращается слишком много записей

В запросе возвращается слишком много записей

  • Если в запрос включено несколько таблиц или запросов, и они еще не связаны, выполните объединение таблиц или запросов. Для получения дополнительных сведений нажмите кнопку [image] .

Если объединение таблиц или запросов уже выполнено, проверьте тип объединения для каждой линии связи. Тип объединения определяет, будут ли выбираться из данной таблицы или запроса все записи или только записи, связанные с записями в другой таблице.

Примеры типов объединения, инструкции по их изменению и влияние на результаты запросов
  • Добавьте условия отбора, ограничивающие возвращаемый в запросе набор записей. В запросе будут возвращаться только записи, удовлетворяющие условиям отбора. Для получения дополнительных сведений об указании условий отбора нажмите кнопку [image] .
    • Если условия отбора уже заданы, возможно, требуется указать дополнительные условия либо для того же поля с помощью оператора And, либо для других полей. Кроме того, следует проверить правильность введенных условных выражений. Проверьте, нет ли ошибок в именах, лишних пробелов или посторонних символов. Проверьте, что условия заданы для нужного поля и что заданы именно те условия, которые требуются. При использовании альтернативного условия отбора в строке Или в бланке запроса или в выражении для условий отбора с оператором Or, возможно, следует удалить лишние выражения. Для просмотра примеров сложных условий отбора нажмите кнопку [image] .

    • Проверьте искомые данные. Если значения содержат дополнительные пробелы или специальные символы, это должно быть отражено в условиях отбора. Если искомые значения известны неточно, то следует определять условия отбора с помощью подстановочных знаков. Если условия отбора уже задаются с помощью подстановочных знаков, но при этом возвращаются не те записи, возможно, используются подстановочные знаки, соответствующие неверному типу данных. Для получения дополнительных сведений об использовании подстановочных знаков нажмите кнопку [image] .

    • В запросах на выборку, на добавление записей или на создание таблицы, в которых отбирается определенное количество максимальных или минимальных значений поля с помощью кнопки Набор значений [image] на панели инструментов в режиме конструктора запроса (или указания значения свойства Набор значений (TopValues) в окне свойств запроса), может возвращаться больше записей, чем указано. Причина заключается в том, что возвращаются все записи, у которых значение поля совпадает со значением поля в последней записи. Таким образом, будут возвращены все три следующие записи, даже если даже пользователь захочет просмотреть только сотрудников, имеющих два наивысших результата продаж, потому что запрос не делает разницы между двумя объемами продаж в 50000.
      КодСотрудника | Объем продаж
      1 | 60 000
      2 | 50 000
      3 | 50 000

      Чтобы дублирующиеся значения не возвращались, следует в окне свойств запроса задать для свойства Уникальные значения (UniqueValues) значение Да.

    Для получения дополнительных сведений нажмите кнопку [image] .


 В запросе возвращаются неверные записи

В запросе возвращаются неверные записи

  • Проверьте правильность введенных условных выражений. Проверьте, нет ли ошибок в именах, лишних пробелов или посторонних символов. Убедитесь, что условия заданы для нужного поля, и что заданы именно нужные условия.

  • Проверьте в верхней половине окна запроса в режиме конструктора набор таблиц или запросов, включенных в запрос. Для получения дополнительных сведений о добавлении таблиц или запросов нажмите кнопку [image] . Для получения дополнительных сведений об удалении таблиц или запросов нажмите кнопку [image] .


 Неверные результаты итоговых (статистических) расчетов в запросе

Неверные результаты итоговых (статистических) расчетов в запросе

  • Если имеются записи с пустыми (Null) значениями полей, включенных в расчеты, то эти записи не будут учитываться при вычислениях. Для получения дополнительных сведений о значениях Null, в том числе о способах их включения в расчеты, нажмите кнопку [image] .

  • Если в запросе неправильно выполняется группировка записей, проверьте, что в ячейке строки Групповая операция для поля или полей, по которым должны группироваться записи, выбран элемент Группировка. Для получения дополнительных сведений о проведении расчетов над группами записей нажмите кнопку [image] .

  • В перекрестном запросе причиной неверных результатов может быть слишком большое или слишком малое количество полей группировки. Добавьте, удалите или измените поля, указанные в качестве заголовков строк, по которым итоговые значения группируются по вертикали. Проверьте, что выбраны правильные значения полей, используемые в качестве заголовков столбцов, в которых итоговые значения группируются по горизонтали.

  • Положение условий отбора в бланке запроса определяет, будет ли проводиться отбор записей до группировки или выполнения расчетов, будут ли отбираться группы до проведения расчетов, а также какие результаты будут возвращаться после проведения вычислений. Для получения дополнительных сведений нажмите кнопку [image] .

  • Проверьте, что выбраны правильные статистические функции. Если нет, выберите другую функцию из списка в ячейке Групповая операция. Для получения дополнительных сведений о статистических функциях нажмите кнопку [image] .


Результаты итоговых (статистических) расчетов выводятся не в том столбце

В бланке запроса удалите статистическую функцию из ячейки строки Групповая операция и выберите статистическую функцию в другом поле.


В запросе выводятся не те столбцы

  • Удалите из бланка запроса имена полей, которые не требуется выводить в запросе. Для получения дополнительных сведений нажмите кнопку [image] .

  • Если нужные столбцы не выводятся, добавьте имена полей в бланк запроса. Для получения дополнительных сведений нажмите кнопку [image] .

  • Проверьте, что правильно выбраны таблицы или запросы, из которых отбираются записи. Для получения дополнительных сведений о добавлении таблиц или запросов нажмите кнопку [image] . Для получения дополнительных сведений об удалении таблиц или запросов нажмите кнопку [image] .


В запросе выводится слишком мало столбцов

  • Добавьте поля в бланк запроса. Символ звездочки (*), добавленный в бланк запроса, определяет автоматический вывод в запросе всех полей из базовой таблицы или запроса. Для получения дополнительных сведений нажмите кнопку [image] .

  • Добавьте другие таблицы или запросы, а затем добавьте другие нужные поля. Для получения дополнительных сведений нажмите кнопку [image] .

  • Отобразите скрытые поля. Для получения дополнительных сведений нажмите кнопку [image] .

  • Если флажок Вывод всех полей снят, отбираются только поля, включенные в бланк запроса. Для проверки состояния флажка выберите в меню Сервис команду Параметры и перейдите на вкладку Таблицы/запросы. Если флажок установлен, в запросах будут выводиться все поля из базовых таблиц или запросов даже без их явного добавления в бланк запроса. При последующем добавлении поля в бланк запроса, например, для определения условий отбора, снимите для этого поля флажок Вывод на экран; в противном случае в запросе будет выводиться лишний столбец. Также можно снять флажок Вывод всех полей. Изменение данной настройки затрагивает свойства только новых создаваемых запросов, но не существующих.


В запросе выводится слишком много столбцов

  • Удалите из бланка запроса поля, которые не должны выводиться в результате выполнения запроса, и удалите символ звездочки (*), если он добавлен в бланк. Символ звездочки определяет автоматический вывод в запросе всех полей из базовой таблицы или запроса. Для получения дополнительных сведений об удалении полей нажмите кнопку [image] .

  • Сделайте скрытыми поля, которые не требуется выводить в результатах запроса. Для получения дополнительных сведений нажмите кнопку [image] .

  • Убедитесь, что флажок Вывод всех полей снят. Для проверки состояния флажка выберите в меню Сервис команду Параметры и перейдите на вкладку Таблицы/запросы. Если флажок установлен, в запросах будут выводиться все поля из базовых таблиц или запросов даже без их явного добавления в бланк запроса. При последующем добавлении поля в бланк запроса, например, для определения условий отбора, снимите для этого поля флажок Вывод на экран; в противном случае в запросе будет выводиться лишний столбец. Также можно снять флажок Вывод всех полей. Изменение данной настройки затрагивает свойства только новых создаваемых запросов, но не существующих.


Неверные вычисления в запросе

Возникающие проблемы

Неверные результаты итоговых расчетов в запросе

Результаты итоговых расчетов выводятся не в том столбце

Арифметические операции, определенные в вычисляемых полях бланка запроса, возвращают пустые (Null) значения


Изменение перекрестного запроса

Предполагаемые действия

Изменение порядка вывода или количества заголовков столбцов

Сортировка записей

Указание условий отбора записей

Исключение записей с пустыми (Null) значениями, приводящих к появлению заголовков столбцов вида «<>»


 Не удается вставить данные

Не удается вставить данные

В большинстве случаев данные, которые не удалось вставить в базу данных Microsoft Access, помещаются в таблицу «Ошибки вставки». В этом случае Microsoft Access выводит сообщение. Для получения дополнительных сведений об открытии таблицы «Ошибки вставки» нажмите кнопку [image] .

Microsoft Access не вставляет все или часть данных в следующих случаях.

  • При попытке вставить все содержимое поля или полей, не выбрав место назначения. Выделите поле или поля, в которые требуется вставить данные. Для получения дополнительных сведений о выделении полей нажмите кнопку [image] .

  • При попытке вставить больше полей, чем имеется в результирующем объекте в режиме таблицы, или больше полей, чем выделено в объекте получателя. Лишние поля не вставляются.

  • При попытке вставить значение, несовместимое с типом данных поля получателя. Например, была выполнена попытка вставить сочетание букв и цифр в поле базы данных Microsoft Access с типом данных «Числовой» или в поле проекта Microsoft Access с типом данных smallint.

  • При попытке вставить в поле слишком длинный текст. Максимальная длина значения поля определяется значением свойства Размер поля (FieldSize) в базе данных Access или свойством столбца Length в проекте Access. Проверьте настройки поля в режиме конструктора таблицы для базы данных Access или в представлении свойств столбца в схеме базы данных для проекта Access.

  • При попытке вставить дублирующее значение в первичный ключ таблицы, поле базы данных Access, свойство Индексированное поле (Indexed) которого имеет значение Совпадения не допускаются, или поле проекта Access, имеющее уникальное ограничение или уникальный индекс. Проверьте настройки поля в режиме конструктора таблицы для базы данных Access или в представлении свойств столбца в схеме базы данных для проекта Access.

  • При попытке вставить данные в скрытое поле. Такая операция не разрешена. Для того чтобы вывести на экран скрытые столбцы, выберите в меню Формат команду Отобразить столбцы.

  • При попытке удалить или вставить данные в недоступное поле, заблокированное поле, вычисляемое поле или поле типа «Счетчик». Для получения дополнительных сведений о полях этих типов нажмите кнопку [image] .

  • При отсутствии разрешений на добавление или изменение данных в объекте базы данных.

  • При попытке вставки значения, несовместимого со значениями свойств Условие на значение (ValidationRule), Маска ввода (InputMask), Обязательное поле (Required) (только для баз данных Access) или Пустые строки (AllowZeroLength) (только для баз данных Access).

  • Обновление было отменено в макросе, определенном в свойствах событий До обновления (BeforeUpdate) или При вставке (OnInsert), поскольку вставляемые данные не удовлетворяли проверяемым в макросе условиям.


Устранение неполадок при печати и просмотре отчетов

Возникающие вопросы

При печати отчета печатаются пустые страницы

В отчете слишком много лишних пробелов

Неверные данные в режиме просмотра образца

Выводится приглашение ввести непонятные параметры

В подчиненном отчете не печатаются заголовки столбцов

В элементе управления выводятся сообщения «#Ошибка?» или «#Имя?»

Подчиненный отчет выводит на печать только один столбец вместо нескольких


 Получение сообщения о несогласованности типов

Получение сообщения о несогласованности типов

  • Проверьте, что условия отбора определены для тех же типов данных, что и данные в базовых таблицах или запросах. Например, поле «МинимальныйЗапас» в таблице «Товары» имеет тип «Числовой». Условие отбора, определенное для этого поля с помощью выражения "50", приведет к ошибке, поскольку Microsoft Access воспринимает значения в прямых кавычках как текстовые, а не как числовые.

    Ниже перечислены другие ситуации, вызывающие конфликт типов данных.

    • Было указано условие отбора для подстановочного поля, и при отборе используются значения, отображаемые в подстановочном списке, вместо соответствующих значений внешних ключей. Так как значения внешних ключей являются значениями, хранящимися в базовой таблице, то при определении условия отбора для поля должны использоваться именно они. Для получения дополнительных сведений о подстановочных полях нажмите кнопку [image] .

    • Был введен знак доллара ($) в условие отбора, указанное для поля типа «Денежный». Удалите знак доллара и просмотрите результаты.
  • Проверьте, что совпадают типы данных полей, участвующих в объединении. Если нет, замените тип данных одного из полей на тип данных другого. Для получения дополнительных сведений нажмите кнопку [image] .


Возвращается сообщение о нарушении условий на значение

Нарушение условий на значение возникает при попытке добавления или обновления записей, в результате которой нарушаются условия на значение поля или записи.

Для получения дополнительных сведений об условиях на значение нажмите кнопку [image] .


 Требуется параметр, обеспечивающий возвращение в запросе с параметрами всех записей

Требуется параметр, обеспечивающий возвращение в запросе с параметрами всех записей

В бланке запроса под ячейкой поля в строке Условие отбора, содержащей приглашение на ввод параметра, введите в ячейку строки Или выражение [текстПриглашения] Is Null, где текстПриглашения должен совпадать с приглашением, введенным в строку Условие отбора для этого поля. Например, для поля «КодТовара» введите в следующие строки выражения:

Строка | Выражение
Условие отбора | Like [Введите код товара:]
Или | [Введите код товара:] Is Null

Если при запуске такого запроса оставить пустым диалоговое окно Введите значение параметра, запрос будет возвращать все записи.


 Не удается изменить структуру таблицы в базе данных Access

Не удается изменить структуру таблицы в базе данных Access

  • Если другой пользователь открыл таблицу или просматривает данные в запросах, формах или отчетах, для которых эта таблица является базовой, изменять структуру этой таблицы нельзя. Появляется сообщение, что таблица доступна только для чтения.

  • Возможно, дело в отсутствии разрешения на изменение макета таблицы. Если используемая общая база данных Microsoft Access защищена, доступ к объектам (за исключением модулей) контролируют пользователи, которые ее создали или управляют ею. Права отдельного пользователя могут определяться группой, в которую он входит.


 Не удается открыть объект базы данных Access

Не удается открыть объект базы данных Access

Возможно, дело в отсутствии разрешения на открытие объекта. Если используемая общая база данных Microsoft Access защищена, доступ к объектам контролируется пользователями, которые ее создали или управляют ею. Возможно, имеется разрешение на просмотр объекта, но нет права на его просмотр в режиме конструктора или права на его обновление. Права отдельного пользователя могут определяться группой, в которую он входит.


 Не удается просмотреть данные таблицы в базе данных Access

Не удается просмотреть данные таблицы в базе данных Access

  • Нельзя просматривать данные в таблице, открытой другим пользователем в режиме конструктора. Подождите, пока таблица освободится. Открыв таблицу в режиме конструктора, держите ее открытой только необходимое время, если другим пользователям может потребоваться сама таблица или любые запросы, формы или отчеты, для которых она является базовой.

  • Возможно, дело в отсутствии разрешения на просмотр данных. Если используемая общая база данных Microsoft Access защищена, доступ к объектам (за исключением модулей) контролируют пользователи, которые ее создали или управляют ею. Права отдельного пользователя могут определяться группой, в которую он входит.


Увеличение размера базы данных на величину, значительно превышающую размер добавленного объекта

Часто размер информации, предназначенной для представления объекта, значительно превышает размер самого объекта. Одним из способов разрешения данной проблемы является отображение в форме или отчете не самого объекта, а значка, представляющего этот объект. При отображении значка сервер OLE (приложение, использованное для создания объекта) пересылает только сведения, необходимые для отображения значка. По двойному щелчку этого значка выполняется запуск сервера OLE с данными, которые представляет значок.

Для получения сведений об отображении объекта в виде значка нажмите кнопку [image] .


 Данные вставляются в неверное поле

Данные вставляются в неверное поле

  • При вставке записей в таблицу Microsoft Access размещает их в соответствии с порядком столбцов таблицы, независимо от имен полей. Чтобы вставить данные в соответствии с именами полей, вставьте их в форму в режиме формы.

  • Когда записи вставляются в форму, данные помещаются в поля с теми же именами, что и исходные поля, независимо от их порядка в форме. При отсутствии совпадающих имен данные размещаются в соответствии с последовательностью переходов в форме, которая может не совпадать с желаемой.


 Фильтр сортирует записи в неверном порядке

Фильтр сортирует записи в неверном порядке

Может потребоваться выполнение одного из следующих действий.

  • Добавить или удалить порядок сортировки.

  • Выполнить сортировку по другому полю.

  • Сменить порядок сортировки По возрастанию на порядок сортировки По убыванию или наоборот.

  • Изменить в окне расширенного фильтра расположение столбцов в бланке, а затем переопределить порядок сортировки для одного или нескольких полей. В Microsoft Access сортировка записей выполняется, начиная с левого крайнего столбца бланка.

Примечания

  • Если в текстовых полях содержатся числа, эти числа не будут отсортированы по значениям. Вместо этого они будут отсортированы в следующем порядке: 1, 11, 12, 2, 20, 21 и т.д. Для получения дополнительных сведений нажмите кнопку [image] .

  • Если в поле с сортировкой по возрастанию содержатся значения Null, записи с этими значениями появляются перед всеми другими текстовыми или числовыми значениями.

Для получения дополнительных сведений о сортировке нажмите кнопку [image] .


Фильтр не возвращает требуемый набор записей в таблице, запросе или форме

Возникающие проблемы

Фильтр возвращает слишком много записей

Фильтр возвращает слишком мало записей

Фильтр возвращает неправильный набор записей


 Окно свойств пусто

Окно свойств пусто

Если в то время, когда на экране отображено окно свойств, щелкнуть уже выбранный элемент управления, окно свойств станет пустым. Если нет необходимости вводить значение в элемент управления, нажмите клавишу ESC для отображения первоначального окна свойств. В противном случае, введите значение и нажмите клавишу ENTER.


Microsoft Access по-разному считывает в окне обычного фильтра записи для индексированных и неиндексированных полей

Количество записей, которые считываются Microsoft Access, зависит от того, является ли поле индексированным. Если поле индексировано, то считываются только уникальные значения, а не все значения поля. Для неиндексированного поля считываются все значения. Если число считанных записей превышает максимально допустимое число выводящихся записей, которое определяется параметром Не отображать списки, содержащие более заданного числа строк, то в Microsoft Access список значений для этого поля не выводится. Требуется задать для этого параметра числовое значение, не меньшее максимального числа записей в любом неиндексированном поле базовой таблицы.

Примечание. Если отображение списка в поле в окне фильтра Microsoft Access является возможным, то для неиндексированного поля в списке также выводятся только уникальные значения.


 В окне свойств отображаются не все свойства для выделенных элементов управления

В окне свойств отображаются не все свойства для выделенных элементов управления

Если при выборе нескольких элементов управления в окне свойств выводятся не все нужные свойства, возможно выбран лишний элемент управления. Например, в группу полей могла быть включена линия. Свойства отображаются в окне свойств только если они применимы ко всем выделенным элементам управления. Чтобы удалить элемент управления из выделенной группы, щелкните его, удерживая клавишу SHIFT.


 Ячейка для определенного свойства остается пустой

Ячейка для определенного свойства остается пустой

Если значение, заданное для определенного свойства, является одинаковым для всех выбранных элементов управления, оно отображается в окне свойств. В противном случае, ячейка данного свойства остается пустой. Если выбрано несколько элементов управления, изменение значения свойства для одного элемента управления приведет к изменению значения этого свойства для всех выбранных элементов.


 Значения свойств для элемента управления не соответствуют значениям свойств для поля таблицы в режиме конструктора

Значения свойств для элемента управления не соответствуют значениям свойств для поля таблицы в режиме конструктора

Значения свойств для связанного элемента управления могут не соответствовать значениям тех же свойств для поля базовой таблицы, с которым связан элемент управления. Если значения различны, то значения в форме или отчете обычно перекрывают значения в таблице, но они применимы только к текущей форме или отчету. Рекомендуется задавать значения для свойств Формат (Format), Число десятичных знаков (DecimalPlaces), Маска ввода (InputMask), Условие на значение (ValidationRule), Сообщение об ошибке (ValidationText) и Значение по умолчанию (DefaultValue) в базовой таблице или запросе, а не в форме или отчете. Так можно быть уверенным, что для поля заданы нужные значения свойств, независимо от того, добавляется ли оно к форме или отчету. Для получения дополнительных сведений о наследовании свойств в элементах управления нажмите кнопку [image] .


 Недоступны некоторые поля в окне обычного фильтра

Недоступны некоторые поля в окне обычного фильтра

В окне обычного фильтра нельзя отбирать записи с помощью полей следующих типов:

  • вычисляемые поля в форме;

  • поля, созданные с помощью свободного элемента управления или свободной рамки объекта.


В поле со списком в форме или отчете выводятся данные из неверного столбца. Как вывести данные из другого столбца?

Если в форме или отчете список в поле со списком содержит несколько столбцов, то в поле выводится значение из первого видимого столбца списка. Видимые столбцы определяются с помощью свойства Ширина столбцов (ColumnWidths). Например, если поле со списком создается на базе запроса, в котором поля выводятся в следующем порядке: «КодПоставщика» и «Название», то в поле со списком будет выведено значение поля «КодПоставщика», если это поле не сделано скрытым с помощью свойства Ширина столбцов (ColumnWidths). Для получения дополнительных сведений о скрытии столбцов в списке или в поле со списком нажмите кнопку [image] .


Способы настройки отчета (3)

Добавление полей из источника записей отчета


Способы настройки формы (5)

Добавление полей из источника записей формы


Способы настройки формы (2)

Изменение внешнего вида формы


Способы настройки отчета (2)

Изменение внешнего вида отчета


Способы настройки формы (6)

Изменение типа элемента управления

Дополнительные сведения

Добавление, удаление или форматирование заголовка, примечаний и других разделов формы

Перемещение, изменение размера, выравнивание и форматирование полей или элементов управления в форме

Создание элемента управления определенного типа

Изменение типа элемента управления


Способы настройки отчета (6)

Изменения текста или данных, отображаемых в элементе управления

Дополнительные сведения

Добавление, удаление или форматирование заголовка и других разделов отчета

Перемещение, изменение размера, выравнивание и форматирование полей или элементов управления в отчете

Создание элементов управления в отчете

Сортировка записей в отчете

Группировка записей в отчете


Способы настройки формы (4)

Изменения текста или данных, отображаемых в элементе управления


Способы настройки отчета (5)

Изменение порядка сортировки или группировки записей в отчете


Служба Microsoft FastTips

Microsoft FastTips — это автоматизированная бесплатная служба, предоставляющая круглосуточно и без выходных быстрые ответы на общие технические вопросы по звонку на номер (800) 936-4100 с кнопочного телефона в США. Используя кнопки своего телефона для ввода откликов на приглашения, можно услышать предварительно записанные ответы на соответствующие технические вопросы, получить каталог доступных сведений и заказать необходимые инструкции по факсу, например, бюллетень Application Notes или популярные статьи из информационной базы данных Microsoft Knowledge Base. Вне США дополнительные сведения можно получить в местном филиале корпорации Майкрософт.


 Изменение сохраненного набора условий поиска

Изменение сохраненного набора условий поиска

  1. Выберите в меню Файл команду Открыть [image] .

  2. Нажмите кнопку Сервис и выполните команду Найти.

  3. Нажмите кнопку Открыть.

  4. Выберите имя изменяемого сохраненного набора условий поиска и нажмите кнопку Открыть.

  5. В поле Найти файлы, отвечающие набору условий выберите изменяемое условие и нажмите кнопку Удалить.

    Значения параметров, с помощью которых было определено удаленное условие, появятся в полях в группе Условие. Для восстановления удаленного условия нажмите кнопку Добавить.

    Для удаления всех условий и использования стандартных условий поиска нажмите кнопку Сброс.

  6. В группе Условие укажите новый набор условий поиска.

  7. Нажмите кнопку Добавить.

  8. Нажмите кнопку Сохранить.

  9. Для замены существующих сохраненных наборов условий поиска введите имя набора, нажмите кнопку OK, а затем Да.

    Для присвоения нового имени измененному набору условий поиска введите новое имя и нажмите кнопку OK.

Примечания

  • Найти файл базы данных Microsoft Access или проекта Microsoft Access по образцу содержащегося в нем текста невозможно.

  • Также можно изменять сохраненные наборы условий поиска в диалоговых окнах Импорт и Связь, открываемых из меню Файл, и в диалоговых окнах База данных для преобразования, База данных для сжатия, База данных для сохранения как MDE и База данных для шифрования или дешифрования, открываемых из меню Сервис.


Копирование значка из графической программы на кнопку панели инструментов или команду меню

Для пустого значка можно скопировать графический рисунок того же размера, что и встроенный значок кнопки или команды меню. Стандартный значок кнопки имеет размер 16Х16 пикселов. Рисунок большего размера может быть искажен, так как его размер будет подогнан под размер кнопки.

  1. В графической программе скопируйте в буфер обмена нужный значок.

    Для копируемого значка следует выбирать формат точечного рисунка (.bmp).

  2. Переключитесь в Microsoft Access.

  3. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  4. Откройте панель инструментов, строку меню или контекстное меню, содержащие изменяемый рисунок кнопки панели инструментов или команды меню.

  5. При открытом диалоговом окне Настройка выполните одно из следующих действий.
    • Чтобы вставить скопированный рисунок на кнопку панели инструментов, щелкните правой кнопкой мыши кнопку (на панели инструментов) с изменяемым значком, а затем выберите команду Вставить значок для кнопки в контекстном меню.

    • Чтобы вставить скопированный рисунок в команду меню, выберите меню в строке меню или на панели инструментов или выберите контекстное меню, в которое нужно вставить рисунок. Щелкните правой кнопкой мыши команду меню, а затем выберите команду Вставить значок для кнопки в контекстном меню.

Примечание. При изменении значка для команды встроенного меню (например, меню Правка) новый рисунок будет появляться во всех вариантах вывода на экран этого меню с этой командой.


Копирование значка с одной кнопки панели инструментов или команды меню на другую

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Откройте панель инструментов, строку меню или контекстное меню с копируемым значком кнопки или команды меню. При копировании на другую панель инструментов или строку меню откройте и ее.

  3. При открытом диалоговом окне Настройка выполните одно из следующих действий.
    • Чтобы скопировать рисунок кнопки панели инструментов, щелкните правой кнопкой мыши кнопку (на панели инструментов), которая содержит копируемый рисунок, и выберите команду Копировать значок на кнопке в контекстном меню.

    • Чтобы скопировать рисунок команды меню, выберите меню в строке меню или на панели инструментов или выберите контекстное меню, содержащее команду с копируемым значком. Щелкните правой кнопкой мыши команду меню, а затем выберите команду Копировать значок на кнопке в контекстном меню.
  4. Выполните одно из следующий действий.
    • Чтобы вставить скопированный рисунок на кнопку панели инструментов, щелкните правой кнопкой мыши кнопку (на панели инструментов), в которую нужно вставить рисунок, а затем выберите команду Вставить значок для кнопки в контекстном меню.

    • Чтобы вставить скопированный рисунок в команду меню, выберите меню в строке меню или на панели инструментов или выберите контекстное меню, в которое нужно вставить рисунок. Щелкните правой кнопкой мыши команду меню, а затем выберите команду Вставить значок для кнопки в контекстном меню.

Примечание. При изменении значка для команды встроенного меню (например, меню Правка) новый рисунок будет появляться во всех вариантах вывода на экран этого меню с этой командой.


Редактирование значка для кнопки панели инструментов или команды меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Откройте панель инструментов, строку меню или контекстное меню, содержащие изменяемый рисунок кнопки панели инструментов или команды меню.

  3. При открытом диалоговом окне Настройка выполните одно из следующих действий.
    • Чтобы отредактировать рисунок кнопки панели инструментов, щелкните правой кнопкой мыши кнопку, содержащую рисунок, а затем выберите команду Изменить значок на кнопке в контекстном меню.

    • Чтобы отредактировать рисунок команды меню, выберите меню в строке меню или на панели инструментов или выберите контекстное меню, содержащее команду со значком, который нужно отредактировать.

      Щелкните правой кнопкой мыши команду меню, а затем выберите команду Изменить значок на кнопке в контекстном меню.

  4. Сделайте необходимые изменения.

Примечание. При изменении значка для команды встроенного меню (например, меню Правка) новый рисунок будет появляться во всех вариантах вывода на экран этого меню с этой командой.


Microsoft Download Service (MSDL)

Служба Microsoft Download Library (MSDL) содержит образцы программ, драйверы устройств, файлы справки и другие вспомогательные материалы. Прямой доступ через модем осуществляется по номеру (425) 936-6735 в США или (905) 507-3022 в Канаде. Служба работает 24 часа в сутки, 365 дней в году. За пределами США и Канады свяжитесь с местным представительством корпорации Майкрософт.

Примечание. Служба поддерживает следующие параметры связи: скорость 1200, 2400, 9600 или 14400 бод, без четности, 8 бит данных и 1 стоповый бит.


Восстановление исходных кнопок и меню на встроенной панели инструментов, строке меню или контекстном меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. На вкладке Панель инструментов выберите имя восстанавливаемой панели инструментов или строки меню. Для восстановления всех контекстных меню выберите панель инструментов Контекстные меню.

    Примечание. Чтобы открыть или закрыть панель инструментов или строку меню, установите или снимите флажок в диалоговом окне Панели инструментов.

  3. Нажмите кнопку Сброс.

Примечания

  • Нельзя сбросить специальную панель инструментов или строку меню.

  • При работе в Microsoft Access меню и панели инструментов отображают команды, наиболее часто используемые конкретным пользователем. При желании можно восстановить исходное состояние панелей инструментов и меню, существовавшее при первом запуске Access.


 Наборы условий поиска для поиска файлов

Наборы условий поиска для поиска файлов

При поиске файла можно ввести в поле Имя файла диалогового окна Открытие файла базы данных (открывается из меню Файл) любое из следующих условий поиска.

Допустимые условия | Примеры
Неполные имена файлов | Введите регион для поиска всех файлов, имена которых содержат строку «регион».
Расширения имен файлов | Введите *.txt для поиска всех текстовых файлов.
Подстановочные знаки | Для поиска файлов, имена которых заканчиваются строкой «регион», следует ввести *регион, для поиска имен «gray» и «grey» следует ввести gr?y. Звездочка (*) заменяет произвольное количество символов, а вопросительный знак (?) заменяет любой одиночный символ.
Полный путь к файлу | Введите С:\Хобби\Каталог книг. При указании буквы диска, подкаталога или папки автоматически обновляется содержимое поля Папка, в поле Имя файла отображается только имя файла, а затем открывается файл.
Несколько путей | Введите C:\Хобби\Каталог книг;C:\Рабочие документы. Отделите каждый путь точкой с запятой. Отображаются все папки и файлы, расположенные по каждому пути, введенному в поле Имя файла. В поле Папка отображается путь, стоящий первым по алфавиту.

Примечания

  • Для повторного использования недавно примененных условий выберите соответствующее имя в раскрывающемся списке Имя файла.

  • Данные условия поиска также можно использовать в диалоговых окнах Импорт и Связь, открываемых из меню Файл, и в диалоговых окнах База данных для преобразования, База данных для сжатия, База данных для сохранения как MDE и База данных для шифрования или дешифрования, открываемых из меню Сервис.

  • Для открытия Web-страницы в диалоговом окне Поиск Web-страницы можно ввести адрес Интернета. Для этого в окне базы данных выберите Страницы [image] в списке Объекты, а затем дважды щелкните значок Изменение существующей Web-страницы. Для открытия Web-страницы введите в поле Имя файла адрес URL по протоколу HTTP, например http://example.microsoft.com.


Использование сочетаний клавиш для работы с окнами и диалоговыми окнами

Сочетание клавиш | Действие (в окне)
ALT+TAB | Переключение на следующую программу
ALT+SHIFT+TAB | Переключение на предыдущую программу
CTRL+ESC | Вывод меню Windows Пуск
CTRL+W | Выход из активного окна базы данных
CTRL+F6 | Переключение на следующее окно базы данных
CTRL+SHIFT+F6 | Переключение на предыдущее окно базы данных

Сочетание клавиш | Действие (в диалоговом окне)
CTRL+TAB или CTRL+PAGE DOWN | Переключение на следующую вкладку в диалоговом окне
CTRL+SHIFT+TAB или CTRL+PAGE UP | Переключение на предыдущую вкладку в диалоговом окне
TAB | Перемещение на следующий параметр или группу параметров
SHIFT+TAB | Перемещение на предыдущий параметр или группу параметров
Клавиши управления курсором | Перемещение между параметрами в выбранном раскрывающемся списке или между параметрами в группе параметров
ПРОБЕЛ | Выполнение действия, назначенного для выбранной кнопки; установка или снятие флажка
Клавиша с первой буквой в имени параметра (когда открыт раскрывающийся список). | Переход на параметр по первой букве в имени в раскрывающемся списке
ALT+клавиша с буквой | Выбор параметра либо установка или снятие флажка при помощи буквы, подчеркнутой в названии параметра
ALT+СТРЕЛКА ВНИЗ | Открытие выбранного раскрывающегося списка
ESC | Закрытие выбранного раскрывающегося списка
ENTER | Выполнение действия кнопки по умолчанию в диалоговых окнах
ESC | Отмена команды и выход из диалогового окна

Сочетание клавиш | Действие (при редактировании поля)
HOME | Переход в начало поля
END | Переход в конец поля
СТРЕЛКА ВЛЕВО или ВПРАВО | Переход на один символ вправо или влево
CTRL+СТРЕЛКА ВЛЕВО или CTRL+СТРЕЛКА ВПРАВО | Переход на одно слово вправо или влево
SHIFT+HOME | Выделение от позиции курсора до начала поля
SHIFT+END | Выделение от позиции курсора до конца поля
SHIFT+СТРЕЛКА ВЛЕВО | Расширение выделения на один символ влево
SHIFT+СТРЕЛКА ВПРАВО | Расширение выделения на один символ влево
CTRL+SHIFT+СТРЕЛКА ВЛЕВО | Расширение выделения на одно слово влево
CTRL+SHIFT+СТРЕЛКА ВПРАВО | Расширение выделения на одно слово вправо


Файл находится на выбранном диске или в папке, но не выводится на экран

Хотя текущие условия поиска, заданные в окне Открытие файла базы данных, включают правильное расположение файла, другие условия могут исключать искомый файл. Попробуйте выполнить следующие действия.

  • Нажмите кнопку Сервис в диалоговом окне, выполните команду Найти, а затем нажмите кнопку Сброс,чтобы удалить все текущие условия поиска, кроме текущей папки и типа файла, используемого по умолчанию. Попробуйте указать другие условия и нажмите кнопку Найти.

  • Выберите в поле Тип файлов вариант Все файлы.

  • Для выполнения поиска во всех подпапках нажмите кнопку Сервис в диалоговом окне, выполните команду Найти, а затем установите флажок Просмотреть вложенные.

  • Файл может оказаться скрытым. Для того чтобы вывести все файлы, включая такие типы файлов как *.dll и *.sys, нажмите кнопку Пуск в Windows, выберите Программы, а затем Проводник. Выберите в меню Вид команду Параметры, а затем выберите параметр Отображать все файлы на вкладке Просмотр.

Примечание. Эти способы также можно применять при поиске файлов в диалоговых окнах Импорт и Связь, открываемых из меню Файл, и в диалоговых окнах База данных для преобразования, База данных для сжатия, База данных для сохранения как MDE и База данных для шифрования или дешифрования, открываемых из меню Сервис.


При поиске файлов с использованием сохраненных наборов условий поиска отбирается меньшее количество файлов, чем ранее

Проверьте, содержит ли набор условий поиска сетевой диск.

Если да, то убедитесь, что он доступен.

Если нет, то потерянные файлы могли быть удалены, переименованы или перемещены со времени последнего поиска.


Базы данных: что это такое и как они работают

1 2 3 4 5 6 7 8


Базы данных: что это такое и как они работают


Values for the DefaultSource Member

Value | Meaning
1 | Upper or only one bin
2 | Lower bin
3 | Middle bin
4 | Manual bin
5 | Envelope bin
6 | Envelope manual bin
7 | Automatic bin
8 | Tractor bin
9 | Small-format bin
10 | Large-format bin
11 | Large-capacity bin
14 | Cassette bin
256 | Device-specific bins start here


Пример перекрестного запроса


Примеры группировки записей в отчете

1 2 3


Примеры группировки записей в отчете


Constants for the Fields Member

A printer driver supports only those members that are appropriate for the printer technology.

Constant | Value
DM_ORIENTATION | &H0000001
DM_PAPERSIZE | &H0000002
DM_PAPERLENGTH | &H0000004
DM_PAPERWIDTH | &H0000008
DM_SCALE | &H0000010
DM_COPIES | &H0000100
DM_DEFAULTSOURCE | &H0000200
DM_PRINTQUALITY | &H0000400
DM_COLOR | &H0000800
DM_DUPLEX | &H0001000
DM_YRESOLUTION | &H0002000
DM_TTOPTION | &H0004000
DM_COLLATE | &H0008000
DM_FORMNAME | &H0010000


Формы: что это такое и как они работают

1 2 3


Формы: что это такое и как они работают


 На странице доступа к данным отображается красный крестик, пустой рисунок или вообще нет рисунков

На странице доступа к данным отображается красный крестик, пустой рисунок или вообще нет рисунков

Если на странице доступа к данным в местах, где должны быть рисунки, отображаются красные крестики, пустые рисунки или вообще нет рисунков, проверьте следующее.

Возможно, неправильно настроен обозреватель. Хотя все обозреватели поддерживают один и тот же язык (HTML), между ними существуют некоторые различия. Разные обозреватели поддерживают различные версии HTML и различные расширения HTML. В обозревателях существует возможность пользовательской настройки параметров, таких как используемые по умолчанию цвета текста и фона, а также режим отображения графики. Рекомендуется проверять страницы доступа к данным в разных обозревателях, некоторые из которых доступны для загрузки из Web, а также с различными настройками монитора, чтобы проверить отображение всех элементов страницы.

Возможно, используется неверный формат рисунка. Если со страницей доступа к данным связан рисунок, формат которого не поддерживается обозревателем, этот рисунок отображаться не будет. Убедитесь, что графический формат связанного рисунка совместим с обозревателем. Графические форматы JPG и GIF совместимы с большинством обозревателей.


Типы объединения и их влияние на результаты запроса

1 2 3 4 5


Типы объединения и их влияние на результаты запроса


Способы настройки отчета (4)

Перемещение, изменение размера и выравнивание элементов управления


Способы настройки формы (3)

Перемещение, изменение размера и выравнивание элементов управления


Подчиненный отчет выводит на печать только один столбец вместо нескольких

Подчиненный отчет может выводить на печать только один столбец в том случае, если для него в диалоговом окне Параметры страницы на вкладке Столбцы в группе Макет столбца установлен параметр Сверху вниз, а свойство основного отчета Расширение (CanGrow) для данного подчиненного отчета имеет значение Да.

Изменить структуру отчета можно одним из следующих способов.

  • В подчиненном отчете установите в группе Макет столбца параметр Слева направо, а для свойства основного отчета Расширение (CanGrow) для данного подчиненного отчета оставьте значение Да. Тогда подчиненный отчет будет отображать на экране несколько столбцов с требуемым расширением.

  • В подчиненном отчете оставьте настройку Макет столбца установленной на Сверху вниз. В основном отчете измените размер подчиненного отчета таким образом, чтобы он покрывал максимальное число записей, и установите в свойстве Расширение (CanGrow) значение Нет. Размер элемента управления подчиненным всегда остается постоянным. Если же число записей превышает установленное максимальное значение, то записи, не подходящие под размер подчиненного отчета, будут обрезаны.

По возможности, не используйте подчиненные отчеты. Элементы управления, отвечающие за вывод на печать данных в основном отчете, помещайте в заголовке группы или в верхнем колонтитуле страницы, а элементы управления, отвечающие за вывод на печать данных в подчиненном отчете, помещайте в область данных.


Перемещение или копирование меню в строку меню или на панель инструментов

  1. Откройте строку меню или панель инструментов, содержащую перемещаемое или копируемое меню, а также строку меню или панель инструментов, на которые оно будет перемещаться или копироваться.

  2. Выполните одно из следующий действий.
    • Чтобы переместить меню при открытом диалоговом окне Настройка, просто перетащите его на новое место в этой же или в другой строке меню или панели инструментов. Если диалоговое окно закрыто, сделайте это, удерживая клавишу ALT.

    • Чтобы скопировать меню, когда диалоговое окно Настройка открыто, перетащите его, удерживая клавишу CTRL. Если диалоговое окно закрыто, выполните это, удерживая клавиши CTRL+ALT.


Восстановление исходных параметров для встроенного меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите строку меню или панель инструментов, содержащую встроенное меню, исходные параметры которого требуется восстановить.

  3. Оставьте диалоговое окно Настройка открытым. На панели инструментов щелкните правой кнопкой восстанавливаемое меню и выберите команду Сброс в контекстном меню.

Примечания

  • При восстановлении меню (например, меню Правка) восстанавливается во всех вариантах вывода на экран.

  • Также можно в измененных меню восстановить стандартный набор команд, отображавшийся при первом запуске Microsoft Access.


 Добавление FTP-узла в список FTP-узлов

Добавление FTP-узла в список FTP-узлов

Можно добавить узел FTP в список Адреса FTP в диалоговых окнах Открытие файла базы данных и Сохранение. Для выполнения этой процедуры необходимо иметь интрасеть или доступ к Интернету. Например, будучи зарегистрированным в Интернете и имея модем, можно подключаться к Интернету через поставщика услуг или через сеть организации.

  1. Выберите в меню Файл команду Открыть [image] .

  2. В поле Папка выберите Добавить/изменить адреса FTP.

  3. В поле Имя узла FTP введите название узла протокола FTP, например, введите ftp://ftp.microsoft.com.

  4. Для подключения к узлу в анонимном режиме выберите параметр в режиме anonymous (некоторые узлы не позволяют этого).

    Для входа на узел, обеспечивающий привилегии для пользователей, выберите параметр Пользователь, введите зарегистрированное имя пользователя, а затем, если требуется, пароль.

  5. Нажмите кнопку Добавить.


 Изменение входного имени и пароля для FTP-узла

Изменение входного имени и пароля для FTP-узла

Существует возможность изменения способа входа на узел FTP. Для выполнения данной процедуры необходимо иметь интрасеть или доступ к Интернету. Например, будучи зарегистрированным в Интернете и имея модем, можно подключаться к Интернету через поставщика услуг или через сеть организации.

  1. Выберите в меню «Файл» команду Открыть [image] .

  2. В поле Папка выберите команду Адреса FTP.

  3. Щелкните правой кнопкой узел FTP, который необходимо изменить, а затем выберите в контекстном меню команду Изменить.

  4. Измените нужные параметры. Для получения сведений о конкретном параметре в диалоговом окне Добавить/изменить адреса FTP нажмите кнопку с вопросительным знаком [image], а затем выберите нужный параметр.


Свертывание всех окон программ на рабочем столе Windows

  • Щелкните правой кнопкой панель задач Windows, а затем в контекстном меню выберите команду Свернуть все окна.


 Удаление FTP-узла из списка узлов Интернета

Удаление FTP-узла из списка узлов Интернета

  1. Выберите в меню Файл команду Открыть [image] .

  2. В поле Папка выберите Адреса FTP.

  3. Щелкните правой кнопкой узел FTP, который необходимо удалить, а затем выберите в контекстном меню команду Удалить.


Вывод на экран текста, значка или текста и значка на кнопке панели инструментов

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите панель инструментов с кнопкой, которую требуется изменить.

  3. Оставьте открытым диалоговое окно Настройка. Щелкните правой кнопкой мыши изменяемую кнопку на панели инструментов, а затем выберите нужный параметр в контекстном меню.

Примечания

  • Нельзя изменить формат текста и значка у кнопок, при нажатии которых на экран выводится список или меню.

  • Если для кнопки установлен формат По умолчанию, при ее копировании или перемещении в меню автоматически будет выводиться имя команды и значок (этот режим установлен для меню по умолчанию).


 Проблемы при открытии файла в Интернете

Проблемы при открытии файла в Интернете

Для открытия файлов на узлах FTP или Web необходимо иметь доступ к Интернету. Например, будучи зарегистрированным в Интернете и имея модем, можно подключаться к Интернету через поставщика услуг или через сеть организации.

  • Если при наличии доступа к Интернету открыть файл все же не удается, возможно, узел в данный момент перегружен. Попытайтесь открыть файл позже.


Использование сочетаний клавиш в меню

Сочетание клавиш | Действие
SHIFT+F10 | Открытие контекстного меню
F10 | Активизация строки меню
ALT+ПРОБЕЛ | Открытие оконного меню программы (в строке заголовка)
СТРЕЛКА ВНИЗ или СТРЕЛКА ВВЕРХ | Выбор следующей или предыдущей команды в открытом меню или подменю
СТРЕЛКА ВЛЕВО или ВПРАВО | Выбор меню справа или слева либо (при открытом подменю) переключение между главным меню и подменю
HOME или END | Выбор первой или последней команды меню или подменю
ALT | Одновременный выход из видимых меню и подменю
ESC | Выход из видимых меню или, если на экран выведено только подменю, выход только из подменю


 Описание панели Microsoft Office

Описание панели Microsoft Office

Панель Microsoft Office предоставляет доступ к наиболее часто используемым программам. Она позволяет быстро начать разработку нового плана бюджета, найти и открыть презентацию, послать сообщение по электронной почте, запланировать встречу, создать задачу, заметку, контакт или внести запись в дневник Microsoft Outlook.

Работа с панелью Office

Панель Office можно перетаскивать в любое место экрана или, если панель закреплена, скрывать на то время, пока она не используется. Для этого в оконном меню панели Office выберите команду Автоматически убирать с экрана [image]. Когда панель потребуется вновь, просто поместите указатель мыши в ту область, в которой она закреплена.

Для быстрого создания при помощи панели Office файлов всех типов, например, Office Binder или книги Microsoft Excel, следует нажать кнопку Создать документ Office [image] . Далее необходимо выбрать вкладку, содержащую желаемый тип файла, а затем дважды щелкнуть значок нужного файла или шаблона. Необходимая программа загружается автоматически.

Для быстрого открытия файлов из панели Office следует нажать кнопку Открыть документ [image] , найти в списке нужный файл и дважды щелкнуть его.

Настройка панели Office

При первом запуске Microsoft Office на экран выводится только панель инструментов Office. Дополнительные кнопки и панели инструментов также доступны, но скрыты. Для вывода на экран скрытых кнопок или панелей инструментов щелкните любую панель инструментов на панели Office, а затем из контекстного меню выбрать команду Настройка. Например, чтобы легко открывать файлы или программы с рабочего стола Windows, даже когда его не видно, необходимо отобразить на панели Office панель инструментов Рабочий стол. Чтобы с панели Office отобразить другую панель инструментов, щелкните значок, представляющий эту панель инструментов. Название кнопки или панели инструментов выводится при удержании указателя мыши на значке, соответствующей кнопки или панели инструментов.

Также имеется возможность добавления своих собственных кнопок и панелей инструментов. Чтобы добавить часто используемые файлы и программы в виде кнопок на панель инструментов, перетащите их из окна проводника Windows или папки «Мой компьютер» на панель Office.

Установка панели Office

Если панель Office недоступна, для ее установки следует еще раз выполнить программу установки Office. При установке панели Office можно настроить ее на автоматический запуск при загрузке Windows. См. инструкции по установке программ и компонентов Office.


 Сохранение страницы доступа к данным на FTP-узле

Сохранение страницы доступа к данным на FTP-узле

Для выполнения данной процедуры необходимо иметь интрасеть или доступ к узлу Интернета, поддерживающему сохранение файлов. Кроме того, необходимо иметь права на сохранение и добавить узел FTP в список адресов FTP. Для получения сведений по добавлению узла FTP в список узлов Интернета нажмите кнопку [image] .

  1. Если страница доступа к данным, которую требуется сохранить на узле FTP, еще не открыта, откройте ее в режиме страницы или в режиме конструктора. Сохраняемая страница может быть новой страницей доступа к данным, которая еще не сохранялась, либо существующей страницей доступа к данным.

  2. Выберите в меню Файл команду Сохранить как.

  3. В диалоговом окне Сохранение введите имя ссылки на страницу доступа к данным и нажмите кнопку OK.

  4. В поле Папка диалогового окна Сохранение в виде страницы доступа к данным выберите Адреса FTP.

  5. В списке адресов FTP дважды щелкните нужный узел, а затем дважды щелкните папку, в которой требуется сохранить страницу доступа к данным.

    Примечание. Для сохранения страницы доступа в папке узла FTP необходимо иметь разрешение на запись в этой папке.

  6. В поле Имя файла введите имя для файла .htm.

  7. Нажмите кнопку Сохранить.


 Условия и значения в диалоговом окне «Найти»

Условия и значения в диалоговом окне «Найти»

Доступные условия зависят от выбранного свойства. Некоторые операции требуют наличия значения. В этом случае при выборе свойства и операции поле Значение будет доступным.

В поле Значение для разделения нескольких значений используются операторы And и Or. Например, для поиска файлов, авторами которых являются Анна или Петр, выберите параметр Автор в поле Свойство. В поле Отношение выберите параметр Содержит, а затем введите Анна or Петр в поле Значение.

Текстовые значения

В поле Значение с отношением Содержит иногда используются подстановочные знаки. Введите знак вопроса (?) для поиска любого одиночного символа или звездочку (*) для поиска любой последовательности символов. Например, если ввести s?t, то будут найдены файлы sat и set; а если ввести s*d, будут найдены файлы sad и started.

Числовые значения

Для использования отношения Любое число между введите в поле Значение два числа, между которыми находится нужное значение, разделив их оператором and. Например, введите 1 and 5.

Значения даты

Для использования отношения Любое время между введите в поле Значение две даты, разделенные оператором and. Например, введите 01.03.99 and 30.03.99.

Примечание. Найти файл базы данных Microsoft Access или проекта Microsoft Access по образцу содержащегося в нем текста невозможно.


Использование сочетаний клавиш для панели инструментов

Сочетание клавиш | Действия
F10 | Активизация строки меню
CTRL+TAB или CTRL+SHIFT+TAB | Выбор следующей или предыдущей панели инструментов
TAB или SHIFT+TAB | Выбор следующей или предыдущей кнопки или меню на активной панели инструментов
ENTER | Открытие меню, выбранного на панели инструментов
ENTER | Выполнение действия кнопки, выбранной на панели инструментов
ENTER | Ввод текста в выбранное текстовое поле
СТРЕЛКА ВНИЗ или СТРЕЛКА ВВЕРХ | Переход между параметрами в выбранном списке или меню кнопки; для выбора нужного параметра нажмите клавишу ENTER


 Помощник не выдает необходимую справку

Помощник не выдает необходимую справку

Сведения, относящиеся к конкретным языкам

Если нужный раздел не отображается, щелкните в выноске помощника ссылку Попытаться найти дополнительную справку в Web. На экране появится сообщение, предлагающее два способа поиска нужной справки. Просмотрите советы по поиску для получения инструкций по сужению списка разделов справки путем перефразирования вопроса к помощнику или с помощью указателя справочной системы.

Если найти нужную справку все же не удается, нажмите кнопку Отправить и перейти к Web, чтобы запустить Web-обозреватель и подключиться к Web-узлу для поиска дополнительной справки. Также можно описать свои действия при обращении за справкой к помощнику. Вопросы и комментарии пользователей будут собраны и использованы для улучшения будущих версий справочной системы.

Примечание. В зависимости от конфигурации системы ссылка Попытаться найти дополнительную справку в Web может быть недоступна. Для использования этого средства необходимо установить на компьютере Web-обозреватель и получить доступ к Интернету. Если данное средство недоступно, обратитесь к системному администратору.


Неверная работа помощника

Выбор другого помощника. Некоторые помощники более активны, чем другие. Чтобы сменить помощника, щелкните его правой кнопкой, а затем выберите в контекстном меню команду Выбрать помощника. Просмотрите список доступных помощников на вкладке Коллекция с помощью кнопок Назад и Далее. Наименее активным является помощник «Эмблема Office».

Ограничение подвижности помощника. Щелкните помощника, а затем нажмите кнопку Параметры. На вкладке Параметры снимите флажок Не закрывать данные. При этом также будет ограничено перемещение незакрепленных панелей инструментов.

Перемещение помощника. Перетащите помощника в другое место экрана.

Скрытие помощника. Выберите в меню Справка команду Скрыть помощника.

Отключение помощника. Щелкните помощника, а затем нажмите кнопку Параметры. На вкладке Параметры снимите флажок Использовать помощника.

Отключение звукового сопровождения помощника. Щелкните помощника, а затем нажмите кнопку Параметры. На вкладке Параметры снимите флажок Звуковое сопровождение.


 При выборе гиперссылки появляется сообщение об ошибке

При выборе гиперссылки появляется сообщение об ошибке

  • Адрес гиперссылки может быть удален или переименован.

  • Расположение объекта, на который указывает гиперссылка, могло измениться. Если путь в гиперссылке указывает на определенное расположение файла, определяющее место назначения гиперссылки при помощи полного адреса (например, c:\Мои документы\Sales.doc), а расположение этого файла изменилось, ссылка перестает работать. Для изменения гиперссылки щелкните ее правой кнопкой, выберите в контекстном меню команду Гиперссылка, а затем Изменить гиперссылку.

  • Если в гиперссылке указан адрес Интернета, то необходим доступ к Интернету. Если доступ к Интернету имеется, возможно, узел в данный момент перегружен. Попытайтесь открыть файл позже.

  • Если в гиперссылке указан адрес интрасети, проверьте сетевые подключения и убедитесь, что используемый сетевой сервер работает. Свяжитесь с администратором сети, чтобы убедиться в наличии у вас доступа к серверу.


Доступ к диалоговому окну «Настройка» после удаления команды «Панели инструментов» в меню «Вид»

  • Чтобы настроить панель инструментов, строку меню или контекстное меню после удаления команды Панели инструментов из меню Вид или после удаления меню Вид, щелкните правой кнопкой мыши любую панель инструментов или строку меню и выберите в контекстном меню команду Настройка.

  • Чтобы восстановить в меню Вид исходный набор команд, в том числе и команду Панель инструментов, щелкните правой кнопкой мыши любую панель инструментов или строку меню и выберите в контекстном меню команду Настройка. Щелкните правой кнопкой мыши меню Вид в строке меню и выберите в контекстном меню команду Сброс.

  • Чтобы восстановить все меню и команды во встроенной строке меню, в том числе и меню Вид, щелкните правой кнопкой мыши любую панель инструментов или строку меню и выберите в контекстном меню команду Настройка. На вкладке Панели инструментов выберите Строка меню и нажмите кнопку Сброс.


Values for the PaperSize Member

Value | Paper size
1 | Letter (8.5 x 11 in.)
2 | Letter Small (8.5 x 11 in.)
3 | Tabloid (11 x 17 in.)
4 | Ledger (17 x 11 in.)
5 | Legal (8.5 x 14 in.)
6 | Statement (5.5 x 8.5 in.)
7 | Executive (7.25 x 10.5 in.)
8 | A3 (297 x 420 mm)
9 | A4 (210 x 297 mm)
10 | A4 Small (210 x 297 mm)
11 | A5 (148 x 210 mm)
12 | B4 (250 x 354 mm)
13 | B5 (182 x 257 mm)
14 | Folio (8.5 x 13 in.)
15 | Quarto (215 x 275 mm)
16 | 11 x 17 in.
18 | Note (8.5 x 11 in.)
19 | Envelope #9 (3.875 x 8.875 in.)
20 | Envelope #10 (4.125 x 9.5 in.)
21 | Envelope #11 (4.5 x 10.375 in.)
22 | Envelope #12 (4.25 x 11 in.)
23 | Envelope #14 (5 x 11.5 in.)
24 | C size sheet (17 x 22 in.)
25 | D size sheet (22 x 34 in.)
26 | E size sheet (34 x 44 in.)
27 | Envelope DL (110 x 220 mm)
28 | Envelope C5 (162 x 229 mm)
29 | Envelope C3 (324 x 458 mm)
30 | Envelope C4 (229 x 324 mm)
31 | Envelope C6 (114 x 162 mm)
32 | Envelope C65 (114 x 229 mm)
33 | Envelope B4 (250 x 353 mm)
34 | Envelope B5 (176 x 250 mm
35 | Envelope B6 (176 x 125 mm)
36 | Envelope (110 x 230 mm)
37 | Envelope Monarch (3.875 x 7.5 in.)
38 | 6-3/4 Envelope (3.625 x 6.5 in.)
39 | US Std Fanfold (14.875 x 11 in.)
40 | German Std Fanfold (8.5 x 12 in.)
41 | German Legal Fanfold (8.5 x 13 in.)
256 | User-defined


Learn about language-specific information

Language-specific Help topics apply only if the language-specific feature is available. Learn about working in another language or installing the proofing tools for another language, or see your system administrator for more information.


 Способы отправки электронных сообщений

Способы отправки электронных сообщений

Существуют следующие способы настройки параметров сообщения для определения способа и времени доставки выходных данных объекта базы данных или страницы доступа к данным, а также ответного действия, требуемого от получателя.

Задание уровня важности. Для сообщения можно задать уровень важности, указывающий на необходимость незамедлительного прочтения сообщения получателем. Если ответ на сообщение требуется к определенной дате и времени, можно установить флаг, напоминающий получателю о необходимости ответа. Также можно пометить содержимое сообщения как личное, частное или ДСП.

Задание уровня безопасности. Если отправитель и получатель сообщения используют Microsoft Exchange Server, сообщение можно снабдить цифровой подписью или опечатать (зашифровать) сообщение, чтобы его смог прочесть только выбранный получатель.

Отслеживание сообщений и ответов. Существует возможность отслеживать свои сообщения, получая уведомления о его доставке и прочтении получателем. Для простоты поиска, сортировки, отбора или группирования сообщений можно назначать сообщениям ключевые слова или фразы. Кроме того, в сообщения можно добавлять кнопки голосования, позволяющие другим пользователям голосовать по тому или иному вопросу с помощью электронной почты.

Настройка параметров доставки. Можно указать дату срока действия, после которой содержимое сообщения считается устаревшим. Можно указать папку Microsoft Outlook, в которой следует сохранить сообщение после отправки. Кроме того, можно указать, требуется ли посылать ответы на данное сообщение другим получателям.

Возврат в раздел Настройка параметров отправки сообщения электронной почты


 Защита сообщений

Защита сообщений

Существует два средства для защиты исходящих сообщений: цифровая подпись, защищающая сообщение от изменения посторонними, и шифрование, исключающее возможность прочтения сообщения и его вложений кем-либо кроме выбранных получателей.

Чтобы зашифровать сообщения или использовать цифровую подпись, отправитель должен получить у системного администратора ключевое слово для файла защиты, а получатели, открывая зашифрованные сообщения или проверяя цифровую подпись, должны вводить пароли.

Примечание. Данные средства защиты используются только в рамках организации и только в том случае, если отправители и получатели сообщений используют сервер Microsoft Exchange. Средства защиты устанавливаются на компьютеры системным администратором.

Возврат в раздел Защита сообщений


 Создание сценария на Web-странице

Создание сценария на Web-странице

По умолчанию для написания сценариев, добавляемых на Web-страницы, используется язык VBScript (Microsoft Visual Basic Scripting Edition). Изменение языка сценариев, используемого по умолчанию.

  1. Откройте Web-страницу в режиме конструктора или в режиме страницы.

  2. В меню Сервис выберите команду Макрос, а затем подкоманду Редактор сценариев.

  3. В окне Microsoft Script Editor напишите сценарий. См. сведения о редакторе сценариев Microsoft Script Editor.


Защита сообщений

Предполагаемые действия

Опечатывание всех исходящих сообщений

Добавление цифровой подписи ко всем исходящим сообщениям

Не можете сделать выбор?


Добавление кнопок голосования в электронное сообщение

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры.

  3. В группе Параметры голосования и отслеживания установите флажок Кнопки голосования, а затем выберите в списке названия кнопок голосования, которые требуется использовать.

    Чтобы создать собственные названия кнопок голосования, удалите названия кнопок, используемые по умолчанию, а затем введите нужные, разделяя их точкой с запятой. Например: Мелкий;Крупный;Очень крупный.

  4. Для отслеживания ответов при голосовании установите флажок После отправки сохранить в, а затем введите имя папки, в которой требуется сохранить сообщение.

Примечания

  • Сведения о просмотре ответов при голосовании см. в справке Microsoft Outlook.

  • Данная процедура применима только в том случае, если приложение Outlook установлено в корпоративном режиме или режиме рабочей группы. См. инструкции по получению сведений об установленном приложении Outlook.


Отнесение сообщения к категории

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры, а затем Категории.

  3. В списке Имеющиеся категории установите флажки нужных категорий.

  4. Чтобы создать новую категорию, нажмите кнопку Главный список категорий.

  5. В поле Новая категория введите имя категории и нажмите кнопку Добавить.

  6. Повторите шаг 5 для создания каждой новой категории.

  7. Дважды нажмите кнопку OK, а затем кнопку Закрыть.

Совет. Существует еще один способ отнесения сообщения к категории: нажмите кнопку Параметры, а затем введите имя категории в поле Категории. При использовании этого способа убедитесь в правильности написания имени категории (с учетом регистра букв); в противном случае сообщение не будет отнесено к категории из главного списка. Категории, не включенные в главный список, недоступны для отнесения к ним других сообщений.


Отложенная доставка сообщения

Примечание. Это средство доступно только при использовании Microsoft Exchange Server.

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры.

  3. В группе Параметры отправки установите флажок Не доставлять до, а затем введите нужную дату доставки.


 Отправка ответов на сообщения пользователя другому пользователю

Отправка ответов на сообщения пользователя другому пользователю

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры.

  3. В группе Параметры отправки установите флажок Отправлять ответы.

  4. Введите имя другого пользователя или нажмите кнопку Выбор имен, чтобы выбрать имя из списка.

Примечание. Отправлять ответы по личному списку рассылки нельзя.


 Загрузка и выгрузка программы надстройки модели компонентных объектов (COM)

Загрузка и выгрузка программы надстройки модели компонентных объектов (COM)

Пользователи, не являющиеся разработчиками, не нуждаются в загрузке или выгрузке надстроек для модели компонентных объектов (COM), поскольку большинство надстроек COM включают в себя программу установки и удаления.

  1. Если команда Надстройки для модели компонентных объектов уже добавлена в меню Сервис, перейдите к шагу 6.

  2. В меню Сервис выберите команду Настройка, а затем перейдите на вкладку Команды.

  3. В списке Категории выберите пункт Сервис.

  4. Перетащите Надстройки для модели компонентных объектов из поля Команды в меню Сервис. Открыв меню, укажите в нем место, где должна отображаться команда Надстройки для модели компонентных объектов, а затем отпустите кнопку мыши.

  5. Нажмите кнопку Закрыть.

  6. Выберите в меню Сервис команду Надстройки для модели компонентных объектов.

    Чтобы загрузить надстройку, установите флажок рядом с ее именем в поле Список надстроек.

    Если нужная надстройка отсутствует в поле Список надстроек, нажмите кнопку Добавить, найдите нужную надстройку, а затем нажмите кнопку OK.

    Чтобы выгрузить надстройку из памяти, но оставить ее имя в списке, снимите флажок рядом с именем надстройки.

    Чтобы удалить надстройку из списка диалогового окна, а также из списка зарегистрированных надстроек в файле реестра, выделите имя надстройки, а затем нажмите кнопку Удалить.

Примечание. Выгрузка или удаление надстройки не приводит к удалению файла надстройки с компьютера.

Совет. Сведения о создании надстроек для компонентных объектов (COM) см. в книге Руководство программиста по Visual Basic для Microsoft Office 2000.


Удаление отправленного сообщения через определенное время

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры.

  3. В группе Параметры отправки установите флажок Не действительно после, а затем введите нужную дату окончания срока действия.


Пометка сообщения как частного, личного или ДСП

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры.

  3. В группе Настройка сообщения выберите нужную пометку.

Примечание. Установка пометки Частное запрещает изменение сообщения после его отправки.


Получение уведомлений о доставке сообщений

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры.

  3. В группе Параметры голосования и отслеживания установите флажок Уведомить о доставке этого сообщения.

Примечания

  • Данный параметр применим только к текущему сообщению.

  • Данная процедура применима только в том случае, если приложение Microsoft Outlook установлено в корпоративном режиме или режиме рабочей группы. См. инструкции по получению сведений об установленном приложении Outlook.


Получение уведомлений о прочтении сообщений

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры.

  3. В группе Параметры голосования и отслеживания установите флажок Уведомить о прочтении этого сообщения.

Примечания

  • Данный параметр применим только к текущему сообщению.

  • Данная процедура применима только в том случае, если приложение Microsoft Outlook установлено в корпоративном режиме или режиме рабочей группы. См. инструкции по получению сведений об установленном приложении Outlook.


Сохранение копии отправленного сообщения

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры.

  3. В группе Параметры отправки установите флажок После отправки сохранить в.

    Чтобы указать папку, в которой требуется сохранить сообщение, нажмите кнопку Обзор.

Примечание. Данный параметр применим только к текущему сообщению.


Добавление цифровой подписи ко всем исходящим сообщениям

Данное средство применимо только в рамках организации и только в том случае, если отправители и получатели сообщений используют сервер Microsoft Exchange. Системным администратором на компьютерах должна быть установлена защита.

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры.

  3. В группе Безопасность установите флажок Добавить цифровую подпись к исходящему сообщению.


Опечатывание всех исходящих сообщений

Данное средство применимо только в рамках организации и только в том случае, если отправители и получатели сообщений используют сервер Microsoft Exchange. Системным администратором на компьютерах должна быть установлена защита.

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Параметры.

  3. В группе Безопасность установите флажок Зашифровать сообщение и вложения.


Установка уровня важности сообщения

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Выполните одно из следующий действий.

    Чтобы пометить сообщение как очень важное, нажмите кнопку Важность: высокая [image].

    Чтобы пометить сообщение как не важное, нажмите кнопку Важность: низкая [image].

    Чтобы удалить с сообщения символ уровня важности, нажмите кнопку важности еще раз.

Примечание. Чтобы автоматически помечать все исходящие сообщения одним и тем же уровнем важности, нажмите кнопку Параметры и выберите нужный уровень важности в группе Настройка сообщения.


Отметка сообщения

Отметка сообщения позволяет быстро обозначить сообщение к исполнению или сообщение с просьбой обратиться к другому пользователю. При открытии сообщения с отметкой получатель видит в верхней его части комментарий о назначении отметки. Если задана дата исполнения, она также отображается.

  1. Отобразите заголовок сообщения, выполнив команду отправки объекта базы данных в виде вложения в сообщение электронной почты или отправки страницы доступа к данным в виде сообщения электронной почты.

  2. Нажмите кнопку Отметить к исполнению [image].

  3. В поле Отметка выберите одну из отметок из списка или введите собственную.

    Чтобы снять уже установленную отметку, нажмите кнопку Удалить.

  4. В поле Напоминание установите дату исполнения, выбрав ее в календаре или введя с клавиатуры.


 Категории сообщений

Категории сообщений

Категория представляет собой ключевое слово или фразу, помогающую отслеживать элементы для облегчения их поиска, сортировки, отбора и группировки. Пользуйтесь категориями для отслеживания различных типов объектов, связанных между собой, но хранящихся в разных папках.

Категории также дают возможность отслеживать объекты, не помещая их в отдельные папки. Например, можно вести единый список деловых и личных задач, используя для раздельного их просмотра категории «Деловые» и «Личные».

Outlook предоставляет список категорий, к которым можно относить объекты, названный Главным списком категорий. Можно использовать этот список в исходном виде или добавлять в него свои категории.

Допускается отнесение объекта более чем к одной категории.

Дополнительные сведения о категориях см. в справке по Outlook.

Следующий шаг

Отнесение сообщения к категории


 При просмотре страницы доступа к данным буквы языка отображаются неправильно

При просмотре страницы доступа к данным буквы языка отображаются неправильно

Если для страницы доступа к данным задана кодировка другого языка, Microsoft Access пытается определить этот язык. Если при открытии страницы в обозревателе Access отображает неправильные символы для заданного языка, можно попробовать выбрать язык, для которого задана кодировка. Для некоторых языков имеется более одной кодировки, поэтому следует перепробовать все варианты, пока не удастся прочесть текст.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выберите команду Параметры в меню Сервис.

  3. Перейдите на вкладку Общие и нажмите кнопку Параметры Web-документа.

  4. В диалоговом окне Параметры Web-документа перейдите на вкладку Кодировка.

  5. В поле Загрузить текущий документ как выберите язык, для которого, по-вашему, задана кодировка страницы.


 Хранение вспомогательных файлов страницы доступа к данным вне папки

Хранение вспомогательных файлов страницы доступа к данным вне папки

При сохранении файла в виде страницы доступа к данным в режиме конструктора все вспомогательные файлы — такие как маркеры, фоновые текстуры и рисунки — по умолчанию сохраняются в отдельной папке. Если использование отдельной папки нежелательно, выполните следующие действия.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выберите команду Параметры в меню Сервис.

  3. Перейдите на вкладку Общие и нажмите кнопку Параметры Web-документа.

  4. В диалоговом окне Параметры Web-документа перейдите на вкладку Файлы.

  5. В группе Имена и расположение файлов снимите флажок Создать папку для вспомогательных файлов.


 После сохранения страницы доступа к данным на файловом сервере некоторые пользователи не могут найти или просмотреть ее

После сохранения страницы доступа к данным на файловом сервере некоторые пользователи не могут найти или просмотреть ее

Если при сохранении страницы доступа к данным в режиме конструктора использовать длинное имя файла, пользователи Windows 3.1 не смогут найти или открыть эту страницу доступа к данным, поскольку Windows 3.1 распознает и поддерживает только короткие имена файлов (не более восьми символов плюс трехсимвольное расширение). Для того чтобы файлы всегда сохранялись с короткими именами, выполните следующие действия.

  1. Откройте страницу доступа к данным в режиме конструктора.

  2. Выберите команду Параметры в меню Сервис.

  3. Перейдите на вкладку Общие и нажмите кнопку Параметры Web-документа.

  4. В диалоговом окне Параметры Web-документа перейдите на вкладку Файлы.

  5. В группе Имена и расположение файлов снимите флажок По возможности использовать длинные имена файлов.


 На другом компьютере рисунки и текст страницы доступа к данным выглядят по-другому

На другом компьютере рисунки и текст страницы доступа к данным выглядят по-другому

Если страница доступа к данным выглядит не так, как ожидалось, проверьте настройки обозревателя. Хотя все Web-обозреватели поддерживают один и тот же язык (HTML), между ними существуют некоторые различия. Разные обозреватели поддерживают различные версии HTML и различные расширения HTML. В обозревателях существует возможность пользовательской настройки параметров, таких как используемые по умолчанию цвета текста и фона, а также режим отображения графики. Рекомендуется просмотреть страницу в различных обозревателях, некоторые из которых доступны для загрузки из Web, а также с различными настройками монитора, чтобы проверить отображение всех элементов страницы.


 При копировании и вставке объектов панель инструментов «Буфер обмена» больше не появляется

При копировании и вставке объектов панель инструментов «Буфер обмена» больше не появляется

Если закрыть панель инструментов Буфер обмена три раза подряд, не воспользовавшись кнопкой Вставить все или любой из кнопок объектов, панель инструментов Буфер обмена больше не будет выводиться автоматически. Чтобы вновь отобразить панель инструментов Буфер обмена, выберите в меню Вид команду Панели инструментов, а затем подкоманду Буфер обмена. Панель инструментов Буфер обмена также выводится на экран при выполнении копирования два раза подряд.

Если отобразить панель инструментов Буфер обмена вручную, а затем нажать кнопку Вставить все [image] или щелкнуть отдельный объект, отсчет будет возобновлен. С этого момента панель инструментов Буфер обмена вновь будет выводиться на экран автоматически.


 Другие участники собрания по сети видят заштрихованный экран

Другие участники собрания по сети видят заштрихованный экран

Убедитесь, что другие окна не загораживают базу данных Microsoft Access, проект Microsoft Access или страницу доступа к данным.

  • Закройте программы, которые не используются.

  • Сверните остальные окна на рабочем столе.


 Трудности при копировании дополнительных объектов в буфер обмена Office

Трудности при копировании дополнительных объектов в буфер обмена Office

Возможно, скопировано уже более 12 объектов. Буфер обмена Office может вместить не более 12 объектов. При попытке скопировать тринадцатый объект в приложении Microsoft Office выводится сообщение с вопросом, следует ли выбросить из буфера обмена Office первый объект и добавить новый объект в конец буфера обмена. Если нажать кнопку OK, то при следующем копировании в любом приложении буфер обмена Office автоматически выбросит первый объект и добавит новый. Если нажать кнопку Отмена, новые копируемые объекты не будут добавляться в буфер обмена Office. Сообщение не будет выводиться повторно до тех пор, пока буфер обмена Office не будет очищен и вновь заполнен.

Возможно, скопированы крупные объекты. При копировании в буфер обмена Office крупных объектов добавление объектов может быть прекращено до накопления в буфере обмена 12 объектов. Чтобы возобновить добавление объектов, нажмите кнопку Очистить буфер обмена [image] на панели инструментов Буфер обмена.


 Трудности с автоматическим созданием резервной копии страницы доступа к данным

Трудности с автоматическим созданием резервной копии страницы доступа к данным

При сохранении страницы доступа к данным в режиме конструктора резервная копия не создается автоматически. Чтобы сохранить копию страницы доступа к данным, выберите команду Сохранить как в меню Файл. Введите в поле Сохранение объекта Страница доступа к данным <имя объекта> в новое имя для страницы доступа к данным, а затем нажмите кнопку Сохранить.


Отсутствие команды меню, кнопки панели инструментов или элемента диалогового окна

Возможно, меню не развернуто. Если в нижней части меню отображается стрелка Двойная стрелка, указывающая вниз, то нужная команда меню может быть доступна в развернутом меню. Щелкните стрелку Двойная стрелка, указывающая вниз, а затем выберите нужную команду. Меню также будет развернуто, если дважды щелкнуть его. Кроме того, можно задать в Access режим отображения полного набора команд для всех меню.

Возможно, текущая панель инструментов находится в одной строке с другой панелью инструментов. Нужная кнопка может не отображаться на панели инструментов из-за того, что для отображения всех кнопок не хватает места. Нажмите кнопку Дополнительные кнопки [image], а затем нужную кнопку. Кроме того, можно отобразить все кнопки панели инструментов.

Возможно, не установлен компонент Microsoft Office. Выполните программу установки еще раз и установите нужный компонент.

Возможно, выбран не тот язык. Команда или элемент управления не отображается, если не разрешено редактирование для языка, к которому применяется данная команда или элемент управления. Необходимо разрешить редактирование для языка, с которым будет вестись работа. См. сведения о наборах инструментов для редактирования и проверки правописания.


 Трудности при печати на локальном принтере или сохранении на локальном диске базы данных Access, проекта Access или страницы доступа к данным, открытой на собрании по сети

Трудности при печати на локальном принтере или сохранении на локальном диске базы данных Access, проекта Access или страницы доступа к данным, открытой на собрании по сети

Выполнять печать на локальном принтере или сохранение на локальный диск можно только из базы данных Microsoft Access, проекта Microsoft Access или со страницы доступа к данным, из которой проводится собрание по сети. Печать файла по команде Печать выполняется на принтере пользователя, проводящего собрание по сети. По команде Сохранить файл сохраняется на жестком диске ведущего или на сервере, но не на локальном диске участника собрания по сети.

Если требуется скопировать файл, с которым ведется совместная работа, попросите ведущего собрание по сети переслать вам копию файла или скопируйте содержимое документа в файл на локальном компьютере.

Примечание. Сохранение можно выполнять только при наличии управления над файлом данных Access.


Отсутствие некоторых объектов, доступных другим участникам собрания по сети

Убедитесь, что настройка разрешения экрана совпадает с настройками остальных участников собрания по сети. Инструкции по установке разрешения экрана.


 После перемещения страницы доступа к данным в другую папку некоторые ссылки перестали работать

После перемещения страницы доступа к данным в другую папку некоторые ссылки перестали работать

При сохранении файла в виде страницы доступа к данным в режиме конструктора все вспомогательные файлы — такие как маркеры, фоновые текстуры и рисунки — по умолчанию помещаются во вспомогательную папку. При перемещении или копировании страницы доступа к данным в другое местоположение необходимо переместить туда же вспомогательную папку, чтобы сохранить все ссылки на странице в рабочем состоянии.


Приведение меню к виду, как в Office 97

  1. В меню Сервис выберите команду Настройка, затем перейдите на вкладку Параметры.

  2. Снимите флажок В меню сначала отображаются последние использованные команды.

Примечание. Состояние флажка В меню сначала отображаются последние использованные команды влияет на все приложения Microsoft Office.


 После входа в систему личные настройки оказываются недоступными

После входа в систему личные настройки оказываются недоступными

Возможно, профиль пользователя не подходит для операционной системы. Профиль пользователя действителен только в той операционной системе, для которой он был создан. Например, профиль пользователя Windows NT непригоден для использования на компьютере, работающем под управлением Windows 95. Если профиль пользователя был создан в Windows 95, а пользователь регистрируется на компьютере, работающем под управлением Windows NT, личные настройки будут недоступны. Операционная система компьютера, на котором выполняется регистрация, обязательно должна совпадать с операционной системой, в которой был создан профиль пользователя.

Возможно, компьютер не настроен для работы нескольких пользователей. Если регистрация выполняется на компьютере, работающем под управлением Windows 95, на нем может быть не выполнена настройка, разрешающая работу нескольких пользователей. Чтобы сделать возможным создание несколькими пользователями личных настроек на компьютере с операционной системой Windows 95, выполните следующие действия.

  1. В меню Windows Пуск выберите Настройка, а затем Панель управления.

  2. Дважды щелкните значок Пароли Связка ключей, а затем перейдите на вкладку Профили пользователей.

  3. Установите переключатель в положение Каждый пользователь устанавливает личные настройки, которые автоматически выбираются при входе в Windows.

Возможно, не активизирована учетная запись пользователя. Системный администратор мог не настроить учетную запись пользователя сети на использование перемещаемых профилей пользователей. Если при регистрации на компьютере личные настройки недоступны, обратитесь к системному администратору.

В разных операционных системах одновременная регистрация на нескольких компьютерах работает по-разному. Если пользователь вошел в систему на нескольких компьютерах одновременно, изменения его личных настроек на одном компьютере могут быть, а могут не быть незамедлительно доступны на другом компьютере из-за различий между операционными системами. На компьютерах, работающих под управлением Windows 95 и Windows NT 4.0, в профиль пользователя для использования при следующем входе в систему копируются изменения, внесенные на последнем компьютере, от которого отключился пользователь. На компьютерах с операционной системой Windows 2000 изменения настроек становятся доступными незамедлительно, поскольку профиль пользователя копируется на сервер через регулярные промежутки времени.


Пользовательские шаблоны отсутствуют на нужной вкладке

Пользовательские шаблоны следует сохранять в соответствующей подпапке папки Templates. Папка Templates имеет следующее расположение:

Корневой_каталог\ОС\Profiles\Имя_пользователя\Application Data\Microsoft\Templates

где Корневой_каталог — основная папка на сервере или локальном диске (например, c:\), ОС — папка операционной системы (например, Windows или Winnt), а Имя_пользователя — имя пользователя.

Шаблоны из папки Templates отображаются на вкладке Общие; шаблоны из подпапок папки Templates отображаются на вкладках, названия которых соответствуют именам подпапок. Например, если в папке Templates создать подпапку Reports, в диалоговом окне Создание (меню Файл) появится вкладка Reports.

Примечание. В Windows 2000 папка Templates имеет расположение Корневой_каталог\Users\Имя_пользователя\Application Data\Microsoft\Templates.


Запрет автоматического развертывания меню

  1. В меню Сервис выберите команду Настройка, затем перейдите на вкладку Параметры.

  2. Снимите флажок Показывать полные меню после короткой задержки.

Примечание. Состояние флажка Показывать полные меню после короткой задержки влияет на все приложения Microsoft Office.


 Имя вспомогательной папки страницы доступа к данным написано на другом языке

Имя вспомогательной папки страницы доступа к данным написано на другом языке

При сохранении страницы доступа к данным в режиме конструктора все вспомогательные файлы — такие как маркеры, фоновые текстуры и рисунки — помещаются во вспомогательную папку. По умолчанию этой вспомогательной папке присваивается имя страницы доступа к данным с добавлением символа подчеркивания (_), точки (.) или дефиса (-) и слова «files». Слово «files» будет отображаться на языке той версии Microsoft Office 2000, которая использовалась для сохранения файла в виде страницы доступа к данным. Допустим, например, что для сохранения в виде страницы доступа к данным файла с именем Page1 используется нидерландская версия Office 2000. По умолчанию вспомогательной папке будет присвоено имя Page1_bestanden. См. дополнительные сведения о задании имен по умолчанию для вспомогательных папок.

Примечание. Если страница доступа к данным сохраняется с коротким именем файла (не более восьми символов плюс трехсимвольное расширение) после снятия флажка По возможности использовать длинные имена файлов в диалоговом окне Параметры Web-документа, то вспомогательной папке присваивается имя страницы доступа к данным без добавления слова «files».


 В списке нет имени человека, которого требуется пригласить на собрание по сети

В списке нет имени человека, которого требуется пригласить на собрание по сети

Подключитесь к другому серверу

  • Щелкните ярлык Каталог и выберите другой сервер каталогов в списке Сервер.

Отправьте сообщение по электронной почте или позвоните нужному пользователю

Известите нужных пользователей о своем желании устроить собрание по сети. Уточните, к какому серверу каталогов они подключены, либо воспользуйтесь именами или IP-адресами их компьютеров.


 Кнопка «Вставить все» недоступна

Кнопка «Вставить все» недоступна

В некоторых случаях кнопка Вставить все на панели инструментов Буфер обмена недоступна, даже когда отдельные объекты доступны для вставки.

Во всех приложениях Microsoft Office. Кнопка Вставить все недоступна, если какой-либо из объектов, находящихся в буфере обмена Office, не может быть вставлен в текущем приложении.

В Microsoft Access. Кнопка Вставить все доступна только на страницах доступа к данным.

Если кнопка Вставить все недоступна, возможность вставки конкретных объектов сохраняется.


Панель инструментов «Буфер обмена» недоступна

Возможно, работа ведется не в Microsoft Excel, Microsoft Word, Microsoft Access, Microsoft Outlook или Microsoft PowerPoint. Панель инструментов Буфер обмена доступна только в приложениях Excel, Word, Access, Outlook и PowerPoint. Панель инструментов «Буфер обмена» недоступна в редакторе Visual Basic. Тем не менее, если в каком-либо приложении Microsoft Office отображается панель инструментов «Буфер обмена», в нее будут автоматически копироваться все объекты, копируемые или вырезаемые в любом приложении.

Возможно, недоступны команды «Копировать», «Вырезать» и «Вставить». Кнопки Копировать и Вставить все, а также собранные объекты недоступны на панели инструментов Буфер обмена в условиях, при которых невозможно использование команд Копировать, Вырезать и Вставить.


Запросы: что это такое и как они работают

1 2 3


Запросы: что это такое и как они работают


Вывод на экран только текста или текста и значка в команде меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите строку меню, контекстное меню или панель инструментов, содержащую команду меню, которую требуется изменить.

  3. При открытом диалоговом окне Настройка выберите меню в строке меню или на панели инструментов или выберите контекстное меню, содержащее изменяемую команду.

  4. Щелкните команду меню правой кнопкой и выберите нужный параметр в контекстном меню.

Примечания

  • С некоторыми командами значки не сопоставлены, поэтому они выводятся в меню только как текст.

  • Команда меню не может быть выведена на экран только в виде значка. Однако если для команды установлен формат По умолчанию, при ее копировании или перемещении на панель инструментов команда автоматически будет выводиться в виде значка на панели инструментов или в строке меню (такой режим отображения устанавливается по умолчанию для панелей обоих типов).

  • При изменении способа отображения команды встроенного меню (например, меню Правка) новый способ отображения будет применяться во всех режимах вывода на экран этого меню с этой командой.


Отчеты: что это такое и как они работают

1 2 3


Отчеты: что это такое и как они работают


Исчезновение сообщений помощника

  • Выноски помощника с советами или сообщениями могут перекрывать друг друга. Для просмотра нижней выноски необходимо закрыть верхнюю.

  • Некоторые сообшения помощника закрываются автоматически по щелчку в окне Microsoft Access. Это информационные сообщения, не требующие ответа со стороны пользователя. Например, при проверке орфографии выводится сообщение об окончании процесса. Повторный вывод таких сообщений возможен только при повторении действий, в результате которых они выводятся на экран. Например, при повторной проверке орфографии.


 Невозможно подключиться к Web-узлу Microsoft Office Update

Невозможно подключиться к Web-узлу Microsoft Office Update

  • Для использования команды Office на Web (меню Справка) необходимо иметь доступ к Интернету (через интрасеть организации или через модем) и учетную запись Интернета. Дополнительные сведения см. в издании Ресурсы Microsoft Office 2000. См. сведения о приобретении издания «Ресурсы Microsoft Office 2000».

  • Возможно, неправильно настроены параметры подключения компьютера к Интернету. Чтобы проверить настройку, дважды щелкните значок Интернет на панели управления Windows.

  • Возможно, неправильно работает модем. Дополнительные сведения см. в разделе Устранение неполадок модема справки Microsoft Windows.

  • Web-узел Microsoft Office Update может быть временно недоступен. Если доступ к другим Web-узлам возможен, повторите попытку через некоторое время.


Разделы формы

1 2 3


Разделы формы


Разделы отчета

1 2 3


Разделы отчета


Таблицы: что это такое и как они работают

1 2 3 4 5


Таблицы: что это такое и как они работают


Values for the TTOption Member

Value | Meaning
1 | Print TrueType fonts as graphics. This is the default for dot-matrix printers.
2 | Download TrueType fonts as soft fonts (fonts that are loaded into the printer's memory for rendering). This is the default for Hewlett-Packard printers that use Printer Control Language (PCL).
3 | Substitute device fonts for TrueType fonts. This is the default for PostScript printers.


Способы настройки формы

1 2 3 4 5 6


Способы настройки формы


Способы настройки запроса

1 2 3 4 5


Способы настройки запроса


Способы настройки отчета

1 2 3 4 5 6


Способы настройки отчета


Способы настройки таблицы

1 2 3 4 5 6


Способы настройки таблицы


Способы задания в запросе нескольких условий отбора одновременно

Одно поле с оператором Or
Одно поле с оператором And
Два поля с оператором Or
Два поля с оператором And
Три поля с операторами And и Or


Способы задания в запросе нескольких условий отбора одновременно


Способы работы с данными формы

1 2 3 4


Способы работы с данными формы


Способы работы с данными в таблице запроса

1 2 3 4 5 6 7


Способы работы с данными в таблице запроса


Способы работы с данными таблицы

1 2 3 4 5 6 7


Способы работы с данными таблицы


Восстановление встроенной кнопки панели инструментов или команды меню

  1. В меню Вид выберите команду Панели инструментов и подкоманду Настройка.

  2. Отобразите панель инструментов, строку меню или контекстное меню, содержащее кнопку или команду меню, которую требуется восстановить.

  3. При открытом диалоговом окне Настройка выполните одно из следующих действий
    • Чтобы восстановить кнопку панели инструментов, щелкните правой кнопкой мыши восстанавливаемую кнопку (на панели инструментов) и выберите в контекстном меню команду Сброс.

    • Чтобы восстановить команду меню, выберите меню в строке меню или на панели инструментов, либо контекстное меню, содержащее команду, которую требуется восстановить. Щелкните нужную команду правой кнопкой мыши и выберите в контекстном меню команду Сброс.

Примечание. Команда Сброс недоступна для кнопок, содержащих список команд. При изменении рисунка на встроенной кнопке или команде исходный рисунок можно восстановить, щелкнув кнопку или команду правой кнопкой мыши при открытом диалоговом окне Настройка, и выбрав в контекстном меню команду Восстановить значок на кнопке.


Форматирование диаграмм

Для получения справки этого раздела щелкните рисунок:

Для получения справки этого раздела щелкните рисунок.

Чтобы вывести справку по данному разделу с помощью клавиатуры, нажмите клавишу F6 для активизации окна раздела, клавишей TAB выделите рисунок и нажмите ENTER.


 Ввод символов ¢, £, ¥, ® и других символов, которых нет на клавиатуре

Ввод символов ¢, £, ¥, ® и других символов, которых нет на клавиатуре

  1. В меню Windows Пуск выберите команду Программы и подкоманды Стандартные и Таблица символов.

    Если таблица символов недоступна, см. сведения по установке компонентов Windows в справочной системе Windows.

  2. В поле Шрифт выберите шрифт, содержащий нужный символ.

  3. Выберите нужный символ в таблице.

  4. Нажмите кнопку Выбрать, а затем кнопку Копировать.

  5. Переключитесь в базу данных и установите указатель там, куда требуется вставить символ.

  6. Нажмите кнопку Вставить [image] .

  7. Если вставленный символ отличается от выбранного, то выделите его и примените шрифт, который был выбран в таблице символов.

Совет. В таблице символов отображается десятичный код, который можно использовать для вставки выбранного символа в Microsoft Access. Для ввода цифр десятичного кода используется не основная клавиатура, а цифровая.