|
Microsoft Office Word |
|
|
Par-nepar u prelomuNivo:
Jedna davna spoznaja o opadanju kvaliteta dokumentacije je odvela vašeg komentatora u zabludu, nakon čega je javno izjavio da ne može da pronađe rešenje jednog problema, iako mu je ono bilo ispred nosa. Sva sreća da i dalje ima budnih i upornih, pa nam daju prosto VBA rešenje za zamenu preloma sekcija koji idu na parne i neparne stranice. Zanimljiva epizoda sa Sezama me je podsetila na nekoliko aktuelnih problema u naprednom radu sa sistemom Microsoft Office. Prvi problem je u tome što su programi postali kompleksni. To ne znači nužno problem za korisnika koji ne želi da koristi napredne funkcije, ali programiranje operacija u VBA modulima postaje sve napornije. Drugi problem je u tesnoj vezi sa prvim: kvalitet matične dokumentacije je opao. Znam da to može da zvuči čudno, pogotovo u današnje vreme, kad mnogi od nas raspolažu nekim oblikom stalne veze ka Internetu, a sistem pomoći je integrisan sa online sadržajima. Međutim, možete mi verovati na reč i ne morate: aktuelne verzije objektnih modela za Office programe su veoma obimne, ali sistem pomoći nije razvijen proporcionalno nekadašnjem kvalitetu... Ako ne tražite gde treba. Da nije tako, možda bih uspeo da rešim problem jednog kolege nakon što ga je postavio na Sezamu. Istina, na početku nisam gledao gde treba, ali drugi kolega je bio agilniji i rešio problem... Idemo redom. Problem je bio sledeći: postoji veoma veliki dokument u Wordu, a u njemu je na mnogo mesta zameniti vrste preloma sekcije - parne u neparne i obrnuto. Podsećam vas: kada ubacujete znak za prelom nove sekcije u dokumentu, to možete učiniti tako da izaberete sledeću stranicu, prvu sledeću parnu ili prvu sledeću neparnu; tome se ponekad pribegava u strogo formatiranim publikacijama. Da biste birali oblik preloma sekcije, u Wordu 2007 otvorite paletu Page Layout > Page Setup > Breaks (Raspored na stranici > Podešavanje stranice > Prelomi) i birajte jedan od dva preloma na dnu. U Wordu 2003, birajte dijalog Insert / Break (Umetanje / Prelom) i takođe birajte jedno od dva radio dugmeta na dnu spiska. Najpre nisam gledao gde treba: na kraju prethodne sekcije uvek postoji oznaka poput Section Break (Even/Odd Page), a malim igranjem dolazimo dotle da u oba slučaja to ostaje zapisano kao kodna oznaka ASC 12. Ispada kao da nema nikakve razlike u prelomu i da program samo prebaci sadržaj na željenu novu stranicu; ali, to mora da je zapisano negde, jer prelom ostaje uredan i posle većih promena u dokumentu. Zavirio sam u sistem VBA pomoći, pretražio objekat Section, ali nisam našao ništa; pokušao sam i sa generičkom pretragom ključnih reči oddpage i evenpage, pokušavajući da "napipam" neki primer koji sugeriše rešenje. Kako će se uskoro pokazati, neuspeh u tome je ispao ključni argument moje tvrdnje da kvalitet dokumentacije više nije na visini... Rekoh, gledao sam u integrisanom online sistemu pomoći, a napravio sam ključnu grešku: trebalo je da gledam u Object Browser (najbrže: F2 u VBE) i našao bih rešenje, upravo preko "zamišljenih" ključnih reči! Međutim, barem je neko bio uporan da nađe rešenje - i u tome je uspeo. Moj Kikinđanin Milan Birešev je uspeo da otkrije da se rešenje ne nalazi u objektu Section, nego u objektu PageSetup! Dalje je bilo lako, a konačno rešenje je sledeće:
Sub Zamena_Par_Nepar()
Dim Sc As Section
For Each Sc In Word.ActiveDocument.Sections
Select Case Sc.PageSetup.SectionStart
Case wdSectionEvenPage:
Sc.PageSetup.SectionStart = wdSectionOddPage
Case wdSectionOddPage:
Sc.PageSetup.SectionStart = wdSectionEvenPage
End Select
Next
End Sub
Nažalost, ispostavilo se da je kolega koji je tražio rešenje već rešio problem "na mišiće". Ali, ostalo je jedno iskustvo, rešenje za drugi put, a meni i vama priča sa poukom da pazite kako pretražujete pomoć dok pišete VBA programe.
|
|
Vrh stranice Prethodna stranica Naslovna strana Mapa sajta Pretraga |
| AFORIZAM ZA DANAS | OVIH DANA SLUŠAMO... |
| Copyright © Praktikum na Webu, 2000-2011; Valinor Design; sva prava pridržana. |