So sánh danh sách 2 sheet

Vừa rồi Học Excel Online có nhận được 1 câu hỏi khá thú vị như sau:

  • Làm thế nào để so sánh 2 danh sách ở 2 sheet khác nhau?
  • Làm cách nào để tách (lấy) ra được những nội dung xuất hiện đồng thời trong cả 2 danh sách này?
  • Làm cách nào để tách (lấy) ra được những nội dung chỉ có ở danh sách A mà không có trong danh sách B?
  • Làm cách nào để tách (lấy) ra được những nội dung chỉ có ở danh sách B mà không có trong danh sách A?

Bạn có thể tự mình trả lời được câu hỏi này không? Hãy để Học Excel Online gợi ý cho bạn 1 cách làm nhé:

  • 1. Phân tích yêu cầu
  • 2. Cách làm
    • 2.1. Xây dựng hàm COUNTIF
    • 2.2. Thao tác lọc
    • 2.3. Thao tác lấy dữ liệu

1. Phân tích yêu cầu

Giả sử chúng ta có 2 danh sách nằm trên 2 sheet khác nhau, gọi là Sheet A và Sheet B, tương ứng là Danh sách A nằm ở Sheet A, Danh sách B nằm ở Sheet B

So sánh danh sách 2 sheet

Thực hiện so sánh 2 danh sách = so sánh từng giá trị trong danh sách này với toàn bộ danh sách kia. Đây là việc thay đổi cách diễn đạt để có thể hình dung ra được câu lệnh sẽ sử dụng (Lệnh COUNTIF)

Việc tách (lấy) dữ liệu sẽ bao gồm 2 thủ tục:

  • Lọc dữ liệu dựa vào kết quả của việc so sánh. Tùy từng yêu cầu dữ liệu cần lấy sẽ thực hiện lọc theo nội dung tương ứng.
  • Lấy dữ liệu bằng cách Copy+Paste hoặc kỹ thuật lọc dữ liệu khác (ví dụ như Advanced Filter)

2. Cách làm

2.1. Xây dựng hàm COUNTIF

Muốn so sánh nội dung ở Danh sách B với danh sách A, chúng ta đặt hàm COUNTIF tại sheet A như sau:

So sánh danh sách 2 sheet

So sánh danh sách 2 sheet

So sánh danh sách 2 sheet

Trong đó các đối tượng của hàm COUNTIF gồm:

Range: Vùng cần so sánh – là danh sách ở Sheet B, cột A. Khi áp dụng trên toàn bộ cột A ở sheet B thì có thể viết như sau: B!A:A

Criteria: Điều kiện cần so sánh – là từng giá trị ở danh sách A, áp dụng từ A2 tới A10

Như vậy với từng giá trị trong danh sách A, chúng ta có kết quả như sau:

  • Bằng 0: giá trị này ở danh sách A không có trong danh sách B
  • Bằng 1: Giá trị này ở danh sách A có cả trong danh sách B, xuất hiện 1 lần

2.2. Thao tác lọc

Áp dụng chức năng AutoFilter ở Sheet A như sau:

  • Chọn toàn bộ vùng dữ liệu ở Sheet A, gồm 2 cột A và B
  • Chọn tab Data > chọn Filter

So sánh danh sách 2 sheet

Để lọc nội dung xuất hiện đồng thời cả 2 sheet, lọc các giá trị có kết quả là 1 tại cột B

Để lọc nội dung chỉ có ở Danh sách A, không có trong danh sách B, lọc các giá trị có kết quả là 0 tại cột B

2.3. Thao tác lấy dữ liệu

  • Copy các kết quả sau khi lọc ở cột A
  • Dán phần giá trị (paste special / Value) sang vùng kết quả

Xem thêm video dưới đây để hiểu rõ hơn về cách thực hiện:

Chúc các bạn học tốt cùng Học Excel Online!

Xem thêm: Lọc dữ liệu trùng nhau từ 2 cột trong excel cực đơn giản

Tác giả: dtnguyen (Nguyễn Đức Thanh)

@ Học Excel Online | DTNguyen.business

· · ·

Cập nhật mới nhất ngày 02 tháng 09 năm 2022: Hướng dẫn cách sử dụng đổi số thành chữ trong Excel 2007, 2010, 2013 một cách nhanh chóng và hiệu quả. Sử dụng công cụ vntools để chuyển đổi số thành chữ, đây là công cụ rất hữu ích cho các bBạn có 2 danh sách rất dài và phải đối chiếu sự khác nhau giữa 2 danh sách này. Làm thế nào để biết thành phần nào trong danh sách thứ nhất không xuất hiện hay có mặt trong danh sách thứ 2 hoặc ngược lại? Trong bài viết ngày hôm nay, mình sẽ chia sẻ với các bạn thủ thuật dùng hàm Countif/countifs và hàm Vlookup để so sánh, đánh dấu các điểm bất thường ở hai cột danh sách.

