Supportnet / Forum / Tabellenkalkulation
Kommentar Makro
Frage
Sehr geehrte Damen und Herren,
ich habe folgendes Problem. Ziel ist es mit Hilfe eines Makros den Tabelleninhalt in eine Kommentarzeile zu schreiben. Dazu habe ich bisher dieses Makro verwendet das ich ebenfalls diesem Forum entnommen habe daher ich keinerlei Wissen in Hinsicht Makroprogrammierung habe.
Sub Kommentar_Alt()
ActiveCell.AddComment
ActiveCell.Comment.Visible = False
ActiveCell.Comment.Text Text:=ActiveCell & Chr(10) & ""
ActiveCell.Select
ActiveWindow.SmallScroll Down:=-9
End Sub
Nun soll das Makro allerdings auf den Zellbereich B3:AH2000 angewendet werden. Zudem sollen leere Felder keinen Kommentar bekommen.
Es wäre unheimlich nett wenn mir jemand in dieser Hinsicht helfen könnte.
Mit freundlichen Grüßen
Daniel
Antwort 1 von Hajo_Zi
Hallo Daniel,
Option Explicit
Sub Kommentar_Alt()
Dim RaZelle As Range
For Each RaZelle In Range("B3:AH2000")
With RaZelle
If RaZelle <> "" Then
.AddComment
.Comment.Visible = False
.Comment.Text Text:=RaZelle & Chr(10) & ""
End If
End With
Next RaZelle
End Sub
Gruß Hajo
Option Explicit
Sub Kommentar_Alt()
Dim RaZelle As Range
For Each RaZelle In Range("B3:AH2000")
With RaZelle
If RaZelle <> "" Then
.AddComment
.Comment.Visible = False
.Comment.Text Text:=RaZelle & Chr(10) & ""
End If
End With
Next RaZelle
End Sub
Gruß Hajo
Antwort 2 von coros
Hallo Daniel,
nachfolgendes Makro sollte das machen, was Du Dir vorgestellt hast. Kopiere es in ein StandardModul.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
nachfolgendes Makro sollte das machen, was Du Dir vorgestellt hast. Kopiere es in ein StandardModul.
Sub Kommentar_einfügen()
Dim Zelle As Range
On Error Resume Next
For Each Zelle In Range("B3:AH2000")
With Range(Zelle.Address)
.AddComment.Text Text:=Range(Zelle.Address) & Chr(10) & ""
End With
Next
End SubMfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 3 von coros
Hi,
ich nochmal. Ups, da hätte ich besser doch mal aktualisieren sollen. Aber besser zwei Antworten als gar keine.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
ich nochmal. Ups, da hätte ich besser doch mal aktualisieren sollen. Aber besser zwei Antworten als gar keine.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 4 von BossD
Vielen Dank für die schnelle Antwort. Funktioniert einwandfrei.
Mit freundlichen Grüßen
Mit freundlichen Grüßen
Antwort 5 von BossD
Hallo noch mal, habe grade festgestellt das es doch noch ein Problem gibt in dem Makro von Hajo_Zis... wenn ich es ein zweites mal ausführe um Aktualisierungen in der Tabelle ebenfalls mit einem Kommentar zu versehen gibt er mir eine Fehlermeldung aus.
Vielen Danke
PS: Danke auch an Coros, jedoch weist dein Makro allen Zellen, auch denen ohne Textinhalt einen Kommentar zu.
Mit freundlichen Grüßen
Vielen Danke
PS: Danke auch an Coros, jedoch weist dein Makro allen Zellen, auch denen ohne Textinhalt einen Kommentar zu.
Mit freundlichen Grüßen
Antwort 6 von coros
Hallo Daniel,
das hatte ich total überlesen, dass leere Zellen keinen Kommentar erhalten sollen. Aber mit nachfolgendem Makro sollte es funktionieren. Kopiere es wieder in ein StandardModul.
Übrigens der Fehler bei Hajos Makro ist, dass es zu einem Fehler kommt, wenn in der Zelle bereits ein Kommentar vorhanden ist. Der Kommentar muss bevor er erneut erzeugt wird, erst gelöscht werden.
Ich hoffe, Du kommst klar. bei Fragen melde Dich bitte.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
das hatte ich total überlesen, dass leere Zellen keinen Kommentar erhalten sollen. Aber mit nachfolgendem Makro sollte es funktionieren. Kopiere es wieder in ein StandardModul.
Sub Kommentar_einfügen()
Dim Zelle As Range
On Error Resume Next
For Each Zelle In Range("B3:AH2000")
If Range(Zelle.Address) <> "" Then
If Not Range("A1").Comment Is Nothing Then _
Range("A1").ClearComments
With Range(Zelle.Address)
.AddComment.Text Text:=Range(Zelle.Address) & Chr(10) & ""
End With
End If
Next
End SubÜbrigens der Fehler bei Hajos Makro ist, dass es zu einem Fehler kommt, wenn in der Zelle bereits ein Kommentar vorhanden ist. Der Kommentar muss bevor er erneut erzeugt wird, erst gelöscht werden.
Ich hoffe, Du kommst klar. bei Fragen melde Dich bitte.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 7 von BossD
Grüße,
sehr schön.... funktioniert einwandfrei, könnte nicht besser sein.
Vielen Danke noch mal.
Mit freundlichen Grüßen
sehr schön.... funktioniert einwandfrei, könnte nicht besser sein.
Vielen Danke noch mal.
Mit freundlichen Grüßen
Antwort 8 von BossD
Hallo,
also erstens, vielen Dank noch mal für das Makro, zweitens, es gibt noch ein kleines Problem bei dem Makro.
Wenn der Kommentar bereits eingetragen ist, sich jedoch an der Zelle durch eine Aktualisierung etwas ändert dann wird dies bei erneutem Ausführen des Makros nicht aktualisiert.
Es wäre unheimlich nett wenn du da noch mal schauen könntest.
Vielen Dank noch mal
also erstens, vielen Dank noch mal für das Makro, zweitens, es gibt noch ein kleines Problem bei dem Makro.
Wenn der Kommentar bereits eingetragen ist, sich jedoch an der Zelle durch eine Aktualisierung etwas ändert dann wird dies bei erneutem Ausführen des Makros nicht aktualisiert.
Es wäre unheimlich nett wenn du da noch mal schauen könntest.
Vielen Dank noch mal
Antwort 9 von coros
Hi BossD,
da war ein Flüchtigkeitsfehler in dem Makro. Mit nachfolgendem funktioniert es.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
da war ein Flüchtigkeitsfehler in dem Makro. Mit nachfolgendem funktioniert es.
Sub Kommentar_einfügen()
Dim Zelle As Range
On Error Resume Next
For Each Zelle In Range("B3:AH2000")
If Range(Zelle.Address) <> "" Then
If Not Range(Zelle.Address).Comment Is Nothing Then _
Range(Zelle.Address).ClearComments
With Range(Zelle.Address)
.AddComment.Text Text:=Range(Zelle.Address) & Chr(10) & ""
End With
End If
Next
End SubMfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 10 von BossD
Wow,
vielen vielen Dank....
Wünsche noch ein schönes Wochenende.
MFG
vielen vielen Dank....
Wünsche noch ein schönes Wochenende.
MFG

