Vamos a repasar unas propiedades de la aplicación, de Excel, que nos pueden ser útiles en diferentes ocasiones.
Por ejemplo, cuando trabajamos con nuestras macros en entornos internacionales y nuestros compañeros de trabajo emplean una configuración decimal-miles de sistema distinto al nuestro.
Veremos en concreto, y entre otras, las propiedades:
Application.UseSystemSeparators
Application.DecimalSeparator
Application.ThousandsSeparator
La propiedad Application.UseSystemSeparators activa o desactiva el uso de los separadores del sistema.
Mientras que los otros dos:
Application.DecimalSeparator
Application.ThousandsSeparator
permiten personalizar los caracteres a emplear tanto para el separador de miles como para el decimal...
Otra propiedad interesante es la que nos permite cambiar el estio de referencia de celdas entre A1 y F1C1, la propiedad en cuestión es:
Application.ReferenceStyle
En un módulo estándar de nuestro explorador de proyecto VBA insertamos el siguiente código:
En mi caso parto de una configuración con:
Separador de miles un punto .
Separador decimal una coma ,
Vemos en dos imágenes el cambio producido al ejecutar nuestra macro:
Y en un otro paso:
Por ejemplo, cuando trabajamos con nuestras macros en entornos internacionales y nuestros compañeros de trabajo emplean una configuración decimal-miles de sistema distinto al nuestro.
Veremos en concreto, y entre otras, las propiedades:
Application.UseSystemSeparators
Application.DecimalSeparator
Application.ThousandsSeparator
La propiedad Application.UseSystemSeparators activa o desactiva el uso de los separadores del sistema.
Mientras que los otros dos:
Application.DecimalSeparator
Application.ThousandsSeparator
permiten personalizar los caracteres a emplear tanto para el separador de miles como para el decimal...
Otra propiedad interesante es la que nos permite cambiar el estio de referencia de celdas entre A1 y F1C1, la propiedad en cuestión es:
Application.ReferenceStyle
En un módulo estándar de nuestro explorador de proyecto VBA insertamos el siguiente código:
Sub SeparadoresDelSistema()
'vemos en un mesnaje el estilo de referencia en este momento
Dim strEstilo As String
If Application.ReferenceStyle = xlA1 Then
MsgBox "El estilo de referencia actual es A1"
Else
MsgBox "El estilo de referencia actual es F1C1"
End If
'cambio de estilo de referencia a F1C1
Application.ReferenceStyle = xlR1C1
'componemos texto informativo con los separadores actuales de nuestro equipo
Dim strDecimal As String, strMiles As String
strDecimal = Application.International(xlDecimalSeparator)
strMiles = Application.International(xlThousandsSeparator)
MsgBox "Antes del cambio " & vbCrLf & _
"El separador decimal actual es: " & strDecimal & vbCrLf & _
"El separdor de miles actual es: " & strMiles
'Cambiamos los separadores del sistema
With Application
'deshabilitamos los separadores
.UseSystemSeparators = False
'marcamos cuálkes son los separadores deseados
.DecimalSeparator = "."
.ThousandsSeparator = ","
End With
'para activar de nuevo los separadores del Sistema
Application.UseSystemSeparators = True
'componemos texto informativo con los separadores actuales
'tras el cambio en nuestro equipo
strDecimal = Application.International(xlDecimalSeparator)
strMiles = Application.International(xlThousandsSeparator)
MsgBox "Después del cambio " & vbCrLf & _
"El separador decimal actual es: " & strDecimal & vbCrLf & _
"El separdor de miles actual es: " & strMiles & vbCrLf & _
"El estilo de referencia es: F1C1"
'retornamos al estilo de referencia a A1
Application.ReferenceStyle = xlA1
End Sub
En mi caso parto de una configuración con:
Separador de miles un punto .
Separador decimal una coma ,
Vemos en dos imágenes el cambio producido al ejecutar nuestra macro:
Y en un otro paso:
Excel
via [EXCEL FORO: EJERCICIOS, EJEMPLOS, SOLUCIONES, DUDAS] [http://ift.tt/2xojbfD]
September 22, 2017 at 11:08AM
No hay comentarios.:
Publicar un comentario