Lo comentado por Doppler permite bloquear rangos, por ejemplo cuando estamos diseñando una hoja y tenemos títulos o columnas con fórmulas que no queremos que se modifiquen accidentalmente.
Pero yo entendí que necesitas bloquear una columna luego de ingresar un dato... es decir ya no en etapa de diseño de la hoja sino de llenado.
Si esto es así, y como Excel deja toda la hoja bloqueada de modo predeterminado, necesitas desbloquear esa columna (desde menú Formato, quitar tilde a Bloquear) . Luego proteger la hoja (tal lo explicado en respuesta anterior).
Y una macro que controle cuándo le ingresas un dato a esa columna.
Con ALT + F11 entras al Editor de macros. Desde el panel a tu izquierda (Microsoft Excel Objetos) seleccioná con doble clic la HOJA donde vas a trabajar y allí copiá este código:
Private Sub Worksheet_Change(ByVal Target As Range)
'x Elsamatilde
'controla el ingreso de datos en col E ----- AJUSTAR COL
If Target.Column = 5 And Target.Count = 1 Then
'si no se está borrando un rango de celdas
If Target.Value <> "" Then
'se desprotege, se bloquea la col y se vuelve a proteger
ActiveSheet.Unprotect "tu_clave" 'AJUSTAR CLAVE
Target.EntireColumn.Locked = True
ActiveSheet.Protect "tu_clave" 'AJUSTAR CLAVE
End If
End If
End Sub
La clave es opcional. Si proteges tu hoja sin clave en la instrucción tampoco la necesitas. Ajustá la col deseada y probala.
Sdos y no olvides valorar la respuesta (Excelente o buena) si el tema queda resuelto.