Excel 문서에 왜 960,000 개의 빈 행이 있습니까?


13

Windows 7 컴퓨터에 Office 2007이라는 Excel 문서가 있습니다 (그 부분이 중요하다면 확실하지 않지만 그냥 버릴 것입니다). 모든 직원 전화 번호 목록입니다. 새 페이지를 생성해야하는 경우 2 페이지를 클릭하면 테이블이 자동으로 다시 생성됩니다.

문제는 누군가가 네트워크 드라이브에 있기 때문에 엉망이되어 실제로는 그렇지 않은 경우 960,000 행 이상의 데이터가 있음을 보여줍니다! CTRL + END를 수행하여 마지막 셀에 데이터가 있는지 확인하여 데이터를 지우고 해당 행과 열을 삭제했지만 여전히 수정하지 않았습니다. 삭제 후 스스로 복제되는 것처럼 보입니다.

전체 문서를 다시 만드는 대신이 문제를 어떻게 해결할 수 있습니까?


1
백업을 복원하려고 했습니까? 또한 매크로 또는 VBA가 새 테이블을 생성하기 위해 수행하는 작업에 대한 자세한 정보를 제공해야합니다. 그 정보를 게시 할 수 있습니까?
CharlieRB

@CharlieRB 문서를 자세히 보면서 새 테이블을 생성하지 않는다는 것을 깨달았습니다. 처음에 만든 것이 아니라 표처럼 보이는 테두리 설정이었습니다. 백업을 복원하려고했지만 마지막으로 백업하기 전에 문제가 발생한 것 같습니다. 마지막 행인 1,048,576으로 이동하면 해당 행을 삭제하려고 할 때 문서의 시작 부분과 같이 테두리가있는 셀이 대신됩니다.
C-dizzle

@CharlieRB 나는 돌아가서 문서를 처음부터 다시 작성했지만 결국 빈 셀을 테두리로 바꾸지 않는 이유가 여전히 남아 있습니다.
C-dizzle

공유 파일 인 경우 셀 서식을 지정하는 방법은 필요한 것보다는 전체 열을 한 번에 수행하는 것입니다. 아니면 지금 파일에 액세스하는 사람이 유일한 경우입니까?
datatoo

답변:


14

Microsoft는 Excel에서 마지막 셀을 재설정하는 방법 이라는 훌륭한 지원 문서를 보유하고 있습니다.

그 문서에서 :

현재 사용중인 워크 시트 범위를 벗어난 마지막 셀이 설정되는 가장 일반적인 원인은 과도한 서식입니다. 전체 행과 열의 서식을 지정하면 일부 형식의 서식으로 인해 마지막 셀이 사용중인 실제 범위보다 훨씬 아래 또는 오른쪽에있는 셀로 설정 될 수 있습니다.

귀하의 질문 아래에있는 의견을 바탕으로 모든 행에 적용되는 테두리 형식이 범인처럼 보입니다.

위의 링크에서 제공된 추가 기능의 코드를 사용하여 파일 크기를 여러 메가 바이트에서 수백 k로 줄였습니다.


Excel2010을 사용하고 있는데 작동하지 않습니다. 단순히 "사용 가능한 리소스로이 작업을 완료 할 수 없습니다. 더 적은 데이터를 선택하거나 다른 응용 프로그램을 닫으십시오"라는 오류가 발생합니다.
adolf garlic

위의 링크가 죽었습니다. @adolfgarlic는 VBA 솔루션을
phuclv

@adolfgarlic 32 비트 버전의 Excel에서는 작동하지 않지만 동일한 메모리 제한을 적용하지 않는 64 비트 버전에서는 작동합니다. 아아, 내 버전을 32 비트에서 64 비트로 변경 한 후이 솔루션은 실행되지만 문제를 해결하지는 않습니다.
t0mgs

@phuclv 실제로 살아 있습니다.
t0mgs

0

또한 주석 상자가 셀에서 멀리 떨어진 곳에 주석이있는 셀이 있는지 확인하십시오. 주석 상자가 7000 행 근처에 있고 주석이 7000 행을 스프레드 시트의 마지막 행으로 취급하게하는 주석이있는 스프레드 시트의 두 번째 행에 셀을 가질 수 있습니다.


0

위의 주석 작성자와 마찬가지로-Excel에서 백만 개가 넘는 행이있는 것과 동일한 문제가 발생했습니다. 이 페이지에는 문서를 정리하는 데 사용할 수있는 쉬운 VBA 코드가 있으며 코드없이 문서를 제거하고 저장할 수 있으며 문제가 해결됩니다. https://www.extendoffice.com/documents/excel/2252-excel-reset-comment-positions.html

ALT + F11 키를 누른 상태에서 Microsoft Visual Basic for Applications 창을 엽니 다.

삽입> 모듈을 클릭하고 모듈 창에 다음 코드를 붙여 넣으십시오.

VBA 코드 : 활성 워크 시트에서 모든 주석 위치 재설정

1 Sub ResetComments()
2 'Update 20141110
3 Dim pComment As Comment
4 For Each pComment In Application.ActiveSheet.Comments
5   pComment.Shape.Top = pComment.Parent.Top + 5
6   pComment.Shape.Left = pComment.Parent.Offset(0, 1).Left + 5
7 Next
8 End Sub

그런 다음 F5 키를 눌러이 코드를 실행하면 활성 워크 시트의 모든 주석 위치가 한 번에 재설정되었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.