Probleem
Ik heb een hoop Excel documenten die van een Amerikaan komen. Paginagrootte staat op letter en onze printer vind dat niet zo leuk. Met VBA kan ik de paginagrootte gemakkelijk aanpassen, maar dan past de inhoud in de breedte niet meer op één blad. De oorzaak is een verticale pagebreak voor de laatste cel.
Handmatig kan ik deze wel verwijderen door via afdrukvoorbeeld naar pagina-eindevoorbeeld te gaan en de pagebreak naar buiten te schuiven. Maar om dit nu voor 1000+ sheets te gaan doen...
geprobeerd
- De macrorecorder erbij genomen en gekeken wat hij deed. Hij gebruikte de DragOff methode van het PageBreak-object. Als ik deze methode echter zelf aanroep vanuit vba, werkt dit niet. Ik denk omdat hij niet in het pagina-eindevoorbeeld is, dit kan echter niet openen vanuit VBA.
- De Delete methode van een PageBreak-object, roept een door het object gedefinieerde fout op.
- De Location-eigenschap aanpassen van het pagebreak-object doet helemaal niets...
Oplossing
Was helemaal in de verkeerde hoek aan het zoeken. Met de volgende code is alles opgelost.
code:
1
2
| aSheet.PageSetup.FitToPagesTall = 1
aSheet.PageSetup.FitToPagesWide = 1 |
Versie: Excel 2000
[
Voor 12% gewijzigd door
-Klimaks- op 27-02-2004 11:34
. Reden: Versie vergeten, oplossing gevonden ]
In those days spirits were brave, the stakes were high, men were REAL men, women were REAL women, and small furry creatures from Alpha Centauri were REAL small furry creatures from Alpha Centauri.
Zaphod in The Hitchhikers Guide To The Galaxy