Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Kommentarfeld mit Makro formatieren

Kommentarfeld mit Makro formatieren
manasse
Hallo zusammen,
ich schreibe mit VBA ein Makro z.B.
Range("A1").AddComment
Range("A1").Comment.Text Text:="BlaBlaBla"
Nun habe ich mit dem Makrorekorder das Kommentarfeld gleich mit formatiert (die Größe angepasst):
Range("A1").AddComment
Range("A1").Comment.Text Text:="BlaBlaBla"
Selection.ShapeRange.ScaleWidth 3.05, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight 2.09, msoFalse, msoScaleFromTopLeft

Da meldet das Makro einen Fehler.
Hat jemand eine Vorschlag, wie ich die Formatierung (Größe) des Kommentarfeldes gleich mit in das Makro einbauen kann?
Info: Ich haben die Beiträge in Archiv gelesen, haben mir aber nicht wirklich geholfen.
Herzlichen Dank im Voraus für jede Hilfe.
Gruß
Manasse
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Kommentarfeld autosize
17.03.2011 16:05:09
hary
Hallo Manasse
meinst Du Autofit?

With Range("A1")
.AddComment
.Comment.Text Text:="BlaBlaBla"
.Comment.Shape.TextFrame.AutoSize = True
End With

gruss hary
AW: Kommentarfeld autosize
17.03.2011 16:48:17
manasse
Hi Hary,
ganz herzlichen Dank für Deinen Input. Klappt Prima!!!
Gruß
Manasse
Anzeige
Kommentar Schriftgröße
17.03.2011 17:23:12
manasse
Hallo Hary,
nochmal eine Frage. Mit welchem Befehl formatiere ich denn die Schriftgröße z.B. 10. Der Befehl
.Comment.Size = 10
klappt da nicht.
Gruß
Manasse
AW: Kommentar Schriftgröße
17.03.2011 17:32:15
hary
Hallo

.Comment.Shape.TextFrame.Characters.Font.Size = 10

gruss hary
Anzeige
Super, aller besten Dank!!!
18.03.2011 12:00:05
manasse
Hallo,
ganz herzlichen Dank für die zusätzliche Info!!!!!!!!!!!!!!
Habe dies gleich in eine riesige Tabelle mit unglaublich vielen Kommentaren eingearbeitet. Macht sich jetzt richtig gut und ist benutzerfreundlich.
Gruß Manasse
Kommentarfeld mit Makro befüllen und formatieren
17.03.2011 16:06:44
NoNet
Hallo Manasse,
hier mal ein kleines Codebeispiel, wie man das Kommentarfedl befüllen und formatieren kann :
Sub KommentarfeldFormatieren()
With Range("A1") 'Kommentarfeld für Zelle A1 :
If .Comment Is Nothing Then 'Wenn noch kein Kommentar existiert :
.AddComment "Hier der Text des Kommentarfeldes"
Else 'Ansonsten : Text ändern
.Comment.Text Text:="Geänderter Text des Kommentarfeldes"
End If
.Comment.Shape.Width = 230 'Breite des Kommentarfeldes
.Comment.Shape.Height = 80 'Höhe   des Kommentarfeldes
End With
End Sub
GLEICHZEITIG funktioniert das jedoch nicht, sondern nur nacheinander ...
Gruß, NoNet
Anzeige
Besten Dank
17.03.2011 16:49:48
manasse
Hallo NoNet,
super Lösung. Speicher ich mir auch für andere Zwecke ab.
Ganz herzlichen Dank für Deinen Input
Gruß
Manasse
;
Anzeige
Anzeige

Infobox / Tutorial

Kommentarfeld in Excel mit Makro formatieren


Schritt-für-Schritt-Anleitung

Um das Kommentarfeld in Excel mithilfe eines Makros zu formatieren, kannst du folgende Schritte befolgen:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.

  2. Füge einen neuen Modul hinzu, indem du im Menü auf Einfügen > Modul klickst.

  3. Kopiere den folgenden Code in das Modul:

    Sub KommentarfeldFormatieren()
       With Range("A1") ' Kommentarfeld für Zelle A1
           If .Comment Is Nothing Then ' Wenn noch kein Kommentar existiert
               .AddComment "Hier der Text des Kommentarfeldes"
           Else ' Ansonsten: Text ändern
               .Comment.Text Text:="Geänderter Text des Kommentarfeldes"
           End If
           .Comment.Shape.Width = 230 ' Breite des Kommentarfeldes
           .Comment.Shape.Height = 80 ' Höhe des Kommentarfeldes
           .Comment.Shape.TextFrame.AutoSize = True ' Größe automatisch anpassen
       End With
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Führe das Makro aus, indem du ALT + F8 drückst, das Makro auswählst und auf Ausführen klickst.

Mit diesem Makro kannst du das Kommentarfeld vergrößern und die Notizgröße automatisch anpassen.


Häufige Fehler und Lösungen

  • Fehler: "Objekt unterstützt diese Eigenschaft oder Methode nicht."

    • Lösung: Stelle sicher, dass du den richtigen Code verwendest. Der Befehl .Comment.Shape.TextFrame.AutoSize = True sollte in einem With-Block verwendet werden.
  • Problem: Die Schriftgröße wird nicht geändert.

    • Lösung: Verwende den richtigen Befehl, um die Schriftgröße zu ändern:
    .Comment.Shape.TextFrame.Characters.Font.Size = 10

Alternative Methoden

Falls du die Formatierung von Kommentaren in Excel ohne VBA durchführen möchtest, kannst du dies manuell tun:

  1. Klicke mit der rechten Maustaste auf die Zelle mit dem Kommentar.
  2. Wähle "Kommentar bearbeiten".
  3. Formatiere den Text im Kommentarfenster über die Optionen im Menüband (z. B. Schriftart, Größe).

Praktische Beispiele

Hier ist ein Beispiel, wie du alle Kommentare in einer Excel-Tabelle gleichzeitig formatieren kannst:

Sub AlleKommentareFormatieren()
    Dim cmt As Comment
    For Each cmt In ActiveSheet.Comments
        cmt.Shape.Width = 230
        cmt.Shape.Height = 80
        cmt.Shape.TextFrame.AutoSize = True
    Next cmt
End Sub

Mit diesem Makro kannst du alle Kommentare gleichzeitig formatieren, sodass sie einheitlich aussehen.


Tipps für Profis

  • Automatische Größenanpassung: Verwende .Comment.Shape.TextFrame.AutoSize = True, um die Größe des Kommentarfeldes automatisch an die Inhalte anzupassen.
  • Benutzerfreundlichkeit: Achte darauf, dass die Größe der Kommentare nicht zu groß wird, um die Übersichtlichkeit der Tabelle zu gewährleisten.
  • Testen: Teste dein Makro in einer Kopie deiner Arbeitsmappe, um ungewollte Änderungen zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich die Größe von Kommentaren in Excel automatisch anpassen?
Du kannst die Größe automatisch anpassen, indem du den Befehl .Comment.Shape.TextFrame.AutoSize = True in deinem Makro verwendest.

2. Kann ich die Schriftgröße von Kommentaren mit einem Makro ändern?
Ja, verwende dafür den Befehl .Comment.Shape.TextFrame.Characters.Font.Size = [Größe], um die gewünschte Schriftgröße festzulegen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige