Con Visual Basic podemos modificar la configuración regional. Podemos crear macros en Excel que nos realicen esta tarea. De este modo, si trabajamos con aplicaciones que tienen configuración americana, podemos cambiarla con una macro, pegar los valores y volver a cambiar la configuración. Para poner separador decimal “.” y separador de miles “,”, tendremos que emplear el siguiente código:

Sub formato_americano()
    ' Macro para poner formato americano
    With Application
        .DecimalSeparator = "."
        .ThousandsSeparator = ","
        .UseSystemSeparators = False
    End With
End Sub

Es un excelente ejemplo de uso de Application. De forma análoga, si deseamos volver a la configuración europea, sólo debemos emplear los separadores del sistema:

Sub formato_europeo()
    ' Macro para volver al formato del sistema (europeo)
    With Application
        .UseSystemSeparators = True
    End With
End Sub

Todo esto también lo podemos hacer desde el menú Herramientas > Opciones > Internacional. Pero si creamos dos macros en nuestro libro personal y, personalizando los menús, asignamos dos botones a estas macros, podemos copiar y pegar datos desde SAS a Excel (por ejemplo) sin tener que jugar con los formatos de SAS; podemos tener perfectamente “tuneado” nuestro Excel.

Está feo que lo diga yo, pero este truco de Excel es impresionante y para todos aquellos que trabajamos con SAS o R es de gran utilidad. Si tenéis dudas o un trabajo a media jornada: rvaquerizo@analisisydecision.es. Saludos.