Познавательное → Создание пользовательских объектов, типов и коллекций VBA
Познавательное → Проверка существования таблицы в базе данных Access
В одном из следующих разделов рассматривается добавление новой таблицы в существующую базу данных Access. Естественно, что добавить новую таблицу сможет только один пользователь, тот, кто первым откроет рабочую книгу и тем самым инициирует выполнение соответствующего макроса. Функция TableExists проверяет существование таблицы с указанным именем в базе данных Transfers .mdb с помощью метода OpenSchema.
Подробнее...Познавательное → Создание итоговых запросов VBA
Одна из многочисленных возможностей Access заключается в создании итоговых запросов с объединением записей с одинаковыми значениями в указанном списке полей в одну запись. Попробуйте создать итоговый запрос и просмотрите полученный SQL-код. Аналогичный запрос можно создать с помощью Excel VBA и передать его на обработку Access с помощью средств библиотеки ADO.
Подробнее...Познавательное → VBA: Добавление/Удаление/Изменение/Обновление записей в таблицах Access
Пользователи А и Б вводят информацию о перемещениях товаров в форму. Фактическое добавление записи в таблицу Access возложено на макрос AddTransfег. При добавлении записи в таблицу Access макрос AddTransf ег выполняет следующую последовательность действий.
2. Создание объекта набора данных для обращения ктаблице tblTransfer.
3. Вызов метода AddNew для добавления новой записи в таблицу tblTransfer.
4. Установка значения каждого поля новой записи таблицы tblTrans f ег.
5. Вызов метода Update для внесения изменений в базу данных.
6. Закрытие объектов набора данных и соединения.
Познавательное → Объекты ADO (Excel VBA)
Двумя основными объектами ADO являются объект соединения Connection и объект набора данных Recordset. Объект соединения определяет путь к базе данных и ее тип. База данных Microsoft Access основана на ядре Microsoft Jet. Объект набора данных создается на основе существующего объекта соединения для представления таблицы, некоторого ее подмножества или предопределенного запроса базы данных Access. Помимо объекта соединения, при создании объекта набора данных указываются такие параметры, как CursorType, CursorLocation, LockType и Options. Для обеспечения одновременного доступа к базе данных двух пользователей рекомендуется применять динамический курсор и оптимистическую блокировку.
Подробнее...Познавательное → ПРАКТИКУМ VBA:Совместный доступ к MDB-файлу
Рассмотрим следующую задачу. Предположим, что пользователь А и пользователь Б ответственны за закупку товаров для сети розничных магазинов. Каждое утро они импортируют данные из журнала кассовых операций, чтобы получить информацию о вчерашних продажах и, при необходимости, перераспределить остаток товаров между магазинами. Необходимо сделать так, чтобы пользователь А мог видеть перемещения товаров, инициированные пользователем Б, и наоборот.
Подробнее...
Познавательное → ADO и DAO (VBA Excel)
На протяжении нескольких лет для доступа к данным, хранящимся во внешних источниках, Microsoft рекомендовала использовать объекты ОАО (Data Access Objects — объекты доступа к данным). Начиная с Excel 2000 и VBA6 Microsoft смещает акцент на объекты ADO (ActiveX Data Objects — объекты данных ActiveX), при этом продолжая обеспечивать поддержку DAO.
Подробнее...Познавательное → Использование Microsoft Access (VBA Excel)
В предыдущей главе был предложен метод, позволяющий хранить на одном рабочем листе Excel свыше 650 ООО строк данных. Тем не менее, на некотором этапе становится очевидно, что для хранения больших объемов данных следует применять специализированный инструмент, такой как Microsoft Access. Основным форматом файлов Microsoft Access является формат MDB (Multidimensional Database — многомерная база данных). Использование М DB-файлов может быть оправдано необходимостью обеспечения совместного доступа к данным. Предоставление общего доступа к рабочей книге связано с множеством ограничений.
Подробнее...Познавательное → Экспорт данных в текстовый файл VBA
Чтобы экспортировать данные в текстовый файл, откройте его для записи с помощью выражения Output As #1. Сохраните все требуемые строки в файле с помощью выражения Print #1. Прежде чем открыть файл для записи, убедитесь, что на диске не существует копии этого файла. Для этого попытайтесь удалить файл с помощью выражения Kill. Чтобы проигнорировать сообщение об ошибке, которое будет сгенерировано, если файл с заданным именем не существует, воспользуйтесь выражением On Error Resume Next. Следующий макрос экспортирует данные рабочего листа в текстовый файл.
Подробнее...Познавательное → Импорт текстовых файлов, содержащих более 65 536 записей VBA
Импорт файла, содержащего более 65 536 записей, с помощью мастера текстов завершится выдачей сообщения об ошибке Файл загружен не полностью (File not loaded completely) и загрузкой первых 65 536 строк. Импорт того же файла с помощью метода Workbooks. OpenText завершится загрузкой первых 65 536 строк без уведомления о внештатной ситуации. Проверьте содержимое ячейки А6553 6 после импорта файла. Если эта ячейка не пуста, вероятно, файл был загружен некорректно. Подробнее...
Познавательное → Работа с текстовыми файлами Excel VBA
Прежде чем формат XML окончательно утвердится в качестве стандартного формата файлов, некоторое время наряду с форматом XML широкое распространение будут иметь форматы CSV и ТХТ. В этой главе рассматривается импорт и экспорт текстовых файлов посредством VBA. Экспорт данных в текстовый файл может понадобиться для передачи информации в другую систему или создания HTML-файла. Рассмотрим три сценария импорта данных из текстовых файлов. Если в файле содержится менее 65 536 записей, его можно импортировать с помощью метода Workbooks .OpenText. Если в файле содержится более 65 536 записей, но менее 98 304 записей, его можно импортировать с помощью двух вызовов метода Workbooks . OpenText. Если же в файле содержится более 98 304 записей, его придется импортировать путем последовательного считывания строк. Подробнее...
Познавательное → Динамические массивы VBA
Очень часто размер массива заранее неизвестен. Теоретически можно создать массив очень большого размера "на все случаи жизни", однако это решение приведет к напрасной трате ресурсов и не гарантирует 100%-го результата. Выходом из подобной ситуации является использование динамического массива. Объявление динамического массива аналогично объявлению обычного массива без указания размера последнего... Подробнее...
Познавательное → Массивы VBA
Массив— это переменная специального типа, которая может хранить более одного элемента данных. Без использования массива для запоминания имени и адреса заказчика потребуется создать две обычные переменные. В то же время, для хранения целого списка, состоящего из имен и адресов сотен заказчиков, достаточно одного массива.
Подробнее...Познавательное → ПРАКТИКУМ Создание отчетов в Word с помощью расширенного фильтра
Подробнее...
Познавательное → Закладки VBA Excel
Закладки можно создать непосредственно в программном коде.
Закладка, назначенная некоторой позиции в документе Word, имеет I-образный вид. Чтобы отобразить закладки, выберите в меню Word команду Сервис^Параметры (Tools'^ Options) и установите флажок Закладки (Bookmarks), расположенный во вкладке Вид (View) (рис. 16.9).
Следующий макрос создает закладки Кому, Копия, От и Тема, а затем помещает после каждой из них соответствующий текст.
Подробнее...