- Код: Выделить всё
Sub test()
Dim R As Excel.Range
Set R = Selection
Dim n As Long
n = R.Rows.Count
Dim m As Long
m = R.Columns.Count
Dim k As Long
Dim j As Long
For j = 1 To (m - 1)
For k = (j + 1) To m
Dim rng As Range
Set rng = Application.Union(R.Columns(j), R.Columns(k))
MsgBox rng.Columns.Count
Next k
Next j
End Sub
По логике вещей должно выдаваться все время число 2, поскольку я объединяю всегда 2 столбца, однако например в 2 случаях из 6 (для m=4) выдается 1.
В чем проблема? Или я не правильно использую Union?
заранее спасибо.