这段代码在循环或多次使用时提高xlswrite函数的速度。原始函数的问题在于,每次使用该函数时,它都会打开和关闭Excel服务器。为了提高速度,我刚刚编辑了原始函数,从xlswrite函数中删除了服务器打开和关闭函数,并将它们移到了函数之外。要使用这个,首先运行下面的代码,它打开activex服务器并检查文件是否已经存在(如果不存在创建):
Excel = actxserver ('Excel. application ');
文件= C: \ YourFileFolder \文件名”;
如果存在~(文件,“文件”)
ExcelWorkbook = Excel.workbooks.Add;
ExcelWorkbook.SaveAs(文件,1);
ExcelWorkbook.Close(假);
结束
调用(Excel.Workbooks,“开放”,文件);
然后根据需要多次或在循环中运行新的xlswrite1函数(例如xlswrite1(File,data,location))。然后运行以下代码关闭activex服务器:
调用(Excel.ActiveWorkbook '保存');
Excel。辞职
Excel.delete
清晰的Excel
这与原始的xlswrite函数非常相似,只是快了很多倍。
引用作为
马特·施瓦茨(2021)。xlswrite1(//www.tianjin-qmedu.com/matlabcentral/fileexchange/10465-xlswrite1), MATLAB中央文件交换。检索.
MATLAB版本兼容性
平台的兼容性
窗户 macOS Linux标签
确认
启发:wr_colwithheader,茶的成分分析,xlswrite_mod,saveppt2,函数用于更快的数据传输Matlab <——> Excel,xlswrite2007,MKXLSFUNC:轻松集成遗留电子表格工具到MATLAB