2014-04-30 5 views
0

I가 Excel 통합 문서에서 여러 시트에 다음 수식 :엑셀 잘못이 동적으로 기반으로 수식을 계산 정의 시트

=SUM(SUMIFS(INDIRECT(CONCATENATE("'",REPLACE(CELL("filename"),1,FIND("]",CELL("filename")),"")," HR","'!$e:$e")),INDIRECT(CONCATENATE("'",REPLACE(CELL("filename"),1,FIND("]",CELL("filename")),"")," HR","'!$q:$q")),I$13,INDIRECT(CONCATENATE("'",REPLACE(CELL("filename"),1,FIND("]",CELL("filename")),"")," HR","'!$j:$j")),{"שעון","בתפקיד","עבודה מהבית"})) 

공식 그것에 문자열 "HR"을 연결합니다, 현재 시트의 이름을 사용하고 연결된 문자열로 명명 된 시트의 셀 범위로 이동합니다. 데이터에 대해 몇 가지 계산을 수행하고 값을 반환합니다.

"동일한"휘발성 수식을 포함하는 다른 시트의 셀은 다른 시트에 나타날 값을 표시합니다. 올바른 값을 보려면 해당 시트에 수식 상자 중 하나만 입력해야하고 Enter 키를 누르면 평가가 올바르게됩니다.

나는 공식 평가를 시도했고 이론적으로 모든 시트에 올바른 계산 과정을 보여 주었다.

제안 사항? 수식 정확성과 관련이없는 평가 문제 일 수 있습니까?

+0

계산 설정이 수동이 아닌 자동인지 확인 했습니까? –

+0

네, 제가 제일 먼저 했어요. –

답변

1

참조가 제공되지 않은 경우 CELL이 현재 셀의 정보를 반환하지만 예상하지는 않습니다. CELL은 ACTIVE 셀 (계산시 활성화 된 셀)을 기반으로 값을 반환합니다. 셀이 다시 계산 될 때마다 활성 셀 일 때 다른 시트에있을 수 있습니다.

이 동작을 보려면 =CELL("address")&" "&TEXT(NOW(),"hh:mm ss") NOW가 휘발성이므로 셀을 편집 할 때마다 셀이 다시 계산됩니다. 다른 셀을 편집하면 해당 셀의 주소와 계산 된 시간이 표시됩니다.

거의 항상 참조 값을 포함하고자합니다. 예 : CELL("filename",A1) 예상되는 동작을 얻으려면 현재 셀에 대한 상대 참조 만 사용하면됩니다.

+0

정확히 - Spot on! +1 –

+0

완벽한 솔루션 .. 감사합니다! –