Você está recebendo uma referência circular porque a célula contém apenas uma informação. Atualmente, usando a linha 3 como exemplo, o AD3 contém um valor (digamos, "Olá"). Assim que você tentar colocar uma função, o AD3 agora contém a função e o "Hello" desapareceu completamente. Agora ele continuará tentando acessar a função referenciando AD3 infinitamente.
Seria melhor usar uma coluna de ajuda para isso, se quiser usar uma fórmula, caso contrário, será necessário codificá-la. Pessoalmente, eu adicionaria uma nova coluna AE, ocultaria a coluna AD e usaria a fórmula que você usou na AE.
Outras opções são executar uma macro VBA, algo assim:
Sub FillBlanksFromI()
Dim j
For j = 1 To FindLastRow("AD")
If IsEmpty(Range("AD" & j).Value) Then
Range("AD" & j).Value = Range("I" & j).Value
End If
Next j
End Sub
Function FindLastRow(col As String) As Long
Dim lastRow As Long
lastRow = ActiveSheet.Range(col & Rows.Count).End(xlUp).Row
FindLastRow = lastRow
End Function
... que irá preencher todos os campos em branco com o valor de I. Isso NÃO será atualizado automaticamente e só funcionará uma vez.
Como alternativa, você precisa codificar cada função em cada célula para ser o valor ou =I3