How to copy and paste several cells from e.g. Excel into a MATLAB uitable?

조회 수: 66 (최근 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
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".

추가 답변 (1개)

Jason
Jason 2024년 3월 1일 14:27
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

카테고리

Help CenterFile Exchange에서 Environment and Settings에 대해 자세히 알아보기

태그

아직 태그를 입력하지 않았습니다.

제품


릴리스

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by