我的位置:首頁 >   > 

    [VB.Net]如何讀取/寫入Excel檔案

    發表時間:
    今天要來分享用 VB 怎麼對 Excel 來做操作

    如果本身電腦有安裝 Office 的話,在安裝的同時也把一些 DLL 檔案也附上了

    OK~開啟一個新專案後,進入該專案的屬性頁,我們要加入參考



    Office 2010 的是 14.0

    Office 365 的是 15.0

    如果沒有安裝 Office 的話就看看網路上有沒有人分享該 DLL 檔

    Microsoft Excel 14.0 Object Library
    Microsoft Office 14.0 Object Library
    Microsoft Visual Basic for Applications Extensibility 5.3

    直接加入看看或許也可以操作

    參考已經加入完畢後就進入程式碼的階段了

    首先要先引用 Imports Microsoft.Office.Interop

    然後建立三個常用到的變數

    Dim app As New Excel.Application 'app 是操作 Excel 的變數
    Dim worksheet As Excel.Worksheet 'Worksheet 代表的是 Excel 工作表
    Dim workbook As Excel.Workbook 'Workbook 代表的是一個 Excel 本體

    如果我們要建立一個新 Excel 的話,可以這樣做

    workbook = app.Workbooks.Add() '建立一個空 Excel (裡面有三張工作表)
    workbook.Close(True, "儲存路徑") '操作完畢後一定要關閉檔案 
    app.Quit() '結束操作

    如果我們要開啟一個舊 Excel 的話,可以這樣做

    workbook = app.Workbooks.Open("檔案路徑") '開啟一張已存在的 Excel 檔案

    如果我們要新增一張工作表的話,可以這樣做

    workbook = app.Workbooks.Open("檔案路徑") '開啟一張已存在的 Excel 檔案
    worksheet = workbook.Worksheets.Add() '增加一張工作表,預設位置是最前面,如果要放在最後可以在參數中加入After:=workbook.Sheets(workbook.Sheets.Count)
    worksheet.Name = "string" '變更工作表名稱
    workbook.Save() '任何操作記得做儲存動作
    workbook.Close() '關閉檔案
    app.Quit() '結束操作

    如果我們要刪除一張工作表的話,可以這樣做

    workbook = app.Workbooks.Open("檔案路徑") '開啟一張已存在的 Excel 檔案
    worksheet = workbook.Worksheets("工作表名稱") '讀取其中一張工作表
    worksheet.Delete() '刪除工作表
    workbook.Save() '儲存動作
    workbook.Close() '關閉檔案
    app.Quit() '結束操作

    如果我們要讀取/寫入某張工作表的某個欄位的話,可以這樣做

    workbook = app.Workbooks.Open("檔案路徑") '開啟一張已存在的 Excel 檔案
    worksheet = workbook.Worksheets("工作表名稱") '讀取其中一張工作表
    MsgBox(worksheet.Cells(1, 4).Value()) '讀取某一個欄位的值,第一個數字是行,第二個數字是列,如果欄位沒有東西會回傳Nothing
    worksheet.Cells(1, 4) = "string" '寫入欄位資料
    workbook.Save() '儲存動作
    workbook.Close() '關閉檔案
    app.Quit() '結束操作

    以上就是最基本的 Excel 操作了,差不多可以應付各種需求

    若有其他問題也歡迎共同討論