Dopasuj wszystkie kolumny do jednej strony
Jeśli chcecie ustawić w Excelu, aby tabelka drukowana była na szerokości jednej strony – wystarczy to zrobić w ustawieniach strony albo od razu w podglądzie wydruku, wybierając opcję: Dopasuj wszystkie kolumny do jednej strony. Efekt będzie taki, że Excel trochę zmniejszy czcionkę naszej tabelki na wydruku (w arkuszu zostanie taka, jaka była), natomiast tabelka na szerokość zmieści się w 1 stronie. Powstaje jednak pytanie: jak to zrobić za pomocą makra? Jak nagramy makro z tym jednym ustawieniem – oto, co generuje Excel (musiałam zmniejszyć czcionkę, bo mi się nie zmieściło na ekranie!)::
Okazuje się jednak, że aby to zrobić w VBA wystarczy kilka linijek kodu, a nie 100, jak proponuje rejestrator. Na tym filmie, omawiam całe zagadnienie:
A tutaj możesz skopiować sobie kod:
Sub Drukuj() Application.PrintCommunication = False With ActiveSheet.PageSetup .FitToPagesWide = 1 .FitToPagesTall = 0 End With Application.PrintCommunication = True End Sub
Czasem działało mi tylko ActiveSheet.PageSetup.FitToPagesWide = 1, ale nie w każdym pliku… Na wszelki wypadek polecam więc pisać obie linijki.
A stąd możesz pobrać plik z gotowym makrem:
Plik do pobrania: