Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1888to1892
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Kommentar formatieren

Kommentar formatieren
14.07.2022 22:42:58
BriBri
Guten Abend,
ich brauche eure Hilfe, da ich selbst nicht weiterkomme. Ich wollte in meinen Kommentaren nur den Kommentarnamen umbenennen. Dieser ist ja standardmäßig fett gedruckt, während der Kommentar selbst nicht fett ist. Bei der Änderung des Kommentarnamens ist nun alles fett, was ich nicht will. Wie kann ich nun den Kommentartext wieder nicht-fett machen? Das ist mein Code:

Sub ChangeCommentName()
Dim xWs As Worksheet
Dim xComment As Comment
Dim oldName As String
Dim newName As String
oldName = "briga"
newName = "Eva"
For Each xWs In Application.ActiveWorkbook.Worksheets
For Each xComment In xWs.Comments
xComment.Text (Replace(xComment.Text, oldName, newName))
Next
Next
End Sub
Danke für eure Hilfe.
Brigitte

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kommentar formatieren
15.07.2022 08:23:32
hary
Moin
Meinst du es so?

For Each xComment In xWs.Comments
xComment.Text (Replace(xComment.Text, oldName, newName))
xComment.Shape.TextFrame.Characters(Len(newName)+1).Font.Bold = False
Next
gruss hary
AW: Kommentar formatieren
15.07.2022 23:11:34
BriBri
Halo Harry,
Danke für deinen Input. Es passiert etwas Eigenartiges: ich bekomme eine Fehlermeldung bei der Ausführung des Codes: Laufzeitfehler 1004 "Bold-Eigenschaft des Font Objects kann nicht festgelegt werden". Wenn ich mir dann die Kommentare ansehe, sind sie so, wie ich es wollte: Name: fett, der Rest nicht fett. Und zwar alle, in allen 14 Sheets.
Damit bin ich ja schon voll zufrieden, aber wegen der Fehlermeldung bin ich irritiert.
Hast du eine Idee, was man an dem Code ändern muss, damit die Fehlermeldung ausbleibt. Da ich mich erst sehr kurz mit VBA beschäftige, weiß ich nicht, ob solche Fehlermeldungen öfter auftreten, obwohl der Code funktioniert.
Brigitte
Anzeige
AW: Blattschutz?
16.07.2022 07:50:52
hary
Moin Brigitte
Den Fehler:
"ich bekomme eine Fehlermeldung bei der Ausführung des Codes: Laufzeitfehler 1004 "Bold-Eigenschaft des Font Objects kann nicht festgelegt werden".
kann ich nur nachvollziehen wenn ein / mehrere Blaetter geschuetzt sind.
Hast du einen Blattschutz drin?
gruss hary
AW: Blattschutz?
17.07.2022 12:41:33
BriBri
Grüß dich Harry,
sitz erst jetzt wieder bei dem File. Du hattest recht. In einem meiner zahlreichen Sheets war wirklich noch der Blattschutz drinnen. Jetzt funktioniert alles, wie es sein sollte. Danke nochmals für deine Hilfe.
Schönen Sonntag.
Brigitte
AW: Kommentar formatieren
15.07.2022 08:31:02
Oberschlumpf
Hi Brigitte,
vielleicht hilft auch das hier:

Sub test()
Dim lshaAll As Shape
For Each lshaAll In ActiveSheet.Shapes
With lshaAll.TextFrame
.Characters(InStr(.Characters.Text, Chr(10)), Len(.Characters.Text) - InStr(.Characters.Text, Chr(10)) + 1).Font.Bold = False
End With
Next
End Sub
Ok, ich hab old- + newName nicht berücksichtigt.
Aber vielleicht hilft ja auch meine Idee trotzdem.
Ciao
Thorsten
Anzeige
AW: Kommentar formatieren
15.07.2022 23:31:21
BriBri
Hallo Thorsten,
danke erstmal für deine Antwort. Ich habe deinen Code einfach am Ende meines Codes angehängt: In Tabelle 1 läuft alles gut, ab Tabelle 2 werden alle Kommentare fett.
Ich habe dann noch die Zeile von Harry hineinkopiert und alles funktioniert wie es soll, und ich bekomme auch keine Fehlermeldung, die ich aber bekomme, wenn ich nur Harrys Zeile kopiere.
Ich bin ja sehr froh, dass jetzt alles so ist, wie ich wollte, bloß verstehen tue ich es nicht. Hier nochmal der vollständige Code.
Brigitte

Option Explicit
Sub ChangeCommentName()
Dim xWs As Worksheet
Dim xComment As Comment
Dim oldName As String
Dim newName As String
Dim lshaAll As Shape
oldName = "briga"
newName = "eva"
For Each xWs In Application.ActiveWorkbook.Worksheets
For Each xComment In xWs.Comments
xComment.Text (Replace(xComment.Text, oldName, newName))
xComment.Shape.TextFrame.Characters(Len(newName) + 1).Font.Bold = False
Next
Next
For Each lshaAll In ActiveSheet.Shapes
With lshaAll.TextFrame
.Characters(InStr(.Characters.Text, Chr(10)), Len(.Characters.Text) - _
InStr(.Characters.Text, Chr(10)) + 1).Font.Bold = False
End With
Next
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige