0인 단일 열의 인접한 셀 합산

0인 단일 열의 인접한 셀 합산

숫자 목록이 있습니다(한 열에 8780개의 값 - 아래에 샘플이 게시되어 있음). 그 중 일부는 <> 0이고 일부는 0입니다.

숫자 목록:
0
0
0
0
0,127227198
0
0
0,229366036
0,174893344
0
0,247079364
0
0,508165499 0,380252705
0,221018177
0,703514629
0,49 853953 0,891621276 1,795142292
0 0 0 0 1,405576577 0,965799766 0,347987496 0,15944612 0,087348148 0 0













<>0인 인접한 일련의 숫자에 대해 해당 셀 값을 요약하고 B열의 별도 셀에 합계를 추가하고 싶습니다. 어떻게 해야 합니까? B-열에서 if 함수의 조합을 사용할 수 있나요?

보시다시피 숫자 <> 0은 무작위로 나타나므로 앞이나 뒤의 행이 = 0인지 확인하고 뒤의 행이 <> 0이면 위의 숫자 합산을 시작해야 하는 일종의 공식이 필요하다고 생각합니다.

예를 들어 아래 숫자의 합을 하나의 셀에 추가하고 싶습니다.

1,405576577  
0,965799766  
0,347987496  
0,15944612  
0,087348148 

제가 받을 수 있는 도움에 정말 감사드립니다! 이것이 더 명확해지기를 바랍니다 :)

답변1

의 원본 데이터에 대해 A1:A25다음을 사용할 수 있습니다.

B1수식 입력줄에 붙여넣고 Ctrl+ Shift+를 눌러 다음 배열 수식을 입력 합니다 Enter.

=SUMPRODUCT((MIN(IF($A1:$A$25=0,ROW($A1:$A$25),ROW($A$26)))>ROW($A1:$A$25))*($A1:$A$25))

이 공식은 첫 번째 0 이전에 발생하는 A1 이하의 값을 합산합니다.

B2추가 조건( Ctrl+ Shift+ 사용 Enter) 을 사용하여 유사한 배열 수식을 입력 합니다 .

=IF(A1<>0,0,SUMPRODUCT((MIN(IF($A2:$A$25=0,ROW($A2:$A$25),ROW($A$26)))>ROW($A2:$A$25))*($A2:$A$25)))

여기에는 A 열 위의 0이 아닌 셀이 있는지 확인하는 조건이 있습니다. 0이 아닌 경우 0이 반환됩니다. 그렇지 않으면 다음 0 이전에 발생하는 값을 합산합니다.

견본:

여기에 이미지 설명을 입력하세요

관련 정보