So sánh 1 ký tự với chuỗi ký tự cách nhau dấu phẩy

Liên hệ QC

123456it

Thành viên chính thức
Tham gia
5/10/08
Bài viết
80
Được thích
7
Mong các bác giúp đỡ.. e có file Excel như đính kèm. E muốn so sánh các giá trị cột A với cácchuỗi giá trị Cột B để tìm ra giá trị giống nhau và có thông báo. Nhưng các giá trị cột B lại cách nhau bởi các dấu phẩy.Liệu có cách nào ko các bác nhỉ?
 

File đính kèm

Mong các bác giúp đỡ.. e có file Excel như đính kèm. E muốn so sánh các giá trị cột A với cácchuỗi giá trị Cột B để tìm ra giá trị giống nhau và có thông báo. Nhưng các giá trị cột B lại cách nhau bởi các dấu phẩy.Liệu có cách nào ko các bác nhỉ?
Bạn thử dùng công thức này
Mã:
=IF(SUM(IFERROR(SEARCH(A2,$B$2:$B$7),0)),"Trùng","Khác")
 
Mong các bác giúp đỡ.. e có file Excel như đính kèm. E muốn so sánh các giá trị cột A với cácchuỗi giá trị Cột B để tìm ra giá trị giống nhau và có thông báo. Nhưng các giá trị cột B lại cách nhau bởi các dấu phẩy.Liệu có cách nào ko các bác nhỉ?
Cái dòng đầu tiên thì thế nào? Trùng hay Khác?
1633065022811.png
 
Bạn thử dùng công thức này
Mã:
=IF(SUM(IFERROR(SEARCH(A2,$B$2:$B$7),0)),"Trùng","Khác")
Của bác chỉ so sánh ngang dòng đc thôi chứ ko so sánh đc so với cả cột
Bài đã được tự động gộp:

Cái dòng đầu tiên thì thế nào? Trùng hay Khác?
View attachment 267070
Trùng bác ạ. Vi nó trùng với A dòng dưới
 
Của bác chỉ so sánh ngang dòng đc thôi chứ ko so sánh đc so với cả cột
Bài đã được tự động gộp:


Trùng bác ạ. Vi nó trùng với A dòng dưới
Do cách diễn đạt của bạn nên không ai hiểu dẫn đến làm sai.

Bạn muốn so với bao nhiêu dòng ở cột B? Hay là tất cả các dòng?
 
Tất cả các dòng trong cột B bạn à
Code:
Rich (BB code):
Sub XYZ()
    Dim arr, i&, j&
    
    arr = Sheet1.Range("A2:C" & Sheet1.Range("A" & Rows.Count).End(xlUp).Row)
    For i = 1 To UBound(arr)
        For j = 1 To UBound(arr)
            If InStr(1, arr(j, 2), arr(i, 1)) Then
                arr(i, 3) = "Trùng": Exit For
            End If
        Next
        If j = UBound(arr) + 1 Then arr(i, 3) = "Khác"
    Next
    Sheet1.Range("E2").Resize(UBound(arr, 1), UBound(arr, 2)) = arr
End Sub
 
Code:
Rich (BB code):
Sub XYZ()
    Dim arr, i&, j&
   
    arr = Sheet1.Range("A2:C" & Sheet1.Range("A" & Rows.Count).End(xlUp).Row)
    For i = 1 To UBound(arr)
        For j = 1 To UBound(arr)
            If InStr(1, arr(j, 2), arr(i, 1)) Then
                arr(i, 3) = "Trùng": Exit For
            End If
        Next
        If j = UBound(arr) + 1 Then arr(i, 3) = "Khác"
    Next
    Sheet1.Range("E2").Resize(UBound(arr, 1), UBound(arr, 2)) = arr
End Sub
Ko có câu lệnh để chạy hả Bác? Bác làm thế này chuyên nghiệp quá ! Em cám ơn nhé
 
Của bác chỉ so sánh ngang dòng đc thôi chứ ko so sánh đc so với cả cột
Đây là công thức mảng, bạn phải kết thúc bằng Ctrl + Shift + Enter.

Nếu chỉ muốn Enter thì bạn dùng công thức sau:
PHP:
C2=IF(SUMPRODUCT(--ISNUMBER(SEARCH(A2,$B$2:$B$7))),"Trùng","Khác")
Enter, Fill xuống
 
Code:
Rich (BB code):
Sub XYZ()
    Dim arr, i&, j&
   
    arr = Sheet1.Range("A2:C" & Sheet1.Range("A" & Rows.Count).End(xlUp).Row)
    For i = 1 To UBound(arr)
        For j = 1 To UBound(arr)
            If InStr(1, arr(j, 2), arr(i, 1)) Then
                arr(i, 3) = "Trùng": Exit For
            End If
        Next
        If j = UBound(arr) + 1 Then arr(i, 3) = "Khác"
    Next
    Sheet1.Range("E2").Resize(UBound(arr, 1), UBound(arr, 2)) = arr
End Sub
Tìm "A" trong "B,CA,D" có thể là không trùng :p
Bài đã được tự động gộp:

Của bác chỉ so sánh ngang dòng đc thôi chứ ko so sánh đc so với cả cột
Bài đã được tự động gộp:


Trùng bác ạ. Vi nó trùng với A dòng dưới
Công thức bài #2 là công thức mảng phải nhấn Ctrl+Shift+Enter
 
Web KT

Bài viết mới nhất

Back
Top Bottom