Tìm kiếm và trích lọc giá trị trùng?

Liên hệ QC

vutangvn

Thành viên mới
Tham gia
18/7/08
Bài viết
2
Được thích
0
Em có bảng sau, muốn tìm kiếm và trích lọc giá trị trùng từ 2 bảng gộp lại 1.
Vì trong bảng có 2 cột giống nhau,
Ai giúp em vụ này cái !
 

File đính kèm

Em có bảng sau, muốn tìm kiếm và trích lọc giá trị trùng từ 2 bảng gộp lại 1.
Vì trong bảng có 2 cột giống nhau,
Ai giúp em vụ này cái !
Bạn dùng hàm VLOOKUP nhé. Tại ô C2
Mã:
VLOOKUP($A2;$D$11:$G$19;COLUMN()-1;0)
 
Ý của em là trích lọc ra, để xoá phần thừa và có thể chỉnh sửa dữ liệu trên bảng mới, chứ ko phải tham chiếu.
Thanks bác !
 
Bạn dùng hàm VLOOKUP nhé. Tại ô C2
Mã:
VLOOKUP($A2;$D$11:$G$19;COLUMN()-1;0)
Bạn MinCuong cho mình hỏi trong hàm Vlookup của bạn làm có thể thay COLUMN()-1 bằng số 2 và 4 được không mình chưa hiểu hàm này lắm. Bạn giải thích giúp mình nha.
 
Bạn MinCuong cho mình hỏi trong hàm Vlookup của bạn làm có thể thay COLUMN()-1 bằng số 2 và 4 được không mình chưa hiểu hàm này lắm. Bạn giải thích giúp mình nha.
------
Bạn chọn 1 ô trong cột D chẳng hạn, gõ
Mã:
=column()
sẽ thấy bằng 4, số 4 này là số cột của cột D, thử các cột khác sẽ thấy và "ngâm cứu".
Thân.
 
Ý của em là trích lọc ra, để xoá phần thừa và có thể chỉnh sửa dữ liệu trên bảng mới, chứ ko phải tham chiếu.
Thanks bác !
Bạn ghi lại yêu cầu rõ trong file để Tôi sửa lại cho, chưa hiểu rõ ý của Bạn lắm?
 

File đính kèm

Hơi thủ công 1 chút. Bạn xem thử có đúng ý bạn không?
------
Đúng là "hơi" thủ công, 3 cột của Bạn là 3 công thức, dù là chỉ cần sửa các số 2,3,4, trong khi công thức của Bạn MinhCong thì tổng quát hơn, một công thức có thể dùng chung cho nhiều cột, tôi thích kiểu này hơn.
Thân mến đồng hương.
 
------
Đúng là "hơi" thủ công, 3 cột của Bạn là 3 công thức, dù là chỉ cần sửa các số 2,3,4, trong khi công thức của Bạn MinhCong thì tổng quát hơn, một công thức có thể dùng chung cho nhiều cột, tôi thích kiểu này hơn.
Thân mến đồng hương.

Như vậy mới là học hỏi phải không? Qua ý kiến của bạn, tôi mới tìm hiểu và biết thêm được hàm column là thế.
 
------
Đúng là "hơi" thủ công, 3 cột của Bạn là 3 công thức, dù là chỉ cần sửa các số 2,3,4, trong khi công thức của Bạn MinhCong thì tổng quát hơn, một công thức có thể dùng chung cho nhiều cột, tôi thích kiểu này hơn.
Thân mến đồng hương.
Muốn tổng quát cũng không nên dùng Column()-x mà nên dùng Column(A1)+y. Vì sao? Vì nếu dùng Column()-x thì khi copy công thức này sang một cột khác kết quả sẽ sai, còn Column(A1)+y sẽ tránh được lỗi nãy.
 
Muốn tổng quát cũng không nên dùng Column()-x mà nên dùng Column(A1)+y. Vì sao? Vì nếu dùng Column()-x thì khi copy công thức này sang một cột khác kết quả sẽ sai, còn Column(A1)+y sẽ tránh được lỗi nãy.
Column(A1) vẫn chưa chắc bắp đâu (tôi chẳng khi nào dùng)
Chắc ăn nhất là COLUMNS($A$1:A$1)
Tại sao phải là COLUMNS là không là COLUMN? Vì hàm COLUMNROW vốn là hàm mãng ---> Sẽ cho kết quả sai trong 1 số trường hợp nào đó (nhất là khi kết hợp với OFFSET, INDIRECT để tạo mãng) ---> COLUMNSROWS luôn trả về giá trị đơn
--------------------
Mấy vụ đơn giản này đã nói trên diển đàn không dưới 10 lần rồi
 
