【问题标题】:Error while using actxcontrol in Matlab to clear contents in an open Excel file.在 Matlab 中使用 actxcontrol 清除打开的 Excel 文件中的内容时出错。
【发布时间】:2015-07-17 20:46:07
【问题描述】:

这是我清除已打开的 excel 文件的代码。

% get running excel file

Excel = actxGetRunningServer('Excel.Application'); 

ExcelFile = Excel.get('Workbooks','usbTC0832.xls');

ExcelSheet = ExcelFile.Sheets.Item('Sheet1');

ExcelFile.Worksheets.Item('Sheet1').Range('A2:C520').ClearContents  

% ExcelFile.Save;

非常简单,它可以在另一个系统中完美运行。但是在我的新系统中它会引发错误

>>Error using COM.Excel_Application/get
>>Invoke Error, Dispatch Exception: Invalid index.

在我重新启动系统后第一次运行良好。之后的每个实例都会引发该错误。我试过重新启动matlab,但它并没有消失。我似乎需要重新启动我的系统。我不明白问题是什么。任何帮助将不胜感激。

【问题讨论】:

  • 你关闭连接了吗?有时文件在后台保持打开状态并给出令人讨厌的错误
  • 不,我正在尝试访问并且已经打开与 actxGetRunningServer 的连接

标签: excel matlab com export-to-excel


【解决方案1】:

可能是工作簿上的 get 尝试打开文件。 但如果它已经打开,则会引发错误。 首先尝试使用 Excel.Workbooks.Item('usbTC0832.xls') 查找它。 如果它未打开,这也可能会出错,您应该捕获它,如果未打开,请使用 get。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    • 2011-04-29
    相关资源
    最近更新 更多