Tìm giá trị đều có trong 2 sheet

Liên hệ QC

BinhTam

Thành viên thường trực
Tham gia
2/12/06
Bài viết
238
Được thích
30
Chào các bạn,

Cho mình hỏi công thức lọc giá trị vừa có trong cột G sheet "DS" và cột E của sheet "VNR" vd: S7032825 rồi đưa sang sheet "filter"

Rất mong nhận được sự hỗ trợ của các bạn.


Thanks&Rgds,
Tâm Bình
 

File đính kèm

Chào các bạn,

Cho mình hỏi công thức lọc giá trị vừa có trong cột G sheet "DS" và cột E của sheet "VNR" vd: S7032825 rồi đưa sang sheet "filter"

Rất mong nhận được sự hỗ trợ của các bạn.


Thanks&Rgds,
Tâm Bình
Hình như bạn nhầm thì phải, so sánh dử liệu tại cột E sheet VNR với cột H sheet DS mới đúng chứ
Nếu đúng thế thì làm như sau:
- Tại sheet Filter, cell D2 bạn gõ vào công thức =COUNTIF(VNR!$E$2:$E$803,DS!H2)
- Cũng đứng tại Sheet Filter, vào menu Data\Filter\Advanced Filter và chọn vùng dử liệu như hình:

attachment.php


- OK 1 nhát là xong!
 

File đính kèm

  • untitled.JPG
    untitled.JPG
    14.8 KB · Đọc: 116
Chào các bạn,

Cho mình hỏi công thức lọc giá trị vừa có trong cột G sheet "DS" và cột E của sheet "VNR" vd: S7032825 rồi đưa sang sheet "filter"

Rất mong nhận được sự hỗ trợ của các bạn.


Thanks&Rgds,
Tâm Bình
Mình dùng thêm một số cột phụ được không. Trên cơ sở đó bạn có thể rút ngắn các cột phụ hoặc tạo name động.
 

File đính kèm

Nếu thế thì làm như sau:
- Tại sheet Filter, cell D2 bạn gõ vào công thức =COUNTIF(VNR!$E$2:$E$803,DS!H2)
- Cũng đứng tại Sheet Filter, vào menu Data\Filter\Advanced Filter và chọn vùng dử liệu như hình:
attachment.php

* OK 1 nhát là xong!
Xong thì có xong, nhưng xem lại danh sách thì rất nhiều mã trùng nhau! Việc này không biết có phải là mong muốn của tác gia không nữa, chúng ta cùng chờ vậy?

Trong khi chờ hãy ngắm macro của mình:

PHP:
Option Explicit
Sub TimTrung()
 Dim Sh1 As Worksheet, Sh2 As Worksheet
 Dim Rng As Range, Rng0 As Range, Clls As Range, sRng As Range
 Dim RwD As Long, RwV As Long
 
 Sheets("Filter").Select
 Set Sh1 = Sheets("VNR"):                 RwV = Sh1.[e65500].End(xlUp).Row
 Set Sh2 = Sheets("DS"):                  RwD = Sh2.[H65500].End(xlUp).Row
 If RwV > RwD Then
   Set Rng = Sh1.Range(Sh1.[e1], Sh1.[e65500].End(xlUp))
   Set Rng0 = Sh2.Range(Sh2.[H1], Sh2.[h65500].End(xlUp))
 Else
   Set Rng = Sh2.Range(Sh2.[H1], Sh2.[h65500].End(xlUp))
   Set Rng0 = Sh1.Range(Sh1.[e1], Sh1.[e65500].End(xlUp))
 End If
 For Each Clls In Rng0
   Set sRng = Rng.Find(Clls.Value, , xlFormulas, xlWhole)
   If Not sRng Is Nothing Then
      With [B65500].End(xlUp).Offset(1)
         .Value = Clls:             .Offset(, 1) = Clls.Address
         .Offset(, 2) = sRng.Address
      End With
   End If
 Next Clls
