write in specific uitable cell

hello
i made an uitable and puch button with editable cell using the code below:
app.UITable.ColumnName={'position 1'; 'position 2 '; 'position 3 '; 'position 4 '};
t = app.UITable;
set(t,'data',ones(5,4))
set(t,'ColumnWidth',{100})
set(t,'ColumnEditable',logical([1 1 1 1]))
push button code:
function EntreButtonPushed(app, event)
t = app.UITable;
l= get(t, 'data');
xlswrite('sasa', l);
end
my questions are:
1- how can i add numeric numbers with (.) dot, (string data)?
2- the colume names of my table are not showen in the save file how can i add them? (ERROR: it is shownen that only accept numeric value and it is not array)
3-and finally, how can i add data to specific cells? like making some cells in uitable constant with particular value?
thanks

Answers (1)

2:
if ~iscell(l)
l = num2cell(l);
end
l = [app.UiTable.ColumnName; l];
xlswrite('sasa', l);
3:
t.Data(Row, Column) = value;
However, making selected cells un-editable might be tricky. It is probably best to copy the "constant" values back in before writing the data to file.

3 Comments

could you please re-write the full code for me including your code so i can learn because i'm new to the matlab, and i don't know where to put you code exactly and what should i delete :)
function EntreButtonPushed(app, event)
t = app.UITable;
l = get(t, 'data');
if ~iscell(l)
l = num2cell(l);
end
l = [app.UiTable.ColumnName; l];
xlswrite('sasa', l);
end
i have tested your code it shows error:
Unrecognized method, property, or field 'UiTable' for class 'app1wwwww'.
Error in app1wwwww/EntreButtonPushed (line 68)
l = [app.UiTable.ColumnName; l];
Error using matlab.ui.control.internal.controller.ComponentController/executeUserCallback (line 335)
Error while evaluating Button PrivateButtonPushedFcn.

Sign in to comment.

Products

Release

R2019b

Asked:

on 4 Nov 2019

Commented:

on 4 Nov 2019

Community Treasure Hunt

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

Start Hunting!