MATLAB: How to make the cells in a UITable editable in an App Designer app

appcellcelleditdesignereditMATLABuitable

How can I make the cells in a UITable editable in an App Designer app?

Best Answer

The property that allows the UITable to be edited by the user of the App is "ColumnEditable".
See the attached screenshot below for the user interface for modifying the "ColumnEditable" property to "true" (without quotes) for the UITable in App Designer:
The documentation for the "ColumnEditable" property is available here:
You can also set this programmatically by writing
app.UITable.ColumnEditable = true
This will allow users of the App to modify every cell in the table.
If you want to allow modification to only some columns, for example the first static and the second editable, you can set this value to a logical array like this:
app.UITable.ColumnEditable = [false, true];
After a user makes edits, it can be helpful to use the new data or indices in the app.
As an example, you could write the table to a file for later use using the UITable "CellEditCallback":
% Cell edit callback: UITable
function UITableCellEdit(app, event)
indices = event.Indices;
newData = event.NewData;
writetable(app.UITable.Data, "test.xlsx")
end
More details on "writetable" are available here: