Note: The other languages of the website are Google-translated. Back to English

Làm thế nào để vlookup và trả về giá trị khớp với nhận xét ô?

Khi bạn áp dụng hàm Vlookup để trả về giá trị phù hợp, nó sẽ chỉ trích xuất giá trị mà không có định dạng, chẳng hạn như màu tô, phông chữ hoặc nhận xét, v.v. Tuy nhiên, đôi khi, bạn có thể cần vlookup và trả về giá trị phù hợp bao gồm cả nhận xét để có được kết quả ảnh chụp màn hình sau. Làm thế nào bạn có thể giải quyết công việc này trong Excel?

Vlookup và trả về giá trị khớp với nhận xét ô bằng cách sử dụng mã VBA


Vlookup và trả về giá trị khớp với nhận xét ô bằng cách sử dụng mã VBA

Mã VBA dưới đây có thể giúp bạn vlookup và trả về giá trị phù hợp với nhận xét của nó, vui lòng làm như sau:

1. Giữ ALT + F11 phím để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

2. Nhấp chuột Chèn > Mô-đun, sau đó sao chép và dán mã sau vào Mô-đun Cửa sổ.

Mã VBA: Vlookup và trả về giá trị khớp với nhận xét ô:

Function VlookupComment(LookVal As Variant, FTable As Range, FColumn As Long, FType As Long) As Variant
'Updateby Extendoffice
    Application.Volatile
    Dim xRet As Variant 'could be an error
    Dim xCell As Range
    xRet = Application.Match(LookVal, FTable.Columns(1), FType)
    If IsError(xRet) Then
        VlookupComment = "Not Found"
    Else
        Set xCell = FTable.Columns(FColumn).Cells(1)(xRet)
        VlookupComment = xCell.Value
        With Application.Caller
            If Not .Comment Is Nothing Then
                .Comment.Delete
            End If
            If Not xCell.Comment Is Nothing Then
                .AddComment xCell.Comment.Text
            End If
        End With
    End If
End Function

3. Và sau đó lưu mã và đóng cửa sổ mã, nhập công thức này: = vlookupcomment (H2, A2: C10,3, FALSE) vào một ô trống để xác định kết quả và nhấn đăng ký hạng mục thi , giá trị phù hợp cũng như nhận xét được trả lại cùng một lúc, xem ảnh chụp màn hình:

Chú thích: Trong công thức trên, H2 là giá trị tra cứu bạn muốn trả về giá trị tương ứng của nó, A2: C10 là bảng dữ liệu bạn muốn sử dụng, số 3 là số cột chứa giá trị phù hợp mà bạn muốn trả về.


Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Nhận xét (20)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Làm cách nào để làm tương tự với Hlookup thay vì vlookup?

Tôi đã thay đổi mã như sau:
Hàm hlookupComment (LookVal As Variant, FTable As Range, Frow As Long, FType As Long) As Variant
'Cập nhật bởi Extendoffice
Ứng dụng. Dễ bay hơi
Dim xRet As Variant 'có thể là một lỗi
Dim xCell As Range
xRet = Application.Match (LookVal, FTable.Rows (1), FType)
Nếu IsError (xRet) Thì
hlookupComment = "Không tìm thấy"
Khác
Đặt xCell = FTable.Rows (Frow) .Cells (1) (xRet)
hlookupComment = xCell.Value
Với Application.Caller
Nếu không.
.Nhận xét.Xóa
Cuối Nếu
Nếu không xCell.Comment không là gì thì
.AddComment xCell.Comment.Text
Cuối Nếu
Kết thúc với
Cuối Nếu
Cuối Chức năng
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Có cách nào để nhận xét vlookup sao chép định dạng của nhận xét gốc không? Một số bình luận của tôi rất dài, nhưng bình luận trả về từ vlookup luôn là kích thước nhỏ tiêu chuẩn, vì vậy tôi không thể đọc hết văn bản
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Carl,
Có thể không có cách trực tiếp để giải quyết vấn đề của bạn, nhưng bạn có thể kéo hộp nhận xét lớn hơn theo cách thủ công. Hoặc bạn có thể áp dụng Kutools cho Excel's Autofit Comment tính năng, nó có thể giúp bạn điều chỉnh hộp nhận xét để phù hợp với nội dung. Cảm ơn bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chúng ta có thể sử dụng ô trong cột B (cột thứ tự) như chú thích cho ô trong cột C (tên) không. đặc biệt, nhận xét cho Helen là 80.
cảm ơn sự giúp đỡ của bạn.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Frank
Chào bạn,

Trong trường hợp bảng tính được bảo vệ, khi tôi mở sổ làm việc của mình, ô trả về lỗi #VALUE!

Làm thế nào chúng ta có thể giải quyết vấn đề này?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Frank,
Sau khi chèn mã, bạn nên lưu sổ làm việc của mình ở dạng Excel Macro-Enabled Workbook để mã không bị mất.
Vui lòng thử! Cảm ơn bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Cảm ơn, Nó hữu ích và tôi có vài điều muốn hỏi
Xin hãy giúp tôi thoát khỏi Vấn đề này
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Shamim,
Xin lỗi vì không có mã trực tiếp để giải quyết vấn đề của bạn, nếu ai có giải pháp, vui lòng bình luận ở đây.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nhận xét của tôi quá lớn so với kích thước hộp mặc định. Có cách nào để tăng kích thước hộp nhận xét hoặc có thể giảm kích thước phông chữ không?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nếu ai khác cần cái này.


Hàm VlookupComment (LookVal As Variant, FTable As Range, FColumn As Long, FType As Long) As Variant

'Cập nhật bởi Extendoffice

Ứng dụng. Dễ bay hơi

Dim xRet As Variant 'có thể là một lỗi

Dim xCell As Range

xRet = Application.Match (LookVal, FTable.Columns (1), FType)

Nếu IsError (xRet) Thì

VlookupComment = "-"

Khác

Đặt xCell = FTable.Columns (FColumn) .Cells (1) (xRet)

VlookupComment = xCell.Value

Với Application.Caller

Nếu không.

.Nhận xét.Xóa

Cuối Nếu

Nếu không xCell.Comment không là gì thì

.AddComment xCell.Comment.Text

.Comment.Shape.ScaleWidth 2, msoFalse, msoScaleFromTopLeft

.Comment.Shape.ScaleHeight 2.5, msoFalse, msoScaleFromTopLeft

Cuối Nếu

Kết thúc với

Cuối Nếu

Cuối Chức năng
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi chỉ muốn Nhận xét dưới dạng Giá trị ô bằng Vlookup ...
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
tôi có thể làm điều đó ở lần đầu tiên. nhưng sau khi tôi cố gắng sử dụng công thức thay đổi của nhiều ô. Nó không hoạt động bây giờ. thậm chí sau khi tôi nhập vlookupcomment, ô sẽ trở thành trống.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào! Tôi rất vui vì tôi đã tìm thấy điều này, vấn đề là, điều này thực sự hoạt động trên các ghi chú, chứ không phải nhận xét. có cách nào để có công việc về nhận xét và không ghi chú? trong ghi chú, tôi không thể gắn thẻ đồng nghiệp của mình và tôi cũng không thể trả lời. cảm ơn rất nhiều!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Đây là một điều tuyệt vời. Nhưng khi sử dụng mã này, tôi thấy tệp bị treo rất nhiều trên Excel 365. Khi xóa tự động lưu, tôi thấy nó tốt hơn một chút. Nhưng với nhiều người dùng trong tệp, tệp sẽ bị lỗi mọi lúc. Mã này có sử dụng nhiều bộ nhớ hay là vấn đề tương thích? Suy nghĩ? Cảm ơn
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Không làm việc cho tôi. Tôi nhận được #NAME? lỗi khi tôi sử dụng công thức này. Hãy giúp tôi.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Sajjad, Bạn đã đặt mã VBA của bài viết này vào sổ làm việc của mình chưa? Vui lòng kiểm tra xem bạn đang sử dụng phiên bản Excel nào? Cảm ơn bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, đây là một chức năng rất tốt, nhưng nó hoạt động cho Ghi chú chứ không phải Nhận xét (ít nhất đây là cách nó được dịch sang ngôn ngữ mẹ đẻ của tôi). Có cách nào để thay đổi nó từ Ghi chú thành Nhận xét không? Ngoài ra, có cách nào để giữ nguyên định dạng ô không? (màu của ô gốc, v.v.).
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
tôi đã có cùng một vấn đề. Tôi chỉ có thể nói rằng đã thử qua vba để sao chép các nhận xét và ghi chú ... chỉ có ghi chú được sao chép chứ không phải nhận xét (mặc dù cùng ý nghĩa, nhưng chức năng khác) ... Ghi chú dường như có tính chất tĩnh , không giống như các bình luận nơi bạn có thể tiếp tục "đăng" để thêm văn bản mới ... Có lẽ đó là lý do ....
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, fana,
Để trích xuất các bản ghi phù hợp với nhận xét trong Office 365, vui lòng áp dụng mã dưới đây:
Function VlookupComment(LookVal As Variant, FTable As Range, FColumn As Long, FType As Long) As Variant
'Updateby Extendoffice
    Application.Volatile
    Dim xRet As Variant 'could be an error
    Dim xCell As Range
    xRet = Application.Match(LookVal, FTable.Columns(1), FType)
    If IsError(xRet) Then
        VlookupComment = "Not Found"
    Else
        Set xCell = FTable.Columns(FColumn).Cells(1)(xRet)
        VlookupComment = xCell.Value
        With Application.Caller
            If Not .CommentThreaded Is Nothing Then
                .ClearComments
            End If
            If Not xCell.CommentThreaded Is Nothing Then
                .AddCommentThreaded xCell.CommentThreaded.Text
            End If
        End With
    End If
End Function


Sau khi dán mã, hãy áp dụng công thức này: = vlookupcomment (H2, A2: C10,3, FALSE) là tốt.

Hãy cố gắng, hy vọng nó có thể giúp bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
txs rất nhiều. đánh giá cao!
Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL