0

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

在 Excel 文件(input.xlsx)中,它写为“鞋”。

我阅读使用

[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]);

它将以英式而非鞋式的形式出现。

我该如何解决这个问题?

4

1 回答 1

1

您分配txt单元格而不是字符串。改为使用eng = txt{14,19};

于 2013-04-01T13:52:26.383 回答