Como mencionado nos comentários, não há como fazer isso com fórmulas. Você pode fazê-lo com uma macro OU pode reestruturar toda a planilha para calcular os valores de cada data com base na avaliação do conjunto de dados original.
Primeiro, verifique se sua fórmula em B5
é absoluta. Isto irá mantê-lo bloqueado em uma referência a C3
, mesmo quando é copiado / colado em outro lugar.
Relativo: =C3
Absolute: =$C$3
Em seguida, o código abaixo moverá A5:B5
para baixo, copiará suas fórmulas para cima e, em seguida, definirá seu valor para o valor atual em vez de uma fórmula.
Sub MoveDownA5B5()
Range("A5:B5").Insert xlDown, xlFormatFromLeftOrAbove
Range("A6:B6").Copy Range("A5:B5")
Range("A6:B6") = Range("A6:B6").Value
End Sub
No que diz respeito a como esse código é executado, cabe a você. Você pode fazer um botão ou adicionar um gatilho automático ou o que quiser. Você pode ter que adaptá-lo às suas necessidades, mas isso responde ao cerne da sua pergunta.