Přejít k hlavnímu obsahu

Jak zabránit uživatelům v tisku listu?

V naší každodenní práci mohou být v listu některé důležité informace, které nám oddělení z důvodu ochrany interního rozšíření údajů nedovolí vytisknout. A tady budu mluvit o tom, jak zabránit uživatelům v tisku listu.

Zabraňte uživatelům tisknout jeden specifikovaný list pomocí VBA

Zabraňte uživatelům v tisku celého sešitu pomocí VBA


šipka modrá pravá bublina Zabraňte uživatelům tisknout jeden specifikovaný list pomocí VBA

Následující kód VBA můžete použít k ochraně konkrétního listu, který se má vytisknout.

1. Aktivujte list, u kterého chcete deaktivovat jeho funkci tisku.

2. Podržte ALT + F11 klávesy pro otevření Okno Microsoft Visual Basic pro aplikace.

3. A pak vlevo Průzkumník projektu, dvojklik Tato pracovní kniha otevřete modul a vložte do něj následující kód:

Kód VBA: zabraňte uživatelům v tisku jednoho zadaného listu

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

Poznámka: Ve výše uvedeném kódu je Sheet1 je aktivní list, který nemáte povoleno tisknout.

4. Poté tento kód uložte a zavřete a nyní, když se pokusíte vytisknout tento konkrétní list, zobrazí se následující upozornění.

doc-prevent-printing-1

Poznámka: S tímto kódem není povolen tisk jediného konkrétního listu, ale lze tisknout další listy jako obvykle.


šipka modrá pravá bublina Zabraňte uživatelům v tisku celého sešitu pomocí VBA

Pokud potřebujete zabránit uživatelům v tisku celého sešitu, zde máte také kód, který vám může udělat laskavost.

1. Otevřete sešit, který ostatním nedovolíte tisknout.

2. Podržte ALT + F11 klávesy pro otevření Okno Microsoft Visual Basic pro aplikace.

3. A pak vlevo Průzkumník projektu, dvojklik Tato pracovní kniha otevřete modul a vložte do něj následující kód:

Kód VBA: zabraňte uživatelům v tisku jednoho zadaného listu

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. Poté uložte a zavřete tento kód a přejděte zpět do sešitu a teď, když vytisknete jeden list nebo celý sešit, nebude možné je vytisknout a zobrazí se následující varování:

doc-prevent-printing-1


Související články:

Jak tisknout více sešitů v aplikaci Excel?

Jak tisknout rozsahy v aplikaci Excel?

Jak rychle vytisknout aktuální stránku v aplikaci Excel?

Jak tisknout dlouhý sloupec na jednu stránku v aplikaci Excel?

Nejlepší nástroje pro produktivitu v kanceláři

Populární funkce: Najít, zvýraznit nebo identifikovat duplikáty   |  Odstranit prázdné řádky   |  Kombinujte sloupce nebo buňky bez ztráty dat   |   Kolo bez vzorce ...
Super vyhledávání: Více kritérií VLookup    VLookup s více hodnotami  |   VLookup na více listech   |   Fuzzy vyhledávání ....
Pokročilý rozevírací seznam: Rychle vytvořte rozevírací seznam   |  Závislý rozbalovací seznam   |  Vícenásobný výběr rozevíracího seznamu ....
Správce sloupců: Přidejte konkrétní počet sloupců  |  Přesunout sloupce  |  Přepnout stav viditelnosti skrytých sloupců  |  Porovnejte rozsahy a sloupce ...
Doporučené funkce: Zaměření mřížky   |  Návrhové zobrazení   |   Velký Formula Bar    Správce sešitů a listů   |  Knihovna zdrojů (Automatický text)   |  Výběr data   |  Zkombinujte pracovní listy   |  Šifrovat/dešifrovat buňky    Odesílat e-maily podle seznamu   |  Super filtr   |   Speciální filtr (filtr tučné/kurzíva/přeškrtnuté...) ...
Top 15 sad nástrojů12 Text Tools (doplnit text, Odebrat znaky, ...)   |   50+ Graf Typ nemovitosti (Ganttův diagram, ...)   |   40+ Praktické Vzorce (Vypočítejte věk na základě narozenin, ...)   |   19 Vložení Tools (Vložte QR kód, Vložit obrázek z cesty, ...)   |   12 Konverze Tools (Čísla na slova, Přepočet měny, ...)   |   7 Sloučit a rozdělit Tools (Pokročilé kombinování řádků, Rozdělit buňky, ...)   |   ... a více

Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času.  Kliknutím sem získáte funkci, kterou nejvíce potřebujete...

karta kte 201905


Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!
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