Localizar dato repetido en hoja -Calc

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

Localizar dato repetido en hoja -Calc

Mensaje por arivas_2005 »

Saludos.

TEngo varias hojas con muchos numeros separados en grupos

NEcesito colorear los repetidos en los distintos grupos. Ya logré escribir el código que colorea el valor elegido cuando se repite.
Sucede que cuando hay muchos grupos de valores, se tarda bastante en hacer el pintado.

Entonces, tengo la espectativa si habría algún otro arreglo que tarde menos en el pintado de las celdas

Adjunto el archivo con el codigo y muestra de grupos de datos.

Mi agradecimiento
Adjuntos
MUESTRA_PINTAR_CELDAS_VALOR_IGUAL.ods
(26.32 KiB) Descargado 159 veces
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: Localizar dato repetido en hoja -Calc

Mensaje por mauricio »

¿Cuanto son "muchos grupos de valores"?, ¿cuanto es "bastante"?...

Los ciclos en Calc con Basic son costosos, es mucho mejor uses alternativas, se me ocurre, sin ver:

1) Usar formato condicional, sin macros
2) Usar formato condicional, con macros
3) Buscar por valores

En los tres casos, usando estilos

Si tu firma es correcta, intenta siempre usar la ultima estable

Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
arivas_2005
Mensajes: 162
Registrado: Mié Nov 16, 2011 6:01 pm

Re: Localizar dato repetido en hoja -Calc

Mensaje por arivas_2005 »

Mauricio, gracias por la orientacion.
Efectivamente, usando formato condicional mejora mucho el tiempo.
Extraje el primer ejemplo de su libro (Aprendiendo OOobasic) adaptandolo, según las indicaciones.

Ahora, paso al siguiente nivel. Resulta que se debe colorear uno de los fondos de números (repetidos) que van del 1 al 42.
Uno se colorea bien. Pero, manteniendo ese color, se debe aplicar el otro color a uno de los otros números, sin que el coloreado anterior se anule.

Aqui me he detenido, porque al aplicar el código que arreglé (del ejemplo 1 del libro), si colorea un numero, pero se decolora el otro ya aplicado antes (o será que algo no estoy haciendo correctamente?).

Con el segundo ejemplo (del libro), al parecer se pueden aplicar dos colores, pero la dificultad que tengo es la elección del color el cual no debe tener un orden preciso más que el que el usuario quiera aplicar(ya que se podrían llegar a colorear hasta 7 números (repetidos) distintos, según los casos de revisión -A decir: amarillo, verde, azul,...-).

Entonces, mi consulta sería: -- hay forma de aplicar un formato condicional (color de fondo) sin que se cambie el ya aplicado?.

Mis agradecimientos anticipados.
Libreoffice 4.7
Puppy slacko 6 y windows 7
Responder