I was looking for a worksheet with vba to do FFT beyond the Excel internal 4096 limit. With this Forum's help I did find one (without vba) that would do the trick.
I wanted to try my hand at writing code to do it faster. The attached does just that.
Everything worked fine until I went beyond 32k samples. The next higher 2^n value for data size to feed the FFT is 65556. When I tried this quantity of samples I got Runtime Error (13) type mismatch when attempting to write the array back to the worksheet using the "transpose" method.
If I remember correctly, 32k worked.
I bookmarked the line in question in the attached file.
Destination.Value = Application.Transpose(ReData) 'Transpose Array and write to destination range
Is there some limit to the size of the array that can be transposed and placed into a range? If so, is there another way to do this?
I do not need to re-write the data, but I use this same method elsewhere to write the FFT output. It it fails writing the input data back, it will probably fail when writing the FFT results.
PS. Please excuse the sloppy code. My first vba project since about 1997 and my second in total.
Bookmarks