Lọc dữ liệu

Liên hệ QC

ongcusike

Thành viên mới
Tham gia
10/3/08
Bài viết
48
Được thích
8
Giới tính
Nữ
Nghề nghiệp
LAS-XD
làm cách nào để lọc dữ liệu theo tên đơn vị(Khách hàng) và theo tháng từ bảng nhập chi tiết..em có kèm file theo.
 

File đính kèm

Việc lọc ko có vấn đề, cách đơn giãn nhất là Advanced Filter, tuy nhiên tôi thấy ngay khung điều kiện bạn nói nếu gõ THÁNG vào thì lọc dử liệu của tháng ấy, đúng ko? Thế nhưng bên phần nhập liệu lại vừa có năm 2007, vừa năm 2008... vậy tháng là tháng của năm nào đây?
E rằng phải gõ đầy đủ NGAY - THÁNG - NĂM mới ổn!
-------------
ah... còn nữa:
1> Bên sheet khoiluong có 2 danh sách, vậy lọc danh sách nào đây?
2> Cũng sheet khoiluong có đến mấy cột ngày, vậy nếu lọc theo ngày thì dựa vào cột ngày nào?
ANH TUẤN
 
Lần chỉnh sửa cuối:
lọc bên bêtông ,vì khối lượng nhiều,và em muốn lọc theo ngày đúc mẫu
Xin anh tuấn chỉ bảo.
P/s:nếu muốn làm combox để thực hiện lọc thì làm thế nào,Anh Tuấn có thể chỉ bảo cách làm cho em được ko.Xin cảm ơn anh tuấn 1 lần nữa.
 
Lần chỉnh sửa cuối:
Bạn chưa trả lời câu hỏi tôi nêu ở trên thì biết sao mà LỌC đây?
 
Thế này là ComboBox đây

P/s:nếu muốn làm combox để thực hiện lọc thì làm thế nào,. . .

Xem thêm trong file đính kèm;
Bạn thử chọn Combo1 để lấy đơn vị; & sau khi chọn ngày tại Combo2 thì macro sẽ cho kết quả
Trả lời tiếp, nếu còn hỏi:
PHP:
Option Explicit

Sub AdvFilter()
 Dim lRow As Long
 
 Sheets("Sheet2").Select:           lRow = [b65432].End(xlUp).Row
 Range("B5:L" & lRow).Select
 Selection.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
    "R1:S2"), CopyToRange:=Range("R5:AB5"), Unique:=False
 Range("w9").Select
    
End Sub
 

File đính kèm

Việc lọc ko có vấn đề, cách đơn giãn nhất là Advanced Filter, tuy nhiên tôi thấy ngay khung điều kiện bạn nói nếu gõ THÁNG vào thì lọc dử liệu của tháng ấy, đúng ko? Thế nhưng bên phần nhập liệu lại vừa có năm 2007, vừa năm 2008... vậy tháng là tháng của năm nào đây?
E rằng phải gõ đầy đủ NGAY - THÁNG - NĂM mới ổn!
-------------
ah... còn nữa:
1> Bên sheet khoiluong có 2 danh sách, vậy lọc danh sách nào đây?
2> Cũng sheet khoiluong có đến mấy cột ngày, vậy nếu lọc theo ngày thì dựa vào cột ngày nào?
ANH TUẤN

vậy có thể thêm 1 cột năm được ko?còn nếu lọc theo ngày tháng năm em sợ ko lọc hết đc cái mình cần.Ví dụ em muốn lọc từ ngày 10/1/8 đến 31/1/8 thi lọc theo ngày tháng năm có lọc được ko?
1>bên sheet khoiluong có 2 danh sách ,e muốn lọc danh sách về bêtông(nếu a giúp em cả về sắt thì tốt quá) :D
2>Lọc dựa theo cột ngày đúc
Cảm ơn anh tuấn đã quan tâm
Mong nhận được sự hồi âm của anh.
 
Xem thêm trong file đính kèm;
Bạn thử chọn Combo1 để lấy đơn vị; & sau khi chọn ngày tại Combo2 thì macro sẽ cho kết quả
Trả lời tiếp, nếu còn hỏi:
PHP:
Option Explicit

Sub AdvFilter()
 Dim lRow As Long
 
 Sheets("Sheet2").Select:           lRow = [b65432].End(xlUp).Row
 Range("B5:L" & lRow).Select
 Selection.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
    "R1:S2"), CopyToRange:=Range("R5:AB5"), Unique:=False
 Range("w9").Select
    
