Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.04.2024 14:18:05
28.04.2024 13:43:14
Anzeige
Archiv - Navigation
1864to1868
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
Nur Kommentare einer bestimmten Zeile
27.01.2022 13:58:25
RoMo
Hallo.
ich suche verzweifelt nach einer Lösung für folgende Situation.
Ich habe eine Tabelle1 mir sehr vielen Kommentaren. Dies ist sehr unübersichtlich
Ich habe eine Userform1 mit einem Label1.
Mein Cursor steht in irgendeiner Zelle (z.B. S40)
Jetzt möchte ich beim Klicken auf Label1 nur die Kommentare haben, die in der kompletten Zeile 40 vorhanden sind.
Alle anderen Kommentare sollen ausgeblendet sein.
Vieles habe ich mit Hilfe von Euch bisher geschafft, aber hier scheitere ich mit meinem Versuchen (wieder einmal).
Vielen Dank für jeden Beitrag
Gruss RoMo

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nur Kommentare einer bestimmten Zeile
27.01.2022 15:27:38
Yal
Hallo RoMo,
alle Kommentar anzeigen, dann Kommentar von Zelle in Zeile x anzeigen.

Sub Test()
Kommentar_verstecken AusnahmeZeile:=7
End Sub
Sub Kommentar_verstecken(AusnahmeZeile As Long)
Dim R As Range
Application.ScreenUpdating = False
Application.DisplayCommentIndicator = xlCommentIndicatorOnly 'Alle Kommentar verbergen
On Error Resume Next 'weil der Auswahl einer Zeile ohne Kommentar zu eine Fehler führt
Worksheets("Tabelle1").Rows(AusnahmeZeile).SpecialCells(xlCellTypeComments).Cells.Comment.Visible = True
Application.ScreenUpdating = True
End Sub
VG
Yal
Anzeige
AW: Nur Kommentare einer bestimmten Zeile
28.01.2022 09:27:26
RoMo
Hallo Yal,
vielen Dank für Deine Hilfe, Dein Code kann ich gut gebrauchen.
Leider wird nur der erste Kommentar eingeblendet und nicht alle Kommentare in der ausgewählten Zeile.
Aber ich versuche das mal mit einer Schleife hinzubekommen.
Freue mich natürlich, wenn es hier noch einen Lösungsvorschlag dazu gibt.
Gruss RoMo
AW: Nur Kommentare einer bestimmten Zeile
28.01.2022 11:18:48
Yal
Hallo RoMo,
die Schleife bekommst Du mit Sicherheit hin. Problem wird es bei der potentielle Fehlermeldung, falls in der Zeile keine Zellen mit Kommentar gäbe. Da muss man von "On Error Resume Next" zu einem Sprung auf einem gegebenen Ziel nach der Schleife setzen.

Sub Kommentar_verstecken(AusnahmeZeile As Long)
Dim Z As Range
Application.ScreenUpdating = False
Application.DisplayCommentIndicator = xlCommentIndicatorOnly 'Alle Kommentar verbergen
On Error GoTo Finally 'weil der Auswahl einer Zeile ohne Kommentar zu eine Fehler führt
For Each Z In Worksheets("Tabelle1").Rows(AusnahmeZeile).SpecialCells(xlCellTypeComments).Cells
Z.Comment.Visible = True
Next
Finally:
Application.ScreenUpdating = True
End Sub
Wobei es wäre ja zu prüfen, ob es überhaupt notwendig wäre.
VG
Yal
Anzeige
AW: Nur Kommentare einer bestimmten Zeile
28.01.2022 11:39:56
RoMo
Hallo Yal,
ich habe das mit Hilfe Deines ersten Beitrages so gelöst:

Sub Kommentar_verstecken()
Application.DisplayCommentIndicator = xlCommentIndicatorOnly 'Alle Kommentare verbergen
On Error Resume Next 'weil die Auswahl einer Zeile ohne Kommentar zu eine Fehler führt
z = ActiveCell.Row
s = 19 'Spalte "S" ist die Spalte, ab der der folgende Code starten soll
Do While s  "" Then
Cells(z, s).Comment.Visible = True
End If
s = s + 1
Loop
End Sub
Das funktioniert hervorragend.
Nochmals vielen Dank.
Gruss RoMo
AW: Nur Kommentare einer bestimmten Zeile
28.01.2022 13:31:39
Yal
Hallo RoMo,
Super!
Mein Senf dazu:
_ wenn Du schon Anfang und Ende der Schleife kennst, kannst Du einen For verwenden. While ist gefährlich, weil der s = s + 1 nicht vergessen werden darf.
_ der Test Cells(z,s).Note "" liefert schon einen Boolean (True/False). Den kannst Du direkt Comment.Visible assignieren. Dann sparst Du einen If

Sub Kommentar_verstecken()
Dim s As Long
Dim z As Long
Application.DisplayCommentIndicator = xlCommentIndicatorOnly 'Alle Kommentare verbergen
On Error Resume Next 'weil die Auswahl einer Zeile ohne Kommentar zu eine Fehler führt
z = ActiveCell.Row
For s = 19 To 131 'von "S" bis "DZ"
Cells(z, s).Comment.Visible = (Cells(z, s).NoteText  "")
Next
End Sub
Und falls Du üben möchtest, Cell-Objekte zu verwenden anstatt Zeilen- und Spaltennummer

Sub Kommentar_verstecken()
Dim Z As Range
Application.DisplayCommentIndicator = xlCommentIndicatorOnly 'Alle Kommentare verbergen
On Error Resume Next 'weil die Auswahl einer Zeile ohne Kommentar zu eine Fehler führt
For Each Z In Intersect(ActiveCell.EntireRow, Range("S:DZ")).Cells
Z.Comment.Visible = (Z.NoteText  "")
Next
End Sub
VG
Yal
Anzeige
Super Dank für die Lösung :O)))
28.01.2022 14:08:18
RoMo
Hi Yal,
Ich sage nicht Danke, ich sage WOW.
Du hast DIr echt die Zeit genommen, mein Anliegen perfekt umzusetzen.
Ich bin kein VBA'ler sondern habe Ideen, die ich in Excel mithilfe von VBA umsetzen möchte.
Dein "Senf dazu" hilft mir VBA zu lernen, Danke dafür.
Wünsche Dir ein schönes Wochenende
Gruss RoMo

167 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige