[VSTO] Excel – Hello Word!!!

  • 10261
  • 0

[VSTO] Excel – Hello Word!!!

要瞭解Excel VSTO 2010 就要先知道它有哪些物件,Excel 物件模型概觀,比較常用的基礎模組如下:

 

建立專案

接下來建立一個新的活頁簿專案

image

 

建立新的文件

image

 

加入控制項

image

 

VSTO 2010會幫我們將Excel變成ThisWorkbook.cs / 工作表1.cs / 工作表2.cs / 工作表3.cs,這樣的架構在跟VBA長的很像,到目前為止只是很像而已,但實際上整個架構都是不同於以往的VBA。

image

 

類別與活頁簿

ThisWorkbook.cs是代表活頁簿,工作表1.cs ~工作表3.cs是活頁簿裡的工作表(WorkSheet) ,所以一個Excel檔案打開生命週期就是從ThisWorkbook開始,ThisWorkbook就是一個 WorkbookBase 類別 ,裡面的工作表就是 WorksheetBase 類別,要注意的是不同的.Net版本會對應到不同的類別名稱,VSTO 2010的軟體架構似乎又有很大的變動。

.NET 2.0 http://msdn.microsoft.com/zh-tw/library/microsoft.office.tools.excel%28VS.80%29.aspx

.NET 3.5 http://msdn.microsoft.com/zh-tw/library/microsoft.office.tools.excel%28VS.90%29.aspx

.NET 4.0 http://msdn.microsoft.com/zh-tw/library/microsoft.office.tools.excel.aspx

Visual Studio Tools for Office Runtime 概觀

 

下圖是表較圖,原本在2.0的Worksheet 類別到4.0變成Worksheet 介面

image

 

類別成員的使用

在ThisWorkbook.cs可以使用 WorkbookBase 類別所擁有的成員。

image

 

當然在工作表裡也是一樣可以使用基礎類別 WorksheetBase 類別 的成員。

image

 

在VSTO 2010裡還有一個很重要的物件叫Globals 類別,它是用來存取Excel專案中的類別,跨工作表存取資料就靠它了。

image

 

讀寫儲存格

接下來在button.Click事件裡寫程式碼,跟VBA一樣,還是用Range以及Cells來撈資料。

image

若有謬誤,煩請告知,新手發帖請多包涵


Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET

Image result for microsoft+mvp+logo