End Sub
cảm ơn anh đã giúp em nhưng :
-code đó chỉ lọc được 1 ngày duy nhất và đc 1 đơn vị
-1 ngày có thể có 2-3 đơn vị cấp bêtông
 
vậy có thể thêm 1 cột năm được ko?còn nếu lọc theo ngày tháng năm em sợ ko lọc hết đc cái mình cần.Ví dụ em muốn lọc từ ngày 10/1/8 đến 31/1/8 thi lọc theo ngày tháng năm có lọc được ko?
1>bên sheet khoiluong có 2 danh sách ,e muốn lọc danh sách về bêtông(nếu a giúp em cả về sắt thì tốt quá) :D
2>Lọc dựa theo cột ngày đúc
Cảm ơn anh tuấn đã quan tâm
Mong nhận được sự hồi âm của anh.
Cái này quá dể luôn... nhớ ko lầm thì bạn ca_dafi vừa làm xong 1 file tương tự...
Tham khảo tại đây:
http://www.giaiphapexcel.com/forum/showthread.php?t=10005
ANH TUẤN
 
Thôi... làm luôn cho bạn nhé!
Xem thử file này, tuy chưa phải là hay lắm...
File này dùng công thức, nhưng theo ý tôi thì nên dùng VBA kết hợp với Advanced Filter sẽ nhẹ nhàng hơn!
Ghi chú thêm: Tôi đang ngồi ngoài dịch vụ, ko có font TCVN3 nên đã convert sang font Unicode vì chẳng đọc dc chử gì cả... Mặc khác tôi cũng rất ngứa mắt với loại font ABC này... Thông cảm nha! hi... hi...
ANH TUẤN
 

File đính kèm

Lần chỉnh sửa cuối:
Thôi... làm luôn cho bạn nhé!
Xem thử file này, tuy chưa phải là hay lắm...
File này dùng công thức, nhưng theo ý tôi thì nên dùng VBA kết hợp với Advanced Filter sẽ nhẹ nhàng hơn!
em đánh ngày tháng vào bên báo cáo sao kết quả ko hiện ra vậy .?????
nhân tiện em muốn hỏi nếu mình ko chọn tên đơn vị mà chỉ lọc theo ngay (tức là từ.......đến ngày.....)thì sẽ lọc tất cả các đơn vị có điều kiện thỏa mãn về ngày .
Nếu ko phiền anh tuấn có thể viết giúp tôi 1 VBA ko.
Ghi chú thêm: Tôi đang ngồi ngoài dịch vụ, ko có font TCVN3 nên đã convert sang font Unicode vì chẳng đọc dc chử gì cả... Mặc khác tôi cũng rất ngứa mắt với loại font ABC này... Thông cảm nha! hi... hi...
ANH TUẤN
Bác Tuấn nhiệt tình với em quá,lúc nào Bác có ra HN em sẽ mời bác đi uống cafe để cảm ơn bác!
 
em đánh ngày tháng vào bên báo cáo sao kết quả ko hiện ra vậy .?????
1> Gõ ngày vào mà ko hiện kết quả thì bạn hảy xem lại:
a) Ngày tháng năm bạn có nhập đúng định dạng DATE hay ko?
b) Ngày tháng năm gõ vào có tồn tại bên sheet nhập hay ko?
c) Nếu vẫn ko dc thì đưa file đang bị lổi ấy lên
nhân tiện em muốn hỏi nếu mình ko chọn tên đơn vị mà chỉ lọc theo ngay (tức là từ.......đến ngày.....)thì sẽ lọc tất cả các đơn vị có điều kiện thỏa mãn về ngày .
Nếu ko phiền anh tuấn có thể viết giúp tôi 1 VBA ko.
2> Cái này dể mà, sửa tí trong name là xong!
Name củ:
Mã:
STT =IF(MDV1=Baocao!$P$4,ROW(INDIRECT("1:"&COUNTA(MDV1))),"")
Sửa lại thành:
Mã:
STT =IF(Baocao!$C$3="",ROW(INDIRECT("1:"&COUNTA(MDV1))),IF(MDV1=Baocao!$P$4,ROW(INDIRECT("1:"&COUNTA(MDV1))),""))
Xem file nhé!
(Khi muốn bỏ qua phần MÃ ĐƠN VỊ (nghĩa là lấy hết tên các đơn vị) thì đơn giản thì xóa cell C3 đi nhé!)
ANH TUẤN
 

