How to import and read Excel input into an executable

1 回表示 (過去 30 日間)
deep
deep 2018 年 12 月 17 日
コメント済み: deep 2019 年 2 月 1 日
Hello everyone
I need help with reading an excel file as an input into my code which i plan to convert to an executable.
I have to read the data from the excel in such a way that the data from the row 1 and column 1 is assigned to a particular variable in the code, there are 88 such variables. I must access the excel interactively from a file location , then read it and assign the value to these variables.
Can anyone help me with the same, i have limited knowledge in matlab and any lead is Highly appreciated.
Thank you
  2 件のコメント
Bob Thompson
Bob Thompson 2018 年 12 月 17 日
What kind of flexibility do you have on how you access your data? Is this some kind of homework problem that you have to do exactly what they ask?
deep
deep 2018 年 12 月 18 日
I have complete flexibility on accesing the data. No restriction.

サインインしてコメントする。

採用された回答

Guillaume
Guillaume 2018 年 12 月 17 日
readtable will read an excel file and directly transform each column into variables of a table.
I would not recommend having over 80 different variables in any function/script. It would be a complete maintenance nightmare and a clear indication that the design has not been thought out properly. A table would be a lot easier to manipulate.
  6 件のコメント
Guillaume
Guillaume 2018 年 12 月 19 日
Could you please elaborate on your first point, that will help me in improving my code.
I think it would be better if you showed an example of your code, then we can see if there's a better way of doing it.
deep
deep 2018 年 12 月 21 日
Sure,
I have attached the file for your perusal.

サインインしてコメントする。

その他の回答 (1 件)

Luna
Luna 2018 年 12 月 17 日
Hi,
You can try below to get all excel data.
[fName,pName] = uigetfile({'*.xlsx';'*.xls'},'Please Select an excel file'); % ask you to put excel file and gets file and path names
[num,txt,raw] = xlsread(fullfile(pName,fName)); % reads the excel and gets the numeric as double array, text as cell array and raw data as cell array
var1 = raw{1,1};
var2 = raw{1,2}; % etc...
% OR if all your data is numeric
var1 = num(1,1);
var2 = num(1,2); % etc ...
% you can also use for loops
OR you can also use Activex but it is a bit complicated see link below:
  4 件のコメント
deep
deep 2019 年 1 月 31 日
Thank you
deep
deep 2019 年 2 月 1 日
I have observed that Xlswrite works,
Could you please tell me the reason for recommending ActiveX?
Thank you

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeSpreadsheets についてさらに検索

製品


リリース

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by