Hướng Dẫn Về Mảng Trong VBA Excel: Các Kiểu Động, Đa Chiều

Nội dung được viết bởi G-LEARNING

Mảng (Aray) trong VBA là gì?

Một mảng được định nghĩa là một phần trong bộ nhớ có khả năng lưu trữ nhiều hơn một giá trị. Tất cả các giá trị phải cùng loại dữ liệu. Giả sử bạn muốn lưu trữ một danh sách đồ uống yêu thích của bạn trong một biến duy nhất, bạn có thể sử dụng một mảng để làm điều đó.

Bằng cách sử dụng mảng, bạn có thể tham chiếu đến các giá trị liên quan có cùng tên. Bạn có thể sử dụng mục lục hoặc kí hiệu để phân biệt chúng. Các giá trị riêng lẻ được gọi là các phần tử của mảng. Chúng có giá trị từ chỉ số 0 đến giá trị cao nhất.

Ưu điểm của mảng là gì?

Sau đây là một số ưu điểm được cung cấp bởi hàm mảng

  1. Nhóm dữ liệu liên quan với nhau – giả sử bạn muốn lưu trữ danh sách sinh viên. Bạn có thể sử dụng một biến mảng duy nhất có các đặc điểm riêng biệt cho các loại học sinh, ví dụ như khu vườn, tiểu học, trung học, trung học, v.v.
  2. Mảng làm cho nó dễ dàng để viết mã hơn. Đối với cùng một dữ liệu liên quan đến logic, nó cho phép bạn xác định một biến duy nhất, thay vì xác định nhiều hơn một biến.
  3. Hiệu suất tốt hơn – một khi một mảng đã được xác định, việc lấy, sắp xếp và sửa đổi dữ liệu sẽ nhanh hơn.

Các loại mảng

VBA hỗ trợ hai loại mảng là;

  • Tĩnh( Static ) – Các loại mảng này có số lượng phần tử cố định được xác định trước có thể được lưu trữ. Người ta không thể thay đổi kích thước của kiểu dữ liệu của Mảng tĩnh. Chúng rất hữu ích khi bạn muốn làm việc với các dữ liệu đã biết, chẳng hạn như số ngày trong một tuần, giới tính, v.v.
  • Ví dụ : Dim ArrayMonth(12) As String
  • Động( Dynamic ) – Các loại mảng này không có số lượng phần tử được xác định trước cố định có thể được lưu trữ. Đây là hữu ích khi làm việc với các thực thể mà bạn không thể xác định trước số lượng.
  • Ví dụ : Dim ArrayMonth() As Variant

Cú pháp khai báo mảng

Mảng Tĩnh

Cú pháp khai báo mảng Tĩnh như sau:

 Dim arrayName (n) as datatype
Hướng Dẫn Về Mảng Trong VBA Excel: Các Kiểu Động, Đa Chiều

Mảng động

Cú pháp khai báo mảng  Động như sau:

Dim arrayName() as datatype 
ReDim arrayName(4) 
Hướng Dẫn Về Mảng Trong VBA Excel: Các Kiểu Động, Đa Chiều

Kích thước mảng

Một mảng có thể là một chiều, hai chiều hoặc đa chiều.

  • Một chiều : Trong chiều này, mảng chỉ sử dụng một danh mục. Ví dụ một độ tuổi ở mỗi người
  • Hai chiều : Trong chiều này, mảng sử dụng hai danh mục. Ví dụ số học sinh trong mỗi lớp. Nó đòi hỏi số lượng lớp học và số học sinh trong mỗi lớp
  • Đa chiều : Trong chiều này, mảng sử dụng nhiều hơn hai danh mục. Ví dụ nhiệt độ vào ban ngày. (30, 40, 20).

Cách sử dụng Array trong VBA Excel

Chúng ta sẽ tạo ra một ứng dụng đơn giản. Ứng dụng này điền vào một bảng trong Excel với dữ liệu từ một biến mảng. Như ví dụ dưới đây

  • Tạo một sổ làm việc Microsoft Excel mới và lưu nó dưới dạng Sổ làm việc được bật Macro Excel (* .xlsm)
  • Thêm một nút lệnh vào sổ làm việc
  • Đặt thuộc tính tên và chú thích trên nút lệnh
  • Lập trình VBA điền vào bảng Excel

Hãy làm từng bước một,

Bước 1 – Tạo một bảng tính mới

  1. Mở Microsoft Excel
  2. Lưu sổ làm việc mới dưới dạng VBA Arrays.xlsm

Bước 2 – Thêm nút lệnh

Lưu ý: Phần này giả sử bạn đã quen với quá trình tạo giao diện trong excel. Nếu bạn chưa quen, hãy đọc hướng dẫn Điều khiển & Điều khiển biểu mẫu VBA Excel . Nó sẽ chỉ cho bạn cách tạo giao diện

  1. Thêm một nút lệnh vào trang tính
Mảng VBA
  1. Đặt thuộc tính tên thành cmdLoadBeverages
  2. Đặt thuộc tính chú thích thành LoadBeverages

GUI của bạn bây giờ sẽ như sau

Mảng VBA

Bước 3 – Lưu tệp

  1. Bấm vào nút lưu dưới dạng
  2. Chọn Sổ làm việc có Macro Macro (* .xlsm) như trong hình bên dưới
Mảng VBA

Bước 4 – Viết mã

Bây giờ chúng ta sẽ viết mã cho ứng dụng của chúng ta

  1. Nhấp chuột phải vào nút LoadBeverages và chọn xem mã
  2. Thêm mã sau vào cmdLoadBeverages
Private Sub cmdLoadBeverages_Click()     
Dim Drinks(1 To 4) As String           
Drinks(1) = "Pepsi"     
Drinks(2) = "Coke"    
Drinks(3) = "Fanta"    
Drinks(4) = "Juice"           
Sheet1.Cells(1, 1).Value = "My Favorite Beverages"    
Sheet1.Cells(2, 1).Value = Drinks(1)    
Sheet1.Cells(3, 1).Value = Drinks(2)    
Sheet1.Cells(4, 1).Value = Drinks(3)     
Sheet1.Cells(5, 1).Value = Drinks(4) 
End Sub  ()
    
Hướng Dẫn Về Mảng Trong VBA Excel: Các Kiểu Động, Đa Chiều

Kiểm tra ứng dụng

Chọn tab nhà phát triển và đảm bảo rằng nút Design Mode được “tắt”. (Xem hình dưới đây)

Mảng VBA

Nhấp vào nút Load Beverages

Bạn sẽ nhận được kết quả như sau

Mảng VBA

Tải xuống mã Excel ở trên

Tóm lược

  1. Mảng là một biến có khả năng lưu trữ nhiều hơn một giá trị
  2. VBA hỗ trợ mảng tĩnh và động
  3. Mảng giúp dễ dàng duy trì so với khai báo rất nhiều biến cho dữ liệu có liên quan về mặt logic.
Đánh giá bài viết này

KHÓA HỌC EXCEL ONLINE HOÀN TOÀN MIỄN PHÍ

Khóa học với hơn 14000 HỌC VIÊN đang học và đánh giá trung bình 4.76 SAO

0/5 - (0 bình chọn)

0/5 - (0 bình chọn)

0 thảo luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông