O que você descreve não pode ser feito sem o VBA, se você quiser que as duas células sejam editáveis.
Como você descobriu, referenciar essas fórmulas umas às outras cria referências circulares. Mesmo que funcionasse, assim que você selecionasse um valor na lista suspensa, qualquer fórmula seria substituída.
Assim, o VBA é sua única opção. Se as células estiverem em duas folhas diferentes, o código para isso poderia ser assim:
No módulo de folha da folha1:
Private Sub Worksheet_Change(ByVal Target As Range)
' monitor cell A1
If Not Intersect(Target, Range("A1")) Is Nothing Then
Application.EnableEvents = False 'prevent endless loop of events
' copy selected value to Sheet2, cell b1
ThisWorkbook.Worksheets("Sheet2").Range("B1") = Range("A1")
Application.EnableEvents = True
End If
End Sub
No módulo de folha da folha2
Private Sub Worksheet_Change(ByVal Target As Range)
' monitor cell B1 on sheet 2
If Not Intersect(Target, Range("B1")) Is Nothing Then
Application.EnableEvents = False 'prevent endless loop of events
' copy selected value to Sheet1, cell A1
ThisWorkbook.Worksheets("Sheet1").Range("A1") = Range("B1")
Application.EnableEvents = True
End If
End Sub