2015-10-05 122 views
0

我目前在OSX上运行MATLAB R2013a,并试图在Excel 2011 for Mac中将单元格数组的内容写入到.xlsx文件的指定单元格中。当我第一次尝试使用内置的MATLAB函数xlswrite时,我没有成功,在做了一些挖掘之后,我得出这样的结论:这个函数不能正常工作,因为我的Mac不支持actxserver。因此,我在网上做了一些研究,发现xlwrite函数herexlwrite在Excel中更改字体格式

下载软件包后,我成功地能够使用此代码将单元格数组的内容写入到.xlsx文件的指定单元格中,但是,我遇到了问题。如何获取我正在编辑的单元格的内容以保留单元格的以前的.xlsx格式?例如,我写入的空白单元格被设置为粗体Cambria字体大小10,但是当我运行此代码时,单元格的内容更改为非粗体Calibri(Body)字体大小12.我尝试更改Excel默认的字体设置,但它总是恢复到Calibri(Body)字体大小12.是否有一个技巧来保持格式相同?谢谢您的帮助!

+0

从MATLAB观点评论:它可能更好地问代码是否这是可能从MATLAB的作者。你可以通过代码,看看是否有一个字体说明符的地方,如果不是这种情况,我认为它只是Excel – Adriaan

+0

我联系了作者,但还没有听到过。我经历了xlwrite代码,但是在格式化方面找不到任何东西,虽然有一些内置的java函数,我无法访问/不太明白 – dwm8

回答

1

我认为这是由Excel行为引起的。我认为Excel中的风格“正常”(或任何您的数据类型)已经自动使用Calibri字体格式化新数据。我个人认为这没什么大不了的。

但是,如果你想修复,你可以尝试打开Excel文件。选择与字体宋体细胞,去标签首页(Excel 2010中),然后单元格样式,右键单击普通(或当前样式名称),然后修改。然后取消选中框字体 - >确定。然后保存文件并重新运行Matlab脚本。

enter image description here

+0

感谢您的帮助!我能够使用此解决方案的变体 - 而不是取消选中字体框,我检查了它,点击格式...按钮,并将格式更改为我希望它导入的方式 – dwm8