There's a couple of ways. If you use Write To Spreadsheet.vi, put it inside a for loop and wire the 3D array to the 2D data input. You'll write your data in 2D chunks. You'll also want to write some header information such as number of rows per 2D write and the number of "pages" written (size of third dimension). To read it back, use Read From Spreadsheet.vi inside of a for loop. Use the header information to determine number of rows to read, to specify the start of read offset, and the number of times to run the for loop. If you wire the all rows output through the for loop, you'll have a 3D array. Another way to do it is to write to a separate Excel worksheet for each 2D page.