wie kann ich denn mit VBA feststellen, ob eine Zelle einen Kommentar besitzt?
Danke
Begges
Sub test()
Debug.Print HasComment(ActiveCell)
End Sub
Function HasComment(zelle As Range) As Boolean
On Error Resume Next
HasComment = zelle.Cells(1).Comment.Text <> ""
On Error GoTo 0
End Function
Function HasComment(zelle As Range) As Boolean
HasComment = Not zelle.Cells(1).Comment Is Nothing
End Function
Sub test()
If Range("A1").Comment Is Nothing Then
MsgBox "keine Kommentar"
Else
MsgBox "Kommentar"
End If
End Sub
Sub test()
If Cells(1, 1).Comment Is Nothing Then
MsgBox "Kein Kommentar"
Else
MsgBox "Kommentar enthalten"
End If
End Sub
Um festzustellen, ob eine Zelle in Excel einen Kommentar hat, kannst du VBA verwenden. Hier sind die Schritte:
Öffne den VBA-Editor:
ALT
+ F11
, um den Visual Basic for Applications (VBA) Editor zu öffnen.Füge ein neues Modul hinzu:
Füge den folgenden Code ein:
Function HasComment(zelle As Range) As Boolean
On Error Resume Next
HasComment = Not zelle.Cells(1).Comment Is Nothing
On Error GoTo 0
End Function
Rufe die Funktion auf:
Sub test()
If HasComment(ActiveCell) Then
MsgBox "Kommentar vorhanden"
Else
MsgBox "Kein Kommentar"
End If
End Sub
Führe den Code aus:
test
-Subroutine aus, um zu überprüfen, ob ein Kommentar vorhanden ist.Fehler 1: „Laufzeitfehler 91 - Objektvariable oder With-Blockvariable nicht festgelegt.“
Fehler 2: „Kein Kommentar angezeigt, obwohl einer vorhanden ist.“
Eine andere Möglichkeit, um zu überprüfen, ob eine Zelle einen Kommentar hat, ist die Verwendung einer einfachen If-Abfrage. Hier ein Beispiel:
Sub test()
If Range("A1").Comment Is Nothing Then
MsgBox "Kein Kommentar"
Else
MsgBox "Kommentar vorhanden"
End If
End Sub
Dieser Code prüft spezifisch die Zelle A1. Du kannst die Referenz nach Bedarf anpassen.
Hier sind einige praktische Beispiele, die dir helfen können, die Funktion zu testen:
Überprüfung einer bestimmten Zelle:
Sub CheckComment()
If Cells(1, 1).Comment Is Nothing Then
MsgBox "Kein Kommentar in Zelle A1"
Else
MsgBox "Kommentar in Zelle A1 vorhanden"
End If
End Sub
Überprüfung der aktiven Zelle:
Sub CheckActiveCellComment()
If HasComment(ActiveCell) Then
MsgBox "Kommentar in aktiver Zelle"
Else
MsgBox "Kein Kommentar in aktiver Zelle"
End If
End Sub
On Error Resume Next
sorgfältig, um unerwartete Fehler zu vermeiden.1. Wie kann ich feststellen, ob mehrere Zellen Kommentare haben?
Du kannst eine Schleife verwenden, um durch einen Zellbereich zu iterieren und die Funktion HasComment
für jede Zelle aufzurufen.
2. Funktioniert dieser Code in allen Excel-Versionen? Ja, der VBA-Code sollte in allen modernen Excel-Versionen funktionieren, die VBA unterstützen.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen