Bến Hà Trương
Bến Hà Trương
Thảo luận 0 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 11408 lượt xem

Hướng dẫn cách lấy giá trị bên trong một ô bằng cách viết code với Range hoặc Cells

Dec 28 2020

Trong VBA có nhiều cách khác nhau để lấy các giá trị ô. Trong bài viết này chúng ta sẽ cùng tìm hiểu cách lấy giá trị bên trong một ô bằng cách viết code với Range hoặc Cells. Đây là một trong những cú pháp cơ bản và đơn giản nhất mà tất cả chúng ta nên biết cách sử dụng.

Hướng dẫn sử dụng hàm CELLS và RANGCE để lấy giá trị ô VBA trong Excel

Cú pháp hàm CELLS và Range để lấy giá trị ô 

Cú pháp hàm CELLS vô cùng đơn giản, chỉ yêu cầu tọa độ chỉ số Hàng và chỉ số Cột, để xác định vị trí của ô

Cells([RowIndex], [ColumnIndex])

Cú pháp hàm RANGe cũng đơn giản không kém.

RANGE(“cell position”).VALUE

Với cell position là vị trí ô hoặc phạm vi ô.

Để biết thêm các hàm và phương thức VBA hữu ích khác, hãy tham khảo khóa học Tuyệt đỉnh VBA - Viết code trong tầm tay để tự động hóa thao tác và nghiệp vụ trên Excel, tiết kiệm hàng giờ mệt mỏi vì làm báo cáo, quản lý dữ liệu.

Code VBA lấy giá trị bên trong ô

Để hiểu thêm về các sử dụng hàm CELLS và RANGE lấy giá trị ô trong VBA Excel, hãy quan sát các ví dụ bên dưới

Ví dụ 1: Lấy giá trị ô vào một hộp thông báo với hàm CELLS

Giả sử chúng ta có ô B2 với nội dung ô là “TEST”. Để lấy được giá trị ô này và xuất nó trong một hộp thông báo, hãy làm theo các bước dưới đây:

  • Bước 1: Chèn một module mới bên trong Visual Basic Editor (VBE). Bấm vào tab Insert > chọn Module.

Hướng dẫn sử dụng hàm CELLS và RANGE để lấy giá trị ô VBA trong Excel

  • Bước 2: Viết sub procedure  của VBA Lấy giá trị ô. Với code như sau:
Sub VBA_GetCellValue1()
End Sub
  • Bước 3: Bây giờ trực tiếp sử dụng các hộp thông báo (hàm MsgBox) với  hàm CELLS sử dụng toạn độ của ô B2 như đoạn code bên dưới
MsgBox Cells (2, 2) End Sub

Hướng dẫn sử dụng hàm CELLS và RANGE để lấy giá trị ô VBA trong Excel

  • Bước 4: Chạy mã bằng cách nhấn F5 hoặc Nút Play bên dưới thanh menu. Chúng ta sẽ thấy thông báo lấy giá trị từ ô B2 như hình dưới đây. 

Hướng dẫn sử dụng hàm CELLS và RANGE để lấy giá trị ô VBA trong Excel

Ví dụ  2: Di chuyển con trỏ đến ô chứa giá trị với Range và Select 

Bây giờ, chúng ta hãy xem thêm một đoạn mã  lấy giá trị ô đơn giản khác. Chúng tôi sẽ sử dụng cùng một ô B2 như được sử dụng trong ví dụ-1. Nhưng, trong ví dụ này, chúng ta sẽ di chuyển con trỏ đến ô cần chứa giá trị. Hãy làm theo các bước dưới đây:

  • Bước 1 :Một lần nữa, hãy mở một mô-đun mới và viết sub procedure cho VBA lấy giá trị ô như đoạn code sau
Sub VBA_GetCellValue2 ()
End Sub
  • Bước 2: Bây giờ sử dụng hàm Range và Select để di chuyển con trỏ.
Sub VBA_GetCellValue2()
Range("B2").Select
End Sub
  • Bước 3: Bây giờ di chuyển con trỏ ra khỏi ô B2 và sau đó chạy mã, chúng ta sẽ thấy con trỏ bây giờ được di chuyển trở lại ô B2.

Hướng dẫn sử dụng hàm CELLS và RANGE để lấy giá trị ô VBA trong ExcelHướng dẫn sử dụng hàm CELLS và RANGE để lấy giá trị ô VBA trong Excel

  • Bước 4: Như vậy chúng ta đã biết cách chọn một ô theo giá trị. Có một cách khác để thực hiện thao tác này. Chúng ta sẽ sử dụng hàm CELLS và đặt cùng tọa độ như được sử dụng trong ví dụ 1. Các bước thực hiện tương tự như cách chúng ta sử dụng hàm CELLS.

