gpt4 book ai didi

excel - 使用 matlab 将迷你图添加到 Excel

转载 作者:行者123 更新时间:2023-12-04 04:47:15 25 4
gpt4 key购买 nike

使用 MATLAB,我可以启动 COM 服务器并以编程方式写入 Excel 工作簿。但是,我想不出添加迷你图的方法(建议):

% Open new workbook
excel = actxserver('excel.application');
excel.visible = 1;
wrkbook = excel.Workbooks.Add();
sheet = wrkbook.Sheets.Item(1);

% Write some data
sheet.Range('B1:Z1').Value = rand(1,25);

这是问题所在:
% Add column sparklines to 'A1', type 'xlSparkColumn' and DataSource: 'B1:Z1'
sheet.Range('A1').SparklineGroups.Add('xlSparkColumn','B1:Z1')

我收到以下错误:
Error using Interface.Microsoft_Excel_15.0_Object_Library.SparklineGroups/Add
Error: Object returned error code: 0x800A03EC

关闭/清理
% Close without saving
wrkbook.Saved = 1;
wrkbook.Close
excel.Quit
delete(excel)

引用 SparklineGroup Object (Excel) .我在 win7 64bit、R2013a 和 Excel 2013 上。

最佳答案

尝试:

xlSparkColumn = 2;
sheet.Range('A1').SparklineGroups.Add(xlSparkColumn,'B1:Z1')
以后,如果你想找出某个常量/枚举的对应值,可以使用 these中所示的IL DASM工具。 posts .
ildasm

编辑
好的,事实证明枚举 xlSparkColumn 这不是真正的问题,您可以将其指定为字符串参数或传递枚举的基础整数值。
您在评论中提到的问题是您拥有 R1C1 reference style设置而不是默认的 A1 引用样式,因此您调用中指定的范围在该格式中无效。
这些中的任何一个都可以工作:
excel.ReferenceStyle = 'xlR1C1';
sheet.Range('A1').SparklineGroups.Add('xlSparkColumn','R1C2:R1C26')

excel.ReferenceStyle = 'xlA1';
sheet.Range('A2').SparklineGroups.Add('xlSparkColumn','B1:Z1')

关于excel - 使用 matlab 将迷你图添加到 Excel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17996850/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com