How to copy and paste several cells from e.g. Excel into a MATLAB uitable?
61 次查看(过去 30 天)
显示 更早的评论
We develop a graphical user interface (GUI) with the Matlab App Designer. Many users of the GUI would like to copy the data from Excel with ‘ctrl + c’ and then wants to paste it to the UITable in the app with ‘ctrl + v’. The MATLAB table model (UITable) doesn’t seem to have this feature. Is there any workaround or solution for this problem?
采纳的回答
MathWorks Support Team
2022-6-23
It is possible to copy and paste single cells from e.g. Excel to MATLAB since MATLAB R2021b. However, it exists an enhancement request to implement a feature to copy and paste several cells to the MATLAB uitable.
In the meantime, you could work around by taking advantage of the following MATLAB File exchange submissions "num2clip: copy numerical arrays to clipboard " and "Straightforward COPY and PASTE functions".
0 个评论
更多回答(1 个)
Jason
2024-3-1
I got this to work:
function TablePasteData(app,src,event,tbl)
%Get Data From Clipboard
clipb=clipboard('paste');
data=[];
newStr = splitlines(clipb);
[n,m]=size(newStr);
for i=1:n-1
B=newStr{i};
C=split(B);
l=numel(C);
data(i,1)=str2double(C{1,1});
data(i,2)=str2double(C{2,1});
if l==3
data(i,3)=str2double(C{3,1});
end
end
data
tbl.Data=data;
end
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Environment and Settings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!