Much appreciated (btw, I previously lived in Cedar Park, TX...
)
From what you wrote I found my concept of a multidimensional array flawed and with additional study figured out something that functions. I don't know how optimized it is (...), but:
Sub FUHistoryReport02()
Dim intCtr As Integer
Dim intTblCtr As Integer
Dim intRowCtr As Integer
Dim arReport() As String
Dim tbl As ListObject
intTblCtr = 0
intRowCtr = 0
For Each tbl In Worksheets("FUHistory").ListObjects
intTblCtr = intTblCtr + 1
If tbl.DataBodyRange.Rows.Count > intRowCtr Then intRowCtr = tbl.DataBodyRange.Rows.Count
Next tbl
ReDim arReport(1 To intTblCtr, 1 To intRowCtr, 1 To 2, 1 To 3) As String
intTblCtr = 0
intRowCtr = 0
For Each tbl In ActiveSheet.ListObjects
intTblCtr = intTblCtr + 1
For intRowCtr = 1 To tbl.DataBodyRange.Rows.Count
If Not tbl.DataBodyRange.Cells(intRowCtr, 1).Comment Is Nothing Then
arReport(intTblCtr, intRowCtr, 1, 1) = tbl.Name
arReport(intTblCtr, intRowCtr, 1, 2) = CStr(intRowCtr)
arReport(intTblCtr, intRowCtr, 1, 3) = tbl.DataBodyRange.Cells(intRowCtr, 1).Text
arReport(intTblCtr, intRowCtr, 2, 1) = tbl.Name
arReport(intTblCtr, intRowCtr, 2, 2) = CStr(intRowCtr)
arReport(intTblCtr, intRowCtr, 2, 3) = tbl.DataBodyRange.Cells(intRowCtr, 2).Text
End If
Next intRowCtr
Next tbl
Stop
End Sub
How's it look to you?
Bookmarks