Wood Star
10.05.23,07:17
Prikladám súbor ako príklad. Potrebovala by som v ňom 1. nastaviť, aby riadky 6-8 boli v hlavičke, ale len od strany 2, nie na prvej strane. A za 2. nastaviť, aby sa pri tlači zobrazovali riadky 39-41 (toto nie je problém) a stĺpce od A39-C165. Našla som len nastavenie na A-C, ale to mi opakovalo aj to čo je v riadkoch 1-38, a ja potrebujem len od riadku 39. Dá sa toto vôbec spraviť? Nechce sa mi to zakaždým robiť ručne kopírovaním.
ivka70
10.05.23,05:43
ja by som to urobila vo worde s nastavenim hlaviciek tak ako chces a vlozenim Excel tabulky do tela wordu ....
Wood Star
10.05.23,06:01
Tu som dala len zjednodušenú verziu, ale tá tabuľka je normálne poprepájaná s údajmi v ďalších hárkoch, je tam kopec údajov a výpočtov...
ivka70
10.05.23,06:14
Ved do Wordu hodis Excelovsku tabulku, tam nestratis prepojenia ......
Wood Star
10.05.23,06:20
To mi asi neschvália. Ozaj to nejde v Exceli?
ivka70
10.05.23,06:29
to neviem, prwto som napisala len komentar, mozno sa to nejako komplikovane da a niekto odpovie, ale Excel nie je prioritne urceny na vyrabanie dokumentov :)
xxn
15.05.23,08:17
trochu som sa s tým potrápil ale žiaľ nepoteším Ťa.

Vlastnosť ktorá v excel zošitoch zabezpečuje opakovanie hlavičky na každej strane (Worksheet.PageSetup.PrintTitleRows) sa nedá udať ako oblasť ale len ako celé riadky, pričom podmienkou je aby tieto riadky nasledovali po sebe. Navyše tieto riadky nesmú byť skryté.

Ako (čiastočné) riešenie som pred "veľkú tabuľku" pridal tri riadky (39-41) do ktorých sa prenesú údaje z oblasti "A6:H8". Tým vznikne oblasť riadkov 39-44 ktoré sa budú opakovať na každej strane. Žiaľ aj na prvej ...

1: Nakopíruj si svoje data do príslušných (vyfarbených) oblastí, potrebných pre tlač.
2.Spusti makro (modrý button)

PS: toto fórum nenačíta súbory obsahujúce makrá. Súbor je uložený na:
https://uloz.to/tam/0e630b22-7e1e-46b6-a69c-e3c2027d85f8

PS2: tu je makro v texťáku:

Sub SetSpecificPrintAreas()
Dim wb As Workbook
Dim ws As Worksheet
Dim wbPath As String

Dim Rng_Head1, Rng_Head2, Rng_Data As Range
Dim NumOfPages As Long
Dim i As Integer

Set wb = ThisWorkbook
Set ws = wb.Sheets("Hárok1")
wbPath = wb.Path

'Set Rng_Head1 = ws.Range("A6:H8")
Set Rng_Head2 = ws.Range("A39:P44")
Set Rng_Data = ws.Range("A45").CurrentRegion
Set Rng_Data = Rng_Data.Offset(3, 0).Resize(Rng_Data.Rows.Count - 3, Rng_Data.Columns.Count)

ws.ResetAllPageBreaks
ws.DisplayPageBreaks = False

If ws.Name = "Hárok1" Then
NumOfPages = ws.PageSetup.Pages.Count

With ws.PageSetup
.LeftMargin = Application.InchesToPoints(0.25)
.RightMargin = Application.InchesToPoints(0.25)
.TopMargin = Application.InchesToPoints(0.5)
.BottomMargin = Application.InchesToPoints(0.5)
.HeaderMargin = Application.InchesToPoints(0.3)
.FooterMargin = Application.InchesToPoints(0.3)

.Orientation = xlLandscape
.FitToPagesWide = 1
.FitToPagesTall = False
.PrintGridlines = True

.PrintTitleRows = "$39:$44"
.PrintArea = Rng_Data.Address
End With

End If
ws.PrintPreview

'ws.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
'wbPath & "\Pokus1.pdf", _
'Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
':=False, OpenAfterPublish:=False

End Sub