C# 工作簿和_工作簿之间的差异

C# 工作簿和_工作簿之间的差异,c#,excel,C#,Excel,在编写EXCEL文件时,我们可以注意到有应用程序、应用程序、工作簿和工作表, 虽然我在某个地方读到过,但它们完全一样,没有区别!!如果这是真的,那么为什么要使用不同的方法呢 请帮我了解一下 谢谢你这两者没有太大区别。事实上,“工作簿”继承自“\u工作簿”,但它也继承自WorkbookEvents\u事件,后者提供链接到工作簿事件的功能。根据我的VS元数据,“工作簿”的定义如下: using System.Runtime.InteropServices; namespace Microsoft.

在编写EXCEL文件时,我们可以注意到有应用程序、应用程序、工作簿和工作表, 虽然我在某个地方读到过,但它们完全一样,没有区别!!如果这是真的,那么为什么要使用不同的方法呢

请帮我了解一下
谢谢你

这两者没有太大区别。事实上,“工作簿”继承自“\u工作簿”,但它也继承自WorkbookEvents\u事件,后者提供链接到工作簿事件的功能。根据我的VS元数据,“工作簿”的定义如下:

using System.Runtime.InteropServices;

namespace Microsoft.Office.Interop.Excel
{
    [CoClass(typeof(WorkbookClass))]
    [Guid("000208DA-0000-0000-C000-000000000046")]
    public interface Workbook : _Workbook, WorkbookEvents_Event
    {
    }
}
  • 工作簿=当前打开的_工作簿对象的集合 在Excel应用程序中
  • _工作簿=Excel工作簿
  • 工作表=工作簿中所有工作表对象的集合
  • _工作表=Excel工作表

最有可能是向后兼容性/legacy.Check,那么我可以使用工作簿而不是\u工作簿吗??没有变化??是的,您可以使用工作簿@keerti_hwell:)尝试两行代码
((_工作表)ws).Activate()
((工作表)ws.Activate()。注意:
ws
是ActiveSheet的一个参考变量,因此,如果我们希望excel文件具有一般行为,那么最好使用与
\u工作簿
对应的
工作簿
,因为
WorkbookEvents\u Event
的某些行为可能缺失?