Blog Tin Học

Excel VBA: Giới thiệu về Macros trong Excel

Macro là một chuỗi các lệnh mà bạn có thể sử dụng để tự động hóa các tác vụ được sử dụng thường xuyên để tiết kiệm thời gian gõ phím và thao tác chuột. Một Macro có thể được tạo bằng cách sử dụng Visual Basic for Applications (VBA) và được viết bởi người sử dụng.

VBA (Visual Basic for Applications) là 1 ngôn ngữ lập trình được tích hợp trong ứng dụng văn phòng như Excel, Word, PowerPoint, … Vì vậy, tất cả các chương trình mà bạn thực hiện trong Excel hoặc trong ứng dụng văn phòng khác đã được thực hiện trong VBA.

Xem thêm: Macro trong excel

Về mặt kỹ thuật, VBA là một ngôn ngữ lập trình hướng sự kiện của Microsoft. VBA cũng được gọi là một ngôn ngữ lập trình mở rộng được tạo thành từ một tập các lệnh cốt lõi và được mở rộng trên cơ sở mỗi ứng dụng để có thể làm việc trực tiếp với các đối tượng trong ứng dụng đó.

Visual Basic for Applications (VBA) trong Excel là một ngôn ngữ lập trình nhẹ nhàng, mạnh mẽ cho phép bạn viết các hàm hoặc lệnh của riêng mình trong một bảng tính Excel.

Sử dụng Excel VBA bạn có thể làm hầu như bất kỳ tác vụ nào tương tự trong Excel.

Các đối tượng trong Excel VBA

Excel VBA: Giới thiệu về Macros trong Excel

Ví dụ: dưới đây là một dòng code hoàn chỉnh để gán giá trị 100 cho file “Book1.xlsx”, sheet “Sheet1”, range “A1”.

Chỉ định tên Workbook thao tác là: “Book1.xlsx”

Application.Workbooks(“Book1.xlsx”)

Worksheets là một thành viên của đối tượng Workbook. Thuộc tính Worksheets() trả về một tập hợp tất cả các sheet của đối tượng Workbook đang được active. Chỉ định tên Worksheet thao tác là: “Sheet1”

Application.Workbooks(“Book1.xlsx”).Worksheets(“Sheet1”)

Cuối cùng để trỏ đến Range “A1” của sheet “Sheet1” và gán bằng 100 như sau:

Application.Workbooks(“Book1.xlsx”).Worksheets(“Sheet1”).Range(“A1”).Value = 100

Điều quan trọng cần lưu ý là mỗi đối tượng có nhiều thành viên khác nhau mà chúng ta có thể sử dụng để tham chiếu đến các đối tượng khác nhau. Ví dụ, các thành viên của đối tượng Worksheet có thể bao gồm: Ranges, PivotTables, Shapes, Charts, ListObjects, vv

Tham khảo: Hàm LEN là gì? Hướng dẫn cách sử dụng hàm LEN trong Excel

Với Excel VBA, bạn có thể tự động hóa các tác vụ trong Excel bằng cách viết code macro và gọi nó. Dưới đây là ví dụ cách tạo một macro trong excel đơn giản và thực thi code bằng một button.

Các bước để viết code và run code VBA trong Excel: 1. Bật Developter tab. 2. Save As Excel file thành Excel Macro File (từ excel 2007 trở lên). 3. Viết code VBA. 4. Run code VBA.

1.Bật Developer Tab

Để mở Developter tab thực theo các bước sau:

  1. Mở một file excel.

  2. Click chuột phải vào bất kỳ chỗ nào trong vùng ribbon -> chọn Customize the Ribbon… Excel VBA: Giới thiệu về Macros trong Excel

  3. Check vào hộp Developer -> click OK. Excel VBA: Giới thiệu về Macros trong Excel

  4. Bạn có thể thấy Developer tab bên cạnh View tab như sau: Excel VBA: Giới thiệu về Macros trong Excel

2. Save As Excel file thành Excel Macro File

Để tạo một macro từ excel, bạn cần phải Save As file excel thành tập tin với phần mở rộng có định dạng .xlsm (excel 2007 trở lên) hoặc .xls (excel 2003)

Note: Để tạo một macro từ excel, nếu bạn đang dùng excel 2003 (.xls) thì bạn không phải làm việc này. Nếu bạn dùng excel 2007 (.xlsx) trở lên thì bạn làm theo các bước sau.

  1. Chọn File -> Save As

  2. Chọn kiểu file phần mở rộng .xlsm (hoặc .xls) -> click Save Excel VBA: Giới thiệu về Macros trong Excel

  3. Click Ok.

Tham khảo: Không mở được file Excel trên điện thoại Samsung, bạn nên làm gì?

Đến đây là đã tạo được một macro file.

3. Viết code VBA

Dưới đây là các bước để tạo ra một thủ tục trong Excel VBA.

  1. Mở Visual Basic Editor: chọn Vusual Basic hoặc bấm tổ hợp phím Alt + F11. Excel VBA: Giới thiệu về Macros trong Excel

  2. Tạo module mới: click chuột phải vào VBAProject -> Insert -> Module. Excel VBA: Giới thiệu về Macros trong Excel

  3. Tạo một Sub có tên ClickButton() vào Module1 với nội dung như trong hình. Excel VBA: Giới thiệu về Macros trong Excel

4. Run code VBA

Insert button

Tại Developer tab, bạn có thể insert một button như sau:

  1. Chọn Insert -> click vào biểu tượng button trong phần ActiveX Controls (Hoặc kéo thả vào vùng cell của excel.) Excel VBA: Giới thiệu về Macros trong Excel Excel VBA: Giới thiệu về Macros trong Excel
  2. Click OK, ta được một button như sau: Excel VBA: Giới thiệu về Macros trong Excel

Gán thủ tục macro cho button

  1. Chọn Desing Mode. Excel VBA: Giới thiệu về Macros trong Excel

  2. Click chuột phải vào “Button1” tạo ở trên -> chọn Assign Macro…

  3. Gán “ClickButton()”(step #3 phần 4.) cho “Button1”. Excel VBA: Giới thiệu về Macros trong Excel

Run Click vào button “Button1” cho ra kết quả như sau: Excel VBA: Giới thiệu về Macros trong Excel

Tham khảo: Cách sử dụng hàm SUMIFS và SUMIF với nhiều điều kiện – một số ví dụ công thức

Bình chọn
5/5
Share on facebook
Share on twitter
Share on linkedin
Share on pinterest

Khám phá nhiều chủ đề khác