online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon Diesa12 vom 24.02.2022, 08:26 Options

Lösung

Kommentare einfügen

Hallo.....

Ich habe das Problem, in einigen tausend Excel Zeilen, einen unterschiedlichen Kommentar einfügen zu müssen. Ich möchte daher mit einer Tastenkombination eine bestimmte Größe eines Kommentarfeldes in die Zeile einfügen und in den "bearbeiten" Modus gelangen.

Hat da jemand eine Lösung als Makro ??????


Antwort schreiben

Antwort 1 von coros vom 24.02.2022, 09:03 Options

Hallo Disa,

So wie Du es Dir allerdings vorgestellt hattest, dass man ein Kommentar einfügt und danach in den Bearbeitungszustand gelangt geht glaube ich nicht. jedenfalls fällt mir nicht ein, wie. Daher nachfolgend mal ein Makro, dass Dir in die aktive Zelle ein Kommentarfeld mit einem Text, den Du in eine InputBox eintragen musst, einträgt.

Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

 Option Explicit

Sub Lommentarfeld_einfuegen()
Dim objComment As Comment
Dim strKommentarText As String
Dim intMeldung As Integer

'Wenn kein Kommentar vorhanden, Kommentar einfügen
If ActiveCell.Comment Is Nothing Then
Anfang:
    'Eingabe des Kommentartextes
    strKommentarText = InputBox("Bitte Kommentartext eintragen", "Kommentartext einfügen...", ActiveCell.Value)
    
    'Kommentarfeld setzen
    Set objComment = ActiveCell.AddComment
        
    'Formatierung des Kommentarfeldes
    With objComment
        With .Shape.TextFrame.Characters
            .Text = strKommentarText
            'Textformatierung
            .Font.Name = "Arial"
            .Font.Size = 7
            .Font.Bold = True
        End With
        .Visible = False
        'Größenformatierung
        .Shape.ScaleHeight 0.75, msoFalse, msoScaleFromTopLeft
        .Shape.ScaleWidth 1.3, msoFalse, msoScaleFromTopLeft
        End With
        
        Set objComment = Nothing
'Wenn Kommenar vorhanden, abfragen ob gelöscht werden soll
Else
    intMeldung = MsgBox("Bereits ein Kommentar vorhanden. Diesen löschen?", _
            vbQuestion + vbYesNo, "Kommentar vorhanden, löschen?")
            
    If intMeldung = 6 Then
         ActiveCell.Comment.Delete
        GoTo Anfang
    End If
End If
    
End Sub
 
Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

Bei Fragen melde Dich.

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 2 von coros vom 24.02.2022, 09:33 Options

Hallo,

ich nochmal. Nachfolgend das obige Makro noch etwas modifiziert. Hier wird der vorhandene Kommentar auf Wunsch ausgelesen und in die InputBox eingefügt.

Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte wieder erst in einer Testdatei und nicht gleich in Deiner Originaldatei.

 Option Explicit

Sub Kommentarfeld_einfuegen()
Dim objComment                  As Comment
Dim strKommentarText            As String
Dim intMeldung                  As Integer
Dim strKommentarTextGesichert   As String

strKommentarTextGesichert = ""

'Wenn kein Kommentar vorhanden, Kommentar einfügen
If ActiveCell.Comment Is Nothing Then
Anfang:
    'Eingabe des Kommentartextes
    strKommentarText = InputBox("Bitte Kommentartext eintragen", "Kommentartext einfügen...", strKommentarTextGesichert)
    
    'Kommentarfeld setzen
    Set objComment = ActiveCell.AddComment
        
    'Formatierung des Kommentarfeldes
    With objComment
        With .Shape.TextFrame.Characters
            .Text = strKommentarText
            'Textformatierung
            .Font.Name = "Arial"
            .Font.Size = 10
            .Font.Bold = True
        End With
        .Visible = False
        'Größenformatierung
        .Shape.ScaleHeight 0.75, msoFalse, msoScaleFromTopLeft
        .Shape.ScaleWidth 1.3, msoFalse, msoScaleFromTopLeft
        End With
        
        Set objComment = Nothing
'Wenn Kommenar vorhanden, abfragen ob gelöscht werden soll
Else
    intMeldung = MsgBox("Bereits ein Kommentar vorhanden. Diesen löschen?", _
            vbQuestion + vbYesNo, "Kommentar vorhanden, löschen?")
            
    'Wenn "Ja", Kommentar löschen ausgewählt wurde
    If intMeldung = 6 Then
        
        'Abfrage, ob vorhandener Kommentartext ausgelesen werden soll
        intMeldung = MsgBox("Soll der vorhandene Text ausgelesen und in den neuen Kommentar " _
                    & "eingefügt werden", vbQuestion + vbYesNo, "Kommentar vorhanden, löschen?")
   
        'Auswahl "Nein" Kommentar nicht auslesen
        If intMeldung = 7 Then
            ActiveCell.Comment.Delete
            GoTo Anfang
        End If
    
        'Auswahl "Ja" Kommentar auslesen
        If intMeldung = 6 Then
            strKommentarTextGesichert = ActiveCell.Comment.Text
            ActiveCell.Comment.Delete
             GoTo Anfang
        End If
    End If
End If
    
End Sub
 
Du kannst Dir meine Beispieldatei auch unter http://www.excelbeispiele.de/beispiele_supportnet/Beispiel_Kommenta... herunterladen.

Bei Fragen melde Dich.

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 3 von Beverly vom 24.02.2022, 11:46 Options

Hi,

in den Edit-Modus gelangt man mit VBA nicht - das höchste der Gefühle wäre das Selektieren des Rahmen des Kommentars.

Wie willst du denn festlegen, welche Größe das Kommentarfeld haben soll? Stehen die Kommentartexte, die eingefügt werden sollen, von vornherein fest oder sind sie so unterschiedlich, dass du sie immer von Hand eintragen musst? Wenn es feststehende (unterschiedliche) Kommentare sind, könnte man sie in ein separates Tabellenblatt eintragen, ebenso wie die zu verwendende Breite/Höhe des betreffenden Kommentarfeldes. Diese Daten könnte man dann entnehmen und den Kommentar mit der betreffenden Feldgröße und dem betreffenden Text erstellen.

Bis später,
Karin

Antwort 4 von Casimann vom 26.02.2022, 01:32 Options

Hallo Diesa12,

ich hatte mal ein änliches Problem. Es hat sich herausgestellt, dass zuviele Kommentare äußerst unwirksam sind. Ich kann daher nur empfehlen eine zusätzliche Spalte mit dem jeweiligem Text einzufügen.

Auch Hyperlinks können, bei längeren Texten, eine sehr gute Lösung sein.

Gruß
Carsten

Antwort 5 von Diesa12 vom 26.02.2022, 11:24 Options

Hallo "Coros", "Beverly" und "Casimann"

ich möchte mich erst einmal für Eure Bemühungen bedanken und Euch mitteilen, dass ich mich für die Lösung mit dem Hyperlink entschieden habe, da es mir so möglich ist in einer anderen Datei alles das zu implementieren, was ich für die Excel - Zeile brauche.


Nochmals herzlichen Dank euch Allen...


Diesa12

Ähnliche Themen

Kommentare ausdrucken
Astronaut  21.08.2008 - 11 Hits - 2 Antworten

Kommentare mit Tabellenfunktionen erstellen
ExcelKrischan  04.05.2009 - 233 Hits - 1 Antwort

Kommentare in Excel formatieren
Jorja  04.09.2009 - 139 Hits - 1 Antwort

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 01:23:17 2026