Làm Việc Với Excel Trong Visual Basic - Viblo
Có thể bạn quan tâm
Trong bài viết này mình sẽ hướng dẫn các bạn làm việc với Excel bằng Visual Basic trong Visual Studio.
Đầu tiên, các bạn hãy tạo một project chọn References -> Manage NuGet Packages -> Browse -> Microsoft.Office.Interop.Excel, sau đó ấn Install package này:
Khởi tạo Object Excel
Đầu tiên ta khai báo một biến Excel và khởi tạo nó:
Private _Excel As Object _Excel = CreateObject("Excel.Application") _Excel.DisplayAlerts = FalseChúng ta sẽ set DisplayAlert = False để Excel không hiển thị các alert khi macro đang chạy. Sau khi khởi tạo đối tượng này, mở Task Manager lên ta sẽ thấy có một process Excel đang chạy:
Vậy là ứng dụng Excel đã khởi động và sẵn sàng làm việc với các tập tin Excel. Tiếp theo mình sẽ nói về các phương thức cơ bản để thêm, sửa, xóa các sheet cũng như các file Excel :v
Workbook
Trong Excel Interop, mỗi workbook cũng giống như một file Excel. Thuộc tính:
_Excel.Workbookssẽ trả về cho chúng ta một collection các đối tượng workbook hiện tại đang được mở trong Excel Application.
Để tạo một Workbook mới, chúng ta sử dụng method:
Dim path = "D:\Test\Output\" If Not IO.Directory.Exists(path) Then IO.Directory.CreateDirectory(path) End If _Excel.Workbooks.Add() _Excel.ActiveWorkbook.SaveAs("D:\Test\Output\output.xlsx")Ở đoạn trên chúng ta đã tạo một workbook và lưu nó ở thư mục D:\Test\Output với tên là output.xlsx. Mở thư mục ra chúng ta có thể thấy đã có file output:
Để mở một file Excel đã có sẵn để làm việc, chúng ta sử dụng method:
_Excel.Workbooks.Open(String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object)Rất nhiều tham số phải không :v Theo tài liệu thì hàm Open sẽ có các tham số như sau:
Public Function Open (Filename As String, Optional UpdateLinks As Object, Optional ReadOnly As Object, Optional Format As Object, Optional Password As Object, Optional WriteResPassword As Object, Optional IgnoreReadOnlyRecommended As Object, Optional Origin As Object, Optional Delimiter As Object, Optional Editable As Object, Optional Notify As Object, Optional Converter As Object, Optional AddToMru As Object, Optional Local As Object, Optional CorruptLoad As Object) As WorkbookVì giới hạn bài viết nên mình sẽ chỉ giải thích một số tham số nhất định, các tham số còn lại các bạn có thể tham khảo ở đây:
- Filename: Kiểu String, là thuộc tham số bắt buộc. Đây là nơi file name được mở truyền vào.
- ReadOnly: Kiểu Object, là tham số không bắt buộc. Chế độ mở file. True nếu mở workbook ở read-only mode.
- Password: Kiểu Object, là tham số không bắt buộc. Là một String chứa password để mở một protected workbook. Nếu bỏ qua tham số này khi mở một workbook có password, user sẽ được nhắc nhập mật khẩu.
Đã mở thì phải có đóng, để đóng một workbook ta sử dụng:
_Excel.WorkBooks(OpenFileName).Close(SaveChanges:=True)Chúng ta để SaveChanges:=True để lưu lại mọi thay đổi khi đóng file.
Ta có thể mở nhiều Workbook cùng một lúc, cũng giống như Windows, workbook chúng ta đang làm việc là ActiveWorkbook. Để chọn ActiveWorkbook, ta sử dụng:
_Excel.ActiveWorkbookĐể set một workbook là ActiveWorkbook, ta sử dụng:
_Excel.Workbooks(WorkbookName).Activate()Worksheets
Để đếm số lượng worksheet trong workbook, ta sử dụng:
_Excel.ActiveWorkbook.WorkSheets.CountĐể chọn Worksheet, ta có thể dùng:
xls.ActiveWorkbook.Sheets(1).Select()hoặc
xls.ActiveWorkbook.WorkSheets(sheetname).Select()Để add thêm sheet cho workbook, ta dùng phương thức:
_Excel.ActiveWorkbook.Sheets.Add()Để add sheet vào vị trí cuối cùng của các sheet và đặt tên là SheetRenamed, ta sử dụng:
_Excel.ActiveWorkbook.Sheets.Add(After:=_Excel.ActiveWorkbook.Sheets(_Excel.ActiveWorkbook.Sheets.Count)).Name = "SheetRenamed"Chúng ta đã thêm được một sheet mới với tên là "SheetRenamed":
Để select sheet, ta dùng method:
_Excel.ActiveWorkbook.WorkSheets(SheetName).Select()Để xóa một sheet trong workbook, ta sử dụng:
_Excel.ActiveWorkbook.Sheets(SheetName).Delete()Ngoài ra còn rất nhiều thứ khi làm việc với sheet như rows, columns, cells mà mình sẽ giới thiệu ở một bài viết khác. Cảm ơn mọi người đã đọc bài của mình
Từ khóa » Visual Basic Excell
-
VBA Là Gì? Những điều Cơ Bản Về VBA Trong Excel - Điện Máy Xanh
-
Một Số Tính Năng Excel Có Sẵn Nếu Bạn Vô Hiệu Hoá Visual Basic For ...
-
Bắt đầu Với Excel Macros Và Lập Trình VBA
-
Lập Trình VBA Trong Excel Cho Người Mới Bắt đầu - YouTube
-
Tìm Hiểu Về VBA Là Gì? Giải Thích đầy đủ Nhất Về VBA Excel 2022 Có ...
-
Tất Tần Tật Về VBA Trong Excel (Phần 1) - Thủ Thuật
-
Cách Sử Dụng Macro Và VBA Trong Microsoft Excel
-
VBA Là Gì? 5 Mẹo để Lập Trình VBA Excel Macro Thông Dụng Nhất
-
Top 100 Mã Excel VBA Macros Hữu Dụng - Tân Đức ITS
-
Hướng Dẫn Học VBA Excel Dễ Hiểu Cho Cả Người Không Biết - Unica
-
VBA Trong Excel Giúp ích Gì Cho Công Việc Của Bạn? - .vn
-
What Is VBA In Excel? Definition And Overview
-
HƯỚNG DẪN CÁCH MỞ VBA TRONG EXCEL VÀ CÁCH TÍNH SỐ ...
-
Excel VBA Tutorial - Easy Excel Programming