vb/vb.net/C#調用Excel

來源:互聯網
上載者:User
本人就最近潛心研究的三種語言調用Excel檔案呈現給大家.
微軟的Excel在某一些小軟體上確實比較有用處,比如匯出資料做報表
但程式設計語言要與應該程式串連,必須涉及到com組件,就offiice2000/office xp/office 2003給大家介紹這幾種com
在VB中調Excel2000/xp有一個*.ole檔案,2000是9.0.其他類推,可到了2003就沒了這個嵌入檔案,沒有研究在VB中調用Excel 2003,在.net下面調用2000/xp依然是那個檔案,可2003就是excel.exe.且類庫為1.5.以此類推.其實在com下面就有命名空間,那個時候應該叫庫吧.你引用檔案時候去看就清楚.這些東西我不再多說.進入正題:

VB
怎麼引用com組件不在我介紹之類,附一張圖
仔細的朋友應該看出我前面說的吧
Dim myexcel As New Excel.Application
Dim myworkbook As Excel.Workbook
Dim myworksheet As Excel.Worksheet
Set myworkbook = myexcel.Workbooks.Open("c:\test.xls")
myexcel.Visible = True
這裡面有幾個問題提醒一個,第一行聲明新的應該用程式,執行個體化吧.如果學C#之後這個應該很清楚
第二行聲明一個變數,應該叫引用變數,在這裡特別得說.因為引用有兩個類Workbook/Workbook
Worksheet/Worksheets這四個類兩兩相對,多一個s就代表是組合吧.一般不用到.但四行首先用到set
這應該叫做賦引用值吧.以後.net我是沒這見到.也許還沒碰到.為什麼又用到Workbooks這個屬性
其實就只打這個集合中的某一個Workbook.為什麼介紹這些.當然是為了自己能理解.

VB.net
下面應該是VB.net啦.這裡首明本人對c++/ delphi/Java倒不熟.簡單就是只看文法.沒用過.所以只能用這種比較漏也的語言.不要嘲笑.語言是互連的我確實.進入主題
進入.net世界,還是引用,不過我倒不準用imports之類的引用命名空間.我還是用全名
Dim excelapp As New Microsoft.Office.Interop.Excel.Application
        Dim excelworkbook As Microsoft.Office.Interop.Excel.Workbook
        Dim excelworksheet As Microsoft.Office.Interop.Excel.Worksheet
        excelworkbook = excelapp.Workbooks.Open("c:\test.xls")
        excelapp.Visible = True
應該來說是多大的區別.有區別我前面也聲明過.

C#
這個是我從網上半看半學來的,至少我目前還不明白.首先這裡面聲明的全是介面,而不是類
Microsoft.Office.Interop.Excel.Application   myExcel = new Microsoft.Office.Interop.Excel.ApplicationClass();
            Microsoft.Office.Interop.Excel.Workbook   myWorkBook;
            Object missing = System.Reflection.Missing.Value;
            myWorkBook =myExcel.Workbooks.Open (@"c:\test.xls",missing,missing,missing,missing,missing,missing,missing,missing,missing,missing,missing,missing,missing,missing );
            myExcel.Visible = true;

看到區別不open這個方法.三種語言都叫方法吧.因為不傳回值..嘿嘿.所以沒叫涵數.555555555555
其實open方法後面就是這麼多參數.vb/vb.net可以省掉有些參數.原因我沒參透.應該是跟值有關係,本人基礎不太好.而C#後面不能省參數,object的參數值為Misssing.Value
我不枉下結論.而字串前面加了@,這個也沒弄明白.希望網友能給出解釋.

至於怎麼填充資料,估計這段時間不會出來.我會繼續奉出.net列印設定.報表製做(不指水晶)
本人覺得用水晶功能大.但總是沒自己寫的好,到位

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.