[RESUELTO] leer el código del formato de celda de una Celda

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...
Responder
arivas_2005
Mensajes: 162
Registrado: Mié Nov 16, 2011 6:01 pm

[RESUELTO] leer el código del formato de celda de una Celda

Mensaje por arivas_2005 »

Saludos.

Necesito leer el codigo de formato que tiene cada celda en una hoja
(no cambiar, solo leer el código de formato)

he googleado y encuentro referencias que cqmbian el código de formato de la celda
Igual, una linea que lee el código de formato pero lo da en un número a partir de 0.
Ejemplo, para Estandar da 0, para texto da 100

Código: Seleccionar todo

Doc = ThisComponent
	Sheet = Doc.Sheets(0)
	Cell = Sheet.getCellByPosition(1,1)	
	MSGBOX Cell.NumberFormat
Lo que necesito es llegar a obtener "Estandar" en lugar de 0, obtener @ en lugar de 100
Es decir todo el código de formato de celda ( Ej #.##000 o DD/MNM/YY, etc)
En este enlace, encuentro como cambiarlo directamante en la celda
https://forum.openoffice.org/es/forum/v ... 21&t=10258
pero necesito solo leer el código de formato de celda completo
Gracias anticipadas
Última edición por fornelasa el Jue Jun 21, 2018 10:00 pm, editado 2 veces en total.
Razón: Poner correctamente resuelto más el icono
Libreoffice 4.7
Puppy slacko 6 y windows 7
Avatar de Usuario
mauricio
Mensajes: 6092
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: CDMX
Contactar:

Re: leer el codigo del formato de celda de una Celda

Mensaje por mauricio »

y... para ver si hay alguna alternativa... ¿para que requieres esto?...

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
FJCC-ES
Mensajes: 873
Registrado: Mié Mar 25, 2009 1:19 am
Ubicación: Colorado, USA

Re: leer el codigo del formato de celda de una Celda

Mensaje por FJCC-ES »

Código: Seleccionar todo

  oSheets = ThisComponent.getSheets()
  oHoja2 = oSheets.getByName("Hoja2")
  oCeldaA1 = oHoja2.getCellRangeByName("A1")
  
  nNumberFormat = oCeldaA1.NumberFormat

  oNumberFormats = ThisComponent.getNumberFormats()
  oFormato = oNumberFormats.getByKey(nNumberFormat)
  print oFormato.FormatString
arivas_2005
Mensajes: 162
Registrado: Mié Nov 16, 2011 6:01 pm

Re: leer el codigo del formato de celda de una Celda

Mensaje por arivas_2005 »

Gracias FJCC-ES por tan pronta ayuda :super:
Eso justamente es lo que necesito.

Mauricio.. es para revisar planillas de notas en calc, que usan en mi lugar de trabajo (innstitucion educativa).
Sucede que con frecuencia modifican los formatos de celdas y las macros de traspaso de notas no funcionan bien y
necesito detallarles las celdas que han alterado y corregirlas.

Gracias nuevamente. :D
Saludos.
Libreoffice 4.7
Puppy slacko 6 y windows 7
Responder