- •Часть I. Хранение данных в таблицах 34
- •Глава 1. Создание вашей первой базы данных 35
- •Глава 2. Создание более сложных таблиц 66
- •Глава 3. Обработка листа данных: сортировка, поиск,
- •Глава 4. Блокировка неправильных данных 136
- •Глава 5. Связывание таблиц с помощью отношений 168
- •Часть II. Обработка данных с помощью запросов 206
- •Глава 6. Запросы, выбирающие записи 207
- •Глава 7. Основные хитрости, применяемые в запросах 241
- •Глава 8. Запросы, обновляющие записи ..272
- •Глава 9. Анализ данных с помощью перекрестных запросов и
- •Часть III. Отчеты 323
- •Глава 10. Создание отчетов 324
- •Глава 11. Проектирование сложных отчетов 356
- •Часть IV. Разработка пользовательского интерфейса
- •Глава 12. Создание простых форм 392
- •Глава 13. Проектирование сложных форм 426
- •Глава 14. Создание системы переходов 465
- •Часть V. Программирование в access 496
- •Глава 15. Автоматизация задач с помощью макросов 497
- •Глава 16. Автоматизация выполнения задач средствами языка
- •Глава 17. Написание кода с более развитой логикой 571
- •Часть VI. Совместное использование access 615
- •Глава 18. Совместное использование бд несколькими пользователями 616
- •Глава 19. Импорт и экспорт данных 650
- •Глава 20. Подключение Access к sql Server 692
- •Глава 21. Подключение Access к SharePoint 724
- •На профессиональном уровне. Преимущества хорошо спроектированной базы данных
- •Для тех, кто понимает. Когда программы Access недостаточно
- •Уголок ностальгии. Зачем опять изобретать колесо?
- •Уголок ностальгии. Сочетания клавиш в Access 2003
- •Часть I
- •Часто задаваемый вопрос. Использование чужой бд
- •На профессиональном уровне. Шаблоны, подходящие для разных целей
- •На профессиональном уровне. Работа Access в интерактивном режиме
- •Для тех, кто понимает. Использование Access бд, созданных в более ранних версиях программы
- •На профессиональном уровне. Проектирование бд для начинающих
- •На профессиональном уровне. Вставка больших значений в узкие столбцы
- •Для тех. Кто понимает. Если сомневаетесь, не удаляйте
- •Малоизвестная или недооцененная возможность. Копирование записи целиком за один шаг
- •Малоизвестная или недооцененная возможность. Сжатие бд
- •Часто задаваемый вопрос. У какого файла расширение laccdb?
- •Практические занятия для опытных пользователей. Изменение папки, которую Access использует для хранения бд
- •Малоизвестная или недооцененная возможность. Сворачивание ленты
- •Экономящая время подсказка. Создание ярлыка для таблицы
- •Глава 2
- •Для тех, кто понимает. Изменение типа данных может привести к потере информации
- •На профессиональном уровне. Нормативы максимальной длины
- •На профессиональном уровне. Как Access предотвращает дублирование записей
- •На профессиональном уровне. Почему так важна уникальность
- •Глава 3
- •Малоизвестная или недооцененная возможность. Настройка всех листов данных
- •На профессиональном уровне. Числа и специальные символы в текстовых полях
- •Практические занятия для опытных пользователей. Фильтры в противоположность запросам
- •Малоизвестная или недооцененная возможность. Поиск и замена
- •Глава 4
- •Для тех, кто понимает. Не требуйте слишком многого
- •На профессиональном уровне. Как работают индексы
- •Часто задаваемый вопрос. Индексы и производительность
- •Практические занятия для опытных пользователей. Вставка вашей маски в список масок программы
- •На профессиональном уровне. Создание списка подстановки, использующего другую таблицу
- •Глава 5
- •Часто задаваемый вопрос. Отключение обеспечения целостности данных
- •Для тех, кто понимает. Пользуйтесь каскадным удалением с осторожностью
- •Практические занятия для опытных пользователей. Изменение параметров подтаблицы
- •Часто задаваемый вопрос. Обновление списка
- •Для тех, кто понимает. Применяйте связи "один-к-одному" с осторожностью
- •Часто задаваемый вопрос. Работа со связями "многие-ко-многим"
- •Часто задаваемый вопрос. Печать ваших отношений
- •Часть II
- •Для тех, кто понимает. Не бойтесь подстановок
- •На профессиональном уровне. Синтаксис фильтра
- •Практические занятия для опытных пользователей. Как индексы ускоряют поиск
- •Малоизвестная или недооцененная возможность. Запросы на базе запросов
- •Для тех, кто понимает. Подумайте дважды, прежде чем изменять структуру таблиц
- •На профессиональном уровне. Сравнение: отношения и объединения
- •На профессиональном уровне. Изменение данных при использовании запроса с объединением
- •Глава 7
- •На профессиональном уровне. Синхронизация запросов
- •Малоизвестная или недооцененная возможность. Переименование поля в запросе
- •Часто задаваемый вопрос Банковское округление
- •Практические занятия для опытных пользователей. Улучшенные числовые форматы
- •Малоизвестная или недооцененная возможность. Использование случайных чисел для сортировки в случайном порядке
- •Практические занятия для опытных пользователей. Как извлечь первое слово из текстовой строки
- •Для тех, кто понимает. Вычисления для дат и времени
- •Глава 8
- •Аварийная ситуация. Когда Access блокирует ваше обновление
- •Малоизвестная или недооцененная возможность. Скрытие запроса
- •Глава 9
- •Часто задаваемый вопрос. Итоговый проигрыш; итоговый запрос против перекрестного
- •Для тех, кто понимает. Создание запроса с объединением для лучшей группировки
- •На профессиональном уровне. Правильный выбор групп
- •Малоизвестная или недооцененная возможность. Помещение сводных таблиц в их собственные формы
- •Часть III
- •Глава 10. Создание отчетов
- •Глава 11. Проектирование сложных отчетов
- •Глава 10
- •На профессиональном уровне. Выполнение тяжелой работы с помощью запроса
- •Часто задаваемый вопрос. Добавление изображений в отчеты.
- •На профессиональном уровне. Учитесь любить pdf-файлы
- •Часто задаваемый вопрос. Разные способы экспорта данных
- •Малоизвестная или недооцененная возможность. Формат по образцу.
- •Практические занятия для опытных пользователей. Разные линии сетки
- •Глава 11
- •Часто задаваемый вопрос. Ошибки выражений
- •Часть IV
- •На профессиональном уровне. Поля типа Счетчик в формах
- •На профессиональном уровне. Разные люди — разные формы
- •Малоизвестная или, недооцененная возможность. Вывод на экран изображений из бд
- •На профессиональном уровне. Семейство форм Access
- •Глава 13
- •На профессиональном уровне. Присоединенные элементы управления
- •Малоизвестная или недооцененная возможность. Повторное применение ваших любимых настроек стиля границ
- •Часто задаваемые вопросы. Осовременивание элементов управления Windows
- •Практические занятия для опытных пользователей. Как освободиться от привязки к сетке
- •На профессиональном уровне. Насколько велик ваш экран?
- •Глава 14
- •Малоизвестная или недооцененная возможность. Варианты сортировки и просмотра в области переходов
- •На профессиональном уровне. Кнопочные формы с несколькими страницами
- •За кадром. Меню кнопочных форм сохраняются в бд
- •Часть V
- •На профессиональном уровне. Макросы по сравнению с программным кодом
- •Практические занятия для опытных пользователей. Обработка ошибок макроса
- •На профессиональном уровне. Макрокоманды, которым Access не доверяет
- •На профессиональном уровне. ОтправитьОбъект работает с вашей программой элекронной почты
- •Часто задаваемый вопрос. Внедренный макрос
- •Глава 16
- •Малоизвестная или недооцененная возможность. Справка по Visual Basic
- •Для тех кто понимает. Как код связывается с событиями
- •Малоизвестная или недооцененная возможность Разбиение длинных строк кода
- •На профессиональном уровне. Взаимодействие с другими формами
- •Практические занятия для опытных пользователей. Получение нужного цвета
- •Часто задаваемый вопрос. Ленточные формы и неприсоединенные элементы управления
- •Практические занятия для опытных пользователей. Связывание записей с рисунками
- •Глава 17
- •Практические занятия для опятных пользователей. Применение более сложных переменных
- •Практические занятия для опытных пользователей. Применение пользовательских функций в запросах
- •На профессиональном уровне. Алгоритм Луна (Luhn Algorithm)
- •Часто задаваемый вопрос. Запуск других Windows-программ
- •На профессиональном уровне. Станьте знатоком статистических функции по подмножеству
- •Уголок ностальгии. Dао против аdо
- •Часть VI
- •Для тех, кто понимает. Поиск места в сети для вашей бд
- •На профессиональном уровне Указание местонахождения в сети
- •Часто задаваемый вопрос. Как поведут себя старые версии Aсcess?
- •Аварийная ситуация. Мистическая ошибка “Файл уже используется”
- •Часто задаваемый вопрос. Когда не следует пользоваться форматом accde
- •Уголок ностальгии. Отмирание страниц доступа к данным
- •Практические занятия для опытных пользователей. Разделение таблиц для более безопасных корректировок
- •Уголок ностальгии. Защита с помощью рабочих групп упразднена
- •Глава 19
- •На профессиональном уровне. Sql Server и SharePoint: два частных случая
- •Сберегающая время подсказка. Копирование из одной бд в другую
- •На профессиональном уровне. Опасность дубликатов
- •Малоизвестная или недооцененная возможность. Экспорт отчетов
- •На профессиональном уровне. Более внимательный взгляд на теги
- •Глава 20
- •На профессиональном уровне. Важнейшие причины перехода на sql Server
- •Часто задаваемые вопрос. Можно ли доверять корпорации Microsoft?
- •На профессиональном уровне. Проекты Access по сравнению со связанными таблицами
- •0 Запросах
- •Для тех, кто понимает. Синтаксические различия
- •Глава 21
- •Часто задаваемый вопрос. Путаница, связанная с SharePoint
- •На профессиональном уровне. Установка SharePoint
- •На профессиональном уровне. Пять интересных инструментов программы SharePoint, которые стоит опробовать
- •Малоизвестная или недооцененная возможность.
- •Малоизвестная или недооцененная возможность. Представление таблицы данных Access
- •Малоизвестная или недооцененная возможность. Параметры списков SharePoint
На профессиональном уровне. Макрокоманды, которым Access не доверяет
Ниже приведен перечень наиболее распространенных потенциально опасных макрокоманд.
Удаление объекта. Очевидно опасное действие.
Печать объекта. Неизвестно, сколько бумаги вам понадобится для печати.
Копирование объекта. Злоумышленник может использовать это действие для создания макроса, который заполнит вашу БД.
Сохранение объекта. Это действие может показаться совершенно невинным, но его легко объединить с другими действиями для создания макроса, изменяющего объект БД и впоследствии сохраняющего поддельную версию объекта.
Копирование файла вашей БД. В конечном счете, это действие может перезаписать копию, которую вы уже сделали, или заменить какой-либо важный файл. Экспорт данных считается столь же рискованным.
Раскрытие окна на весь экран, сворачивание окна на панель задач и перемещение окна. Возможно, корпорация Microsoft перестраховывается, решив не доверять подобным макрокомандам, которые позволяют менять местоположение форм и других окон. В любом случае эти макрокоманды используются нечасто в Access 2007, поскольку они не применимы в случае окон со вкладками, а могут использоваться только в случае редко применяемых свободно плавающих окон.
Выполнение команд SQL. Как вы узнали из разд. "Режим SQL" главы 6, SQL — это язык, лежащий в основе запросов программы Access. Вы можете применять непосредственно команды SQL для выполнения практически любой задачи в вашей БД, начиная от удаления десятков записей и заканчивая созданием новой таблицы.
Выполнение VB-кода. Несмотря на то, что это действие не помечается пиктограммой с восклицательным знаком, Access считает весь VB-код опасным. Вы узнаете больше об этом в главе 16.
Пересылка случайных нажатий клавиш. Макрокоманда КомандыКлавиатуры (SendKeys) позволяет пересылать поток клавиатурных кодов в активное в данный момент окно. Вы можете сделать все что угодно, и в этом проблема. Респектабельные пользователи Access вообще избегают применения команды КомандыКлавиатуры, поскольку она содержит ошибки. (Фатальные проблемы возникают, если щелкнуть кнопкой мыши во время выполнения макроса, и приводят к направлению клавиатурных кодов совсем не в то окно, для которого они предназначались.)
Некоторые макрокоманды могут рассматриваться как опасные с учетом применяемых в них аргументов.
Завершение программы Access. Access позволяет выполнить, обычную макрокоманду Выход (Quit), в которой пользователю, работающему с БД, предлагается сохранить изменения, отменить их или отказаться от требования выхода из программы. Но макрокоманду Выход можно настроить так, что она будет закрывать программу немедленно без предложения сохранить что бы то ни было (или закрывать немедленно и сохранять все неподтвержденные изменения). Если использовать один из этих вариантов, Access трактует команду как опасную.
Отправка электронной почты. Эта макрокоманда считается опасной, если вы не разрешаете пользователю макроса перед отправкой подтвердить корректность электронного сообщения или отказаться от него.
Как Access обрабатывает опасные макросы
Вы уже знаете разницу между опасными и безопасными макрокомандами, но вы еще не рассматривали действия программы Access при столкновении лицом к лицу с рискованными действиями. В предыдущих версиях Access на экран выводился поток предупреждающих сообщений. Программа Access 2007 решает проблему самостоятельно, незаметно отключая опасные макросы при любом открытии файла БД.
Как вы уже, безусловно, заметили, когда открывается БД, программа Access отображает сообщение системы безопасности, показанное на рис. 15.9. Оно предупреждает о том, что Access отключает любые потенциально опасные части вашей БД.
Примечание
Панель с сообщением можно скрыть. Если полагаете, что программа Access отключила некоторые макросы, но не хотите видеть панель сообщений, выберите на ленте Работа с базами данных → Показать или скрыть → Панель сообщений (Database Tools → Show/Hide → Message Bar).
Рис. 15.9. На панели сообщений выводится угрожающее предупреждение. Для повторного включения опасных макросов в вашей БД щелкните мышью кнопку Параметры и затем в появившемся окне (см. рис. 15.10) выберите переключатель Включить это содержимое. Разрешение, которое вы установите, продлится до тех пор, пока БД будет открыта, поэтому выбирать переключатель Включить это содержимое придется при каждом открытии БД. Можно также щелкнуть кнопкой мыши ссылку Открыть центр управления безопасностью (показанную на рис. 15.10) для того, чтобы настроить параметры безопасности на более длительный период
Рис. 15.10. При щелчке мышью кнопки Параметры (см. рис. 15.9) программа Access растолковывает проблему с помощью этого слегка замысловатого поля Сообщение. Выберите переключатель Включить это содержимое, щелкните мышью кнопку ОК и спокойно действуйте дальше
Вся эта суета вокруг опасных и безопасных макросов кажется лишней при условии, что можно включить все ваши макросы и возобновить нормальную работу быстрым щелчком кнопкой мыши переключателя Включить это содержимое. Но жизнь не простая штука, и вот почему.
Несмотря на то, что вас могут не беспокоить несколько появившихся ненужных предупреждающих сообщений, другие пользователи могут оказаться более доверчивыми. Они увидят сообщение системы безопасности и дважды подумают, что означает для них невозможность использования всех функциональных средств вашей БД. Они могут и просто не понять вопрос или не осознать необходимость щелкнуть кнопкой мыши переключатель Включить это содержимое.
В корпоративной среде системный администратор может настроить программу Access так, что она вообще не будет отображать предупреждение системы безопасности. Ваши макросы будут тихо отключены, и пользователь, работающий с вашей БД, даже не поймет, почему некоторые средства не работают.
Щелчок в тысячный раз переключателя Включить это содержимое может вывести из равновесия. Уж поверьте.
Центр управления безопасностью
Так вы не хотите видеть панель сообщений при каждом открытии БД? Программа Access предоставляет три способа, облегчающих работу с БД, содержащими опасные макросы.
Можно понизить уровень безопасности программы Access настолько, что опасные макросы будут разрешены. Такой подход не рекомендуется, т. к. он разрешает выполнение любого кода, включенного в вашу БД. Если случайно вы откроете БД, содержащую код, провоцирующий аварийные ситуации, никакой защиты у вас не будет.
Вы можете попросить программу Access доверять файлам БД, хранящимся в определенных папках на вашем компьютере (или на других компьютерах). Это самый удобный метод действия.
Вы можете попросить программу Access доверять базам данных, созданным надежным издателем. Этот вариант наиболее безопасен, но для его установки необходимо заплатить другой компании для получения сертификата безопасности. По этой причине только большие компании, у которых полно денег, могут его себе позволить.
Все описанные действия выполняются в одном и том же окне — Центре управления безопасностью (рис. 15.11). Для вывода его на экран в диалоговом окне Параметры безопасности Microsoft Office (см. рис. 15.10) щелкните кнопкой мыши ссылку Открыть центр управления безопасностью. Или примените следующий, более обходной путь.
Выберите кнопку Office → Параметры Access.
В окне Параметры Access выберите Центр управления безопасностью (Trust Center).
Щелкните мышью кнопку Параметры центра управления безопасностью (Trust Center Settings).
Центр управления безопасностью включает шесть разделов.
■ Раздел Надежные издатели (Trusted Publishers) позволяет сообщить Access, что следует доверять БД с цифровой подписью определенных людей. Для того чтобы воспользоваться этим средством, вашей компании нужно купить цифровой сертификат у такой компании,
как VeriSign (www.verisign.com). Затем, когда вы откроете подписанную БД, программа Access свяжется с компанией, выдавшей сертификат, и проверит его правомерность. Если он действителен, все законно, БД надежна и все опасные макросы разрешены. Цифровые сертификаты не рассматриваются в этой книге.
Рис. 15.11. Раздел Параметры макросов позволяет задать реакцию Access на опасные макросы. Вы можете выбрать включение или отключение опасных макросов и попросить Access уведомлять вас или не уведомлять об отключении чего бы то ни было
Примечание
Если заниматься раскопками длительное время, можно обнаружить, что у корпорации Microsoft есть средство (называемое makecert.exe) для генерации собственных цифровых сертификатов. Но это только тестовое средство, поскольку созданные с его помощью сертификаты не действуют на других компьютерах. Остерегайтесь — некоторые книги и Web-сайты по Access могут сбить с пути.
Раздел Надежные расположения (Trusted Locations) позволяет выбрать места на вашем жестком диске для хранения ваших БД. В этом случае Access будет доверять только вашим файлам БД и никому другому. Вы узнаете, как задавать надежное расположение, в следующем разделе.
Раздел Надстройки (Add-ins) разрешает определить, следует ли поддерживать дополнительные модули (add-ins) (мини-программы, расширяющие функциональные возможности Access), даже если они созданы не подтвержденным издателем. Обычно все дополнительные модули разрешены. (В конце концов, если вы не доверяете какому-либо дополнительному модулю, не устанавливайте его!) Эти установки применяются только в
корпоративной среде, где необходима серьезная защита Access для предотвращения даже намека на потенциальную проблему.
Раздел Параметры макросов (Macro Settings) позволяет настроить обработку макросов программой Access. Вы можете сделать ее более строгой (запретив все макросы, если они не принадлежат надежному издателю) или менее (разрешив все макросы, независимо от того, что они могут делать). Лучше всего оставить стандартный выбор Отключать все макросы с уведомлением.
Раздел Панель сообщений (Message Bar) позволяет задать, нужно ли программе Access отображать панель сообщений, когда программа блокирует опасные макросы в ненадежной БД.
Раздел Параметры конфиденциальности (Privacy Options) позволяет настроить несколько параметров, вообще не связанных с макросами. Можно задать необходимость проверки в Интернете обновлений файлов справки программы и отправки корпорации Microsoft информации о сбоях при обнаружении проблем (таким образом, Microsoft сможет найти ошибки и узнать, как улучшать программу Access в дальнейшем). Если вас беспокоят интернет-злоумышленники, можно отключить некоторые из этих средств. Чаще всего эти параметры необходимы лишь теоретикам конспирации.
Задание надежного расположения
Хорошо было бы иметь возможность различать ваши БД, содержащие абсолютно безопасный код, и все остальные? Для облегчения решения этой задачи в Access 2007 включено новое средство. Оно позволяет определить конкретную папку на вашем жестком диске как надежное расположение. Если открыть БД, хранящуюся в этой папке, Access автоматически будет доверять ей и разрешит опасные макросы.
Примечание
Конечно, вы должны гарантировать невозможность проникновения потенциально опасных БД в надежное расположение. Если вы пропустите их, то при открытии такой БД вы лишитесь всякой защиты. Но это требование вполне приемлемо, т. к. у приверженцев Access и так есть привычка помещать свои БД в отдельную папку.
Далее описаны действия, необходимые для создания нового надежного расположения.
1. Откройте окно Центр управления безопасностью (Trust Center).
Если вы его еще не открыли, следуйте указаниям, приведенным в предыдущем разделе.
2. Откройте раздел Надежные расположения (Trusted Locations).
Вы увидите окно, в котором перечислены все надежные расположения (рис. 15.12). Сначала в список включается одно расположение: папка ACCWIZ, которую программа Access использует для хранения своего мастера.
3. Убедитесь в том, что сброшен флажок Отключить все надежные расположения…
Если флажок установлен, сбросьте его, прежде чем добавлять новое надежное расположение.
4. Если вы хотите доверять папке в сети вашей компании или домашней сети, установите флажок Разрешить надежные расположения в моей сети.
Эта установка немного рискованна, поскольку сетевое расположение находится вне вашего контроля. Хакер может вставить зараженную вирусом БД в это расположение
незаметно для вас. Но если вы абсолютно уверены в безопасности сети (и другие пользователи, применяющие эту папку, не будут загружать БД из Интернета и помещать их в это расположение), можно не беспокоиться.
Рис. 15.12. В данном примере добавлено новое надежное расположение для папки FunkyAccessFiles, находящейся на жестком диске в папке My Documents
Рис. 15.13. Для настройки надежного расположения необходимо указать путь (щелкните мышью кнопку Обзор, чтобы найти нужную папку). Вы также можете решить, доверять ли вложенным папкам и вставить необязательное описание, которое выводится в списке надежных расположений
Щелкните мышью кнопку Добавить новое расположение (Add new location). Программа Access запросит некоторую дополнительную информацию (рис. 15.13).
Для включения нового расположения в список щелкните мышью кнопку ОК.
Расположение можно настраивать и удалять в любое время, выбрав его из списка и используя не требующие дополнительных пояснений кнопки Удалить и Изменить.
Три примера макросов
Вы уже создали базовый макрос, опробовали его и всерьез задумались о безопасности макросов. Пришло время получить вознаграждение за труды и рассмотреть несколько практических способов применения макросов.
Полный перечень макрокоманд содержит множество действий, которые не так уж интересны или относятся только к проектам определенных типов (например, проекты Access, выходящие на БД SQL Server, которые будут рассматриваться в главе 18). В следующих разделах представлено несколько наиболее полезных макрокоманд. Вы можете проверить их на загружаемых из Интернета примерах к данной главе или испытать рецепты быстрого приготовления в своей собственной БД.
Поиск записи
Макрокоманда НайтиЗапись (FindRecord) работает аналогично средству Поиск на листе данных, которое обсуждалось в разд. "Поиск" главы 3. Все необходимую для поиска информацию вы задаете в аргументах.
Скажем, вы хотите искать слово "hay" (сено) в поле Diet (пищевой рацион) таблицы AnimalTypes. Далее перечислены макрокоманды, которые вы можете использовать.
ОткрытьФорму (OpenForm) для открытия формы, отображающей найденную запись (в данном случае AnimalTypes). Эту команду можно заменить макрокомандой ОткрытьТаблицу (OpenTable) и выполнять поиск на листе данных.
К ЭлементуУправления (GoToControl) для перехода к полю, в котором будет выполняться поиск (в данном случае Description). Если вы хотите применить поиск во всех полях, этот пункт можно пропустить.
НайтиЗапись (FindRecord) для поиска текста. Вы решаете, начать поиск с первой или с текущей записи, как в данном примере. Можно также выбрать поиск текста в любом месте поля или потребовать, чтобы значение поля целиком совпадало со строкой поиска.
Когда вы соберете все команды вместе, получится нечто похожее на приведенные в табл. 15.1 строки.
Таблица 15.1. Макрос поиска записи
Макрокоманда |
Важные аргументы1 |
Описание |
ОткрытьФорму |
Имя формы: AnimalTypes |
Открывает форму. Если она открыта, переключает в существующее окно |
1 Вы можете применять значения по умолчанию и во всех остальных аргументах.
Таблица 15.1 (окончание)
Макрокоманда |
Важные аргументы2 |
Описание |
КЭлементу Управления |
Имя элемента: Diet |
Переходит к полю Diet |
НайтиЗапись |
Образец поиска: ="hay" Совпадение: С любой частью поля Только в текущем поле: Да Первое вхождение: Нет |
Находит заданный текст в любой части поля Diet, начиная с текущей записи |
Примечание
Вы могли заметить, что аргумент Образец поиска макрокоманды НайтиЗапись начинается со знака равенства. Он принимает выражение. В данном примере выражение — не что иное, как текстовая константа, заключенная в кавычки. Но ее можно заменить более сложным выражением, включающим операции, функции и другие сложные средства.
Изюминка этого макроса состоит в том, что его можно использовать несколько раз в строке для поиска нескольких вхождений текста. Если форма AnimalTypes уже открыта, этот макрос просто переходит к следующему найденному вхождению текста.
Подсказка
Для большей гибкости можно создать макрос, который использует только команду Найти Запись. В этом случае вы сможете искать заданный текст в любом поле и в любой форме или таблице. Конечно, если попытаться выполнять этот макрос без открытых форм или таблиц, команда НайтиЗапись не сможет ничего сделать, и вы получите сообщение об ошибке.
Печать отчета
Вам нужен полезный макрос, автоматически выдающий часто используемый отчет? Программа Access предоставляет несколько возможностей. Далее приведены две из них.
Если вы хотите использовать стандартные параметры печати, можно напечатать отчет с помощью макрокоманды ОткрытьОтчет с аргументом Режим, имеющим значение Печать.
Если вы хотите отрегулировать качество печати, задать число копий и номера начальной и конечной страниц, вам нужно применить трехшаговый подход. Начать с команды ОткрытьОтчет, применить команду Печать (PrintOut) для отправки отчета и закончить командой Закрыть (Close) для корректного выхода.
Подсказка
Не пытайтесь применять любой из этих методов с ненадежными БД — Access не разрешит вам их применить.
Приведенная в табл. 15.2 последовательность макрокоманд демонстрирует второй метод. Этот макрос, используя отчет CheapskateCustomers (прижимистые клиенты), печатает две
2Вы можете применять значения по умолчанию и во всех остальных аргументах.
копии списка так называемых клиентов, которые на самом деле еще не заказали ни одной вещи.
Таблица 15.2. Макрос печати отчета
Макрокоманда |
Важные аргументы 3 |
Описание |
ОткрытьОтчет |
Имя отчета: CheapskateCustomers |
Открывает отчет (но как вы увидите, он появится через пару секунд) |
Печать |
Число копий: 2 |
Можно использовать другие аргументы для печати только диапазона страниц или изменения качества. Но нельзя выбрать принтер |
Закрыть |
Тип объекта: Отчет Имя объекта: CheapskateCustomers |
Нет смысла оставлять отчет открытым после того, как он отправлен на печать |
После того как программа Access выполнит макрокоманду Печать, страницы будут направлены на принтер, заданный по умолчанию на вашем компьютере. У вас нет возможности подтвердить или отменить операцию. Забавы ради можно включить в данный макрос дополнительные шаги для того, чтобы напечатать несколько отчетов одновременно.
Подсказка
Есть еще одна возможность. Можно открыть таблицу или отчет с аргументом Режим, имеющим значение Просмотр (Print Preview). В этом случае данные на самом деле не посылаются на принтер, но приближают на шаг к этой операции. Это лучший выбор, если вам нужно выбрать принтер, убедиться в корректности данных и проверить объем предназначенной для печати информации. Он также работает с ненадежными БД.
Отправка данных по электронной почте
Одна из скрытых возможностей макроязыка программы Access — команда ОтправитьОбъект (SendObject) — универсальная команда для отправки сообщений электронной почты.