Excel-Version 2016.
Ich habe eine formatierte Tabelle, die gefiltert wird und lese im DataBodyRange der Spalten 37 bis 49 Kommentare aus, falls welche vorhanden sind. Mit der 32 bit Version funktioniert mein Code problemlos, wenn ich nach folgendem Prinzip prüfe, ob die Zelle einen Kommentar hat:
Dim intSpalte As Integer
Dim rngZelle As Range
With Worksheets(1).ListObjects(1)
' alle Filter aufheben
If Not .AutoFilter Is Nothing Then .AutoFilter.ShowAllData
' Spalte E nach 1 filtern
.Range.AutoFilter Field:=5, Criteria1:="1"
' Schleife über alle gefilterten Zeilen/Zellen
For Each rngZelle In .DataBodyRange.Columns(1).SpecialCells(xlCellTypeVisible)
' Schleife über die Spalten 37 bis 49
For intSpalte = 37 To 49
' prüfen ob in laufender Zelle ein Kommentar ist
If Not .Parent.Cells(rngZelle.Row, intSpalte).Comment Is Nothing Then
' hier weiterer Code
In 64 bit dagegen, geht der Code nicht in die If-Anweisung. Wie kann man in dieser Version prüfen, ob Zellen einen Kommentar haben?