Kommentare gleich groß

Allen Kommentaren im Blatt / Bereich die gleiche Größe zuweisen

Manch­mal ist es wün­schenswert, wenn alle Kom­mentare in einem Arbeits­blatt oder einem definierten Bere­ich die gle­iche Größe haben. Das lässt sich per Makro am leicht­esten real­isieren. Beispiel­haft bieten wir Ihnen hier ver­schiedene Möglichkeit­en an:

Alle Kommentare bei jeder Aktivierung

Wenn bei jed­er Aktivierung, also dem ersten Aufruf des Arbeits­blattes alle Kom­mentare die gle­iche Größe haben sollen, dann bietet sich solch ein Code an:

Sub WorkSheet_Activate()
'Bei jedem aktivieren des Arbeitsblattes alle Kommentare gleiche Größe
    Dim cmt As Comment
    For Each cmt In thisworksheet.Comments
        With cmt.Shape
            .Width = 350
            .Height = 60
        End With
    Next cmt
End Sub

▲ nach oben …

Makro-Aufruf per Hand oder Button, Größe wie Muster-Zelle

Sehr ähn­lich ist der Code, wenn das Makro per Hand aufgerufen wer­den soll oder eine Schalt­fläche der Aus­lös­er ist. Erweit­ernd wird hier eine Muster-Zelle mit Kom­men­tar vorgegeben, wo die Größe aus­ge­le­sen und dem Kom­men­tar der restlichen Zellen zugewiesen wird. Ist in der definierten Muster-Zelle kein Kom­men­tar, dann wer­den vorgegebe­nen Werte genom­men.

Sub AlleKommentareGleichGross()
'Alternative: Auslöser per Hand oder beispielsweise Button
'Maße wir Kommentar in A1 (oder angepasst)
'Wenn in Musterzelle kein Kommentar, dann Vorgabe Standard
    Dim rng As Range, cmt As Comment
    Dim Hoehe As Integer, Breite As Integer
    
    Set rng = Range("A1")   'Anpassen
    If Not rng.Comment Is Nothing Then
        With rng.Comment.Shape
            Hoehe = .Height
            Breite = .Width
        End With
    Else    'Sonst Standard-Größe
        Hoehe = 75
        Breite = 250
    End If
    
    For Each cmt In thisworksheet.Comments
        With cmt.Shape
            .Width = Breite
            .Height = Hoehe
        End With
    Next cmt
End Sub

▲ nach oben …

Kommentare nur in einem bestimmten Bereich anpassen

Sollen die Größen der Kom­mentare nur in einem bes­timmten Bere­ich angepasst wer­den, dann bietet sich solch ein Makro an:

Sub AlleKommentareInBereichGleichGross()
'Alternative: Auslöser per Hand oder beispielsweise Button
'Maße wir Kommentar in A1 (oder angepasst)
'Wenn in Musterzelle kein Kommentar, dann Vorgabe Standard
'Änderung: Nur bestimmter Bereich wird größenmäßig angepasst
    Dim rng1 As Range, rng2 As Range, c As Range
    Dim cmt As Comment
    Dim Hoehe As Integer, Breite As Integer
    
    Set rng1 = Range("A1")   'Muster-Zelle, Anpassen
    Set rng2 = Range("B3:H20")  'Dort soll geändert werden
    If Not rng1.Comment Is Nothing Then
        With rng1.Comment.Shape
            Hoehe = .Height
            Breite = .Width
        End With
    Else    'Sonst Standard-Größe
        Hoehe = 75
        Breite = 250
    End If
    
    For Each c In rng2
        If Not c.Comment Is Nothing Then
            With c.Comment.Shape
                .Width = Breite
                .Height = Hoehe
            End With
        End If
    Next c
End Sub

Selb­stre­dend lassen sich weit­ere Eigen­schaften der Kom­mentare in solch ein Makro ein­binden. Beispiel­sweise Hin­ter­grund­farbe, Schrif­tart oder ähn­lich. Alle drei Makros kön­nen Sie hier im Textfor­mat als gepack­te Datei (*.zip) herunter laden und in ein Mod­ul Ihrer Mappe einpfle­gen.

[NachOben­Let­zte Verweis=„CS: Alle Kom­mentare gle­ich groß”]
Dieser Beitrag wurde unter Code-Schnipsel, Tabelle und Zelle, Tipps und Tricks abgelegt und mit , , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.