Em có bảng sau, muốn tìm kiếm và trích lọc giá trị trùng từ 2 bảng gộp lại 1.
Vì trong bảng có 2 cột giống nhau,
Ai giúp em vụ này cái !

Qua ý kiến của Ba tê và huuthang_bd, bạn dùng công thức thế này sẽ hay hơn.
 

File đính kèm

Column(A1) vẫn chưa chắc bắp đâu (tôi chẳng khi nào dùng)
Chắc ăn nhất là COLUMNS($A$1:A$1)
Tại sao phải là COLUMNS là không là COLUMN? Vì hàm COLUMNROW vốn là hàm mãng ---> Sẽ cho kết quả sai trong 1 số trường hợp nào đó (nhất là khi kết hợp với OFFSET, INDIRECT để tạo mãng) ---> COLUMNSROWS luôn trả về giá trị đơn
--------------------
Mấy vụ đơn giản này đã nói trên diển đàn không dưới 10 lần rồi

Tôi thì đang tìm để học, nghe bạn nói có cơ sở vững vàn nhưng khi tôi làm thử thì sao không được như ý muốn? Sai chỗ nào nhờ bạn chỉ giúp.
File kèm theo tôi để ở Sheet COLUMNS
 

File đính kèm

Column(A1) vẫn chưa chắc bắp đâu (tôi chẳng khi nào dùng)
Chắc ăn nhất là COLUMNS($A$1:A$1)
Tại sao phải là COLUMNS là không là COLUMN? Vì hàm COLUMNROW vốn là hàm mãng ---> Sẽ cho kết quả sai trong 1 số trường hợp nào đó (nhất là khi kết hợp với OFFSET, INDIRECT để tạo mãng) ---> COLUMNSROWS luôn trả về giá trị đơn
--------------------
Mấy vụ đơn giản này đã nói trên diển đàn không dưới 10 lần rồi

Bạn có thể cho một ví dụ cho trường hợp nào đó mà kết quả sai khi dùng Column(A1) được không?
 
Tôi thì đang tìm để học, nghe bạn nói có cơ sở vững vàn nhưng khi tôi làm thử thì sao không được như ý muốn? Sai chỗ nào nhờ bạn chỉ giúp.
File kèm theo tôi để ở Sheet COLUMNS
Bạn áp dụng sai thôi
Cell C2 sẽ có công thức:
PHP:
=VLOOKUP($A2,$D$11:$G$19,COLUMNS($A$1:B$1),0)
Tuyệt đối hạn chế dùng ROW và COLUMN trong công thức, trừ những trường hợp đặc biệt khi bạn tạo mãng mà thôi, nếu xài quen tay rồi sẽ có 1 ngày bạn than trời vì kết quả sai mà chẳng biết do đâu
Ngay từ bây giờ nên tập thói quen:
Thay vì ROW(A1) thì nên dùng ROWS($1:1)
Thay vì COLUMN(A1) thì nên dùng COLUMNS($A$1:A$1)
-------------------------
Bạn có thể cho một ví dụ cho trường hợp nào đó mà kết quả sai khi dùng Column(A1) được không?
Cái này đã có xảy ra trên diển đàn, lâu lắm rồi tôi không nhớ, nhưng tôi chắc chắn 100% những gì tôi nói là thật
 

File đính kèm

Bạn có thể cho một ví dụ cho trường hợp nào đó mà kết quả sai khi dùng Column(A1) được không?
Ah... có ngay 1 ví dụ đơn giản (không phải là tổng quát nhất)
- Cell A1 đến A10 bạn gõ lần lượt các số 1, 2,... đến 10
- Tại B1 bạn gõ công thức: =SUM(OFFSET(A1,,,ROW(A1:A7),))
Ctrl + Shift + Enter hay Enter gì nó cũng chẳng ra kết quả
- Nếu bạn gõ công thức =SUM(OFFSET(A1,,,ROWS($1:$7),)) thì OK ngay
 
Ah... có ngay 1 ví dụ đơn giản (không phải là tổng quát nhất)
- Cell A1 đến A10 bạn gõ lần lượt các số 1, 2,... đến 10
- Tại B1 bạn gõ công thức: =SUM(OFFSET(A1,,,ROW(A1:A7),))
Ctrl + Shift + Enter hay Enter gì nó cũng chẳng ra kết quả
- Nếu bạn gõ công thức =SUM(OFFSET(A1,,,ROWS($1:$7),)) thì OK ngay
Tôi thì sẽ không làm vậy. Ai lại làm như thế này:
=SUM(OFFSET(A1,,,ROW(A1:A7),))
Nếu tôi thì tôi làm như thế này:
=SUM(OFFSET(A1,,,ROW(A7),))

