MATLAB: I’m trying to write a character in Excel using xlswrite but I am unable to do so.

excelwritingxlswrite

the character is
a=' ,OK| ,g'
when i use xlswrite(file,a,sheet,range), the function writes a but with spaces. ie
, O K | , g
Each alphabet is in a different cell.
I want the entire string to come in a single cell. I used a variant xlswrite(file,{a},sheet,range) and the excel file doesn't change.
Please someone help.
Edit: I am executing these through command window:
a=NPV_run{1}
NPV_run is a 72×1 cell whose first element is ' ,OK| ,g'. Note this element is not the same as 'blank,OK|blank,g'. I compared the two strings and the two blank spaces correspond to a mismatch between the two strings.
I then used xlswrite(filename,a,sheet,range) and the result is blank , O K | blank , g each in a different cell. I also tried to use xlswrite(filename,{a},sheet,range), but in this case nothing is written and the cell remains blank.
Hope this was clear enough.

Best Answer

a must be a cell, not a string:
a = {' ,OK| ,OK'};
For example, this works just fine:
ca = {' ,OK| ,OK'};
ca(2) = {'This is column 2 of ca'}; % Assign another cell.
ca{3} = 'This is column 3 of ca'; % Alternate way of specifying a cell.
sheet = 1;
range = 'B4'; % Wherever you want...
xlswrite('deleteme.xls', ca, sheet, range);