Hasta donde yo entiendo, la configuración no tiene nada que ver con la forma en que metes el código.

Si tu configuración es España (Coma decimal) y guardas el número 2,33 y abres ese archivo en un sistema configurado para México (Punto decimal), aparece 2.33.

Ahora, lo que to entiendo que sucede es que estas capturando con coma decimal dentro de una configuración que usa punto decimal, es decir, no estas capturando números, sino texto.

Código que se me ocurre:

Option Explicit

Function MeteNumero(eColumna As Integer, eFila As Integer)
   Dim oHoja, Celda As Object

   oHoja = ThisComponent.getCurrentController.getActiveSheet()
   oCelda = oHoja.getCellByP0sition(eColumna, eFila)
'En caso de que el contenido de la celda no sea un numero,
   'mandamos un mensaje de error.
   Select Case oCelda.Type
       Case com.sun.star.table.CellContentType.EMPTY
           MsgBox "La celda esta vacía"
       Case com.sun.star.table.CellContentType.TEXT
           MsgBox "Debe escribir un numero"
       Case com.sun.star.table.CellContentType.FORMULA
           MsgBox "La celda ccntiene una fórmula, escriba un numero"
       Case com.sun.star.table.CellContentType.VALUE
           tufuncion()
   End Select
End Sub

Alejandro Rivas Morán escribió:
Saludos.

TEngo una macro que captura tres numeros y calcula porcentajes para cada uno. Luego los suma y el total se inserta en una celda.
El problema consiste en la configuración regional. Si usa , -coma- decimal, el 
total en la celda sale sin puntos -Numero Entero-; pero si usa  . -punto- todo 
sale bien.


He logrado agregar un código así: inserto un número decimal como 2.55 y lo 
recupero de nuevo -como cadena GetString()-.  Le localizo la coma y si la tiene 
suspende la macro -por ahora- (aqui quiero poner código para corregir la 
configuracion);  y si no la tiene entonces sigue el proceso.


Soluciono el problema cambiando la configuracion regional del OpenOffice en 
Herramientas>Opciones>Configuracion de idioma>idiomas>  Ahi cambio a:
[Interfaz de usuario]    Español
[Esquema local]          Español El Salvador
[Moneda predeterminada]  USD $ Estados Unidos.

Ahora bien, la reducida experiencia no me deja crear un código para adjuntarlo y que corrija por medio de la macro la falla de la configuración . He buscado algunas informaciones pero no encuentro salida. POr ejemplo, hallé algo en http://api.openoffice.org/docs/common/ref/com/sun/star/lang/Locale.html pero no se como estructurarlo para meter esos cambios
La situación es que van en un archivo que se da a muchas personas.  Ellas los 
llevan a casa, realizan los llenados y lo devuelven.  Cada usuario a instalado 
el OpenOffice 2.x en su equipo.

Espero me colaboren con el código para hacer la correccion a la configuracion regional por macro.
Gracias anticipadas






---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



__________ Información de ESET NOD32 Antivirus, versión de la base de firmas de 
virus 3578 (20081103) __________

ESET NOD32 Antivirus ha comprobado este mensaje.
http://www.eset.com





--
J. Eduardo Moreno
TOKONHU de México
044 55 2748 4840


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Responder a