Hello,
I am having issues writing a table to a specific sheet in excel. The error i see is "Invalid parameter name: Sheet.". Also pasting part of my code any help is appriciated. Only pasting a part of it as it is huge code filtering a lot of data and i am only having issue when i am trying to write this table to a specific sheet.
Thanks
T2 = table(Text2,Value2,Unit2);
[fname,pname] = uiputfile('*.xls');
writetable(T1,'(pname,fname)','Sheet',1,'Range','A2:end,:');
writetable(T2,'(pname,fname)','Sheet',2,'Range','A2:end,:');

답변 (1개)

Jakob B. Nielsen
Jakob B. Nielsen 2020년 2월 18일
편집: Jakob B. Nielsen 2020년 2월 18일

0 개 추천

Try typing this bit in the command window:
>> '(pname,fname)'
ans =
'(pname,fname)'
So your path is a string named (pname,fname) - not your actual path string.
In addition, your range syntax is bad. You have to specify endpoints as specific cell numbers... Although, if you write your entire table, you dont even need to specify end points - just give the start point.
If you dont want to write the entire table, specify which part of the table you want to write, instead of using the spreadsheet corners as constraints, its much more neat.
Here:
writetable(T1,[pname,fname],'Sheet',1,'Range','A2');
writetable(T2,[pname,fname],'Sheet',2,'Range','A2');

댓글 수: 3

Sai Gudlur
Sai Gudlur 2020년 2월 18일
I made the changes suggested and i still get the same error message."Error using writetable (line 142)
Invalid parameter name: Sheet." Also checked the fname,pname type and it shows me filename that i keyed in and path where it was to be saved. Have pasted the response from workspace.
>> fname,pname
fname =
'Trial.xlsx'
pname =
'C:\Users\agudlur\Desktop\'
Jakob B. Nielsen
Jakob B. Nielsen 2020년 2월 18일
Odd. I made a dummytable and tried writing it using the exact piece I posted, and it works just fine... Post the relevant script lines again? It seems odd that you get the error.
Sai Gudlur
Sai Gudlur 2020년 2월 18일
It seems strange to me too but made another change seemed redundant to me but worked. Pasting the code below. that worked
[fname,pname] = uiputfile('*.xlsx');
fullfilename2 = fullfile(pname,fname);(added fullfile built in function)
writetable(T1,(fullfilename2),'Sheet',1,'Range','A2');
writetable(T2,(fullfilename2),'Sheet',2,'Range','A2');
Thanks a lot for your it help Jakob.

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Text Data Preparation에 대해 자세히 알아보기

제품

릴리스

R2018b

질문:

2020년 2월 18일

댓글:

2020년 2월 18일

Community Treasure Hunt

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

Start Hunting!

Translated by