Computer >> Hướng Dẫn Máy Tính >  >> Phần Mềm >> Office

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Nếu bạn đang vật vã tìm ra nguyên nhân và giải pháp cho thông báo lỗi AutoFilter method of Range Class Failed thì bài viết này dành cho bạn. Vậy, hãy đi sâu vào bài viết chính.

Tải xuống sổ làm việc

5 sửa lỗi cho vấn đề AutoFilter Method of Range Class Failed

Ở đây, chúng tôi sẽ chỉ ra 5 giải pháp có thể sử dụng bộ dữ liệu sau làm phạm vi nơi chúng ta sẽ áp dụng tính năng AutoFilter để lọc phạm vi dựa trên tiêu chí.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Chúng tôi đã dùng phiên bản Microsoft Excel 365 ở đây, bạn có thể dùng bất kỳ phiên bản nào khác theo sự tiện lợi.

Sửa lỗi 1: Sửa số trường (Field Number) để khắc phục lỗi AutoFilter Method of Range Class Failed

Ở đây, chúng ta sẽ thử lọc phạm vi sau dựa trên giá trị bán hàng lớn hơn 2500 với sự giúp đỡ của một mã VBA.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Để lọc phạm vi, chúng ta đã dùng mã sau

Sub fixing_autofilter_issue_1() Dim sht As Worksheet Set sht = Worksheets("Field Number") sht.Range("B3:D3").AutoFilter field:=100, Criteria1:=">=2500" End Sub

Ở đây, field: dùng để chỉ số cột của phạm vi, mà chúng ta gán là 100 nhưng không có quá 3 cột trong phạm vi này.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Vì vậy, sau khi nhấn F5 chúng ta nhận được thông báo lỗi AutoFilter method of Range Class Failed.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

➤ Để giải quyết vấn đề này, dùng số trường chính xác tương ứng với số cột của phạm vi (chúng ta dùng 3 vì đó là số thứ tự của cột Doanh số của phạm vi).

Sub fixing_autofilter_issue_1() Dim sht As Worksheet Set sht = Worksheets("Field Number") sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500" End Sub

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

➤ Nhấn F5.
Bây giờ, bạn sẽ có thể lọc phạm vi theo tiêu chí mà không có thông báo lỗi.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Đọc thêm: Excel VBA kiểm tra xem AutoFilter có bật không (4 cách dễ dàng)

Sửa lỗi 2: Sử dụng phạm vi chính xác để khắc phục vấn đề AutoFilter Method of Range Class Failed

Chúng ta sẽ thử áp dụng bộ lọc trong bộ dữ liệu sau dựa trên cột Doanh số cho giá trị lớn hơn $2,500.00.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Chúng ta đã dùng mã sau để lọc phạm vi của trang Range.

Sub fixing_autofilter_issue_2() Dim sht As Worksheet Set sht = Worksheets("Range") sht.Range("D3:D100").AutoFilter field:=3, Criteria1:=">=2500" End Sub

Ở đây, chúng ta thấy dùng phạm vi D3:D100 và số trường 3, và các giá trị này không khớp nhau vì phạm vi này chỉ chứa một cột.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Vì vậy, sau khi nhấn F5 chúng ta lại nhận được thông báo lỗi.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

➤ Sửa mã thành mã sau

Sub fixing_autofilter_issue_2() Dim sht As Worksheet Set sht = Worksheets("Range") sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500" End Sub

Chúng ta đã thay phạm vi thành B3:D3 bây giờ.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

➤ Nhấn F5.
Sau đó, bạn sẽ có thể lọc phạm vi theo tiêu chí mà không có thông báo lỗi.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Sửa lỗi 3: Vấn đề AutoFilter Method of Range Class Failed do lọc Bảng

Ở đây, chúng ta có Bảng sau nơi chúng ta sẽ thử áp dụng tùy chọn lọc với sự giúp đỡ của mã để lọc bảng này dựa trên cột Doanh số.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Cho mục đích này, chúng ta đã dùng mã sau

Sub fixing_autofilter_issue_3() Dim sht As Worksheet Set sht = Worksheets("Table") sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500" End Sub

Dường như mọi thứ ổn trong mã này. Hãy kiểm tra.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Nhưng sau khi nhấn F5, chúng ta nhận được thông báo lỗi.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Để giải quyết vấn đề này, chúng ta phải chuyển đổi bảng này thành phạm vi.
➤ Chọn bảng rồi vào tab Thiết kế Bảng >> Nhóm Công cụ >> tùy chọn Chuyển đổi thành phạm vi.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Sau đó, hộp thông báo sẽ xuất hiện để xác nhận việc chuyển đổi.
➤ Nhấn Có ở đây.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Sau đó, bạn sẽ nhận được phạm vi từ bảng đã tạo.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

➤ Bây giờ, hãy áp dụng lại mã trước.

Sub fixing_autofilter_issue_3() Dim sht As Worksheet Set sht = Worksheets("Table") sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500" End Sub

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

➤ Nhấn F5.
Như bạn thấy, lần này phương pháp AutoFilter hoạt động bình thường.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Sửa lỗi 4: Vấn đề AutoFilter Method of Range Class Failed do lọc Bảng Pivot

Ở đây, chúng ta có Bảng Pivot sau nơi chúng ta có giá trị bán hàng ở cột thứ hai dựa trên đó chúng ta sẽ áp dụng phương pháp AutoFilter.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Vì vậy, chúng ta đã áp dụng mã sau.

Sub fixing_autofilter_issue_4() Dim sht As Worksheet Set sht = Worksheets("Pivot") sht.Range("A3:B3").AutoFilter field:=2, Criteria1:=">=2500" End Sub

Ở đây, số trường 2 là cho cột thứ hai của phạm vi A3:B3.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Sau khi nhấn F5, bạn sẽ nhận được thông báo lỗi AutoFilter method of Range Class Failed.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Để giải quyết vấn đề này, bạn có thể áp dụng phương pháp AutoFilter cho phạm vi nguồn của Bảng Pivot.
Như bạn thấy, phạm vi nguồn chúng ta có cho bảng này nằm ở trang Source và ở đây chúng ta sẽ áp dụng mã.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

➤ Áp dụng mã sau cho phạm vi nguồn này.

Sub fixing_autofilter_issue_4_1() Dim sht As Worksheet Set sht = Worksheets("Source") sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500" End Sub

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

➤ Nhấn F5.
Cuối cùng, bạn sẽ có thể lọc xuống phạm vi dựa trên tiêu chí cho cột Doanh số.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Sửa lỗi 5: Vấn đề do dùng toàn bộ phạm vi thay vì chỉ tiêu đề

Trong phần này, chúng ta sẽ thảo luận một vấn đề nhỏ khó mà kích hoạt thông báo lỗi AutoFilter Method of Range Class Failed. Nhưng bạn có thể nhận thức được sự việc đó có thể là nguyên nhân của lỗi này.
Giống như ví dụ trước, chúng ta sẽ áp dụng phương pháp AutoFilter cho phạm vi sau.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Chúng ta đã dùng mã sau để áp dụng bộ lọc.

Sub fixing_autofilter_issue_5() Dim sht As Worksheet Set sht = Worksheets("Header") sht.Range("B3:D11").AutoFilter field:=3, Criteria1:=">=2500" End Sub

Ở đây, chúng ta dùng phạm vi B3:D11 cho toàn bộ bộ dữ liệu là không cần thiết, và đôi khi nó có thể là nguyên nhân của thông báo lỗi đó cho phạm vi lớn.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Vì vậy, chúng ta có thể thay đổi mã đó thành mã sau bằng cách chỉ dùng tiêu đề làm phạm vi.

Sub fixing_autofilter_issue_5() Dim sht As Worksheet Set sht = Worksheets("Header") sht.Range("B3:D3").AutoFilter field:=3, Criteria1:=">=2500" End Sub

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Sau khi nhấn F5, bạn sẽ nhận được kết quả mong muốn mà không gặp vấn đề gì.

Khắc phục lỗi AutoFilter Method of Range Class Failed với 5 sửa lỗi đã chứng minh

Kết luận

Trong bài viết này, chúng tôi đã cố gắng bao gồm các sửa lỗi có thể cho vấn đề AutoFilter method of Range Class Failed trong Excel. Hy vọng bạn sẽ thấy hữu ích. Nếu bạn có bất kỳ góp ý hoặc câu hỏi nào, hãy chia sẻ trong phần bình luận.

Bài viết liên quan

  • Cách tự động lọc và sao chép hàng hiển thị với Excel VBA
  • VBA AutoFilter: Sắp xếp từ nhỏ đến lớn (3 phương pháp)
  • Cách tự động lọc giá trị không bằng giá trị nhất định với VBA trong Excel
  • Excel VBA: Xóa AutoFilter nếu tồn tại (7 ví dụ)