powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Печать отчета на нескольких принтерах
5 сообщений из 5, страница 1 из 1
Печать отчета на нескольких принтерах
    #32216148
LMary
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Необходимо автоматически печатать отчет в Access 97 на несколько разных принтеров.
Как можно указать нужный принтер для печати из макроса?

С уважением, LMary
...
Рейтинг: 0 / 0
Печать отчета на нескольких принтерах
    #32216264
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Есть API. Если это годится, то приведу.
...
Рейтинг: 0 / 0
Печать отчета на нескольких принтерах
    #32216675
LMary
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, Владимир Саныч.

Не большой я специалист по API.
Но, может, стоит попробовать.
Тем более, что других вариантов не предлагают.
...
Рейтинг: 0 / 0
Печать отчета на нескольких принтерах
    #32216723
sasha_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
посмотри в хелпе
PrtDevMode и PrtDevNames
должно помочь.
...
Рейтинг: 0 / 0
Печать отчета на нескольких принтерах
    #32216912
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
1. Получение списка всех принтеров (ответ будет в sRet):
Код: plaintext
1.
2.
sRet = Space( 255 ) 'do not remove this line!
nRet = GetProfileString( "devices" , vbNullString, "", sRet, Len(sRet))

2. Получение текущего принтера по умолчанию (ответ будет в sRet):
Код: plaintext
1.
2.
sRet = Space( 255 ) 'do not remove this line!
nRet = GetProfileString( "Windows" ,  "device" , "", sRet, Len(sRet))

3. Замена принтера по умолчанию:
Код: plaintext
1.
nRet = WriteProfileString( "Windows" ,  "device" , txtPrinter)

4. Для этого всего нужно поставить в модуль два описания:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Declare Function GetProfileString Lib  "kernel32"  Alias  "GetProfileStringA"  _
    (ByVal lpAppName As String, ByVal lpKeyName As String, _
    ByVal lpDefault As String, ByVal lpReturnedString As String, _
    ByVal nSize As Long) As Long
Declare Function WriteProfileString Lib  "kernel32"  Alias  "WriteProfileStringA"  _
    (ByVal lpszSection As String, ByVal lpszKeyName As String, _
    ByVal lpszString As String) As Long
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Печать отчета на нескольких принтерах
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]