(Uz dužno poštovanje timmy-ju,)
Tvoje pitanje se svodi na mogućnost prilagođavanja opsega Print_Area "određenom uslovu" na radom listu.
OK, različiti su pristupi u rešavanju.. Ono od čega sam ja pošao je bilo: Da li se može rešiti korišćenjem dinamičkih opsega? Pa, može.
Pretpostavimo da imaš definisan (statički) opseg za štampanje: Print_Area. Definiciju ovog opsega naći ćeš u: Insert > Name > Define >>
Names in Workbook: Print_Area
U delu
Refers to: unesi sledeću definiciju
Code:
=IF(COUNTA(D78:D120)>0; INDIRECT("$A$1:$i$120"); INDIRECT("$A$1:$i$72"))
i opseg će se menjati u zavisnosti od definisanog "uslova popunjenosti". Naravno, VBA procedura jednako efikasno završava posao, ali, ako ti je to jedini VBA program u tabeli onda nije racionalno držati je zbog svih komplikacija sa "bezbednošću".
Nije tema ali zanimljivo mi je da nisam uspeo da uključim više oblasti (koje se ne dodiruju) na ovaj način. Izgleda mi da je to ograničenje f-je INDIRECT(), budući da je 'ručno' moguće zadati ovakav opseg za štampu - pri čemu će sve takve oblasti biti 'prelomljene' na posebnoj strani, i na to se ne može uticati.