Ở bài trước tôi cũng không khuyên các bạn dùng Row($A$1:A1) mà là Row(A1)
 
Tôi thì sẽ không làm vậy. Ai lại làm như thế này:
=SUM(OFFSET(A1,,,ROW(A1:A7),))
Nếu tôi thì tôi làm như thế này:
=SUM(OFFSET(A1,,,ROW(A7),))

Ở bài trước tôi cũng không khuyên các bạn dùng Row($A$1:A1) mà là Row(A1)
Tôi đang nói đến RowS($A$1:A$1) chứ không phải Row($A$1:A1) đâu nha
Tôi chỉ nói đây là ví dụ đơn giản, không phải là tổng quát nhất (làm cụ thể trong từng file thì tùy)
Không biết bạn có để ý rằng ROW là hàm mãng hay không? Và đương nhiên, mãng với công thức thường có cách phản ứng khác nhau
Bôi đen hàm ROW() trên thanh Formula rồi bấm F9 sẽ thấy kết quả nằm trong 2 dấu {} ... còn hàm ROWS lại trả về 1 kết quả đơn
Tôi đã từng kinh qua rất nhiều lần vụ này và rút ra kinh nghiệm nhớ đời (nên đã tạo thói quen khi dùng hàm)... Bây giờ với VLOOKUP không có vấn đề nhưng 1 ngày nào đó khi bạn phối hợp hàm phức tạp sẽ xuất hiện lổi ngay!
 
Tôi đang nói đến RowS($A$1:A$1) chứ không phải Row($A$1:A1) đâu nha
Tôi chỉ nói đây là ví dụ đơn giản, không phải là tổng quát nhất (làm cụ thể trong từng file thì tùy)
Không biết bạn có để ý rằng ROW là hàm mãng hay không? Và đương nhiên, mãng với công thức thường có cách phản ứng khác nhau
Bôi đen hàm ROW() trên thanh Formula rồi bấm F9 sẽ thấy kết quả nằm trong 2 dấu {} ... còn hàm ROWS lại trả về 1 kết quả đơn
Tôi đã từng kinh qua rất nhiều lần vụ này và rút ra kinh nghiệm nhớ đời (nên đã tạo thói quen khi dùng hàm)... Bây giờ với VLOOKUP không có vấn đề nhưng 1 ngày nào đó khi bạn phối hợp hàm phức tạp sẽ xuất hiện lổi ngay!
Vâng, bạn đang nói đến hàm ROWS() nhưng tôi lại đang nói đến hàm ROW(), tôi đang nói đến cách mà bạn dùng trong hàm ROW() để so sánh với hàm ROWS() trong ví dụ của bạn. Khi dùng hàm ROW() tôi không bao giờ sử dụng vùng tham chiếu nhiều ô cả trừ khi đó là chủ ý khi dùng trong công thức mảng. Bạn từng kinh qua nhiều lần vụ này nhưng giờ cũng không còn nhớ một ví dụ nào cho thấy sự khác biệt giữa hai cách dùng này. Cũng đáng tiếc vì không riêng gì tôi mà những người quan tâm đến vấn đề này chắc cũng muốn thấy một ví dụ mang tính thuyết phục.
 
Lần chỉnh sửa cuối:
Bạn áp dụng sai thôi
Cell C2 sẽ có công thức:
PHP:
=VLOOKUP($A2,$D$11:$G$19,COLUMNS($A$1:B$1),0)
Tuyệt đối hạn chế dùng ROW và COLUMN trong công thức, trừ những trường hợp đặc biệt khi bạn tạo mãng mà thôi, nếu xài quen tay rồi sẽ có 1 ngày bạn than trời vì kết quả sai mà chẳng biết do đâu
Ngay từ bây giờ nên tập thói quen:
Thay vì ROW(A1) thì nên dùng ROWS($1:1)
Thay vì COLUMN(A1) thì nên dùng COLUMNS($A$1:A$1)
-------------------------

Cái này đã có xảy ra trên diển đàn, lâu lắm rồi tôi không nhớ, nhưng tôi chắc chắn 100% những gì tôi nói là thật

Cám ơn bạn, tôi đã thử, đúng như bạn nói. Để hiểu cho tận ngọn ngành của vấn đề nhờ bạn dịch "nôm" dùm cho tôi công thức này để rõ hơn. Cám ơn
=VLOOKUP($A2,$D$11:$G$19,COLUMNS($A$1:B$1),0)
 
Web KT

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

Back
Top Bottom