Tisk je důležitou součástí práce se soubory aplikace Excel. V některých případech může být uživatel nucen vytisknout obsah tabulky pro pozdější analýzu nebo prezentaci ostatním zaměstnancům nebo zákazníkům. Vestavěné nástroje Excel pro tisk nemusí stačit k provádění takových úkolů. Pomocí aplikace VBA (Visual Basic for Applications) můžete vytvořit speciální postupy, které vám umožní spravovat proces tisku v Excelu a dosáhnout požadovaného výsledku.
VBA poskytuje různé nástroje pro práci s tiskem v Excelu. Pomocí VBA můžete upravit nastavení tisku, jako je velikost stránky, orientace, zoom, přidat titulky a sklepy, spravovat pořadí tisku stránek a další. Programování tiskového postupu VBA poskytuje větší flexibilitu a kontrolu nad procesem tisku.
V tomto článku se podíváme na základní principy práce s tiskem v Excelu pomocí VBA. Ukážeme vám, jak vytvořit postup tisku, jak nakonfigurovat nastavení tisku, jak vybrat požadované rozsahy tisku, jak přidat záhlaví a sklepy na každou stránku a další užitečné triky při práci s tiskem. Poskytneme také příklady kódu, které vám pomohou porozumět tématu a vytvořit si vlastní tiskové postupy v Excelu.
Tisk souboru Excel pomocí VBA
Jazyk VBA vám umožňuje automatizovat mnoho akcí v Excelu, včetně tisku dokumentů. Pomocí postupů a funkcí VBA můžete spravovat tisk souboru Excel, nastavit možnosti tisku, vybrat rozsah buněk a přidat nastavení pro tisk.
Postup tisku souboru Excel obsahuje několik kroků:
- Vyberte list, který chcete vytisknout. K tomu lze použít funkci Sheets zadáním názvu listu nebo jeho indexu.
- Vyberte rozsah buněk, které chcete vytisknout. K tomu můžete použít funkci Range zadáním příslušných souřadnic.
- Nastavte možnosti tisku. Můžete nastavit různé možnosti, jako je měřítko stránky, orientace, velikost papíru a tak dále.
- Pomocí metody PrintOut spusťte proces tisku. Tuto metodu lze použít na rozsah buněk nebo na objekt listu.
Volitelně můžete upravit nastavení tisku pomocí objektu PageSetup. Příklady možností zahrnují nastavení polí listu, zápatí, intervalu a dalších.
Zde je příklad kódu VBA pro tisk souboru Excel:
Sub PrintExcel()Dim ws As WorksheetDim rng As Range' Выберите лист для печатиSet ws = ThisWorkbook.Sheets("Лист1")' Выберите диапазон ячеек для печатиSet rng = ws.Range("A1:F10")' Установите параметры печатиWith ws.PageSetup.Orientation = xlPortrait ' Установите ориентацию страницы на книжную.FitToPagesWide = 1 ' Распечатайте на одной странице по ширине.FitToPagesTall = 1 ' Распечатайте на одной странице по высотеEnd With' Распечатайте выбранный диапазон ячеекrng.PrintOut' Выведите сообщение об успешном завершении печатиMsgBox "Файл успешно распечатан."End Sub
Toto je základní příklad, který ukazuje základní kroky tisku souboru Excel pomocí VBA. Tento kód můžete upravit přidáním nastavení tisku, změnou rozsahů buněk a dalších možností, které odpovídají vašim požadavkům.
Tiskové postupy
VBA existuje několik způsobů, jak tisknout soubor Excel. Lze použít vestavěné metody a vlastnosti objektu Workbook a vytvářet vlastní tiskové postupy. Podívejme se na několik příkladů.
1. Tisk celého listu:
Sub PrintSheet()
'Definice objektů
Dim ws As Worksheet
Set ws = ThisWorkbook.Tabulky ("List1") 'zadejte název listu
' Tisk
ws.PrintOut
End Sub
2. Tisk rozsahu buněk:
Sub PrintRange()
'Definice objektů
Dim ws As Worksheet
Set ws = ThisWorkbook.Tabulky ("List1") 'zadejte název listu
Dim rng As Range
Set rng = ws.Range("A1:B10") 'udáváme rozsah
' Tisk
rng.PrintOut
End Sub
3. Pečeť s potvrzením:
Sub PrintWithConfirmation()
'Definice objektů
Dim ws As Worksheet
Set ws = ThisWorkbook.Tabulky ("List1") 'zadejte název listu
'Pečeť s potvrzením
If MsgBox ("chcete vytisknout list?", vbYesNo, "tisk") = vbYes Then
ws.PrintOut
End If
End Sub
4. Nastavení parametrů tisku:
Sub PrintWithOptions()
'Definice objektů
Dim ws As Worksheet
Set ws = ThisWorkbook.Tabulky ("List1") 'zadejte název listu
'Nastavení parametrů tisku
With ws.PageSetup
.Orientation = xlLandscape orientace na šířku
.FitToPagesTall = 1 'počet vertikálních stránek
.FitToPagesWide = 1 'počet horizontálních stránek
End With
' Tisk
ws.PrintOut
End Sub
Použití tiskových postupů VBA tedy umožňuje dosáhnout větší flexibility a kontroly při tisku souborů aplikace Excel.
Příklady použití tisku v VBA
Zde je několik příkladů použití VBA k tisku v Excelu:
| Příklad | Popis |
|---|---|
| 1 | Tisk celého listu |
| 2 | Tisk určitého rozsahu buněk |
| 3 | Tisk s nastavením parametrů tisku (např. počet stránek, orientace stránky atd.) |
| 4 | Tisk pomocí makra tisku (další akce před nebo po tisku) |
| 5 | Vytváření vlastních tiskových nastavení a jejich používání |
Toto jsou pouze některé příklady toho, jak lze VBA použít k tisku souborů aplikace Excel. Hlavní výhodou použití VBA je schopnost automatizovat rutinní úkoly související s tiskem a zefektivnit jej.
Pokud se chcete naučit používat VBA k tisku souborů aplikace Excel, doporučuje se prozkoumat dokumentaci Microsoft Excel VBA nebo najít online tutoriál nebo kurz na toto téma. S VBA, můžete vytvořit výkonné a flexibilní skripty, které vám pomohou automatizovat tisk a učinit jej pohodlnější a efektivnější.
Nastavení parametrů tisku
Při tisku dokumentu aplikace Excel pomocí VBA je možné nakonfigurovat různá nastavení tisku, abyste získali požadovaný výsledek. V této části se podíváme na několik nejpoužívanějších možností tisku.
| Parametr | Popis | Příklad použití |
|---|---|---|
| Zoom | Nastavuje úroveň zoomu při tisku. | ActiveSheet.PageSetup.Zoom = 85 |
| FitToPagesWide | Nastaví počet horizontálních stránek, na které bude list při tisku rozdělen. | ActiveSheet.PageSetup.FitToPagesWide = 1 |
| FitToPagesTall | Nastaví počet vertikálních stránek, na které bude list při tisku rozdělen. | ActiveSheet.PageSetup.FitToPagesTall = 2 |
| PrintArea | Nastaví rozsah buněk, které se budou tisknout. | ActiveSheet.PageSetup.PrintArea = "$A$1:$C$10" |
| Orientation | Určuje orientaci listu (na výšku nebo na šířku). | ActiveSheet.PageSetup.Orientation = xlLandscape |
| CenterHeader | Nastaví text záhlaví stránky na střed. | ActiveSheet.PageSetup.CenterHeader = "název stránky" |
| CenterFooter | Nastaví text zápatí na střed. | ActiveSheet.PageSetup.Centrfooter = "zápatí" |
Toto jsou jen některé z možností, které lze nakonfigurovat při tisku souboru Excel pomocí VBA. V závislosti na vašich potřebách můžete k dosažení požadovaného výsledku použít i jiné parametry.
Optimalizace tisku v Excelu pomocí VBA
Zde je několik způsobů, jak můžete použít k optimalizaci tisku v Excelu pomocí VBA:
1. Nastavení parametrů tisku:
Před tiskem dokumentu lze nastavit různé možnosti tisku, jako je měřítko, orientace stránky, pole a nadpisy. To umožní řídit vzhled tištěného dokumentu a učiní jej profesionálnějším.
2. Použití optimálního nastavení tisku:
Při tisku velkého množství dat lze využít nastavení tisku, která umožňují komprimovat informace na stránce tak, aby zabíraly méně místa. Můžete například použít možnosti tisku "škálovat na jednu stránku na šířku"nebo" škálovat na jednu stránku na výšku". To pomůže ušetřit papír a zlepšit čitelnost dokumentu.
3. Využití automatizace tisku:
VBA umožňuje automatizovat proces tisku, což jej urychluje a eliminuje možnost chyb. Můžete například napsat postup, který bude tisknout pouze určité rozsahy buněk nebo listy v souboru Excel. To je zvláště užitečné, když potřebujete vytisknout pouze část dat nebo provést dávkový tisk.
4. Optimalizace formátování pro tisk:
Při tisku dat z Excelu často dochází k problémům s formátováním, jako jsou oříznuté záhlaví nebo nesprávné zobrazení barev a písem. Pomocí VBA lze optimalizovat formátování pro tisk a zajistit, aby dokument vypadal tak, jak je zamýšlen.
Použitím VBA k optimalizaci tisku v Excelu lze zlepšit výkon, kvalitu a vzhled tištěných dokumentů. To je užitečné zejména při práci s velkým množstvím dat nebo v případě potřeby denního nebo dávkového tisku. Tyto příklady vám pomohou začít používat VBA k optimalizaci tisku a zlepšení vašich výsledků.