No estoy seguro de si hay una manera de hacerlo mientras escribe. Creo que excel generalmente estira la vista de celda para mostrar todo el texto antes de que se active el evento worksheet_change.
Este código cambiará el tamaño de la columna después de haber cambiado y movió el objetivo a un nuevo rango. Colóquelo en el módulo de la hoja de trabajo.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim nextTarget As Range
Set nextTarget = Range(Selection.Address) 'store the next range the user selects
Target.Columns.Select 'autofit requires columns to be selected
Target.Columns.AutoFit
nextTarget.Select
End Sub
Si su simplemente mirando a hacerlo por una columna en particular lo que se necesita para comprobar la columna de destino así:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim nextTarget As Range
Set nextTarget = Range(Selection.Address) 'store the next range the user selects
If Target.Column = 1 Then
Target.Columns.Select 'autofit requires columns to be selected
Target.Columns.AutoFit
nextTarget.Select
End If
End Sub
No puede tener autofit * as * tipea, pero puede tener autoajuste tan pronto como termine de escribir y salir de la celda. –