2017-09-14 5 views
0

그래, 많은 게시물이 있다는 것을 알고 있지만 지금까지는 나에게 맞는 솔루션이 없습니다.자동화 오류 - 호출 된 개체가 자동 필터 중에 클라이언트에서 연결이 끊어졌습니다.

일주일 전에 처음으로이 프로그램을 실행하여 진행 상황을 파악할 수있는 매우 간단한 프로그램을 만들었습니다. 저는이 모든 것을 손으로 타이핑했습니다 (저는 보통 오래된 매크로로 시작하여 그것을 수정하거나 복사하고 과거 코드 조각을 사용합니다). 내가 입력으로 사용할 파일이 이상한 경우를 대비해서 필자 만의 데이터 파일을 만들었습니다. 여전히 오류가 발생합니다.

동일한 프로세스를 수행하는 다른 매크로가 있는데 여전히 정상적으로 작동합니다. 이것은 나를 미치게 만든다. 아래 코드는 Autofilter 줄에서 충돌합니다. 다른 게시물의

Sub Fred() 
Dim strFileToOpen As String 
Dim wbHL7 As Workbook 
    strFileToOpen = Application.GetOpenFilename(Title:="Please select the Invoice file.", FileFilter:="Excel Files *.xls* (*.xls*),") 
    If strFileToOpen = "False" Then 
     MsgBox "No file selected.", vbExclamation, "Sorry!" 
     Exit Sub 
    Else 
     Set wbHL7 = Workbooks.Open(Filename:=strFileToOpen) 
    End If 
    rCnt = Cells(Rows.Count, 1).End(xlUp).Row 
    ActiveSheet.Range("A1:K" & rCnt).AutoFilter Field:=11, Criteria1:=0, Operator:=xlFilterValues 
    ActiveSheet.Range("A1:K" & rCnt).Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Delete 
    ActiveSheet.AutoFilterMode = False 
End Sub 

대부분은 호환성 것들로 내 실제 시스템에 문제가있을 수 있음을 암시하지만, 작업을 왜 다른 매크로는 아직도? 그런데 일단이 작업을 수행하면 기본적으로 Excel과 관련된 모든 작업이 잠기므로 작업 관리자를 열어 프로세스를 종료해야합니다. 나는 윈도우 7과 오피스를 사용하고 2013 년

편집 :

난 그냥 데이터와 같은 책에서 자동 필터 매크로를 기록 할 경우, 잘 작동하는 것이 추가 할

.

답변

0

코드에 오류가 있습니다. 기준은 문자열이어야합니다. 기록 된 매크로를주의 깊게 살펴보면 문자열도 사용된다는 것을 알 수 있습니다.

는 다음에 자동 필터 라인을 변경

와 그것을 작동합니다 :

ActiveSheet.Range("A1:K" & rCnt).AutoFilter Field:=11, Criteria1:="=0", Operator:=xlFilterValues 
+0

잘하는 것은 아주 간단였습니다. 그런 "정말 엉망이었고 더 이상 아무것도 작동하지 않을 것입니다"라는 종류의 오류가 없다면, 알아내는 것이 조금 쉬울 것입니다. – Jay

+0

@Jay 전형적인 미친 Micro $ oft 오류가 있습니다. 나는 그것을 이해할 수 없다. – robinCTS