MATLAB: App Designer User edit/update table

matlab 2018bMATLAB and Simulink Student Suite

Hello,
I am new to app designer so forgive me for asking silly questions:
I have loaded an cell array data from excel into my app design table:
and I would like to know how can a user update the value in cell?
I have created a call back function below that It's supposed to responde to user commond whenever the table is clicked
function CBICDispCellEdit(app, event)
indices = event.Indices;
newData = event.NewData;
app.table.ColumnEditable=[false,false,false,false,false,false,true];
app.table.Cmd=categorical({'open';'close'});
But nothing happened when I clicked on the table…
Is there anything I am missing here? Thanks

Best Answer

CellEditCallback is triggered when the value of cell has changed. If you want to trigger an event when clicking the cell of table, you need to add callback of CellSelectionCallback.
Updated on 2020 Jan 6th.
In order to make drop down list in your Cmd column of the table, first you need to change import options of your excel file.
function LoadTableButtonPushed(app, event)
opts = detectImportOptions('test1.xlsx'); % For importing Cmd column as char not double
opts.VariableTypes{8} = 'string'; % For importing Cmd column as string
t = readtable('test1.xlsx', opts);
app.Table1.Data = t;
app.Table1.ColumnName = t.Properties.VariableNames;
end
And here is a code to make Cmd column as categorical.
function Table1CellSelection(app, event)
app.UITable.Data.Cmd = categorical(app.UITable.Data.Cmd, {'open', 'close'});
end
Screenshot is as the follows.
202016144726.jpg