En la imagen que te envié se ve claramente que te devuelve el día no importa el formato de fecha.
Ahora, ¿seguro qué lo tuyo es una fecha? ¿No será un texto que parece una fecha? Fijate en qué margen se alinea o muestrame una imagen de esa col.
Con respecto a requiero que se adapte al rango que pegue entiendo que necesitas que esa fórmula se arrastre al resto de tu col AS.
Sub formulando()
'x Elsamatilde
'saber cuál es la última celda en U
x = Range("U" & Rows.Count).End(xlUp).Row
'cualquiera de las 2 instrucciones siguientes dejará la fórmula
Range("AS2").Formula = "=DAY(U2)"
'Range("AS2").FormulaR1C1 = "=DAY(RC[-24])"
'rellenar con esta fórmula hasta el último registro
Range("AS2").AutoFill Destination:=Range("AS2:AS" & x), Type:=xlFillDefault
End Sub
Observa que te dejé 2 tipos de instrucciones. Ambas válidas. Utiliza solo una de las 2.
El resultado de la macro se observará así:
En el video 15 de mi canal trato el tema funciones con VBA. Utilizando 'Formula', 'FormulaR1C1' o el resultado de las mismas.
https://www.youtube.com/watch?v=ZUr-h45bJAw
Sdos!