ich habe eine sehr große Tabelle, wo auch ziemliche viele Kommentare
enthalten sind.
Mein Problem ist, wie kann ich samtliche Kommentare aus der Exceltabelle
rausexportieren und in ein normales Textfeld einfügen...
MfG
Matthias
Public Sub KommentExport()
Dim comSh As Worksheet
Dim actSh As Worksheet
Dim comRng As Range
Dim comCell As Range
Dim row As Long
On Error Resume Next
Set actSh = ActiveSheet
Set comSh = ActiveWorkbook.Sheets.Add
comSh.Name = "Kommentare"
If Err.Number <> 0 Then
Err.Clear
comSh.Name = "Kommentare " & Format(Now(), "hh-nn-ss")
End If
With comSh
Set comRng = actSh.UsedRange.SpecialCells(xlCellTypeComments)
If comRng Is Nothing Then
Exit Sub
End If
.Cells(1, 1) = "Kommentare aus Zelle"
.Cells(1, 2) = "Kommentar"
.Range("A1:B1").Columns.AutoFit
.Range("B1").ColumnWidth = 60
row = 2
For Each comCell In comRng
.Cells(row, 1).Value = comCell.Address(False, False)
.Cells(row, 2).Value = comCell.Comment.Text
'ersteinmal testen, und wenn alles klappt, dann in der folgenden
'Zeile das Hochkomma entfernen. Dann werden die Kommentare gelöscht
'comCell.Comment.Delete
row = row + 1
Next comCell
End With
End Sub
Sub SplitComments()
Dim cmt As Comment
Dim iRow As Integer
For iRow = 1 To WorksheetFunction.CountA(Columns(3))
Set cmt = Cells(iRow, 3).Comment
If Not cmt Is Nothing Then
Cells(iRow, 4) = Cells(iRow, 3).Comment.Text
Cells(iRow, 3).Comment.Delete
End If
Next iRow
End Sub
Sub a()
Range("A1").comm
End Sub
Um Kommentare aus einer Excel-Tabelle zu exportieren, kannst du den folgenden VBA-Code verwenden. Dieser Code erstellt ein neues Blatt mit dem Namen "Kommentare" und listet alle Kommentare auf.
ALT + F11
, um den VBA-Editor zu öffnen.Einfügen
und wähle Modul
.Public Sub KommentExport()
Dim comSh As Worksheet
Dim actSh As Worksheet
Dim comRng As Range
Dim comCell As Range
Dim row As Long
On Error Resume Next
Set actSh = ActiveSheet
Set comSh = ActiveWorkbook.Sheets.Add
comSh.Name = "Kommentare"
If Err.Number <> 0 Then
Err.Clear
comSh.Name = "Kommentare " & Format(Now(), "hh-nn-ss")
End If
With comSh
Set comRng = actSh.UsedRange.SpecialCells(xlCellTypeComments)
If comRng Is Nothing Then
Exit Sub
End If
.Cells(1, 1) = "Kommentare aus Zelle"
.Cells(1, 2) = "Kommentar"
.Range("A1:B1").Columns.AutoFit
.Range("B1").ColumnWidth = 60
row = 2
For Each comCell In comRng
.Cells(row, 1).Value = comCell.Address(False, False)
.Cells(row, 2).Value = comCell.Comment.Text
'comCell.Comment.Delete ' Kommentiere diese Zeile aus, um die Kommentare zu löschen
row = row + 1
Next comCell
End With
End Sub
ALT + F8
, wähle KommentExport
und klicke auf Ausführen
.Damit werden alle Kommentare in der aktiven Tabelle in ein neues Blatt exportiert.
Fehler: "Aktives Blatt hat keine Kommentare."
Fehler: "Das Blatt 'Kommentare' existiert bereits."
Falls du keine VBA-Programmierung verwenden möchtest, gibt es auch manuelle Methoden:
Hier ist ein weiteres Beispiel, das du verwenden kannst, um Kommentare aus einer bestimmten Spalte zu exportieren:
Sub SplitComments()
Dim cmt As Comment
Dim iRow As Integer
For iRow = 1 To WorksheetFunction.CountA(Columns(3))
Set cmt = Cells(iRow, 3).Comment
If Not cmt Is Nothing Then
Cells(iRow, 4) = Cells(iRow, 3).Comment.Text
Cells(iRow, 3).Comment.Delete
End If
Next iRow
End Sub
Dieser Code exportiert alle Kommentare aus Spalte C in Spalte D und löscht die Kommentare anschließend.
ALT + F11
für den VBA-Editor oder ALT + F8
für das Ausführen von Makros, um deine Effizienz zu steigern.1. Wie kann ich sicherstellen, dass ich keine Kommentare verliere? Erstelle vor dem Export deiner Kommentare eine Kopie der Excel-Datei.
2. Kann ich den Export für mehrere Blätter gleichzeitig durchführen? Ja, du kannst den VBA-Code so anpassen, dass er durch alle Arbeitsblätter iteriert und die Kommentare exportiert.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen