Bom dia,
Preciso que essa saída esteja em uma planilha separada, mas essencialmente o problema que estou tentando resolver pode ser explicado da seguinte maneira.
Estou tentando descobrir como calcular a média das células em uma coluna com o seguinte formato:
Na B2
Planilha2, gostaria de average(Sheet1!a2:a5)
, em B3
, average(Sheet1!a6:a9)
, em B4
, (Planilha1!a10:a13), etc.
Posso ter tornado isso muito mais complicado do que o necessário, mas minha ideia era usar a função Offset da seguinte maneira:
=AVERAGE(OFFSET(Sheet1!$a$2, 4*(ROW()-ROW(Sheet1!$a$2)), 0, 4, 1))
O que funcionou! No entanto, preciso de outra coluna para mostrar dados diferentes, mostrados abaixo:
=AVERAGE(OFFSET(Sheet1!$a$118, 4*(ROW()-ROW(Sheet1!$a$118)), 0, 4, 1))
O que me dá um erro de referência. Alguém pode me ajudar a entender por que isso não está funcionando? Uma solução fácil seria apreciada, mas uma explicação do porquê seria especialmente ótima!!
Responder1
Certo, usaremos uma fórmula diferente para a primeira -
=AVERAGE(INDEX(A:A,1+4*(ROW()-ROW($B$1))):INDEX(A:A,4*(ROW()-ROW($B$1)+1)))
O que isso faz é criar uma matriz para a média funcionar. Isso é feito encontrando a linha atual, subtraindo a linha de referência, adicionando um e multiplicando 4, para cada lado do intervalo. Use a fórmula de avaliação para vê-la em ação.
Digamos que você queira fazer isso de novo, mas começando na A118, que é o que acho que você está perguntando
=AVERAGE(INDEX(A118:A999,1+4*(ROW()-ROW($B$118))):INDEX(A118:A999,4*(ROW()-ROW($B$118)+1)))
Agora, isso exige que você trabalhe na linha 118, mas digamos que você queira apenas iniciar uma nova coluna na linha 1 -
=AVERAGE(INDEX(A118:A999,1+4*(ROW()-ROW($B$1))):INDEX(A118:A999,4*(ROW()-ROW($B$1)+1)))
Assim como o primeiro.