No quedó claro si solo debe controlar la celda A5 o un rango. En el ejemplo que adjunto contemplé toda la col A (ajusta a tu criterio).
Dejé 2 ejemplos pero si vas a tener más casos debes completar tantos Case en el bucle SELECT CASE como textos tengas.
El siguiente código se coloca en el objeto HOJA donde vayas a introducir los datos.
Private Sub Worksheet_Change(ByVal Target As Range)
'x Elsamatilde
'se controla lo ingresado en col A
If Not Intersect(Target, Range("A:A")) Is Nothing Then
'según el texto será el formato para la celda contigua
Select Case Target.Value
Case Is = "DV" 'coloca general
Range("B" & Target.Row).NumberFormat = "General"
Case Is = "FEC" 'coloca fecha corta
Range("B" & Target.Row).NumberFormat = "m/d/yyyy"
End Select
End If
End Sub
Para obtener la sintaxis de otros formatos debes utilizar la grabadora de macros y asignar el formato deseado. Al detener la grabadora encontrarás en un módulo la instrucción.
Sdos y si todo quedó comprendido no olvides valorar la respuesta.