VBA Autofit Spaltenbreite bei Änderung

Bild

Betrifft: VBA Autofit Spaltenbreite bei Änderung
von: Michael
Geschrieben am: 08.09.2015 10:08:43

Hallo,
besteht die Möglichkeit einer automatischen Spalten und Zeilenanpassung mittels VBA beim öffnen eines Sheets/Tabs? Es geht darum, dass bei unterschiedlicher Monitorauflösung teilweise die Werte ### werden. Der Anwender soll nicht umständlich selber die Spaltenbreite anpassen, das soll automatisch geschehen. Genauso wenn man die Zoomstufe verändert.
Gruß
Michael

Bild

Betrifft: AW: VBA Autofit Spaltenbreite bei Änderung
von: Michael (migre)
Geschrieben am: 08.09.2015 11:42:52
Hallo Michael!
Diese Möglichkeit besteht. Bspw. so (Code muss in DieseArbeitsmappe - Alt+F11 um in den VB-Editor zu gelangen, links oben im Projektexplorer DoKlick auf DieseArbeitsmappe - Code einfügen):

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    Sh.Cells.EntireColumn.AutoFit
End Sub
Damit werden alle Spalten jenes Tabellenblattes AutoAngepasst, das gerade ausgewählt wurde. Bezieht sich somit auf alle Tabellenblätter. Einschränkung auf nur 1 Blatt wäre möglich.
LG
Michael

Bild

Betrifft: AW: Für nur 1 bestimmtes Tabellenblatt...
von: Michael (migre)
Geschrieben am: 08.09.2015 11:45:23
Michael,
... schaut der Code so aus - Tabellenblattname muss natürlich angepasst werden:

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    
    If Sh.Name = "Tabelle1" Then
        Sh.Cells.EntireColumn.AutoFit
    End If
    
End Sub
LG
Michael

Bild

Betrifft: AW: VBA Autofit Spaltenbreite bei Änderung
von: Michael
Geschrieben am: 08.09.2015 11:49:32
Danke Michael,
ich hatte einen ähnlichen Ansatz gefunden aber deine Variante scheint schneller zu sein!
Danke und Gruß
Michael

Bild

Betrifft: AW: Gerne, Danke für die Rückmeldung, owT
von: Michael (migre)
Geschrieben am: 08.09.2015 12:25:47


 Bild

Beiträge aus den Excel-Beispielen zum Thema "VBA Autofit Spaltenbreite bei Änderung"