Sub VBA_GetCellValue2()
Cells(2, 2).Select
End Sub

Hướng dẫn sử dụng hàm CELLS và RANGE để lấy giá trị ô VBA trong Excel

Ví dụ 3: Lấy giá trị ô với hàm Range("cell position").Value

Trong ví dụ này, chúng ta sẽ thấy cách lấy giá trị ô trong hộp thông báo bằng một phương thức khác. Hãy thử các thao tác bên dưới.

  • Bước 1: Hãy mở Module và viết sub procedure sau:
Sub VBA_GetCellValue3()
End Sub

  • Bước 2: Sau đó xác định một biến là chuối bằng cách sử dụng DIM
Sub VBA_GetCellValue3()
Dim Value As String
End Sub
  • Bước 3: Sử dụng biến VALUE đã xác định, chọn giá trị từ ô phạm vi B2.
Sub VBA_GetCellValue3()
Dim Value As String
Value = Range("B2").Value
End Sub
  • Bước 4: Sử dụng hộp thông báo để xem giá trị được lưu trong ô B2.
Sub VBA_GetCellValue3()
Dim Value As String
Value = Range("B2").Value
MsgBox Value
End Sub

Hướng dẫn sử dụng hàm CELLS và RANGE để lấy giá trị ô VBA trong Excel

  • Bước 5: Khi chúng ta Chạy mã bằng cách nhấn F5 hoặc Nút Play bên dưới thanh menu, chúng ta sẽ nhận được hộp thông báo có giá trị là TEST nằm ở ô B2.

Hướng dẫn sử dụng hàm CELLS và RANGE để lấy giá trị ô VBA trong Excel

  • Bước 6: Code tương tự, có thể được sử dụng nếu chúng ta chọn kiểu dữ liệu là VARIANT thay vì STRING. VARIANT trong VBA cho phép cả số và văn bản.
Sub VBA_GetCellValue3()
Dim Value As Variant
Value = Range("B2").Value
MsgBox Value
End Sub

Ví dụ 4: Chuyển giá trị từ ô nay sang ô khác

Có một cách khác để sử dụng các hàm lấy giá trị ô trong VBA, đó là chuyển giá trị ô từ ô này sang ô khác. Với các bước đơn giản như sau:

  • Bước 1: Mở một module mới và chọn phạm vi ô dể tạo lệnh. Giả sử chúng ta muốn sử dụng cùng một phạm vi ô B2 trong các ví dụ trên.
Sub VBA_GetCellValue4()
Range("B2").Value
End Sub
  • Bước 2: Bây giờ chọn ô mà chúng ta muốn đặt giá trị. Ví dụ như A1
Sub VBA_GetCellValue4()
Range("B2").Value = Range("A1").Value
End Sub
  • Bước 3: Chạy mã để xem kết quả. Giá trị từ ô B2 sẽ được chuyển sang ô A1.

Hướng dẫn sử dụng hàm CELLS và RANGE để lấy giá trị ô VBA trong Excel

Lấy giá trị ô trong VBA là thao tác cơ bản, giúp bạn có thể dễ dàng lấy giá trị ô từ mọi nơi. Ghi nhớ các hàm này, bạn sẽ dễ dàng sao chép hoặc di chuyển giá trị ô hoặc con trỏ đến bất kỳ nơi nào bạn muốn.

Những điều cần ghi nhớ

  • Hàm CELLS dễ dàng thực hiện bằng cách đặt tọa độ ROW và COLUMN tương ứng.
  • Các ví dụ lấy giá trị ô VBA ở trên, giúp chúng ta chọn giá trị ô hoặc đưa con trỏ đến vị trí mong muốn.
  • Các thao tác lấy giá trị ô riêng lẻ có thể không hữu ích nhiều nhưng chúng ta có thể sử dụng thao tác này với các loại mã khác nhau để nhận được kết quả có giá trị.
  • Sau khi viết code xong, hãy nhớ lưu mã ở định dạng Macro Enable excel để tránh mất mã.
  • Bạn có thể lấy giá trị ô trong VBA với hàm CELLS và với hàm RANGE.

Hy vọng hướng dẫn này đã giúp bạn hiểu cách lấy giá trị ô với VBA trong Excel. Bên cạnh đó, đừng quên tham gia Gitiho ngay hôm nay nhé, chúng tôi còn nhiều mẹo và thủ thuật tin học văn phòng thú vị khác chờ bạn khám phá.

Cùng tham gia cộng đồng hỏi đáp về chủ đề Tin học văn phòng

Thảo luận 0 câu trả lời
Lượt xem 11408 lượt xem
Vỗ tay vỗ tay

0 Bình 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