2013-09-11 1 views
0

Python 및 Excel 개체 모델 라이브러리를 사용하여 Excel 통합 문서의 셀에 유효성 검사 코드를 추가하려고합니다. 내 코드는 다음과 같습니다 :유효성 검사 코드에서 InteropServices.COMException (0x800A03EC) 오류가 발생합니다. HRESULT 예외 : 0x800A03EC

valid = config.optionsSheet.Range('A2').Validation 
valid.Delete() 
valid.Add(XlDVType.xlValidateList, XlDVAlertStyle.xlValidAlertStop, \ 
    XlFormatConditionOperator.xlBetween, "=R20C4:R21C4", None) 

위의 마지막 줄은 다음 오류와 함께 실패합니다.

EnvironmentError: System.Runtime.InteropServices.COMException (0x800A03EC): Exception from HRESULT: 0x800A03EC 

Server stack trace: 
    at Microsoft.Scripting.ComInterop.ComRuntimeHelpers.CheckThrowException(Int32 hresult, ExcepInfo& excepInfo, UInt32 argErr, String message) 
    at CallSite.Target(Closure , CallSite , Object , Object , Object , Object , String , Object) 
    at System.Dynamic.UpdateDelegates.UpdateAndExecute6[T0,T1,T2,T3,T4,T5,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5) 
    at CallSite.Target(Closure , CallSite , CodeContext , Object , Object , Object , Object , String , Object) 
    at System.Dynamic.UpdateDelegates.UpdateAndExecute7[T0,T1,T2,T3,T4,T5,T6,TRet](CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5, T6 arg6) 
    at Microsoft.Scripting.Interpreter.DynamicInstruction`8.Run(InterpretedFrame frame) 
    at Microsoft.Scripting.Interpreter.Interpreter.Run(InterpretedFrame frame) 
    at Microsoft.Scripting.Interpreter.LightLambda.Run2[T0,T1,TRet](T0 arg0, T1 arg1) 

답변

0

잘못된 수식으로 인해 예외가 발생했습니다.

수동으로 데이터 유효성 검사를 먼저 만들고 올바르게 작동하기 시작할 때까지 수정하십시오. 나는 항상 그렇게합니다. 수동 (목록 시나리오를 사용하여 데이터 유효성 검사에) 잘못된 공식을 입력 엑셀에서 가장 일반적인 메시지는 다음과 같습니다

The list source must be a delimited list or a reference to a single row or column.

이 자습서를 살펴 보자, 그들은 당신이 Excel에서 목록을 사용하여 검증의 개념을 이해하는 데 도움이 될 수 있습니다 :

Apply data validation to cells - office.microsoft.com

Excel Data Validation Introduction - contextures.com

관련 문제