Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1088to1092
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Kommentare mit Name auswählen

Kommentare mit Name auswählen
Michael
Hallo,
vielleicht bin ich zu blöd, oder geht das wirklich nicht?
Wie kann ich ein Kommentar, per index und/oder per Name ansprechen? Oder kann man nur ein Kommentar ändern/auslesen, wenn man die entsprechende Zelle vorher markiert?
Hintergrund:
Ich möchte mittels Schleife den Text von Kommentaren, die einen bestimmten Namen haben ändern.
Geht das?
Danke,
Michael
AW: Kommentare mit Name auswählen
27.07.2009 15:56:00
Matthias
Hallo
hab ich Dich richtig verstanden ?
MsgBox Range("DeineZelle1").Comment.Text
wobei DeineZelle1 ein definierter Name für eine Zelle ist
Gruß Matthias
AW: Kommentare mit Name auswählen
27.07.2009 16:13:09
Michael
Hallo,
nein ich glaube nicht ganz.
Ich moechte die Kommentare genauso ansprechen wie shapes (ohne über die Zelle zu gehen). aber das scheint nicht zu funktionieren. Hier mal im Pseudocode:
for i = 1 to 100
if worksheets("x").comments(i).name = "xy" then worksheets("x").comments("xy").text = "Kommentar gefunden"
next i
Das geht aber so nicht :-( muss ich für sowas wirklich durch alle Zellen rattern und testen ob eine Zelle ein Kommentar enthält, und dieses dann aendern...
Anzeige
AW: Kommentare mit Name auswählen
27.07.2009 16:20:35
Matthias
hallo
'F5
'Inhalte
'Kommentare
Damit sind alle Zellen mit Komentaren markiert
und dann das Makro laufen lassen
Sub meinMakro()
Dim c
For Each c In Selection.Cells
c.Comment.Text Text:="Kommentar gefunden"
Next
End Sub
Gruß Matthias
AW: Kommentare mit Name auswählen
27.07.2009 16:31:51
Michael
Servus,
Ich weiss, ich bin laestig, leider hilft mir das auch nicht so viel weiter.
Der Hintergrund im Detail ist, dass ich ca. 40 Kommentar initial über VBA generiere.
Jedes mal, wenn dann eine Schleife/Funktion ein bestimmtes Ergebnis errechnet hat, dann soll in dem entsprechenden Kommentar ein Counter hochgesetzt werden (bzw. eine Zusatzinfo dazugeschrieben werden):
Z.B.:
for i=1 to 100 do
if Auto(i)="rot" then comment("rot").text = comment("rot").text & char(10) & "rot auch gefunden in A1"
if Auto(i)="grün" then comment("grün").text = comment("rot").text & char(10) & "grün gefunden in B2"
next i
Dies soll alles vollautomatisch nach Initialen Eingabe über Userform passieren (also hilft F5 und markieren da nicht viel).
Mir wuerde es schon reichen, den Befehl zu wissen, wie ich ein Kommentar mit Name ansprechen (e.g. worksheets("x").comments("xy"). Das geht nur leider nicht so wie bei normalen Shapes...
Gruesse,
Michael
Anzeige
ein Kommentar hat keinen Namen
27.07.2009 16:41:49
Matthias
Hallo
Du kannst eine Schleife über alle Kommentare laufen lassen
siehe auch Rudi
Der Code macht eigentlich ganau das gleiche.
und dann variabel entscheiden was Du mit dem entsprechenden Kommentar machen willst.
ansonsten musst Du präziser Deine Frage stellen
Gruß Matthias
AW: Kommentare mit Name auswählen
27.07.2009 16:24:16
Rudi
Hallo,
du musst nicht alle Zellen 'abrattern', das kannst du auch über die Specialcells-Methode machen.
Sub ttt()
Dim c As Range, rc As Range
On Error Resume Next
Set rc = Cells.SpecialCells(xlCellTypeComments)
On Error GoTo 0
If Not rc Is Nothing Then
For Each c In Cells.SpecialCells(xlCellTypeComments)
'mach was
Next
End If
End Sub

Gruß
Rudi
Anzeige
AW: Kommentare mit Name auswählen
27.07.2009 16:52:58
robert
hi,
vielleicht so ?
kombination-Matthias+Rudi
gruß
robert
Sub Komm()
Dim c As Range, rc As Range
On Error Resume Next
Set rc = Cells.SpecialCells(xlCellTypeComments)
On Error GoTo 0
For Each c In Cells.SpecialCells(xlCellTypeComments)
If c.Comment.Text = "Kommentar neu" Then
c.Comment.Text Text:="Kommentar brr"
End If
Next
End Sub

AW: Kommentare mit Name auswählen
27.07.2009 17:10:47
Matthias
Hallo
bei
Set rc = Cells.SpecialCells(xlCellTypeComments)
reicht doch eigentlich:
For Each c In rc
oder ?
https://www.herber.de/bbs/user/63464.xls
Gruß Matthias
Anzeige
Weshalb nicht Schleife über Komentare ?
27.07.2009 17:36:18
NoNet
Hallo Michael,
Du musst nicht alle Zellen "abklappern", sondern es genügt entweder ein gezielter Zugriff auf das Kommentarfeld einer bekannten Zelle (die Zelle ist quasi der von Dir gesuchte Index, da ein Kommentar immer einer Zelle zugeordnet ist !) :
VBA-Code:
Sub KommentarInkrementieren()
    With Range("H7").Comment
        .Text Text:=Str(Val(.Text) + 1)
    End With
End Sub

Oder Du kannst auch eine Schleife direkt über Alle Kommentarfelder des aktuellen Tabellenblattes erstellen :
VBA-Code:
Sub SchleifeUeberAlleKommentare()
    Dim comm As Comment
    For Each comm In ActiveSheet.Comments
        MsgBox comm.Text
    Next
End Sub
Gruß, NoNet
PS: Ich schenke meinem Beitragstitel ein "m" _oT
NoNet

_oT = "ohne Text"
Anzeige
PS: Ich schenke meinem Beitragstitel ein "m" _oT
27.07.2009 17:37:28
NoNet
_oT = "ohne Text"

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige