PDA

View Full Version : Lọc dữ liệu theo màu sắc



hutonline
05-08-07, 09:12 AM
do mình mới tham gia nên ko biết cho vào mục nào??. Mình có vấn đề thế này, mong mọi người giúp đỡ:
Bảng dữ liệu sheet( Khối lượng) chứa nhiều chủng loại vật tư. Có những chủng loại vật tư tôi đánh dấu= màu sắc. Tôi muốn lọc những chủng loại vật tư cùng màu sắc đó về 1 chỗ, nếu được cho vào sheet( kQ). Tôi có file đính kèm, mong được sự hồi âm

Mr Okebab
05-08-07, 10:08 AM
do mình mới tham gia nên ko biết cho vào mục nào??. Mình có vấn đề thế này, mong mọi người giúp đỡ:
Bảng dữ liệu sheet( Khối lượng) chứa nhiều chủng loại vật tư. Có những chủng loại vật tư tôi đánh dấu= màu sắc. Tôi muốn lọc những chủng loại vật tư cùng màu sắc đó về 1 chỗ, nếu được cho vào sheet( kQ). Tôi có file đính kèm, mong được sự hồi âm

Để cho dễ dàng, bạn không nên dùng màu sắc để phân biệt các mã hàng hóa. Vì nếu như thế thì chỉ khi dùng VBA mới lọc được thôi.

Bài của bạn có 2 cách :
C1: Mỗi hàng hóa chỉ có 1 mã duy nhất, khi lọc sẽ căn cứ vào mã để lọc
C2: Hoặc có thể phân loại hàng hóa theo nhóm. Nhóm 1, Nhóm 2 . . . . Khi lọc sẽ căn cứ vào nhóm để lọc

Chứ trong bài của bạn, mã giống nhau như tên khác nhau . . rất lộn xộn.
Cố gắng lên nhé.
Thân!

anhtuan1066
05-08-07, 09:44 PM
Bạn tải file này về, giãi nén vào thư mục: C:\Documents and Settings\User Profiles\Application Data\Microsoft\AddIns
Mở Excel lên, vào Tools\Add-Ins, chọn chử Color, OK
Vậy là bạn đã có hàm ColorRank đễ lọc dử liệu theo màu rồi đấy! Cú pháp hàm này giống hàm COUNTIF... =COLORRANK(mãng chứa màu, Cell chứa màu cần lọc)
Theo như file của bạn thì tại I7, gõ vào công thức =ColorRank($F$7:$F$14,F7)... Những màu giống nhau sẽ cho kết quả giống nhau
Mến
ANH TUẤN

anhtuan1066
05-08-07, 09:54 PM
Ngoài ra còn có hàm ĐẾM MÀU...
Tải file này về và làm tương tự như trước, bạn sẽ có hàm CountByColor
Cú pháp: =CountByColor(Mãng cần đếm, cell chứa d/k màu)
Theo như file của bạn, tại I40 gõ vào công thức =CountByColor(E37:E44,F41) sẽ cho kết quả = 5 (nghĩa là trong mãng E37:E44 có 5 cell cùng màu với cell F41)
Mến
ANH TUẤN

minhnc
06-08-07, 11:02 AM
Đúng cái tôi đang cần. Nhiều khi mình chỉ bôi màu theo tính chất nào đó nhất định thôi chứ ko có quy luật nào cả. VD như những hàng đó đã được kiểm tra hôm trước hôm sau lọc ra để ko kiểm tra nữa chẳng hạn

SA_DQ
06-08-07, 12:32 PM
Bạn thử chọn 1 trong 3 màu theo Combo & xem đúng í bạn chưa!


Option Explicit
Sub ColorsFilter()
Dim iColor As Integer, lRow As Long
Dim Rng As Range, AllRng As Range

iColor = Range("J6").Value
Select Case iColor
Case 1
iColor = 6
Case 2
iColor = 4
Case 3
iColor = 35
Case Else
iColor = 2
End Select
Range("J6").Select
With Selection.Interior
.ColorIndex = iColor: .Pattern = xlSolid
End With

Cells.Select
Selection.EntireRow.Hidden = False

lRow = Range("B65432").End(xlUp).Row
For Each Rng In Range("B7:B" & lRow)
If Rng.Interior.ColorIndex <> iColor Then
If AllRng Is Nothing Then
Set AllRng = Rng.Rows
Else
Set AllRng = Union(AllRng, Rng.Rows)
End If
End If
Next Rng
AllRng.Select
Selection.EntireRow.Hidden = True
Set AllRng = Nothing
End Sub

anhtuan1066
06-08-07, 12:45 PM
File này hay lắm... có thể áp dụng trong 1 trường hợp nào đó... Nhưng theo yêu cầu của tác giả thì hình như họ muốn "sắp xếp" chứ ko phải là "lọc"... Tức là sắp dòng cùng màu nằm cạnh nhau, rồi tiếp theo đến những dòng cùng màu khác...
Mến
ANH TUẤN

hungnm_ta
11-07-08, 04:03 PM
Tôi thấy cách làm của các anh chị rất hay. Nhưng đấy là màu của bảng tính, còn màu của các ký tự trong bảng tính thì sao. Các anh chị giúp tôi nhé.
Cảm ơn các anh chị trước nha.

ndu96081631
11-07-08, 04:17 PM
Tôi thấy cách làm của các anh chị rất hay. Nhưng đấy là màu của bảng tính, còn màu của các ký tự trong bảng tính thì sao. Các anh chị giúp tôi nhé.
Cảm ơn các anh chị trước nha.
Nguyên tắc giống nhau thôi bạn ơi!
Chú ý:
-Màu nền là: Interior.ColorIndex
-Màu Font là: Font.ColorIndex
Mở code ra và sửa lại thôi

Hai Lúa Miền Tây
26-09-09, 07:47 AM
Bạn cũng có thể tham khảo bài sau:
http://www.giaiphapexcel.com/forum/showthread.php?p=190017#post190017

tranngockimdung
03-03-11, 04:43 PM
Bạn tải file này về, giãi nén vào thư mục: C:\Documents and Settings\User Profiles\Application Data\Microsoft\AddIns
Mở Excel lên, vào Tools\Add-Ins, chọn chử Color, OK
Vậy là bạn đã có hàm ColorRank đễ lọc dử liệu theo màu rồi đấy! Cú pháp hàm này giống hàm COUNTIF... =COLORRANK(mãng chứa màu, Cell chứa màu cần lọc)
Theo như file của bạn thì tại I7, gõ vào công thức =ColorRank($F$7:$F$14,F7)... Những màu giống nhau sẽ cho kết quả giống nhau
Mến
ANH TUẤN
vậy với Excel 2007 thì làm thế nào. Giúp mình với

tranngockimdung
03-03-11, 05:45 PM
Nguyên tắc giống nhau thôi bạn ơi!
Chú ý:
-Màu nền là: Interior.ColorIndex
-Màu Font là: Font.ColorIndex
Mở code ra và sửa lại thôi
Mình làm thử hai hàm colorrank, countbycolor mà vẫn không đếm được có bao nhiêu cel có cùng màu trong bảng. Bảng của mình là màu font nhưng mình k biết cách sửa code thế nào. Rất mong các bạn giúp mình với.

nguyenchuongha
01-05-12, 08:06 PM
mình cũng đang tìm hiểu vấn đề tương tự như bạn,cảm ơn các pro đã chỉ júp

bivily
22-06-13, 11:18 AM
Nguyên tắc giống nhau thôi bạn ơi!
Chú ý:
-Màu nền là: Interior.ColorIndex
-Màu Font là: Font.ColorIndex
Mở code ra và sửa lại thôi

Anh cho em hỏi. Em muốn lấy màu nền của một ô được tô bằng Conditional Formatting thì phải dùng hàm nào? Em đã dùng Interior.ColorIndex nhưng 2 ô có màu nền khác nhau sao thấy cho ra 1 kết quả?

ndu96081631
22-06-13, 11:22 AM
Anh cho em hỏi. Em muốn lấy màu nền của một ô được tô bằng Conditional Formatting thì phải dùng hàm nào? Em đã dùng Interior.ColorIndex nhưng 2 ô có màu nền khác nhau sao thấy cho ra 1 kết quả?

Đã trả lời bạn tại đây rồi mà:
http://www.giaiphapexcel.com/forum/showthread.php?25767-T%C3%ACm-%C3%B4-%C4%91%C3%A3-%C4%91%C6%B0%E1%BB%A3c-t%C3%B4-m%C3%A0u&p=511992#post511992