Giá trị VBA | Cách sử dụng Thuộc tính giá trị VBA trong Excel? (Ví dụ)
Thuộc tính giá trị VBA trong Excel
Giá trị là một thuộc tính trong VBA chủ yếu được sử dụng với phương thức phạm vi để gán giá trị cho một phạm vi cụ thể, nó là một biểu thức có sẵn trong VBA, ví dụ: nếu chúng ta sử dụng phạm vi (“B3”). Value = 3, điều này sẽ chỉ định ô B3 có giá trị là 3, không nhất thiết thuộc tính giá trị đó phải được sử dụng với chỉ phương thức phạm vi mà chúng ta cũng có thể sử dụng nó với các hàm khác.
Ngay từ đầu khi học với VBA, chúng tôi rất tò mò muốn tìm hiểu về cách lưu trữ dữ liệu trong các ô. Nếu bạn tò mò như vậy thì bạn cần phải hiểu thuộc tính "Giá trị". Trong bài viết này, chúng tôi sẽ giải thích cho bạn về thuộc tính “Giá trị”, cách chèn hoặc đặt giá trị, cách lấy giá trị từ ô và nhiều thứ khác.
Trong một trong những bài viết trước đó, chúng ta đã thảo luận về “Các ô trong phạm vi VBA”. Đối tượng phạm vi có thể giúp chúng ta tham chiếu đến một ô cũng như nhiều ô. Để sử dụng đối tượng RANGE, trước tiên chúng ta cần quyết định ô nào chúng ta cần chèn giá trị và giá trị chúng ta sẽ chèn là gì.
Làm thế nào để sử dụng Thuộc tính Giá trị trong VBA?
Bạn có thể tải xuống Mẫu Excel Hàm Giá trị VBA này tại đây - Mẫu Excel Hàm Giá trị VBAVí dụ # 1 - Đối tượng phạm vi để chỉ định giá trị cho ô
- Ví dụ: nếu bạn muốn chèn một giá trị vào ô A1 thì bạn nên tham chiếu ô A1 như Dải ô này (“A1”)
Mã:
Giá trị phụ () Phạm vi ("A1") Kết thúc phụ
- Sau khi tham chiếu ô bằng đối tượng RANGE, bây giờ hãy đặt một dấu chấm (.) Để xem danh sách IntelliSense của tất cả các thuộc tính và phương thức được liên kết với đối tượng này.
Mã:
Giá trị phụ () Phạm vi ("A1"). Kết thúc Sub
- Hình thành nhiều tùy chọn này, hãy chọn thuộc tính "VALUE".
Mã:
Giá trị phụ () Phạm vi ("A1"). Giá trị cuối phụ
- Khi thuộc tính “VALUE” được chọn, chúng ta cần đặt giá trị cho ô A1 bằng cách đặt giá trị vào dấu bằng.
Mã:
Giá trị phụ () Phạm vi ("A1"). Giá trị = "Chào mừng bạn đến với VBA" Kết thúc phụ
- Ok, điều này sẽ chèn giá trị “Chào mừng bạn đến với VBA” vào ô A1.
- Nếu bạn muốn chèn cùng một giá trị vào nhiều ô thì hãy tham khảo các ô như đoạn mã dưới đây.
Mã:
Giá trị phụ () Phạm vi ("A1: A5"). Giá trị = "Chào mừng bạn đến với VBA" Kết thúc Sub
- Thao tác này sẽ chèn giá trị từ ô A1 đến A5 .
- Nếu bạn muốn chèn giá trị vào các ô khác nhau nhưng không phải cho chuỗi ô thì chúng ta cần sử dụng mã và địa chỉ ô trong các đối số riêng biệt như bên dưới.
Mã:
Giá trị phụ () Phạm vi ("A1, A5, B4, C2"). Giá trị = "Chào mừng bạn đến với VBA" Kết thúc Sub
- Thao tác này sẽ chèn văn bản “Chào mừng bạn đến với VBA” vào các ô A1, A5, B4 và C2 .
Ví dụ # 2 - Chèn Giá trị bằng Thuộc tính CELLS
Không phải thông qua đối tượng RANGE mà còn sử dụng thuộc tính VBA CELLS, chúng ta có thể chèn các giá trị. Nhưng một trong những vấn đề với đối tượng CELLS là chúng tôi không có quyền truy cập vào danh sách IntelliSense như chúng tôi nhận được đối với đối tượng RANGE.
Ở đây chúng ta cần đề cập đến số hàng & cột mà chúng ta cần chèn giá trị. Ví dụ bạn muốn chèn giá trị vào ô A1 thì mã là CELLS (1,1), nếu bạn muốn chèn giá trị vào ô B5 thì mã là CELLS (5,2) tức là bằng B5 ô.
Chúng tôi không thể chèn giá trị vào nhiều ô bằng cách sử dụng thuộc tính CELLS, điều này không giống như đối tượng RANGE của chúng tôi.
Ví dụ # 3 - Nhận giá trị ô
Chúng ta đã xem cách chèn giá trị vào các ô, bây giờ chúng ta sẽ xem cách lấy giá trị từ các ô.
Bước 1: Định nghĩa một biến là Chuỗi.
Mã:
Giá trị con () Dim K làm chuỗi con kết thúc
Bước 2: Đối với biến “k” này, chúng ta sẽ gán giá trị của ô A1. Trong ô A1, tôi đã nhập giá trị “Chào mừng đến với VBA”.
Vì vậy, mã sẽ là k = Range (“A1”). Giá trị
Mã:
Giá trị phụ () Dim K là chuỗi K = Phạm vi ("A1"). Giá trị cuối phụ
Bước 3: Hiển thị kết quả của biến “k” trong hộp thông báo VBA.
Mã:
Giá trị phụ () Dim K As String K = Range ("A1"). Giá trị MsgBox K End Sub
Bằng cách chạy mã, chúng ta sẽ có kết quả của giá trị ô A1 trong hộp thông báo.
Chúng ta cũng có thể sử dụng đối tượng RANGE để lấy dữ liệu của ô A1, đoạn mã dưới đây sẽ hiển thị tương tự cho bạn.
Mã:
Giá trị phụ () Dim K As chuỗi đặt CellValue = Phạm vi ("A1") MsgBox CellValue End Sub
Điều này cũng sẽ nhận được giá trị của ô A1 trong hộp thông báo.
Ví dụ 4 - Giá trị lỗi nếu Yêu cầu nhiều giá trị ô
Để biết ví dụ, hãy xem đoạn mã dưới đây.
Mã:
Giá trị phụ () Dim K As Range Set CellValue = Range ("A1: A5") MsgBox CellValue End Sub
Nếu bạn chạy đoạn mã trên, chúng tôi sẽ gặp lỗi "Loại không khớp".
Lý do tại sao chúng ta gặp lỗi này vì khi biến đối tượng được đặt thành nhiều thuộc tính “value” ô không thực sự hiểu giá trị ô nào sẽ được cung cấp, vì vậy nó có thể nhận một giá trị ô duy nhất tại một thời điểm.