Supongo que lo borras en algun momento con Erase
(4249 * 18 * 2 (unicode)) * (promedio ... 20 caracteres
) = 3059280 = Casi 3 megas
4249 me suena un poco excesivo para tener en memoria con 18 strings
que guardas en esos strings? Podrias limitarlos a un tamaño maximo
Private Type Usuario
Nombre As String * 5
Apellido As String * 5
End Type
Supongo que liberarás la memoria de ese array UDT usando Erase no?