Microsoft Excel

Herbers Excel/VBA-Archiv

aus Kommentaren den Vefasser löschen



Excel-Version: 10.0 (Office XP)

Betrifft: aus Kommentaren den Vefasser löschen
von: Karl-Heinz
Geschrieben am: 04.06.2002 - 21:05:03

Hallo Fans,
wie kann ich aus allen Kommentaren den Verfasser löschen, für Eure Bemühungen besten Dank.
K-H

  

Re: aus Kommentaren den Vefasser löschen
von: L.Vira
Geschrieben am: 05.06.2002 - 01:25:34

Wie, beim Erstellen oder nachträglich bei vorhanden Kommentaren?

  

Re: aus Kommentaren den Vefasser löschen
von: Stefan
Geschrieben am: 05.06.2002 - 01:52:02

Hallo Karl-Heinz,

versuchs mal mit diesem Makro:

Sub Namen_entfernen()
Dim myComment As Comment
Dim intZeichen As Integer
Dim strNeu

For Each myComment In ActiveWorkbook.ActiveSheet.Comments
intZeichen = InStr(1, myComment.Text, ":", vbTextCompare)
If intZeichen > 0 Then
strNeu=Right(myComment.Text,Len(myComment.Text)-intZeichen-1)
myComment.Parent.Select
myComment.Delete
Selection.AddComment Text:=strNeu
End If
Next myComment

End Sub

Damit werden alle Namen aus den Kommentaren des aktiven Arbeitsblattes gelöscht.

Leider scheint der Name nicht explizit bearbeitbar zu sein, deshalb sucht das Makro nach einem Doppelpunkt und löscht alles davor, den Doppelpunkt selbst und das darauffolgende Zeichen (Zeilenumbruch). Das löschen und neu erstellen des Kommentars ist nötig, da sonst der Kommentartext fettgedruckt wird.

Gruß

Stefan


  

Re: aus Kommentaren den Vefasser löschen
von: sicci
Geschrieben am: 05.06.2002 - 03:08:20

Hallo Karl-Heinz und Stefan,

Man kann den Namen mit Comment.author ansprechen (nur Lesezugriff), dann im Comment.Text bearbeiten.
Mit Comment.clear kann man den Kommentar selbst ohne den Zellinhalt der ihm zugeordneten Zelle löschen.
Zusätzlich kann man noch abfragen, ob der Verfasser im Kommentar angegeben ist, damit nicht Teile des benötigten Textes gelöscht werden.


Sub Namen_entfernen()
Dim myComment As Comment
Dim strNeu$

For Each myComment In ActiveWorkbook.ActiveSheet.Comments
  With myComment
    If Left(.Text, Len(.Author)) = .Author Then
      strNeu = Right(.Text, Len(.Text) - Len(.Author) - 2)
      .Parent.ClearComments
      .Parent.AddComment Text:=strNeu
    End If
  End With
Next

End Sub


Gruß
sicci
  

Re: aus Kommentaren den Vefasser löschen
von: Karl-Heinz
Geschrieben am: 05.06.2002 - 10:11:23

Hallo L.Vira,
danke für die Hilfe, mir geht es um das nachträgliche entfernen vom Namen aus den Kommentaren, also dieses "kommentiert von..."
Danke K-H

 

Beiträge aus den Excel-Beispielen zum Thema "aus Kommentaren den Vefasser löschen"