powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / лог печати документа
6 сообщений из 6, страница 1 из 1
лог печати документа
    #38493920
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

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

Код: vbnet
1.
2.
3.
4.
5.
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim c As Range
    Set c = ThisWorkbook.Worksheets("print").Cells(1, 1).End(xlDown)
    c.Value = Now & " - " & ThisWorkbook.ActiveSheet.Name
End Sub

Все должно работать и ответ в таком виде меня устраивает, НО

Печать может осуществляться не только полистно, но и всего документа, т.е. следующим алгоритмом - выделяются несколько листов (через нажатия на них мышкой с зажатым ctrl), а уже затем все выводятся на печать. Событие отыграет один раз, записть будет произведена только имени одного активного листа. Это не есть хорошо и правильно.

Подскажите, пожалуйста, как мне получить список имен всех выделенных листов книги при срабатывании события печати.
Возможны две реализации:
1) добавлять в строку , т.е.
Дата1 - лист1 - лист2
Дата2 - лист3
Дата3 - лист3 - лист2 - лист1
2) добавлять в столбик я той де датой, т.е.
Дата1 - лист1
Дата1 - лист2
Дата2 - лист3
Дата3 - лист3
Дата3 - лист2
Дата3 - лист1

Не знаю, как проще, подойдут оба варианта
Заранее спасибо!
...
Рейтинг: 0 / 0
лог печати документа
    #38494050
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PlanB,

Код: vbnet
1.
2.
3.
4.
Dim s As Worksheet
For Each s In Application.Workbooks("имя книги").Windows(1).SelectedSheets
    ' Здесь перебираешь выделенные листы
Next s
...
Рейтинг: 0 / 0
лог печати документа
    #38494063
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ура, ура!!
...
Рейтинг: 0 / 0
лог печати документа
    #38494138
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на память

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Option Explicit

Private Sub Workbook_BeforePrint(Cancel As Boolean)

Dim wS As Worksheet
Dim wB As Workbook
Dim nme As String
Dim o As Integer

For Each wS In Application.ActiveWorkbook.Windows(1).SelectedSheets
    o = ThisWorkbook.Worksheets("Ëèñò1").Cells(10000, 1).End(xlUp).Row

    ThisWorkbook.Worksheets("Ëèñò1").Cells(o + 1, 1).Value = Now & " - " & wS.Name
Next wS
Cancel = True
End Sub
...
Рейтинг: 0 / 0
лог печати документа
    #38494154
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
Cancel = True

- отменяет печать
...
Рейтинг: 0 / 0
лог печати документа
    #38494288
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбонос
Код: vbnet
1.
Cancel = True

- отменяет печатьлес бережем!
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / лог печати документа
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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