File đính kèm

Lần chỉnh sửa cuối:
do em chưa chình date trong control nên ngày tháng bị nhẩy lung tung,bây giờ thì ok rùi.

Nhìn công thức của anh làm bây giờ em đang ngồi nghiên cứu để tự làm về phần thép.

ma anh tuấn ơi,tại sao ở ô C3 của báo cáo em làm mãi mà ko hiện ra được list nhỉ,muốn tạo được như vậy thì làm thế nào vậy?

tại công thức của anh

=IF($A8="","",INDEX(DS,SMALL(STT,ROW(1:1)),B$7)) dịch ra có nghĩa là gì vậy

P/s: Cảm ơn anh tuấn nhiều nhiều lắm .
 
Lần chỉnh sửa cuối:
ma anh tuấn ơi,tại sao ở ô C3 của báo cáo em làm mãi mà ko hiện ra được list nhỉ,muốn tạo được như vậy thì làm thế nào vậy?
Thí nghiệm thế này nhé:
1> Bạn mở 1 file mới, gõ vào thứ gì đó từ A1 đến A10
2> Quét chọn A1:A10, vào menu Insert\Name\Define rồi gõ vào khung "Name in Workbook" chử gì đó, chẳng hạn là DS
3> Sang 1 sheet khác (hay sheet này cũng dc), chọn 1 cell bất kỳ, vào menu Data\Validation.. trong tab Settings, khung Allow bạn bấm vào mũi tên xổ xuống và chọn List, khung Source bạn gõ vào =DS
Giờ ra bảng tính, chọn vào cell hồi nảy bạn sẽ thấy có mũi tên xổ xuống chứa list A1:A10
Bạn hiểu rồi chứ... Đây là chức năng rất hay, người ta dùng vào việc chống sai sót trong nhập liệu...
------------------------------
tại công thức của anh

=IF($A8="","",INDEX(DS,SMALL(STT,ROW(1:1)),B$7)) dịch ra có nghĩa là gì vậy
Cái này thì bạn phải nghiên cứu 2 hàm trước
1> Hàm INDEX dùng để dò tìm dử liệu trong 1 bãng với cú pháp INDEX(Bang, dong, cột)
2> Hàm SMALL lấy giá trị nhỏ thứ K trong bảng với cú pháp: SMALL(Bang,K)
Bạn tham khảo thêm bài viết của BNTT tại đây:
http://www.giaiphapexcel.com/forum/showpost.php?p=48591&postcount=6
và đây:
http://www.giaiphapexcel.com/forum/showpost.php?p=48591&postcount=6
ANH TUẤN
 
em còn 1 thắc mắc,tại công thức hay có ("") này là sao vậy?nếu đánh "" thì nó sẽ trả về giá trị nào
Ví dụ luôn công thức của anhtuan nhé

=If($A8="","",.............) vậy tại ô A8="" nó sẽ trả về giá trị nào và sau đó là 2 dấu ""

P/s: Càng nghiên cứu càng thấy excel thật là tuyệt vời .Xin cảm ơn anhtuan đã giúp em .
 
em còn 1 thắc mắc,tại công thức hay có ("") này là sao vậy?nếu đánh "" thì nó sẽ trả về giá trị nào
Ví dụ luôn công thức của anhtuan nhé

=If($A8="","",.............) vậy tại ô A8="" nó sẽ trả về giá trị nào và sau đó là 2 dấu ""
Dấu "" có nghĩa là trống rỗng.
Với công thức If trên nghĩa thế này :
Nếu cell A8 mà rỗng thì trả về 1 cell rỗng, ngược lại (cell A8 không rỗng) thì ..........
Bạn học hàm IF tại đây nhé :
http://www.giaiphapexcel.com/forum/showpost.php?p=47201&postcount=2
 
thanks anh viendo,bây giờ em đã hiểu qua qua rùi,em sẽ nghiên cứu thêm về phần này.

P/s :Xin cảm ơn anhtuan đã nhiệt tình giúp đỡ em ,bây giờ việc quản lý số liệu thật dễ và nhẹ nhàng hơn rất nhiều .
Thanks GPE !
 
Web KT

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

Back
Top Bottom