Книга: Excel. Трюки и эффекты
Получение информации об используемом принтере
Получение информации об используемом принтере
С помощью небольшого макроса можно вывести на экран информацию об используемом принтере. Код макроса записывается в стандартном модуле редактора VBA и выглядит следующим образом (листинг 3.83).
Листинг 3.83. Информация о принтере
' Объявление API-функции
Declare Function GetProfileStringA Lib «kernel32» _
(ByVal lpAppName As String, ByVal lpKeyName As String, _
ByVal lpDefault As String, ByVal lpReturnedString As _
String, ByVal nSize As Long) As Long
Sub Принтер()
Dim strFullInfo As String * 255 ' Буфер для API-функции
Dim strInfo As String ' Строка с полной информацией
Dim strPrinter As String ' Название принтера
Dim strDriver As String ' Драйвер принтера
Dim strPort As String ' Порт принтера
Dim strMessage As String
Dim intPrinterEndPos As Integer
Dim intDriverEndPos As Integer
' Заполнение буфера пробелами
strFullInfo = Space(255)
' Получение полной информации о принтере
Call GetProfileStringA(«Windows», «Device», "", strFullInfo,
254)
' Удаление лишних символов из конца возвращенной строки
' Строка strInfo имеет формат <имя_принтера>,<драйвер>,<-
порт>:
strInfo = Trim(strFullInfo)
' Поиск запятых в строке (окончаний названий принтера и драйвера)
intPrinterEndPos = Application.Find(",", strInfo, 1)
intDriverEndPos = Application.Find(",", strInfo,
intPrinterEndPos + 1)
' Определение названия принтера
strPrinter = Left(strInfo, intPrinterEndPos – 1)
' Определение драйвера
strDriver = Mid(strInfo, intPrinterEndPos + 1,
intDriverEndPos _
– intPrinterEndPos – 1)
' Определение порта (его название заканчивается символом ":")
strPort = Mid(strInfo, intDriverEndPos + 1, InStr(1, strInfo,
":") _
– intDriverEndPos – 1)
' Формирование информационного сообщения
strMessage = «Принтер:» & Chr(9) & strPrinter & Chr(13)
strMessage = strMessage & «Драйвер:» & strDriver & Chr(13)
strMessage = strMessage & «strPort:» & Chr(9) & strPort
' Вывод информационного сообщения
MsgBox strMessage, vbInformation, «Сведения о принтере по умолчанию»
End Sub
В данном примере для получения информации о принтере используется API-функция GetProf ileStringA. Эта функция возвращает в строку-буфер strFullInf о информацию в виде <имяпринтера>, <драйвер>, <порт>:.
После запуска данного макроса на экран выводится окно Сведения о принтере по умолчанию (название окна можно корректировать по своему усмотрению путем внесения соответствующих изменений в код макроса), в котором будет показана марка принтера, а также его драйвер и порт.
- Подсчет количества открытий файла
- Получение «закрытой» информации
- Произвольный текст в строке состояния
- Быстрое изменение заголовка окна
- Ввод данных с помощью диалогового окна
- Применение функции без ввода ее в ячейку
- Скрытие строк и столбцов от посторонних
- Быстрое выделение ячеек, расположенных через интервал
- Определение количества ячеек в диапазоне и суммы их значений
- Подсчет именованных объектов
- Быстрый поиск курсора
- Поиск начала и окончания диапазона, содержащего данные
- Трюки с примечаниями
- Дополнение панели инструментов
- Примеры создания панелей инструментов
- Формирование пользовательского меню
- Проверка наличия файла по указанному пути
- Автоматизация удаления файлов
- Перечень имен листов в виде гиперссылок
- Удаление пустых строк на рабочем листе
- Запись текущих данных в текстовый файл
- Экспорт и импорт данных
- Одновременное умножение всех данных диапазона
- Преобразование таблицы Excel в HTML-формат
- Поиск данных нештатными средствами
- Включение автофильтра с помощью макроса
- Трюки с форматированием
- Вывод информации о текущем документе
- Вывод результата расчетов в отдельном окне
- Вывод разрешения монитора
- Что открыто в данный момент?
- Создание бегущей строки
- Мигающая ячейка
- Вращающиеся автофигуры
- Вызов таблицы цветов
- Создание калькулятора
- Еще о создании пользовательских меню
- Склонение фамилии, имени и отчества
- Получение информации об используемом принтере
- Вывод текущей даты и времени
- Автоматическое создание документов Word на основе табличных данных Excel
- Создание списка панелей инструментов и контекстных меню
- Создание списка пунктов главного меню Excel
- Создание списка пунктов контекстных меню
- Отображение панели инструментов при определенном условии
- Скрытие и отображение панелей инструментов
- Создание меню на основе данных рабочего листа
- Создание контекстного меню
- Просмотр содержимого папки
- Получение информации о состоянии дисков
- Расчет среднего арифметического
- Вывод списка доступных шрифтов
- Создание раскрывающегося списка
- Добавление команды на вкладку
- Сохранение информации о пользователях при миграции
- Получение статистики
- При копировании с жесткого диска на «флэшку» иногда появляется сообщение о дополнительной присоединенной информации, кот...
- Сохранение информации из Интернета
- 1.2. Определение количества информации. Единицы измерения количества информации
- 1.2. Понятие информации. Общая характеристика процессов сбора, передачи, обработки и накопления информации
- 1.4. Кодирование информации
- 7.4. Модель системы автоматизированного проектирования защиты информации
- Источники информации о конкурентах
- Список основных источников информации
- Внешние носители информации
- Получение помощи