Chuyển đến nội dung chính

ExcelVba Tự động Tìm ô trống và điền dữ liệu theo Vlookup của bảng hiện tại



Hỏi: Tìm các ô trống trong cột B và điền giá trị từ cột A ở hàng tương ứng. Nếu không tìm thấy giá trị, ô đó sẽ được tô màu xanh dương.

Đáp:

Bạn có thể sử dụng VBA để thực hiện yêu cầu của bạn. Dưới đây là một đoạn mã VBA sẽ tìm các ô trống trong cột B và điền giá trị từ cột A ở hàng tương ứng. Nếu không tìm thấy giá trị, ô đó sẽ được tô màu xanh dương.

Sub FillBlankCells()
    Dim ws As Worksheet
    Dim rng As Range
    Dim cell As Range
    Dim searchValue As Variant
    Dim foundValue As Range

    ' Đặt trang tính cần làm việc
    Set ws = ThisWorkbook.Sheets("Sheet1") ' Thay "Sheet1" bằng tên trang tính của bạn

    ' Vùng dữ liệu tA1:B1000
    Set rng = ws.Range("A1:B1000")

' Duyệt qua từng ô trong cột B từ B1 đến B1000 For Each cell In ws.Range("B1:B1000") ' Kiểm tra ô có trống không If IsEmpty(cell.Value) Then ' Lấy giá trị từ cột A ở cùng hàng searchValue = cell.Offset(0, -1).Value

' Sử dụng hàm VLOOKUP để tìm giá trị trong cột B Dim vlookupResult As Variant vlookupResult = Application.VLookup(searchValue, ws.Range("A1:B1000"), 2, False) ' Kiểm tra kết quả của VLOOKUP If Not IsError(vlookupResult) Then ' Nếu tìm thấy giá trị thì điền vào ô trống cell.Value = vlookupResult Else ' Nếu không tìm thấy giá trị thì tô màu xanh dương cho ô đó cell.Interior.Color = RGB(0, 0, 255) End If End If

Next cell

End Sub

Để sử dụng đoạn mã này:

  1. Mở Excel.
  2. Nhấn Alt + F11 để mở trình soạn thảo VBA.
  3. Chọn Insert > Module để tạo một module mới.
  4. Sao chép và dán đoạn mã trên vào module vừa tạo.
  5. Đóng trình soạn thảo VBA.
  6. Quay lại Excel, nhấn Alt + F8, chọn FillBlankCells và nhấn Run.

Đoạn mã này sẽ kiểm tra từng ô trong cột B. Nếu ô nào trống, nó sẽ tìm giá trị tương ứng trong cột A và điền vào ô trống đó. Nếu không tìm thấy giá trị tương ứng, ô đó sẽ được tô màu xanh dương.

Nhận xét

Bài đăng phổ biến từ blog này

Hướng Dẫn Xóa Các Style Tùy Chỉnh Trong Word Bằng VBA

  Hướng Dẫn Xóa Các Style Tùy Chỉnh Trong Word Bằng VBA Khi làm việc với các tài liệu Word tải về, bạn có thể gặp phải tình trạng tài liệu chứa quá nhiều Style tùy chỉnh không cần thiết, khiến việc định dạng trở nên rối rắm. Bài viết này sẽ hướng dẫn bạn cách xóa toàn bộ các Style tùy chỉnh và chỉ giữ lại các Style mặc định của Word bằng cách sử dụng VBA (Visual Basic for Applications). Bước 1: Kích hoạt Developer Tab trong Word Trước khi sử dụng VBA, bạn cần kích hoạt tab Developer : Mở Word . Vào File > Options . Trong cửa sổ Word Options , chọn Customize Ribbon . Trong danh sách bên phải, đánh dấu vào ô Developer và bấm OK . Bước 2: Mở VBA Editor Nhấn Alt + F11 để mở VBA Editor . Trong cửa sổ VBA, vào menu Insert > Module để tạo một module mới. Bước 3: Dán đoạn mã VBA Dán đoạn mã sau vào module mới: Sub DeleteCustomStyles() Dim s As Style For Each s In ActiveDocument.Styles If Not s.BuiltIn Then On Error Resume Next s.Delete ...

Tóm tắt Cuốn sách "Broken Money" của Lyn Alden

Cuốn sách "Broken Money" của Lyn Alden phân tích sự phát triển của tiền tệ qua các thời kỳ và những vấn đề của hệ thống tài chính hiện đại. Dưới đây là các ý tưởng và chủ đề chính của cuốn sách: 1. Sự tiến hóa của tiền tệ: Từ hàng hóa đến tiền pháp định: Ban đầu, các cộng đồng sử dụng các vật phẩm như vỏ sò, muối và lông thú làm phương tiện trao đổi. Với sự phát triển công nghệ, vàng và bạc trở thành tiền tệ chính do tính khan hiếm và bền vững. Sau đó, tiền pháp định (fiat) xuất hiện, được chính phủ phát hành mà không có sự bảo đảm bằng hàng hóa cụ thể. Shortform Ảnh hưởng của công nghệ: Sự ra đời của các công nghệ như điện báo đã thay đổi cách thức giao dịch và lưu trữ giá trị, dẫn đến sự chuyển đổi từ tiền tệ dựa trên hàng hóa sang tiền pháp định. Bitcoin News 2. Vấn đề của hệ thống tiền tệ hiện đại: Lạm phát và mất giá: Các chính phủ và ngân hàng trung ương có thể tạo ra tiền với chi phí thấp, dẫn đến lạm phát và làm giảm giá trị tiết kiệm của người dân. Võ Hoàng Hạc Sự...