how put xlsread in global variable
Show older comments
Hello! I used function uigetfile to selected one xls file. Then I use function [text,number,d]=xlsread(...) to get text and number values from excel file. I use this functions in button (from gui) open_xls_Callback. How can I access variables text and number in other Calback (pushbutton)? How can I create global variables with [text,number])xlsread(...)?
Thanks!!
Answers (3)
Oleg Komarov
on 26 Mar 2012
0 votes
Kevin
on 27 Mar 2012
0 votes
You have to pass your variables between the functions, not write to a 'global' variable in Matlab GUI's.
The easiest way I've found to do this is to use a data structure.
for example:
[handles.data handles.text] = xlsread(...);
and then make sure that structure 'handles' is passed to your other callback functions. If you are using defaults, it should be passing the handles structure already.
Image Analyst
on 27 Mar 2012
0 votes
See the FAQ for a variety of ways to share variables between functions: http://matlab.wikia.com/wiki/FAQ#How_can_I_share_data_between_callback_functions_in_my_GUI.3F
but it looks like the "global haters" took out the stuff in there about using global. Basically you declare your variable global in any function that you want to have access to that variable. But it's not well explained in the FAQ: http://matlab.wikia.com/wiki/FAQ#Are_global_variables_bad.3F
Categories
Find more on Environment and Settings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!