Esta pode não ser a fórmula mais eficiente, mas isso funciona
=IF(AND(ISBLANK(B3); ISBLANK(C3));
SUM(INDIRECT("F"&ROW()+1&":
F"&MATCH(TRUE; INDEX($B4:$B$16=""; 0); 0)+ROW()-1));
C3*2)
Explicação
AND(ISBLANK(B3); ISBLANK(C3)); detecta quando iniciar a fórmula da soma. Exige que ambas célula B3 e C3 estejam vazias (se você usar apenas C3 , então C4 e C5 também acionará a fórmula de soma, em vez de duplicar seu valor )
INDIRECT( ... ) forma o intervalo a ser usado no SUM
"F"&ROW()+1&": o intervalo começa em F e abaixo da linha atual (neste exemplo F4 )
F"&MATCH(TRUE; INDEX($B4:$B$16=""; 0); 0)+ROW()) e termina na linha F na próxima célula em branco na coluna B
Observação: lembre-se de que o intervalo começa e termina uma linha abaixo da linha atual. Observe também a posição dos sinais absolutos ( $ )
Mais explicações sobre MATCH(TRUE; INDEX($B4:$B$16=""; 0); 0)+ROW()-1
Eu encontrei a fórmula aqui
Primeiro, INDEX($B4:$B$16=""; 0) cria uma matriz, seja B4 = "" e B5 = "" e assim por diante. Você pode ver essa matriz colocando a fórmula na linha 1 em qualquer coluna e alterando 0 para ROW()-1 e arrastando a fórmula para baixo.
FALSE
FALSE
FALSE
TRUE
and so on...
Em seguida, MATCH(TRUE; ... ; 0) encontrará o primeiro TRUE , que é a primeira próxima linha em branco após esta linha (retornando a linha índice 3 )
No entanto, o resultado é o índice da matriz 3 , em vez de número da linha . Então, adicionamos o índice com a linha atual, 3 + 3 e voila! Temos o número da linha
da próxima linha em branco. Basta adicionar -1 para ter certeza de que estamos somando o intervalo correto de F4:F5 , não F4:F6 .