End Sub
 
Lần chỉnh sửa cuối:
Xong thì có xong, nhưng xem lại danh sách thì rất nhiều mã trùng nhau! Việc này không biết có phải là mong muốn của tác gia không nữa, chúng ta cùng chờ vậy?

Trong khi chờ hãy ngắm macro của mình:
Cái này dể mà anh! Vì Advanced Filter còn có mục Unique Record Only đấy, check vào là hết trùng ngay
Nếu muốn viết code em cũng sẽ dựa vào Advanced Filter mà làm:
PHP:
Sub Loc()
  With Sheets("Filter")
    .Range("A:A").Clear
    Sheets("DS").Range("H1:H10000").AdvancedFilter 2, .Range("D1:D2"), .Range("A1"), True
  End With
End Sub
 
Mình muốn tìm dữ liệu như bạn VietHoai.

Bạn có thể rút ngắn công thức hay ko?

Thanks!
 
Hi Viethoai,

Mình paste dữ liệu vào access và check thì được như file excel đính kèm, cột M và unique record thì như cột O.

Bạn có thể sửa lại công thức trên file excel ko?

Thanks
Tâm Bình

Mình dùng thêm một số cột phụ được không. Trên cơ sở đó bạn có thể rút ngắn các cột phụ hoặc tạo name động.
 

File đính kèm

Đã kiểm tra rất kỹ,dữ liệu của bạn trên 2 sheet VNR và DS chỉ có 200 mã có trên 2 sheet.
(Mình tải file của bạn từ bài #1 ,không biết các file bạn gửi sau này có gì khác không)
Xoá file đính kèm vì hết dung lượng
 
Lần chỉnh sửa cuối:
Sau khi mình check thì thấy trong cột filter của bạn thiếu Distributor sponsor sau:
S7032825;S7002473;S7047422;etc.,...

Đã kiểm tra rất kỹ,dữ liệu của bạn trên 2 sheet VNR và DS chỉ có 200 mã có trên 2 sheet.
(Mình tải file của bạn từ bài #1 ,không biết các file bạn gửi sau này có gì khác không)
 
Mình luôn tin tưởng vào công thức, thiếu là do dữ liệu của bạn thừa khoảng trắng, do bạn nhập liệu thiếu cẩn thận.
dữ liệu của bạn tất cả có 77 mã thừa khoảng trắng phía sau.tổng cộng là 277 mã.
Xoá file đính kèm vì hết dung lượng
 
Lần chỉnh sửa cuối:
Mình luôn tin tưởng vào công thức, thiếu là do dữ liệu của bạn thừa khoảng trắng, do bạn nhập liệu thiếu cẩn thận.
dữ liệu của bạn tất cả có 77 mã thừa khoảng trắng phía sau.tổng cộng là 277 mã.
Đúng rồi. Trước khi mình lập phải trim tất cả các khoản trắng sau cùng của cả 2 sheet. Có điều chưa có thời gian để dùng Name động (nếu có thể) thì chắc sẽ đơn giản và có thể không cần cột phụ (theo cách của mình)
 
Đúng rồi. Trước khi mình lập phải trim tất cả các khoản trắng sau cùng của cả 2 sheet. Có điều chưa có thời gian để dùng Name động (nếu có thể) thì chắc sẽ đơn giản và có thể không cần cột phụ (theo cách của mình)
Mình e rằng bài này không dùng cột phụ mà dùng công thức mảng thì file không chạy nổi.
 
Mình e rằng bài này không dùng cột phụ mà dùng công thức mảng thì file không chạy nổi.
Đương nhiên là vậy! Dử liệu nhiều, công thức mãng có mà chết
Rất ngạc nhiên tại sao công cụ sẳn có của Excel mà mọi người lại không xài ---> Advanced Filter đấy, 20 giây là xong!
 
Web KT

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

Back
Top Bottom