Nhờ Các Bạn giúp đở về code Advanced Filter!

Liên hệ QC

caohoc9c

Thành viên mới
Tham gia
19/10/08
Bài viết
4
Được thích
0
Mình đang sử dụng Office2010

Khi Mình dùng họp thoại Advanced Filter của Excel để lọc dữ liệu thì kết quả rất OK!
AdvancedFilter1.jpg

Sau đó mình dùng chức năng Record Macro để lấy (Copy) lệnh vừa lọc ở trên
Sao đó chạy lại chính dòng lệnh đó trong VBA thì kết quả lại không có gì. Không biết là tại sao?
AdvancedFilter2.jpg
AdvancedFilter3.jpg
Có ai biết lí do vì sao chỉ dùm mình (Test ở office2003 thì OK, nhưng Test ở Office2010 thì không được)
(Mình có gửi kèm File Excel xls, mình không thể lưu thành kiểu file xlsx vì như vậy không cho lưu code VBA, còn lưu thành xlsm thì Excel cho lưu nhưng không cho gửi lên diễn đàn được)
Cảm ơn các Bạn nhiều!
 

File đính kèm

  • Locdulieu.xls
    34.5 KB · Đọc: 16
Lần chỉnh sửa cuối:
Sub LocDL()
Range("A1:C7").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"A9:B10"), CopyToRange:=Range("A12:C12"), Unique:=True
End Sub
chỗ mình làm lớn lên là chỗ sai trong công thức của bạn
 
Upvote 0
Sub LocDL()
Range("A1:C7").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"A9:B10"), CopyToRange:=Range("A12:C12"), Unique:=True
End Sub
trong file của ban = false nhưng giá trị đúng là phải =True
 
Upvote 0
Sub LocDL()
Range("A1:C7").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"A9:B10"), CopyToRange:=Range("A12:C12"), Unique:=True
End Sub
chỗ mình làm lớn lên là chỗ sai trong công thức của bạn

Mình đã sửa lại thành True nhưng vẫn không được bạn à

(À! mà Unique:= True có nghĩa là lọc lấy kết quả không trùng mà)
 
Upvote 0
Lọc dữ liệu

Bạn xem file mình gửi
 

File đính kèm

  • Locdulieu.rar
    8 KB · Đọc: 25
Upvote 0

Sub LocDL()
Range("A1:C7").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
"A9:B10"), CopyToRange:=Range("A12:C12"), Unique:=True
End Sub

Mình đã mở File bạn gửi lại, và Test lại, kết quả vẫn lỗi như vậy, không hiện ra được dòng nào.

AdvancedFilter4.jpg

(P/s: Máy bạn Test ra kết quả không?, Phải Test o Office2010 nhé!)
 
Upvote 0
Mình đang sử dụng Office2010

Khi Mình dùng họp thoại Advanced Filter của Excel để lọc dữ liệu thì kết quả rất OK!
View attachment 68058

Sau đó mình dùng chức năng Record Macro để lấy (Copy) lệnh vừa lọc ở trên
Sao đó chạy lại chính dòng lệnh đó trong VBA thì kết quả lại không có gì. Không biết là tại sao?
View attachment 68059
View attachment 68060
Có ai biết lí do vì sao chỉ dùm mình (Test ở office2003 thì OK, nhưng Test ở Office2010 thì không được)
(Mình có gửi kèm File Excel xls, mình không thể lưu thành kiểu file xlsx vì như vậy không cho lưu code VBA, còn lưu thành xlsm thì Excel cho lưu nhưng không cho gửi lên diễn đàn được)
Cảm ơn các Bạn nhiều!
Thử sửa lại công thức ở cell điều kiện xem.
Cụ thể là:
- Sửa A10 thành =">=" & DATE(2011,8,2)
- Sửa B10 thành ="<=" & DATE(2011,8,5)
Còn đoạn Unique=False vậy là đúng rồi. Có thể xóa luôn cũng không có vấn đề
Code rút gọn:
PHP:
Sub LocDL()
  Range("A1:C7").AdvancedFilter 2, Range("A9:B10"), Range("A12:C12")
End Sub
 

File đính kèm

  • Locdulieu.xls
    30 KB · Đọc: 49
Lần chỉnh sửa cuối:
Upvote 0
Thử sửa lại công thức ở cell điều kiện xem.
Cụ thể là:
- Sửa A10 thành =">=" & DATE(2011,8,2)
- Sửa B10 thành ="<=" & DATE(2011,8,5)
Còn đoạn Unique=False vậy là đúng rồi. Có thể xóa luôn cũng không có vấn đề
Code rút gọn:
PHP:
Sub LocDL()
  Range("A1:C7").AdvancedFilter 2, Range("A9:B10"), Range("A12:C12")
End Sub

Cảm ơn Bạn đã giúp đở!
 
Upvote 0
Thử sửa lại công thức ở cell điều kiện xem.
Cụ thể là:
- Sửa A10 thành =">=" & DATE(2011,8,2)
- Sửa B10 thành ="<=" & DATE(2011,8,5)
Còn đoạn Unique=False vậy là đúng rồi. Có thể xóa luôn cũng không có vấn đề
Code rút gọn:
PHP:
Sub LocDL()
  Range("A1:C7").AdvancedFilter 2, Range("A9:B10"), Range("A12:C12")
End Sub
[/QUOTE]
Dạ anh ơi anh có thể giúp em xem file của em không ạ. EM cũng bị lỗi như bạn nhưng sửa theo cách anh vẫn không ra kết quả ạ :(
Bài đã được tự động gộp:

Thử sửa lại công thức ở cell điều kiện xem.
Cụ thể là:
- Sửa A10 thành =">=" & DATE(2011,8,2)
- Sửa B10 thành ="<=" & DATE(2011,8,5)
Còn đoạn Unique=False vậy là đúng rồi. Có thể xóa luôn cũng không có vấn đề
Code rút gọn:
PHP:
Sub LocDL()
  Range("A1:C7").AdvancedFilter 2, Range("A9:B10"), Range("A12:C12")
End Sub
Dạ anh ơi anh có thể giúp em xem file của em không ạ. EM cũng bị lỗi như bạn nhưng sửa theo cách anh vẫn không ra kết quả ạ :(
 

File đính kèm

  • Test.xlsx
    409.9 KB · Đọc: 3
  • Test.xlsx
    409.9 KB · Đọc: 3
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom