matlab activex excel,通过MATLAB ActiveX Server在Excel工作表中恢复CustomView设置

博主在尝试使用MATLAB和ActiveX服务器来复制旧Excel电子表格的CustomView设置到新表格中。他们成功加载了旧电子表格并获取了CustomView信息,但发现无法直接保存和恢复这些设置。问题在于如何保存CustomView的详细信息,如隐藏的列/行和缩放级别,并在新的Excel文件中应用它们。
摘要由CSDN通过智能技术生成

我正在使用ActiveX服务器通过MATLAB修改Excel电子表格中的格式。我需要生成一个新的电子表格,我希望此表中的相同CustomView设置与之前在旧电子表格中设置的设置相同。在这里,我加载了较旧的电子表格,我可以查看通过Excel定义的CustomView数量。

e = actxserver ('Excel.Application'); % open Activex server

ewb = e.Workbooks.Open(fileName); % open file (enter full path!)

>> ewb.CustomViews.get

Application: [1x1 Interface.000208D5_0000_0000_C000_000000000046]

Creator: 'xlCreatorCode'

Parent: [1x1 Interface.000208DA_0000_0000_C000_000000000046]

Count: 3

这是我坚持的部分,因为我不知道如何将这些设置“转移”到另一张纸上。我找到了一些ActiveX documentation,但没有提到我如何能够存储这些设置并在另一个电子表格中使用它们。

我的想法是...... ...

myCustomViews = ewb.CustomViews;

save('myCustomViews.mat','myCustomViews');

%

%

% Clear all and close/quit instance of actxserver

%

%

e = actxserver('Excel.Application');

newEwb = e.Workbooks.Open(newFileName);

load myCustomViews.mat;

newEwb.CustomViews = myCustomViews;

但是我知道这不会起作用,因为(1)myCustomViews似乎不包含任何有关视图的信息,例如哪些列/行被隐藏,缩放级别等等...(2) )保存后无法正确加载myCustomViews对象。 (MATLAB表示它无法加载接口)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值