2017-03-24 1 views
0

레코드를 필터링하는 매크로가있는 Excel 파일이 있습니다. 매크로를 실행 한 후 파일을 저장하고 닫습니다. 내가 파일을 다시 열면이 파일이 손상되었다고 말한다 :VBA 정렬 레코드로 인한 Excel 손상

Excel found unreadable content in '[filename].xls'. 
Do you want to recover the contents of this workbook? 
If you trust the source of this workbook, click Yes. 

일단 내가 예 파일이 열리고 나는 다음과 같은 발견에 저를 지시하는 XML 파일을보고 클릭

<?xml version="1.0" encoding="UTF-8" standalone="true"?> 
-<recoveryLog xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"> 
    <logFileName>error050360_01.xml</logFileName> 
    <summary>Errors were detected in file 'C:\xxx\file.xlsb'</summary> 
    -<removedRecords summary="Following is a list of removed records:"> 
     <removedRecord>Removed Records: Sorting from /xl/worksheets/sheet11.bin part</removedRecord> 
    </removedRecords> 
</recoveryLog> 
Sheet11에

나는 다음과 같은 분류 코드가 있습니다. 나는 범위 ("A3") 전에 조건을 추가하는 시도

LastRow = ActiveSheet.Range("A1").Offset(ActiveSheet.Rows.Count - 1, 0).End(xlUp).Row 
Range("A3").Select 
ActiveWorkbook.Worksheets("AP_PV").Sort.SortFields.Clear 
ActiveWorkbook.Worksheets("AP_PV").Sort.SortFields.Add key:=Range("A4:A" & LastRow) _ 
    , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal 
With ActiveWorkbook.Worksheets("AP_PV").Sort 
    .SetRange Range("A3:B" & LastRow) 
    .Header = xlYes 
    .MatchCase = False 
    .Orientation = xlTopToBottom 
    .SortMethod = xlPinYin 
    .Apply 
End With 

이 LastRow> 4 정렬을 제외 할 수 있는지 확인하기 위해 선택하지만, ID가 어떤 차이를하지 않았다을 .

부패의 원인과 회피 방법에 대한 의견이 있으십니까?

답변

1

나는 링크를 제공하기 만하면되지만 아직 50 가지의 평판은 없다. Excel Error: Removed Records: Sorting from /xl/worksheets/sheet10.xml part가 이 하나 일 가능성이 가장 높은

입니다

:

는 구글 검색은 몇 년 전에서 가능한 해결책을 듬뿍 SE 스레드를 설정

Sheets(yoursheetname).Sort.SortFields.Clear 

가 있음을 넣어 당신의 정렬 기능을 후 (또는 파일을 저장하기 전에) 문제가 해결되어야합니다.

잘하면 작동합니다.