1. VBA Excel là gì?
VBA (Visual Basic for Application) là một dạng tích hợp của Visual Basic 6 trong các chương trình Microsoft Office. VBA có sẵn trong các ứng dụng Office như Word, PowerPoint và Excel.
VBA cho phép bạn đạt được những thứ mà thông thường không thể làm được với các tính năng phổ biến của Excel. Với VBA, bạn có thể thao tác với giao diện của Excel, thêm các nút chức năng và thậm chí đặt các hàm của riêng bạn.
VBA Excel sử dụng ngôn ngữ lập trình Visual Basic. Thông qua ngôn ngữ này và với một chút kiến thức về lập trình, bạn có thể có trải nghiệm vượt ra ngoài ranh giới của Excel.
>>> Đọc ngay: Cách sử dụng hàm ISNUMBER trong Excel
2. Hướng dẫn VBA Excel: Tạo nút chuyển đổi
Để giúp bạn quen với VBA, trong bài viết này, chúng ta sẽ thực hiện một dự án VBA Excel đơn giản: tạo một nút sẽ chuyển đổi giá trị trong một ô đã chọn từ USD sang GBP (đồng bảng Anh). monarchyapartment
Dự án này có hai bước. Bước đầu tiên là chuyển đổi giá trị số từ USD sang GBP bằng cách nhân số USD với 1,22, tỷ giá hối đoái giả định. Bước thứ hai là thay đổi định dạng trong ô từ USD sang GBP.
Khi bạn nhấp vào nút, giá trị của ô đã chọn sẽ được nhân với tỷ giá hối đoái và ký hiệu đô la sẽ thay đổi thành ký hiệu đồng bảng Anh.
2.1 Truy cập Developer Controls trong Excel
Trước khi đi sâu vào VBA, có thể bạn cần phải mở Excel và điều chỉnh cài đặt để hiển thị tab Developer nơi có các tính năng bạn cần truy cập để sử dụng VBA Excel:
- Mở Excel.
- Chuyển đến menu File.
- Nhấp vào Options ở cuối màn hình để mở cửa sổ Tùy chọn Excel.
- Trong Options, chuyển đến tab Customize Ribbon.
- Dưới Main Tabs, nhấp vào ô Developer .
Ngoài ra, bạn cũng có thể nhấp chuột phải vào dải băng Excel và chọn Customize Ribbon.
>>> Đọc ngay: Làm thế nào để trở thành Chuyên gia Microsoft Excel vào năm 2023?
2.2 Tạo một nút
Để tạo công cụ chuyển đổi tiền tệ, trước tiên chúng ta cần chèn phần tử nút. Trong bước tiếp theo, chúng ta sẽ đính kèm code VBA Excel của mình vào nút đó.
- Trong bảng tính Excel của bạn, hãy chuyển đến tab Developer (Nhà phát triển).
- Trong phần Controls (Điều khiển), nhấp vào Insert (Chèn).
- Chọn ActiveX Command Button (Nút lệnh ActiveX). Đây là tùy chọn đầu tiên trong ActiveX Controls (Điều khiển ActiveX).
- Vẽ một nút trên bảng tính.
Nút này sẽ có chú thích là CommandButton1 theo mặc định. Tiếp theo hãy:
- Chọn nút.
- Nhấp chuột phải vào nó và sau đó chọn Properties (Thuộc tính) để hiển thị Cửa sổ Thuộc tính.
- Thay đổi (Name) (tên) thành một cái gì đó đáng nhớ hơn. Lưu ý rằng đây không phải là chữ sẽ hiển thị trên nút, mà là cách nút sẽ được gọi trong code VBA của bạn. Trong ví dụ này, chúng ta sẽ đổi tên thành convertButton .
- Thay đổi Caption (Chú thích) thành nội dung bạn muốn hiển thị trên nút. Chúng ta sẽ sử dụng USD to GBP.
Bạn cũng có thể thay đổi phông chữ và thêm một số style cho nút của mình thông qua cùng một cửa sổ.
>>> Đọc ngay: Cách sử dụng hàm FIND trong Excel
2.3 Thêm một số code
Viết code bằng VBA Excel diễn ra trong một môi trường riêng biệt với giao diện Excel tiêu chuẩn. Để truy cập nó, hãy đảm bảo Design Mode (Chế độ thiết kế) đang hoạt động trong tab Developer (Nhà phát triển), sau đó bấm đúp vào nút. Bạn sẽ thấy một cửa sổ như sau:
Phần đầu và phần cuối của code đã có sẵn—hai đoạn văn bản màu xanh lam ở trước và sau hàm của bạn, trong khi phần văn bản màu đen cho biết hành động sẽ diễn ra khi người dùng nhấp vào nút. Nếu bạn chọn một tên khác cho convertButton, bạn sẽ thấy tên đó trong cửa sổ này.
Để thực hiện quy trình chuyển đổi tiền tệ, chúng ta sẽ sử dụng các dòng code sau giữa hai dòng đã được tạo bởi Excel:
Dim R As Range\nDim W As Range\nSet W = Selection\nFor Each R In W\nR.Value = (R.Value * 1.22)\nR.NumberFormat = "£ 0.00 "\nNext
Đoạn code này khai báo (declare) hai biến R và W là các phạm vi (parameter). Bạn có thể thay đổi hai chữ cái này thành bất cứ thứ gì bạn muốn, miễn là bạn nhất quán trong toàn bộ đoạn code.
Sau đó, mã đặt biến W là Selection (Lựa chọn). Điều này có nghĩa là W là các ô được chọn trong bảng tính. Câu lệnh For Each tuyên bố rằng mã bên dưới câu lệnh sẽ chạy cho mọi R trong W, nghĩa là cho mọi ô trong phạm vi được chọn .
Tiếp theo, hàm chính xuất hiện. Giá trị trong ô được nhân với 1,22 (tỷ giá hối đoái từ GBP sang USD), sau đó định dạng ô được thay đổi để đại diện cho GBP. Cuối cùng, câu lệnh Next (Tiếp theo) chỉ ra rằng code (phép nhân và thay đổi định dạng) cũng sẽ chạy cho ô tiếp theo trong phạm vi, tức là R tiếp theo trong W.
Giao diện của nó trong cửa sổ VBA Excel trông như sau:
Nếu bạn đã đặt tên khác cho nút của mình hoặc sử dụng các tên khác không phải là R và W trong code, hãy nhớ đổi những tên này thành tên trong code của bạn. Nếu không, code sẽ không hoạt động.
Khi code của bạn đã được thiết lập xong, hãy đóng trình soạn thảo VBA. Các thay đổi của bạn sẽ tự động được lưu.
>>> Đọc ngay: Cách tự động hóa tác vụ với Macro Recorder trong Excel
2.4 Kiểm tra công việc của bạn
Bây giờ bạn cần tắt Design Mode để dừng bất kỳ sửa đổi nào khác đối với nút và làm cho nút hoạt động.
Tiếp theo, chọn một ô hoặc một dải ô, sau đó nhấp vào nút để xem nó hoạt động như thế nào. Hy vọng rằng bạn sẽ thấy giá trị tăng thêm 1,22, nghĩa là quá trình chuyển đổi tiền tệ đã được thực hiện chính xác.
>>> Đọc ngay: Cách sử dụng hàm VSTACK và HSTACK trong Excel
3. Làm quen với VBA Excel
Công cụ chuyển đổi tiền tệ của chúng ta rất đơn giản—nhưng đó là bước đầu tiên để bạn tìm hiểu các tính năng khác nhau của VBA. Nếu bạn mới bắt đầu, hãy chọn các dự án liên quan đến một mục tiêu hoặc nhiệm vụ cơ bản mà bạn muốn làm. Bạn sẽ dần trở nên quen thuộc hơn với cách thức hoạt động của VBA.
4. Tổng kết
VBA Excel là một kỹ năng quan trọng cần có của mỗi người khi muốn sử dụng Excel một cách hiệu quả và thành thạo. Đồng thời, đây cũng là trợ thủ đắc lực cho những ai đang học và làm việc trong ngành dữ liệu, sử dụng số liệu để phân tích và báo cáo.
>>> Nếu bạn muốn tìm hiểu kỹ càng hơn về VBA cũng như các kỹ năng Excel liên quan khác, đăng ký ngay khóa học xử lý dữ liệu của FUNiX tại đây:
Tại sao phân tích dữ liệu bằng excel vẫn cần thiết?
Cách sử dụng hàm IMAGE trong Excel
Vân Nguyễn
Dịch từ: https://www.makeuseof.com/tag/excel-vba-programming-tutorial/
Bình luận (0
)