how to link an excel file containing inputs and output columns with Matlab
4 次查看(过去 30 天)
显示 更早的评论
I have an excel file in which some coulmns have data entered by user and some columns are output using some formula. I dont want to apply these formulae again in Matlab rather i want to link my excel file to matlab so that any change in the input will be directly changed in the Matlab. The columns in excel showing formula shall be read as formula by the Matlab. If anyone knows about it please share
0 个评论
回答(2 个)
dpb
2021-8-25
The builtin functions in MATLAB to read/write Excel files read only the data content from cells, not the formulas contained in cells. To do the latter will require using the ActiveX and writing the VBA equivalent. This is more of an Excel VBA syntax issue than MATLAB.
0 个评论
Walter Roberson
2021-8-26
The post https://www.mathworks.com/matlabcentral/answers/91569-will-it-be-possible-to-use-xlswrite-to-write-formulas-to-the-excel-sheet-which-would-be-calculated-a#answer_100920 from years ago appears to claim that you can write formulas using xlswrite().
I cannot demonstrate here using xlswrite() as it is not supported on this online system. But you can see that for using writecell() instead, it does not work... and it gets odd for .xls files (but does not get odd for xlsx files)
filename = [tempname() '.xls'];
cleanMe = onCleanup(@() delete(filename));
a={'1','2','=sum(a1,b1)'};
a(2,:)={'4' '5' '=sum(a2,b2)'};
a(3,:)={4, 5 ,'=sum(a3,b3)'}
writecell(a,filename)
t = readtable(filename, 'readvariablenames', false)
c = readcell(filename)
[P,Q,R] = xlsread(filename)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Spreadsheets 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!