NỘI DUNG

  • Video hướng dẫn thực hiện từng bước so sánh dữ liệu giữa hai danh sách trong Excel đơn giản
  • So sánh dữ liệu hai danh sách bằng hàm Countif/countifs
  • Định dạng có điều kiện
  • So sánh hai danh sách bằng hàm Vlookup

Video hướng dẫn thực hiện từng bước so sánh dữ liệu giữa hai danh sách trong Excel đơn giản

So sánh dữ liệu hai danh sách bằng hàm Countif/countifs

Đầu tiên bạn chuẩn bị một file Excel chứa hai danh sách mà bạn muốn so sánh.

Kích vào 1 ô trong danh sách bạn cần so sánh gõ =countifs(thành phần một là vùng điều kiện của danh sách 1,bạn kích qua danh sách 1 và kích vào cột chứa vùng dữ liệu so sánh, điều kiện thứ hai là dữ liệu cần so sánh tích lại danh sách 2 và tích vào ô điều kiện bạn cần so sánh với danh sách 1 -> enter. =COUNTIFS(DNHSACH1!C:C;DANHSACH2!F7)

So sánh danh sách 2 sheet

Kết quả nếu bằng 1 thì dữ liệu tìm kiếm có trong danh sách 1 và bằng 0 là không có trong danh sách 1. Bạn kích vào góc dưới bên phải ô vừa tạo kéo xuống để Excel tự động so sánh dữ liệu ô tiếp theo cho bạn.

So sánh danh sách 2 sheet

Tiếp theo mình sẽ thêm hàm If trước hàm Countifs tức là mình tạo điều kiện đề sau khi thực hiện trả về thông báo theo ý mình. 

Hàm sẽ là =IF(COUNTIFS(DNHSACH1!C:C;DANHSACH2!F7)>0;"co";"khong") có nghĩa là nếu COUNTIFS(DNHSACH1!C:C;DANHSACH2!F7)>0 tức là bằng 1 mà 1 là có xuất hiện trong danh sách và ngược lại là không xuất hiện.

So sánh danh sách 2 sheet

Kết quả có khi là 1 và không khi là 0 muốn hàm tự so sánh ở các ô còn lại bạn kích vào góc dưới của ô vừa tạo kéo xuống. 

So sánh danh sách 2 sheet

Định dạng có điều kiện

Mình sẽ đổi màu những bạn không có trong danh sách so sánh bằng cách. Đầu tiên mình bôi đen vùng dữ liệu vừa thực hành -> Home -> Conditional Formatting -> New Rule.

So sánh danh sách 2 sheet

Sau đó của sổ hiện ra bạn chọn dòng chữ use a formula to determine which cells to format -> Phía dưới trong ô Format bạn gõ bằng sau đó bạn tích vào ô đầu tiên cửa danh sách hiển thị có không và nhấn F4 hai lần để có dấu $ trước tên của cột gõ tiếp bằng mở ngoặc không đóng ngoặc. Không có nghĩa là nếu bằng không mình sẽ đổi màu cho ô đó -> kích vào Format -> cửa sổ nữa hiện ra bạn chọn Fill sau đó chọn màu và ok.

So sánh danh sách 2 sheet

Kết quả.

So sánh danh sách 2 sheet

So sánh hai danh sách bằng hàm Vlookup

Đầu tiên ta gõ =vlookup(giá trị đầu tiên là giá trị tìm kiếm tích vào ô đầu của giá trị cần tìm kiếm, thành phần thứ hai là vùng dữ liệu cần tìm kiếm tích qua danh sách 1 kích vào cột nội dung, gõ 1,0. Vd:=VLOOKUP(F7;DNHSACH1!C:C;1;0)

So sánh danh sách 2 sheet

Nếu có trong danh sách so sánh thì sẽ hiển thị ra còn không thì là #N/A. Bạn kích vào góc dưới bên phải ô vừa tạo kéo xuống để Excel tự động so sánh dữ liệu ô tiếp theo cho bạn.

So sánh danh sách 2 sheet

Để có thông báo theo ý mình bạn kích vào chỉnh sửa câu lệnh. Trước Vlookup mình thêm isna tức là kiểm tra nếu có nó thông báo False còn không thì là True.

So sánh danh sách 2 sheet

Tiếp theo mình thêm hàm if trước Isna và đặt điều kiện có không. =IF(ISNA(VLOOKUP(F7;DNHSACH1!C:C;1;0))=FALSE;"CO";"KHONG") nếu bằng False thì trả về bằng có và ngược lại. kết quả.

So sánh danh sách 2 sheet