Publisher review:xlswrite1 increases speed of xlswrite function when used in loops or multiple times. This code increases the speed of the xlswrite function when used in loops or multiple times. The problem with the original function is that it opens and closes the Excel server every time the function is used. To increase the speed I have just edited the original function by removing the server open and close function from the xlswrite function and moved them outside of the function. To use this first run the following code which opens the activex server and checks to see if the file already exists (creates if it doesnt):Excel = actxserver ('Excel.Application');File='C:YourFileFolderFileName';if ~exist(File,'file')ExcelWorkbook = Excel.workbooks.Add;ExcelWorkbook.SaveAs(File,1);ExcelWorkbook.Close(false);endinvoke(Excel.Workbooks,'Open',File);Then run the new xlswrite1 function as many times as needed or in a loop (for example xlswrite1(File,data,location). Then run the following code to close the activex server:invoke(Excel.ActiveWorkbook,'Save');Excel.QuitExcel.deleteclear ExcelThis works exactly like the original xlswrite function, only many many times faster.
xlswrite1 is a Matlab script for Scientific/Engineering scripts design by Matt Swartz.
It runs on following operating system: Windows / Linux / Mac OS / BSD / Solaris.
xlswrite1 increases speed of xlswrite function when used in loops or multiple times.
Operating system:Windows / Linux / Mac OS / BSD / Solaris