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

Forumthread: Kommentar einfügen mit Makro

Kommentar einfügen mit Makro
26.02.2008 20:34:00
dani
hi,
Weiter unten im Forum hatte Fred schon mal die Frage.
Ich brauch es aber etwas anders:
In meiner Liste "Sport" gibt es bestimmte Spalten zum Eintragen von Sportleistungen. Da dort mehrere Personen schreibberechtigt sind, brauche ich (zwecks späterer Nachvollziehbarkeit) eine Lösung, um kenntlich zu machen, wer der jeweilige Eintragende für die jeweilige Sportleistung war.
Ich dachte an das automatische Einfügen eines Kommentares per VBA, weil jeder Benutzer bei uns auf Arbeit beim Einfügen eines Kommentares gleich seine Personenkennziffer drinstehen hat. Somit wäre nachvollziehbar, wer Eintragender war.
Wenn also beispielsweise in Spalte B und D die Spalten zum eintragen sind, klickt man in eine entsprechende Zelle dieser Spalte, trägt die Leistung ein und klickt oder returned raus. Danach sollte selbige Zelle mit dem Kommentar versehen sein, der aber ausgeblendet (auch kein Indikator) sein soll.
Auf dem restlichen Arbeitsblatt sollen die Indikatoren weiterhin zu sehen sein.
1. Geht das?
2. Wen ja wie?
3. Hat jemand eine bessere Idee für mein Problem als mit Kommentar?

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kommentar einfügen mit Makro
26.02.2008 21:13:47
Daniel
HI
zu 1) das Erstellen eines Kommentares mit VBA würde funktionieren, aber die Indikatoren lassen sich nur für die gesamte Anwendung ein- oder ausschalten.
(gut, vielleicht gibts einen Weg das zu tun, aber das ist sicherlich nicht ganz trivial)
zu 2) hat sich dann wohl erledigt
zu 3) wenn du heimlich mitloggen willst, wer was geändert hat, würde ich den Usernamen parallel in ein versteckts Arbeitsblatt schreiben, das du dann auswerten kannst
https://www.herber.de/bbs/user/50212.xls
Gruß, Daniel

Anzeige
AW: Kommentar einfügen mit Makro
26.02.2008 21:33:54
dani
Hi Daniel,
das Ding is ja cool. Bist'n Fuchs!
Bin übrigens zu Kompromissen bereit!:
Dann schalten wir die Indikatoren für die gesamte Anwendung eben ein!
Kannst Du mir noch diese Variante posten?
Gruß Dani

AW: Kommentar einfügen mit Makro
26.02.2008 21:41:00
Daniel
Hi
kann ich schon, will aber nicht.
lass doch einfach mal den Recorder mitlaufen, dann siehst du wie ein Kommentar per Makro eingefügt wird.
dann kannst du dir das Makro vielleicht selbst zusammenbasteln.
Wenns nicht klappt, kannst du dich ja wieder melden, aber bitte erst mal selber ausprobieren (und nicht gleich aufgeben ;-))
Gruß, Daniel

Anzeige
AW: Kommentar einfügen mit Makro
26.02.2008 22:01:00
dani
O.k., o.k.,
ich weiß, ich bin n bischen faul.
Aber auch VBA-blöd.
Habs mal probiert:

Sub kommentare ()
Range("A1").AddComment
Range("A1").Comment.Visible = False
Range("A1").Comment.Text Text:="Familie Redmann:" & Chr(10) & ""
Selection.ShapeRange.ScaleHeight 0.32, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleWidth 0.83, msoFalse, msoScaleFromTopLeft
Range("A1").Select
End Sub


