증상
매크로를 Visual Basic for Applications Microsoft Excel 다음 또는 유사한 오류 메시지가 표시될 수 있습니다.
런타시 오류 '1004':
개체의 메서드 'SaveAs'_Worksheet 실패했습니다.
원인
이 동작은 다음 조건이 모두 true일 때 발생할 수 있습니다.
-
워크시트 저장을 위해 Visual Basic for Applications 매크로를 사용하고 있습니다.
-and- -
파일 형식을 상수 xlWorkbookNormal로 지정합니다.
예를 들어 다음 코드로 인해 이 오류가 발생합니다.
Sub A()
Dim myNewSheet As Worksheet
Set myNewSheet = ActiveSheet
FileNameBin = "c:\ABC"
myNewSheet.SaveAs Filename:=FileNameBin, FileFormat:=xlWorkbookNormal
End Sub
해결 방법
Microsoft는 특정 목적에 대한 상용성 및/또는 적합성에 대한 암시적 보증을 포함하나 이에 국한되지는 않는 보증 없이 그림에 대한 프로그래밍 예제를 제공합니다. 이 문서에서는 시연되는 프로그래밍 언어와 프로시저를 만들고 디버그하는 데 사용되는 도구에 익숙하다고 가정합니다. Microsoft 지원 전문가는 특정 절차의 기능을 설명하는 데 도움이 될 수 있지만, 이러한 예제를 수정하여 추가 기능을 제공하거나 특정 요구 사항을 충족하는 프로시저를 구성하지 않습니다.
프로그래밍 환경이 제한적이면 Microsoft 인증 파트너 또는 Microsoft Advisory Services에 문의할 수 있습니다. 자세한 내용은 다음 Microsoft 웹 사이트:
Microsoft 인증 파트너 -
https://partner.microsoft.com/global/30000104 Microsoft Advisory Services -
http://support.microsoft.com/gp/advisoryservice 사용 가능한 지원 옵션 및 Microsoft에 문의하는 방법에
대한 자세한 내용은 다음 Microsoft 웹 사이트:http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS 이 동작을 해결하기 위해 파일 형식 사양을 상수 xlWorkbookNormal에서 1로 변경합니다. 예제 코드는 다음으로 변경된 경우 정상적으로 작동합니다.
Sub A()
Dim myNewSheet As Worksheet
Set myNewSheet = ActiveSheet
FileNameBin = "c:\ABC"
myNewSheet.SaveAs Filename:=FileNameBin, FileFormat:=1
End Sub
참고 워크시트는 저장하는 경우에도 파일 형식이 xlWorkbookNormal 또는 1로 설정될 때 선택한 통합 문서의 모든 워크시트가 저장됩니다.
상태
Microsoft는 이 문서의 시작부에 나열된 Microsoft 제품의 문제인 것으로 확인했습니다.