< návrat zpět

MS Excel


Téma: Rozdělení tabulky u více listů rss

Zaslal/a 19.11.2019 17:27

Zdravím
Řeším neřešitelný problém, ale snad někoho něco napadne.
Mám list v excelu, který musí mít opakující se záhlaví a opakující se zápatí. Layout stránky je tedy:
- Záhlaví
- Text
- Tabulka
- Text
- Zápatí
Vše funguje jak má až do chvíle, kdy je tabulka větší a vše vyjmenované se nevejde na jednu stránku. V takovém případě obsah pokračuje na další stránku. Bohužel, nepřišel jsem na to, jak rozdělovat tabulku mezi řádky, respektive aby byl celý obsah řádku na stránce první a celý obsah řádku na straně druhé. Nyní jednoduše rozdělí stránky uprostřed řádku tabulky, což je pro mne problém.

Zaslat odpověď >

Strana:  « předchozí  1 2 3
icon #045051
avatar
Location vracia objekt, v tomto pripade Range, na ktorom je zalomenie.
MergeArea vracia Range v pripade, ze adresa bunky je sucastou zlucenych buniek.
Cells(1,1) vracia lavu hornu bunku zlucenej oblasti.
Ten test teda testuje, ci sa zalomenie stranky nachadza v lavej hornej bunke oblasti zlucenych buniek, ak nie, posunie ho prave tam.
Pisem to z mobilu, za pripadne nepresnosti sa ospravedlnujem, ale to vysvetlenie +/- sedi..
Ten kod v podstate robi to, co Ty popisujes vo svojom poslednom prispevku slovne, akurat neprechadza vsetky bunky, ale iba tie, na ktorych sa nachadza zalomenie stranok.citovat
#045053
avatar
Takže ještě jednou děkuji všem, pochopitelně hlavně ALovi a Marjankajovi.

Doplnil jsem do kódu dva řádky, díky kterým mi to pravděpodobně funguje, tak jak potřebuji (tedy testoval jsem a vždy se mi rozdělilo tam, kde potřebuji)

Takže, kdyby někdo v budoucnu řešil, kód je zde:
Sub SetPageBreaks()
Dim pb As HPageBreak ' Deklarace proměnné pb s datovým typem HPageBreak (vodorovné zalomení stránky)
ActiveWindow.View = xlPageBreakPreview
For Each pb In ActiveSheet.HPageBreaks ' Opakuj proměnnou pb (vodorovné zalomení stránky) tak dlouho, dokud nenarazíš na konec tisknutelné oblasti
With pb ' Vykonávej posloupnost příkazů
If .Location <> .Location.MergeArea.Cells(1, 1) Then ' Jestliže .Location se nerovná .Location.MergeArea.Cells(1, 1), pak...
Set .Location = .Location.MergeArea.Cells(-1, 1) ' Přiřazení
End If ' Konec opakování
End With ' Konec posloupnosti
Next pb
ActiveWindow.View = xlNormalView
End Sub
citovat
icon #045054
avatar
nemáš zač, toto bola úloha na pár minút :)citovat

Strana:  « předchozí  1 2 3

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje