Pagina 1 din 1

Set print area

Scris: Joi Noi 05, 2020 8:21 am
de RAMBO
Buna ziua.
In cadrul unui cod am pus la un moment dat linia

Cod: SelectaĊ£i tot

ActiveSheet.PageSetup.PrintArea = "$A$1:Table1[#All]"
Si face ce zice ca face. Ideea este ca tabelul cu pricina are bifat Total row, iar cand rulam codul vechi nu se printa randul de total, asa ca am venit cu ideea de mai sus. Problema este ca tabelul original are multe coloane, iar la printare imi scoate n pagini; adica cu tot ce nu a incaput in formatul A4. Cum ar trebui modificat codul de mai sus pentru a putea declara ca PrintArea toate randurile tabelului (numar variabil) inclusiv total row, si totodata sa declar o "limita" pana la ce coloana doresc PrintArea. Presupunem numele de coloane de genul Column1, Column2 etc.
Multumesc.

Re: Set print area

Scris: Vin Noi 06, 2020 9:01 am
de IPP
Buna ziua

O varianta ar fi sa ascundeti inainte de tiparire coloanele care nu va intereseaza si sa le reafisati dupa tiparire.
Evident ca asta presupune ca acel table ramane intr-o pozitie fixa si astfel, de exemplu coloana E din Excel ar corespunde Column5 din table daca acesta din urma incepe de pe coloana A.

Nu tin minte sa fi vazut undeva ceea ce doriti ca fiind setabil direct in PrintArea

IP

Re: Set print area

Scris: Mie Noi 11, 2020 9:43 am
de RAMBO
Pai exact asa si procedez (via VBA); adica codul original face ce face pe acolo, apoi ascunde coloanele care se doresc ascunse, apoi urma linia

Cod: SelectaĊ£i tot

ActiveSheet.PageSetup.PrintArea = "$A$1:Table1
care nu printa randul de total row. Asa ca am modificat cu acel [#All] la sfarsit, dar acum am problema ca imi scoate print la tot tabelul, chiar daca sunt coloane ascunse. Nu sunt sigur de ce se intampla asta, dar asa face.

Re: Set print area

Scris: Mie Noi 11, 2020 10:28 am
de IPP
Buna ziua

Poate daca veti pune la un moment dat si un fisier exemplu se vor putea incerca si alte workaround-uri. De exemplu, tot via macro:
-identificat adresa ultimei celule din tabel (chiar daca aceea e pe randul cu totaluri)
-anulat orice setare print area anterioara
-setat print area noua care ar arata "normal", de ex. ActiveSheet.PageSetup.PrintArea = "$A$1:$F$100" , in functie de ultima adresa de celula
-ascundere coloane inutile
-printare
-reafisare coloane
-[optional]: resetare print area

IP

Re: Set print area

Scris: Vin Noi 20, 2020 8:42 am
de RAMBO
Mda. Pana la urma i-am dat de cap. Din pacate fisierul original a devenit foarte incarcat si "scapa" tot felul de lucruri. A mers asa cum trebuia sa mearga, adica codul mai intat ascunde toate coloanele nedorite, printare cu print area, apoi le reafiseaza. Doar ca eu aveam impresia ca ascunsesem toate coloanele, cand de fapt nu era asa.