Прескочи на основното съдържание

Как да попречим на потребителите да отпечатват работен лист?

Автор: Xiaoyang Последна промяна: 2014-06-30

В ежедневната ни работа може да има важна информация в работния лист, за да защитим разпространените вътрешни данни, отделът няма да ни позволи да ги отпечатаме. И тук ще говоря за това как да попреча на потребителите да отпечатват работен лист.

Предотвратете потребителите да отпечатват един определен работен лист с VBA

Предотвратете потребителите да отпечатват цялата работна книга с VBA


стрелка син десен балон Предотвратете потребителите да отпечатват един определен работен лист с VBA

Можете да приложите следния VBA код, за да защитите конкретния си работен лист, който ще бъде отпечатан.

1. Активирайте своя работен лист, за който искате да деактивирате функцията за печат.

2. Задръжте натиснат ALT + F11 за да отворите Прозорец на Microsoft Visual Basic за приложения.

3. И след това вляво Project Explorer, кликнете два пъти Тази работна книга за да отворите модула и поставете следния код в него:

VBA код: не позволява на потребителите да отпечатват един определен работен лист

Private Sub Workbook_BeforePrint(Cancel As Boolean)
'Update 20140625
Dim WsName As String
WsName = "Sheet1"
For Each xWs In Application.ActiveWorkbook.Windows(1).SelectedSheets
    If xWs.Name = WsName Then
    MsgBox ("You can not print this worksheet")
        Cancel = True
    End If
Next
End Sub

doc-prevent-printing-1

Забележка: В горния код, Sheet1 е активният работен лист, който нямате право да отпечатвате.

4. След това запазете и затворете този код и сега, когато се опитате да отпечатате този конкретен работен лист, ще получите следното предупреждение.

doc-prevent-printing-1

Забележка: С този код единственият конкретен работен лист не е разрешен за отпечатване, но други листове могат да бъдат отпечатани както обикновено.


стрелка син десен балон Предотвратете потребителите да отпечатват цялата работна книга с VBA

Ако трябва да попречите на потребителите да отпечатват цялата работна книга, тук също има код, който може да ви направи услуга.

1. Отворете работната си книга, която не позволявате на други да отпечатват.

2. Задръжте натиснат ALT + F11 за да отворите Прозорец на Microsoft Visual Basic за приложения.

3. И след това вляво Project Explorer, кликнете два пъти Тази работна книга за да отворите модула и поставете следния код в него:

VBA код: не позволява на потребителите да отпечатват един определен работен лист

Private Sub Workbook_BeforePrint(Cancel As Boolean)
'Update 20140626
Cancel = True
MsgBox "You can't print this workbook"
End Sub

doc-prevent-printing-1

4. След това запазете и затворете този код и отидете обратно на работната книга и сега, когато отпечатате един работен лист или цялата работна книга, те няма да бъдат разрешени да бъдат отпечатани и ще получите следното предупреждение:

doc-prevent-printing-1


Още по темата:

Как да отпечатате няколко работни книги в Excel?

Как да отпечатате диапазони в Excel?

Как бързо да отпечатате текущата страница в Excel?

Как да отпечатате дълга колона на една страница в Excel?

Най-добрите инструменти за продуктивност в офиса

🤖 Kutools AI помощник: Революционизирайте анализа на данни въз основа на: Интелигентно изпълнение   |  Генериране на код  |  Създаване на персонализирани формули  |  Анализирайте данни и генерирайте диаграми  |  Извикване на функциите на Kutools...
Популярни функции: Намерете, маркирайте или идентифицирайте дубликати   |  Изтриване на празни редове   |  Комбинирайте колони или клетки без загуба на данни   |   Кръг без формула ...
Супер търсене: VLookup с множество критерии    VLookup с множество стойности  |   VLookup в няколко листа   |   Размито търсене ....
Разширен падащ списък: Бързо създаване на падащ списък   |  Зависим падащ списък   |  Падащ списък с множество избори ....
Мениджър на колони: Добавете конкретен брой колони  |  Преместване на колони  |  Превключване на състоянието на видимост на скритите колони  |  Сравнете диапазони и колони ...
Препоръчани функции: Мрежов фокус   |  Изглед на дизайна   |   Голям формула бар    Мениджър на работни книги и листове   |  Библиотека с ресурси (Автоматичен текст)   |  Избор на дата   |  Комбинирайте работни листове   |  Шифроване/декриптиране на клетки    Изпращайте имейли по списък   |  Супер филтър   |   Специален филтър (филтър получер/курсив/зачертано...) ...
Топ 15 комплекта инструменти12 Текст Инструменти (добавяне на текст, Премахване на символи, ...)   |   50 + Графика Видове (диаграма на Гант, ...)   |   40+ Практичен формули (Изчислете възрастта въз основа на рождения ден, ...)   |   19 вмъкване Инструменти (Въведете QR код, Вмъкване на картина от пътя, ...)   |   12 Конверсия Инструменти (Числа към думи, Валутен обмен, ...)   |   7 Обединяване и разделяне Инструменти (Разширено комбиниране на редове, Разделени клетки, ...)   |   ... и още

Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време.  Щракнете тук, за да получите функцията, от която се нуждаете най-много...

Описание


Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна

  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
  • Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!
Comments (5)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
how to prevent printing more than one sheet but not the hole workbook?
This comment was minimized by the moderator on the site
This works in theory, but by default Excel disables all macros when you open a workbook, which prevents this code from executing and allows printing as usual.
This comment was minimized by the moderator on the site
That's why you force users to enable macros in order to use a workbook.
This comment was minimized by the moderator on the site
This works but when you email the file, the user on that end can print it... which defeats the purpose...
This comment was minimized by the moderator on the site
Maybe it is possible to have an overlay (text box with white background) which hides the entries. Say on it: "Enable Macros to see content" with a button to press which moves the text box.

Now they can see the entries, but the macro is active again :-)
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations