Ordenar Celdas por formato

10/11/2008 - 20:42 por lecontreras | Informe spam
Deseo saber si se pueden ordenar las celdas por formato, es decir que si
tengo algunas celdas con relleno "anarillo" por ejemplo, si puedo de alguna
manera ordenar "por color", Mucahs gracias
 

Leer las respuestas

#1 Héctor Miguel
11/11/2008 - 03:31 | Informe spam
hola, 'anonimo/a' !

Deseo saber si se pueden ordenar las celdas por formato
es decir que si tengo algunas celdas con relleno "anarillo" por ejemplo
si puedo de alguna manera ordenar "por color"...



en la version 2007 se agrega la posibilidad de usar colores como criterio de orden/autofiltros/...
para las versiones anteriores necesitas utilizar codigo/vba/... o...
podrias definir nombres usando macro-funciones de excel4 (p.e.) en una columna auxiliar en cada fila con formato

OJO: de todas formas toma en cuenta que no existe evento que detecte un "simple" cambio de formato en las celdas

te paso una forma de hacerlo y si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

(p.e.) suponiendo que tu listado esta en las columna A:D con los titulos/autofiltros en la fila 1...
a) agrega un titulo para ordenar/filtrar en la columna E y necesitas revisar el color de relleno en la columna A
b) selecciona la celda E2 <= OJO es importante cual sea la celda activa para definir el nombre...
c) define un nombre (insertar / nombre / definir...) p.e. MiCondicion
d) usa la siguiente formula en el campo de se refiere a: -> =indicar.celda(13+0*hoy(),!a2)
e) (todavia en E2 como celda activa) pulsa {F3} -> selecciona el nombre definido -> pulsa {enter}
-> OJO: si tu excel es en ingles... deberas cambiar la formula por: -> =get.cell(13+0*now(),!a2) <= OJO
si tu excel es en otro idioma... (habra que averiguar la traduccion correcta)
-> nota el signo ! y la referencia relativa a la celda a la izquierda [A2] de la seleccion activa [E2]
la expresion +0*hoy() ES para volver volatil el nombre asignado
f) copias la formula desde E2 hasta E_n y usas esta columna para las ordenaciones/autofiltros/...
-> toma en cuenta que deberas atender a los valores devueltos por la macro-funcion indicar.celda(...)
segun la caracteristica consultada (si es 13 -color del relleno-) por si requieres de alguna condicion especifica (p.e.)
solo cuando el color de relleno sea rojo... -> =indicar.celda(13+0*hoy(),!a2)=3

-> otras opciones para obtener los formatos (hay 53 caracteristicas disponibles) son...
13 - color fondo
20 - negrita
21 - italica
22 - subrayado
24 - color del texto
22 - subrayado
38 - color de superficie (fore-ground) cuando esta combinado
39 - color de fondo (back-ground) cuando esta combinado

IMPORTANTE: toma nota que este tipo de nombres puede ser catastrofico en versiones anteriores a 2002/xp...
-> cuando copias celdas que los usan a otras hojas/libros

Preguntas similares