UBound(Selection.Value, 1) = 65536 означает, что выделен столбец целиком, UBound(Selection.Value, 2) - количество столбцов.
Заодно проверь Selection.Areas - может быть выделен столбец + еще какая то область. Selection.Value возвращает массив значений первой области.
Лучший способ понять что-то самому — объяснить это другому.