Application.Transpose in VBA EXCEL 2003

  • Thread starter Thread starter atemesov
  • Start date Start date
A

atemesov

I have been using Application.Transpose function since Excel 97 first
appeared. It allows to transfer a range of cells values into Variant
array in VBA code without For ...Next loop.

Currently I have switched to Excel 2003 and uncovered that this
construction (Application.Transpose) behaves differently:
Suppose you have inserted a break point inside of the function that
uses Application.Transpose
When execution comes to the point when you use that variant Array
suddenly execution of the function starts again from the beginning of
the routine, and this going on as many times as many elements original
Range consists from!

Does anyone have experienced anything similar?

Please let me know.

Thank you.

Alex
 
Dnia 27 Jun 2006 14:15:39 -0700, atemesov napisa³(a):

[...]
Currently I have switched to Excel 2003 and uncovered that this
construction (Application.Transpose) behaves differently:
Suppose you have inserted a break point inside of the function that
uses Application.Transpose
When execution comes to the point when you use that variant Array
suddenly execution of the function starts again from the beginning of
[...]

I've just tested this code:

Sub aaa()
Dim v As Variant
' breakpoint below
v = Application.WorksheetFunction.Transpose(Range("C5:E7"))
End Sub

Sub bbb()
aaa
End Sub

Pressing F5 inside bbb executes to breakpoint. Then, after pressing F5 or
F8 debugger behaves OK.

Maybe you have some Loop or recurring _Change event...
 
Don't quite understand.

Firstly, you don't need transpose to transfer a range to an array. You can
just do:
Dim arr
arr = Range(Cells(1), Cells(5, 10))

Secondly: > starts again from the beginning of the routine
Never seen this, could you give code that demonstrates this?

RBS
 
Back
Top