(10.05.2021, 09:58)bug99 schrieb: [ -> ]Schreib die Kommentare in eine eigene Tabelle und verweise per hyperlink dorthin
falls die Kommentare für viele Zellen identisch sind reduziert sich auch die Anzahl der Kommentare
oder mit VBA zu einer msgbox
Herzlichen Dank für deinen Tipp.
Ich arbeite mit (diverse*n) Kolleg*innen zusammen, die - (mich eingeschlossen) auch oftmals lediglich aus Zeitgründen - Texte und Bilder zu Informationen nicht im Zusammenhang lesen können. Wenn eine Tabelle nicht nur von einer einzigen (diverse*n) Kollegin/einem einzigen (diverse*n) Kollegen bearbeitet wird, sondern von (diverse*n) Kolleg*innen, die in der Praxis im Allgemeinen allesamt - mich eingeschlossen - keine Excel-Nerds sind, sondern so gut es eben geht von der Hand in den Mund leben, so führt eine zunehmende Komplexität einer Excel-Tabelle zu erheblichen Problemen im betrieblichen Alltag. Daraus können sogar Folgekosten ausgelöst durch unkollegiale Konflikte entstehen.
Eine Excel-Tabelle idiotensicher zu machen, ist sicherlich möglich, wenn z. Bsp. Benutzereingaben über Masken gesteuert werden, etc., aber eine Herkulesaufgabe im betrieblichen Alltag wo alles industriell getaktet immer nur schnell schnell gehen soll.
Um mir das Abschreiben aller bereits vorhandenen Kommentare zu ersparen, ließen sich alle bereits vorhanden Kommentare auf ein neues Blatt kopieren:
Code:
Sub KommentareInNeuesBlattSchreiben()
Dim wksMitKommentaren As Worksheet 'die Tabelle mit Kommentaren
Dim wksAusdruck As Worksheet 'die Tabelle zum Ausdrucken
Dim cmtDieser As Comment 'ein Kommentar
Dim lngZeile As Long
Set wksMitKommentaren = ActiveSheet 'Achtung, vorher merken, weil neues Blatt kommt
Set wksAusdruck = ThisWorkbook.Worksheets.Add() 'macht eine neue Tabelle
With wksAusdruck
'Titelzeile schreiben:
lngZeile = 1
.Cells(lngZeile, 1).Value = "Adresse" 'vor jeden führenden Punkt wird wksAusdruck gesetzt wegen "With"
.Cells(lngZeile, 2).Value = "Zellwert"
.Cells(lngZeile, 3).Value = "Kommentar"
.Cells(lngZeile, 4).Value = "Transparenz"
.Rows(lngZeile).Font.Bold = True 'Titelzeile fett machen
For Each cmtDieser In wksMitKommentaren.Comments 'alle Kommentare durchlaufen und in neuer Tabelle auflisten
lngZeile = lngZeile + 1
.Cells(lngZeile, 1).Value = cmtDieser.Parent.AddressLocal
.Cells(lngZeile, 2).Value = cmtDieser.Parent.Value
.Cells(lngZeile, 3).Value = cmtDieser.Text
.Cells(lngZeile, 4).Value = cmtDieser.Shape.Fill.Transparency
Next
End With
End Sub
Und ein Hyperlilnk ließe sich folgendermaßen realisieren:
Zitat:Excel: Hyperlink auf andere Tabelle einfügen
- Wählt die entsprechende Zelle aus und drückt [Strg] + [K].
- Wählt im neuen Fenster links „Aktuelles Dokument“ aus. Euch werden unter dem Knotenpunkt „Zellbezug“ alle eure Tabellenblätter angezeigt.
- Wählt ein Tabellenblatt aus und gebt darüber die Zelle ein, auf die verlinkt werden soll. In unserem Beispiel ist das E100.
Wenn ich dabei an meine (diverse*n) Kolleg*innen denke, weiß ich leider nicht, wie ich denen das verkaufen soll. Und wenn ich es nicht verkauft kriege, bleibt es im Regal liegen. Im Übrigen möchte ich meinen (diverse*n) Kolleg*innen das gar nicht zumuten. Ich wollte nur unter dem Radar meine Arbeit von Routinetippereien ein wenig entlasten.