Jak automatycznie dopasować kolumny za pomocą vba (z przykładem)


Możesz użyć metody AutoFit w VBA, aby automatycznie dostosować szerokość jednej lub większej liczby kolumn w arkuszu programu Excel.

Oto powszechny sposób wykorzystania tej metody w praktyce:

 SubAutoFitColumns ()
Columns(" A:D ").AutoFit
End Sub

To konkretne makro automatycznie dostosowuje szerokość każdej kolumny w zakresie od A do D tak, aby była tak szeroka, jak jest to konieczne do wyświetlenia najdłuższej komórki w każdej kolumnie.

Poniższy przykład pokazuje jak w praktyce zastosować metodę AutoFit .

Przykład: Jak automatycznie dopasować kolumny za pomocą VBA

Załóżmy, że mamy w programie Excel następujący zbiór danych zawierający informacje o różnych koszykarzach:

Załóżmy, że chcemy automatycznie dostosować szerokość każdej kolumny od A do D, aby była tak szeroka, jak to konieczne, aby wyświetlić najdłuższą komórkę w każdej kolumnie.

W tym celu możemy utworzyć następujące makro:

 SubAutoFitColumns ()
Columns(" A:D ").AutoFit
End Sub

Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:

Należy pamiętać, że szerokość każdej kolumny została automatycznie dostosowana tak, aby była tak szeroka, jak to konieczne, aby wyświetlić najdłuższą komórkę w każdej kolumnie.

Pamiętaj, że jeśli chcesz automatycznie dostosować każdą kolumnę w określonym arkuszu, możesz użyć następującej składni:

 SubAutoFitColumns ()
ThisWorkbook.Worksheets(" Sheet1 ").Cells.EntireColumn.AutoFit
End Sub

To konkretne makro automatycznie dostosuje szerokość każdej kolumny w Arkuszu 1 tak, aby była tak szeroka, jak to konieczne, aby wyświetlić najdłuższą komórkę w każdej kolumnie.

Należy pamiętać, że szerokość wszystkich kolumn bez danych pozostanie niezmieniona.

Uwaga : Pełną dokumentację metody AutoFit w VBA znajdziesz tutaj .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:

VBA: Jak policzyć liczbę użytych kolumn
VBA: Jak znaleźć ostatnio używaną kolumnę
VBA: jak usunąć kolumny

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *