Постоянно появляется ошибка времени выполнения 1004 при использовании расширенного фильтра в VBA «Ошибка метода AdvancedFilter класса Range» - PullRequest
0 голосов
/ 18 июня 2020

вы все здорово помогли с моим последним выпуском, так что я решил задать еще один вопрос. В настоящее время я создаю код, который отслеживает инвентарь почтового отделения. Код, над которым я работаю, представляет собой текстовое поле, которое всякий раз, когда что-то набирает, копирует значение в Excel и запускает расширенный поиск. Я хочу использовать xlfiltercopy, чтобы предотвратить визуальное повреждение листа Excel, и чтобы упростить обновление списка в пользовательской форме с помощью отфильтрованной информации. Пожалуйста, дайте мне знать, если вы можете найти причину, по которой возникла ошибка «Ошибка метода AdvancedFilter класса Range»

РЕДАКТИРОВАТЬ: Если возможно, я хотел бы отправить кому-нибудь по электронной почте весь Excel, чтобы узнать, работает ли программа на другом компьютер. Я физически не могу придумать, как заставить его работать. Пожалуйста, учтите!

' Input on the 2nd page
' This code will update the list box below automatically as you type a name
Private Sub TextBox5_Change()

If Me.TextBox5.Value = "" Then
    Exit Sub
End If

Dim wks As Worksheet
Set wks = ThisWorkbook.Sheets("Mail_Inventory")
Dim rgData As Range
Dim rgCriteria As Range
Dim rgOutput As Range
Dim currentinventory As Long
Dim filteredcurrent As Long
Dim temp As Long
temp = wks.Range("AS1").Value

If temp > 0 Then
    wks.ListObjects("CurrentFiltered").DataBodyRange.Rows.Delete
End If

wks.Range("AP6").Value = Me.TextBox5.Value
currentinventory = wks.Range("A1").Value

'Set rgData = ThisWorkbook.Worksheets("Mail_Inventory").Range("A2:H" & currentinventory + 2)
'Set rgCriteria = ThisWorkbook.Worksheets("Mail_Inventory").Range("AP5:AP6")
'Set rgOutput = ThisWorkbook.Worksheets("Mail_Inventory").Range("AS2:AZ2")

Set rgData = Range("A2:H" & currentinventory + 2)
Set rgCriteria = Range("AP5:AP6")
Set rgOutput = Range("AS2:AZ2")

rgData.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=rgCriteria, CopytoRange:=rgOutput

'wks.Range("A2:H" & currentinventory + 2).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=wks.Range("AP5:AP6"), CopyToRange:=wks.Range("AS2:AZ2")

'filteredcurrent = wks.Range("AS1").Value

'Me.ListBox2.Clear
'Me.ListBox2.RowSource = wks.Range("AS2:AV" & filteredcurrent + 2)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...