다음을 통해 공유

엑셀 문저 작성 후 저장하고 나서여

익명
2012-06-22T06:49:15+00:00

2007 인지 2010 둘중의 한 버젼인데 엑셀에서 문서를 작성하고 나서 저장 후 다시 껏다 키면

문서의 글씨체들이 크기들이 변해 있습니다. 작아지던가 커져있던가 하고 차트나 틀들도 크기와 형태가 변해 있습니다.

답변 부탁드립니다.

Microsoft 365 및 Office | Excel | 가정용 | Windows

잠긴 질문. 이 질문은 Microsoft 지원 커뮤니티에서 마이그레이션되었습니다. 질문이 도움이 되었는지 여부에 대해 응답할 수는 있지만, 메모나 회신을 추가하거나 질문을 따를 수는 없습니다.

댓글 0개 설명 없음

질문 작성자가 수락한 답변

익명
2012-06-25T04:49:16+00:00

안녕하십니까? cstop14 님

Microsoft Office의 제품의 Excel 사이트를 방문해 주셔서 감사합니다.

엑셀 문서 작성 후 저장하고 다시 열면 글씨 및 문서의 내용이 변하는 증상에 대해서 답변 드리겠습니다.

해당 증상은 스타일 손상이나 이름 서식의 깨짐 증상으로 인하여 스타일 및 이름 서식이 저장되지 않을 때 나타나는 증상으로 보입니다.

아래와 같이 진행 부탁드립니다.

해당 파일을 열고 ALT+F11 키를 눌러 Visual basic 창을 열어 봅니다.

그리고 삽입 - 모듈 메뉴를 클릭합니다.

빈 창이 하나 열리게 됩니다.

  1. 아래 내용을 삽입합니다.

Sub CountShapes()

Dim w As Worksheet

Dim i As Integer

Dim iCount As Integer

For Each w In ThisWorkbook.Worksheets

i = w.Shapes.Count

Debug.Print "시트 : " & w.Name & " (" & i & ")개"

iCount = iCount + i

Next w

Debug.Print "총 : " & iCount & "개의 개체"

End Sub

Sub DeleteShapes()

Dim w As Worksheet

Dim s As Shape

On Error Resume Next

For Each w In ThisWorkbook.Worksheets

For Each s In w.Shapes

s.Visible = True

s.Delete

Next s

Next w

End Sub

  1. 첫번째 프러시저인 Sub countShapes()와 End Sub 사이에 마우스 커서를 위치한 상태에서 Sub/사용자 정의 폼을 싱행합니다.

(F5키를 눌러도 됩니다.)

  1. 직접 실행 창에 각 시트에 사용된 개체 수와 총 개체 수가 표시됩니다.

  1. 두번째 프러시저인 Sub DeleteShapes()와 End Sub 사이에 마우스 커서를 위치한 상태에서 Sub/사용자 정의 폼 실행

(F5키를 눌러도 됩니다.) 각 시트의 모든 개체를 삭제하는 과정에서 수 분 정도의 시간이 소요 될 수도 있습니다.

  1. 삭제 작업이 완료되면 5~6번 작업을 한 번 더 실행하여 각 개체들이 완전히 삭제된 것을 확인합니다.

  1. 코드가 파일에 포함될 필요가 없기 때문에 삽입된 모듈의 이름을 선택한 후 마우스 우측 버튼을 클릭하여 [모듈제거]를 선택합니다.

  1. 모듈 내보내기 창이 나타나면 [아니오] 버튼을 선택합니다.

  1. 이후 파일을 다른 이름으로 저장 하셔서 문제를 다시 재현해 보시기 바랍니다. 증상이 나타나지 않는다면 해결 된 것입니다.

제가 문제에 대해 더 알아야 할 것이 있다면 응답 주시면 감사하겠습니다.

제시해 드린 답변이 도움이 되었기를 바랍니다.

응답이 문제 해결에 도움이 되었다면, 아래에 있는 답변으로 [표시] 버튼을 눌러 주시기 바랍니다. 이는 유사한 증상을 겪는 다른 사용자들에게 도움이 될 수 있습니다

이 대답이 도움이 되었나요?

댓글 0개 설명 없음

1 추가 답변

정렬 기준: 가장 유용함
  1. 익명
    2017-01-06T05:10:45+00:00

    Sub CountShapes()

    Dim w As Worksheet

    Dim i As Long

    Dim iCount As Long

    For Each w In ThisWorkbook.Worksheets

    i = w.Shapes.Count

    Debug.Print "시트 : " & w.Name & " (" & i & ")개"

    iCount = iCount + i

    Next w

    Debug.Print "총 : " & iCount & "개의 개체"

    End Sub

    Sub DeleteShapes()

    Dim w As Worksheet

    Dim s As Shape

    On Error Resume Next

    For Each w In ThisWorkbook.Worksheets

    For Each s In w.Shapes

    s.Visible = True

    If s.Name = "Picture 2047" Then GoTo N_Next

    s.Delete

    N_Next:

    Next s

    Next w

    End Sub

    위 코드로 변경하면 통합문서에 포함된 모든 개체가 65535(?)개를 넘어도 오버플로우 에러가 나지 않습니다.

    또한 "Picture 2047" 부분을 지워지지 않길 바라는 개체이름으로 바꿔주시면 모두 지워지지 않고 남습니다.

    한글 엑셀의 경우 시트에서 표시는 "그림 2047"로 나오지만 실제 이름은 "Picture 2047"로 해 주어야 합니다.

    이 대답이 도움이 되었나요?

    댓글 0개 설명 없음