Функция Excel range () вернет двумерный массив в enumTitles .
Итак, когда вы запускаете его для строк, код выводит все значения 1-й строки. Но столбцы - это второе измерение двумерного массива, поэтому вы получаете только 1-е значение (все значения 1-го ряда снова).
Для столбцов L oop вы должны использовать 2-е измерение, как показано ниже:
' Use len of 2nd dimension
For i = LBound(listTitles, 2) To UBound(listTitles, 2)
' Loop by columnt ID
Debug.Print (listTitles(1, i))
Next i