Lỗi khi chạy macro

Liên hệ QC

huy_barca

Thành viên mới
Tham gia
29/6/10
Bài viết
27
Được thích
0
Mấy anh chị xem dùm em trong sheet 2, em đã tạo được 10 cái lọc...nguyên tác lọc của 10 cái này là như nhau. Không hiểu tại sao 9 cái lọc đầu tiên thì chạy được đến cái thức 10 lại báo lỗi " the command could not be completed by using range specified"
Em đã gởi file đính kèm cho anh chi xem thử.
Mong anh chi giúp đỡ dùm.
 

File đính kèm

Mấy anh chị xem dùm em trong sheet 2, em đã tạo được 10 cái lọc...nguyên tác lọc của 10 cái này là như nhau. Không hiểu tại sao 9 cái lọc đầu tiên thì chạy được đến cái thức 10 lại báo lỗi " the command could not be completed by using range specified"
Em đã gởi file đính kèm cho anh chi xem thử.
Mong anh chi giúp đỡ dùm.
Code tại Button10 nó thế này:
PHP:
Sub Locmuoi()
  Sheet2.Range("AB:AC").ClearContents
  With Sheet3.Range("S:T")
    .AutoFilter 1, ">=" & CDbl(Sheet2.[B3]), xlAnd, "<=" & CDbl(Sheet2.[B4])
    .SpecialCells(12).Copy: Sheet2.Range("AB7").PasteSpecial 3
    .AutoFilter
  End With
End Sub
Ở sheet3, AutoFilter vùng S:T ---> Mà tại sheet3, thì dữ liệu chỉ có từ cột A đến cột F thôi, lấy đâu ra dữ liệu ở cột S và T mà lọc:
Lưu ý: Sheet3 trong VBA không phải là tên Sheet3 trên bảng tính đâu nha ---> Tôi nghĩ bạn đang nhầm lẫn điều này

untitled.JPG

Muốn nói đến tên Sheet3 trên bảng tính thì phải ghi vầy:
Mã:
With [COLOR=red][B]Sheets("Sheet3")[/B][/COLOR].Range("S:T")
............
End With
 
Upvote 0
Em chào Anh!
Toàn b[FONT=&quot]ộ[/FONT] 10 cái l[FONT=&quot]ọ[/FONT]c mà em t[FONT=&quot]ạ[/FONT]o ra đi[FONT=&quot]ề[/FONT]u l[FONT=&quot]ấ[/FONT]y d[FONT=&quot]ữ[/FONT] li[FONT=&quot]ệ[/FONT]u t[FONT=&quot]ừ[/FONT] sheet 3 trong VBA h[FONT=&quot]ế[/FONT]t ( em cũng phân bi[FONT=&quot]ệ[/FONT]t đ[FONT=&quot]ượ[/FONT]c sheet 3 bên ngoài và sheet 3 trong VBA). Sheet 3 trong VBA t[FONT=&quot]ươ[/FONT]ng đ[FONT=&quot]ươ[/FONT]ng v[FONT=&quot]ớ[/FONT]i sheet metastock bên ngoài, n[FONT=&quot]ế[/FONT]u anh ch[FONT=&quot]ạ[/FONT]y nh[FONT=&quot]ữ[/FONT]ng cái l[FONT=&quot]ọ[/FONT]c khác ch[FONT=&quot]ằ[/FONT]ng h[FONT=&quot]ạ[/FONT]n nh[FONT=&quot]ư[/FONT] l[FONT=&quot]ọ[/FONT]c 9, 8, 7... nh[FONT=&quot]ữ[/FONT]ng cái l[FONT=&quot]ộ[/FONT]c này cũng đâu có d[FONT=&quot]ữ[/FONT] li[FONT=&quot]ệ[/FONT]u trong sheet metastock đâu( t[FONT=&quot]ươ[/FONT]ng đ[FONT=&quot]ươ[/FONT]ng v[FONT=&quot]ớ[/FONT]i sheet 3 trong VBA), nh[FONT=&quot]ư[/FONT]ng nó v[FONT=&quot]ẫ[/FONT]n ch[FONT=&quot]ạ[/FONT]y đ[FONT=&quot]ượ[/FONT]c mà có báo l[FONT=&quot]ỗ[/FONT]i gì đ[FONT=&quot]ầ[/FONT]u anh. Trong khi ch[FONT=&quot]ỉ[/FONT] có cái "L[FONT=&quot]ộ[/FONT]c 10" thì l[FONT=&quot]ạ[/FONT]i báo l[FONT=&quot]ỗ[/FONT]i, k[FONT=&quot]ể[/FONT] c[FONT=&quot]ả[/FONT] trong tr[FONT=&quot]ườ[/FONT]ng h[FONT=&quot]ợ[/FONT]p hai c[FONT=&quot]ộ[/FONT]t S và c[FONT=&quot]ộ[/FONT]t T trong sheet metastock có d[FONT=&quot]ữ[/FONT] li[FONT=&quot]ệ[/FONT]u đi thì v[FONT=&quot]ẫ[/FONT]n báo l[FONT=&quot]ỗ[/FONT]i.
Thanks Anh.
 
Upvote 0
Em chào Anh!
Toàn b[FONT=&quot]ộ[/FONT] 10 cái l[FONT=&quot]ọ[/FONT]c mà em t[FONT=&quot]ạ[/FONT]o ra đi[FONT=&quot]ề[/FONT]u l[FONT=&quot]ấ[/FONT]y d[FONT=&quot]ữ[/FONT] li[FONT=&quot]ệ[/FONT]u t[FONT=&quot]ừ[/FONT] sheet 3 trong VBA h[FONT=&quot]ế[/FONT]t ( em cũng phân bi[FONT=&quot]ệ[/FONT]t đ[FONT=&quot]ượ[/FONT]c sheet 3 bên ngoài và sheet 3 trong VBA). Sheet 3 trong VBA t[FONT=&quot]ươ[/FONT]ng đ[FONT=&quot]ươ[/FONT]ng v[FONT=&quot]ớ[/FONT]i sheet metastock bên ngoài, n[FONT=&quot]ế[/FONT]u anh ch[FONT=&quot]ạ[/FONT]y nh[FONT=&quot]ữ[/FONT]ng cái l[FONT=&quot]ọ[/FONT]c khác ch[FONT=&quot]ằ[/FONT]ng h[FONT=&quot]ạ[/FONT]n nh[FONT=&quot]ư[/FONT] l[FONT=&quot]ọ[/FONT]c 9, 8, 7... nh[FONT=&quot]ữ[/FONT]ng cái l[FONT=&quot]ộ[/FONT]c này cũng đâu có d[FONT=&quot]ữ[/FONT] li[FONT=&quot]ệ[/FONT]u trong sheet metastock đâu( t[FONT=&quot]ươ[/FONT]ng đ[FONT=&quot]ươ[/FONT]ng v[FONT=&quot]ớ[/FONT]i sheet 3 trong VBA), nh[FONT=&quot]ư[/FONT]ng nó v[FONT=&quot]ẫ[/FONT]n ch[FONT=&quot]ạ[/FONT]y đ[FONT=&quot]ượ[/FONT]c mà có báo l[FONT=&quot]ỗ[/FONT]i gì đ[FONT=&quot]ầ[/FONT]u anh. Trong khi ch[FONT=&quot]ỉ[/FONT] có cái "L[FONT=&quot]ộ[/FONT]c 10" thì l[FONT=&quot]ạ[/FONT]i báo l[FONT=&quot]ỗ[/FONT]i, k[FONT=&quot]ể[/FONT] c[FONT=&quot]ả[/FONT] trong tr[FONT=&quot]ườ[/FONT]ng h[FONT=&quot]ợ[/FONT]p hai c[FONT=&quot]ộ[/FONT]t S và c[FONT=&quot]ộ[/FONT]t T trong sheet metastock có d[FONT=&quot]ữ[/FONT] li[FONT=&quot]ệ[/FONT]u đi thì v[FONT=&quot]ẫ[/FONT]n báo l[FONT=&quot]ỗ[/FONT]i.
Thanks Anh.
Cái này nó liên quan đến UsedRange, tức những cell mà bạn đã từng "xài" qua
Thí nghiệm code này:
PHP:
Sub Test()
  MsgBox Sheet3.UsedRange.Address
End Sub
Cho kết quả là $A$1:$R$1490 ---> Tức từ dòng 1 đến dòng 1490 và từ cột A đến cột R là vùng mà trước đây bạn đã từng dùng qua
Mặc khác, SpecialCells chỉ hoạt động với UsedRange mà thôi, vùng chưa bao giờ nhập liệu nó không hoạt động và báo lỗi ---> Để code luôn hoạt động chính xác, không gì bằng là bạn nhập liệu vào... Còn không thì thêm dòng On Error Resume Next vào đầu mỗi code
Trong khi ch[FONT=&quot]ỉ[/FONT] có cái "L[FONT=&quot]ộ[/FONT]c 10" thì l[FONT=&quot]ạ[/FONT]i báo l[FONT=&quot]ỗ[/FONT]i, k[FONT=&quot]ể[/FONT] c[FONT=&quot]ả[/FONT] trong tr[FONT=&quot]ườ[/FONT]ng h[FONT=&quot]ợ[/FONT]p hai c[FONT=&quot]ộ[/FONT]t S và c[FONT=&quot]ộ[/FONT]t T trong sheet metastock có d[FONT=&quot]ữ[/FONT] li[FONT=&quot]ệ[/FONT]u đi thì v[FONT=&quot]ẫ[/FONT]n báo l[FONT=&quot]ỗ[/FONT]i.
Thanks Anh.
Cái này tôi thí nghiêm rồi, nếu tại sheet metastock mà cột S:T có dữ liệu thì code chạy bình thường
 
Lần chỉnh sửa cuối:
Upvote 0
Em chào Anh!
Săn cho em hỏi, thay vì em phải nhấn 10 cái lọc thì mắc công quá...có cách nào gọn hơn, là em chỉ cần nhấn 1 nút thui là tự động nó chạy hết 10 cái lọc đó cho em không Anh?
Thanks Anh.
 
Upvote 0
Web KT

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

Back
Top Bottom