2013-09-24 4 views
0

이것은 스택 오버플로에 대한 나의 첫 번째 게시물입니다. 나는이 사이트를 여러 번 VBA 질문과 함께 사용했으며 대부분 찾을 수있었습니다. 대답. 그러나 이번에는 나를 도와주는 어떤 것도 찾을 수 없다는 것을 알게되었습니다. 나는 여러 각도에서이 문제를 찾아 내려고 노력했는데 그것을 이해하는 것처럼 보이지 않습니다. 하나의 통합 문서를 사용하여 올바르게이 SUMIFS 코드를 얻었지만 두 개는 문제가 있습니다. 두 시트 "ActiveHedge.xlsm"와 "LiveDataFeed.xlsm"이며, 여기에 내 코드 :SUMIFS 두 개의 통합 문서를 사용하여 - 런타임 오류 "13"

Sub Call_LiveDataFeed() 
Workbooks.Open Filename:="Z:\Users\toms\Desktop\LiveDataFeed.xlsm" 
End Sub 
Sub CreateFNMA_MonthlyCoupons() 
Workbooks("LiveDataFeed.xlsm").Activate 
Range("D7").Formula = _ 
    "=SUMIFS('[ActiveHedge.xlsm]Active Hedge'!$I:$I,'[ActiveHedge.xlsm]Active Hedge'!$H:$H,">="&U9,'[ActiveHedge.xlsm]Active Hedge'!$I:$I,"<="&V9,'[ActiveHedge.xlsm]Active Hedge'!$K:$K,"<"&C5-14)" 

그래서,이 기준에서 셀 참조하기 전에 & 사용으로 인해 소수 인 처음 두 기준의 범위가 "LiveDataFeed.xlsm"시트에서 변경되며 최종 기준은 셀에 입력 된 날짜 (마이너스 14 일)입니다. 입력 한 날짜도 변경됩니다.

위에서 입력 한 SUMIFS 함수는 "LiveDataSheet.xlsm"통합 문서의 워크 시트에 직접 입력 한 함수로 완벽하게 작동합니다. 그러나 VBA에 넣을 때 런타임 오류 "13"이 있습니다. 하나의 통합 문서를 사용하여이 문제에 대한 내 해결책은 단순히 내> =, < = 및 < ... 이것은 지금 작동하지 않습니다 ... 어떤 도움을 많이 주시면 감사하겠습니다!

답변

0

당신이 때문에 수식의 끝 부분에 따옴표와 혼동하지 그들을 두 번해야하는 VBA에서 따옴표를 포함하는 공식, 즉

Range("D7").Formula = _ 
    "=SUMIFS('[ActiveHedge.xlsm]Active Hedge'!$I:$I,'[ActiveHedge.xlsm]Active Hedge'!$H:$H,"">=""&U9,'[ActiveHedge.xlsm]Active Hedge'!$I:$I,""<=""&V9,'[ActiveHedge.xlsm]Active Hedge'!$K:$K,""<""&C5-14)" 
+0

이있을 때 난 사실이 시도했습니다 하지만 0의 합계를 제공합니다. –

+0

OK,하지만 아마도 결과가 나온만큼 수식이 "작동 중"이라는 것을 의미합니다. 귀하의 기준 범위 중 하나가 합계 범위 (열 I)와 동일합니다 - 이상하게 보입니다, 정확합니까, H일까요? –

+0

합계 범위는 합계 값이 될 열 I입니다. 기준 1, 10 진수 인 열 H 및 날짜 인 열 K의 두 가지 기준 범위가 있습니다. –