calculation in csv through matlab
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
we know like xcell operations can be performed in csv like multipling 2 rows etc
eg) when we append data to csv from a matrix , we get a row of data
suppose i want that data*2 but not perform that calculation in matlab and do it in csv (=A1*2 %this type)
and then read the next coloumn (B) to get the result
how do i proceed?
thaks for any help you can provide
4 commentaires
Cris LaPierre
le 22 Mar 2021
Sure you can add them. You just can't save the equations in a csv file. If you save as a csv file, the equations are replaced with values. Close and reopen the csv file, and you'll see that the updated values are still there, but all the equations are gone.
Réponses (1)
Cris LaPierre
le 22 Mar 2021
Modifié(e) : Cris LaPierre
le 22 Mar 2021
You may find the following two posts helpful.
- https://www.mathworks.com/matlabcentral/answers/47838-how-to-apply-a-formula-autofill-on-a-range-of-cells-in-excel-using-matlab-com-activex#answer_58688
- https://www.mathworks.com/matlabcentral/answers/761711-readtable-excel-date-base#comment_1366841
The resulting code would be something like this.
file = 'D:\Applications\work\example.csv'; % This must be full path name
% Create connection to Excel
excelapp = actxserver('Excel.Application');
wkbk = excelapp.Workbooks.Open(file);
% Write equation to specified cell:
EqnRange = wkbk.Activesheet.get('Range','B1');
EqnRange.Formula = '=A1*2';
% Save changes. This leaves the value in the csv file, not the equation
invoke(wkbk,'Save');
% Close Excel and clean up
invoke(excelapp,'Quit');
delete(excelapp);
clear excelapp;
0 commentaires
Voir également
Catégories
En savoir plus sur Standard File Formats dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!