如何将MATLAB的输出写入MS Word?

时间:2013-04-01 12:49:49

标签: matlab

我正在使用xlsread从Excel文件中读取MATLAB代码的输入,在计算后我将导出到Word以写出报告(writetoword.m)。在Excel中,有一个字符串,我应该在MATLAB中读取并在Word中输出。

在Excel文件(input.xlsx)中,它写成'shoe'。

我使用

阅读
[num,txt,raw] = xlsread('input.xlsx');
eng = txt(14,19); % the word 'shoe' in that excel cell

writetoword.m,我写道,

test = eng;
WordText(ActXWord,test,Style,[0,1]);

function WordText(actx_word_p,text_p,style_p,enters_p,color_p)
    if(enters_p(1))
        actx_word_p.Selection.TypeParagraph;
    end
    actx_word_p.Selection.Style = style_p;
    if(nargin == 5)
        actx_word_p.Selection.Font.Color=color_p;     
    end

    actx_word_p.Selection.TypeText(text_p);
    actx_word_p.Selection.Font.Color='wdColorAutomatic';
    for k=1:enters_p(2)    
        actx_word_p.Selection.TypeParagraph;
    end
return

它不打印任何东西。错误在行

actx_word_p.Selection.TypeText(text_p);

现在如果我写

test = 'eng';
WordText(ActXWord,test,Style,[0,1]);

它将成为英国而非鞋子。

如何解决此问题?

1 个答案:

答案 0 :(得分:1)

您将txt指定为cell而不是字符串。请改用eng = txt{14,19};