aber ich brauch das für mehrere Spalten, Bsp.: B, D, E
Wie schreib ich das jetzt um?
:-(

Anzeige
AW: Kommentar einfügen mit Makro
26.02.2008 22:13:00
Daniel
Hi
naja, du musst dir mein Makro anschauen, und an der Stelle, an der der Benutzername ins andere Tabellenblatt geschrieben wird, eben den Code für das Einfügen des Kommentares einsetzen.
Dabei musst du dann "Range("A1") durch "Target(1)" ersetzen.
Gruß, Daniel

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Kommentar einfügen mit Makro in Excel


Schritt-für-Schritt-Anleitung

Um einen Kommentar in Excel per VBA einzufügen, kannst du das folgende Makro als Grundlage verwenden. Dieses Beispiel zeigt, wie du einen Kommentar in eine bestimmte Zelle einfügen kannst. In diesem Fall wird der Kommentar in Zelle A1 eingefügt und ist ausgeblendet.

Sub KommentarEinfügen()
    Range("A1").AddComment
    Range("A1").Comment.Visible = False
    Range("A1").Comment.Text Text:="Familie Redmann:" & Chr(10) & ""
End Sub

Wenn du das Makro für mehrere Spalten (z.B. B, D, E) verwenden möchtest, musst du den Code entsprechend anpassen. Ersetze Range("A1") durch Target(1), um die Zelle dynamisch zu bestimmen, in der der Kommentar eingefügt werden soll.


Häufige Fehler und Lösungen

  • Indikatoren sind sichtbar: Wenn du die Indikatoren für alle Kommentare in der Anwendung nicht ein- oder ausschalten kannst, wird empfohlen, die Indikatoren für die gesamte Anwendung zu aktivieren. Dies ist jedoch ein Kompromiss, den du eingehen musst, da es keine Möglichkeit gibt, sie nur für einzelne Kommentare auszublenden.

  • Fehlende Berechtigungen: Stelle sicher, dass du die notwendigen Berechtigungen hast, um Makros auszuführen. Manchmal kann dies ein Problem sein.


Alternative Methoden

Falls du die Kommentare nicht nutzen möchtest, könntest du auch überlegen, die Benutzerinformationen in ein verstecktes Arbeitsblatt zu schreiben. So kannst du die Änderungen und die entsprechenden Benutzer nachvollziehen, ohne dass sie in der Hauptansicht sichtbar sind.


Praktische Beispiele

Hier ist ein Beispiel, das zeigt, wie du einen Kommentar in mehreren Spalten automatisch einfügen kannst, wenn du in eine Zelle schreibst:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Me.Range("B:D")) Is Nothing Then
        Dim KommentarText As String
        KommentarText = "Eintrag von: " & Application.UserName
        Target.AddComment
        Target.Comment.Text Text:=KommentarText
        Target.Comment.Visible = False
    End If
End Sub

In diesem Beispiel wird bei einer Änderung in den Spalten B bis D ein Kommentar mit dem Benutzernamen eingefügt.


Tipps für Profis

  • Makro-Recorder nutzen: Wenn du unsicher bist, wie ein Makro erstellt wird, kannst du den Makro-Recorder in Excel verwenden. So siehst du, wie die VBA-Befehle generiert werden und kannst diese anpassen.

  • Fehlerbehebung: Wenn dein Makro nicht wie gewünscht funktioniert, überprüfe die Debugging-Optionen in VBA. Dies hilft dir, Fehler zu finden und zu beheben.

  • Dokumentation: Halte deine Makros gut dokumentiert, um spätere Anpassungen zu erleichtern.


FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass die Kommentare nicht sichtbar sind?
Um die Kommentare auszublenden, setze die Eigenschaft Visible auf False wie im Beispiel gezeigt.

2. Ist es möglich, Kommentare in mehreren Zellen gleichzeitig einzufügen?
Ja, du kannst das Makro so anpassen, dass es auf mehrere Zellen reagiert, indem du die Target-Eigenschaft in der Worksheet_Change-Ereignisprozedur verwendest.

3. Kann ich den Kommentartext anpassen?
Ja, du kannst den Kommentartext anpassen, indem du den Text-Parameter in der Comment.Text-Methode änderst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige