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]