簡體   English   中英

為什么使用DirectCast分配Excel對象

[英]Why using DirectCast assigning Excel Objects

我正在努力理解以下代碼

Dim _xlsSheet As Excel.Worksheet = DirectCast(xlworkbook.Worksheets(Name), Excel.Worksheet)

要么

xlworkbook = DirectCast(xlApp.ActiveWorkbook, Excel.Workbook)

我在Excel.Interop中使用的所有示例都可以看到DirectCast的用法。 我不明白的是為什么我們必須在這里使用DirectCast。 如果我將dim xlworkbook as excel.workbook聲明dim xlworkbook as excel.workbook則使用Directcast而不是僅分配工作簿?

xlworkbook.Worksheets()方法返回一個Excel.Sheets集合。 集合(通常)返回類型為Object項目,因此,應將其強制轉換為期望的類型。

至於xlworkbook = DirectCast(xlApp.ActiveWorkbook, Excel.Workbook) ,則似乎不需要此DirectCast ,除非xlApp是在沒有引用的情況下使用CreateObject("Excel.Application")創建的,該引用將創建一個對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM