writing into excel sheets while keeping the leading zeros

조회 수: 4 (최근 30일)
SSG_newbiecoder
SSG_newbiecoder 2018년 3월 14일
댓글: SSG_newbiecoder 2018년 3월 14일
Hello, is there any way to keep the leading zeros in my number while saving to excel sheet as a csv file? I should be getting 000 001 010 011 etc but in the excel sheet it is 0 1 10 11. How can I solve this?
  댓글 수: 2
Adam
Adam 2018년 3월 14일
Isn't that down to the Excel formatting if it is a number rather than a string?
SSG_newbiecoder
SSG_newbiecoder 2018년 3월 14일
even if I give it as a string it is still the same

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

채택된 답변

Pawel Jastrzebski
Pawel Jastrzebski 2018년 3월 14일
편집: Pawel Jastrzebski 2018년 3월 14일
Following the:
you could use a similar method:
val1 = randi(1000,[20 1]);
val2 = rand(20,1);
val = val1.*val2
valWithZeros = num2str(val,'%09.3f')
valWithZeros = cellstr(valWithZeros)
for i=1:length(valWithZeros)
valWithZeros{i} = strjoin({'''',valWithZeros{i}});
end
xlswrite('file.xlsx',valWithZeros)
Or pre-format your sheet and then copy the data to it from Matlab. If you need to repeat this action over many batches of data, make sure you first make a copy of the pre-formatted sheet and then overwrite it with Matlab:
Pre-formatted sheet:
The Matlab code:
val1 = randi(1000,[20 1]);
val2 = rand(20,1);
val = val1.*val2
xlswrite('file.xlsx',val,'Sheet2','B2:B21')
Output:

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Data Import from MATLAB에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by