Enumerar registros en una columna

04/02/2005 - 21:27 por Mbaeijhapa | Informe spam
Hola amigos,
Por favor quisiera una respuesta al siguiente tema:
Tengo un rango de datos formados por dos columnas, en una tengo las ventas
realizadas, y en la otra tengo los clientes que compraron. Suponiendo que
filtre (por autofiltro) las ventas que se hicieron a un solo cliente, cómo
hago para que en la siguiente columna de al lado del rango analizado se
enumere automaticamente los registros filtrados ?. Ej.:
COL.A COL.B COL.C
F.1 Carlos 500.-
F.2 Jorge 300.-
F.3 Carlos 200.-
F.4 Jorge 400.-
F.N Jorge 200.-

Una vez filtrado por "Carlos":
COL.A COL.B COL.C
F.1 Carlos 500.- 1
F.3 Carlos 200.- 2

Cómo hago para que automaticamente se enumere correlativamente en la columna
"C" los datos filtrados ?
Se entiende ?
Muchas gracias.-
Mbaeijhapa

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
05/02/2005 - 01:53 | Informe spam
hola, Mbaeijhapa !

Mostrar la cita
suponiendo que incluyes los 'titulos' [y los desplegables de los autofiltros] en la fila 1
y que la lista 'se extiende' desde 'C2:C[n]'... 'autonumerala' con la siguiente formula =>matricial<=suma(1*(si(subtotales(3,desref($b$2,fila($b$2:b2)-fila($b$2),0)),1,0)))
-> la introduces en 'C2' con ctrl+may+enter y luego la copias hasta 'C[n]' <-
[toma en cuenta que 'mi' separador de argumentos es la coma ',' NO punto y coma ';']
cada vez que 'auto-filtres' la lista... la 'autonumeracion' se ajustara a las celdas visibles

saludos,
hector.
#2 raul_s
05/02/2005 - 09:27 | Informe spam
Héctor Miguel:

Tu formula funciona perfectamente bien (felicitaciones), no logro entender
por que funciona, en realidad no comprendo muy bien las matriciales. Puedes
explicarla un poco ???

Gracias Raul_S

"Héctor Miguel" escribió:

Mostrar la cita
#3 Héctor Miguel
06/02/2005 - 01:19 | Informe spam
hola, raul !

Mostrar la cita
hace como dos años 'tuve que' [intentar] 'explicar' una formula que propuse [muy] similar a la de ahora
la respuesta es 'la misma' [claro que 'adaptada' a la 'nueva' formula] ;)
espero no dejarte 'pior' en cuanto a matrices y formulas matriciales :))

si cualquier duda... ¿comentas?
saludos,
hector.
==suma(1*(si(subtotales(3,desref($b$2,fila($b$2:b2)-fila($b$2),0)),1,0)))

la parte central de la formula propuesta es la funcion desref como segundo argumento de la funcion subtotales
aunque la funcion subtotales 'trabaja' con matrices, NO 'permite' que esas matrices puedan ser 'manipuladas' en formulas
para lograr que subtotales devuelva una matriz manipulable, su segundo argumento ->debe ser<- desref
[es una tecnica que descubrio Laurent Longre alla por 1998, basado en un 'comportamiento no documentado' de desref]

dando por 'entendido' el uso de la funcion desref [y sus argumentos], 'partimos' de los siguientes 'valores entendidos'

1-. la funcion subtotales NO 'permite' la 'manipulacion' de la matriz con que 'trabaja' [a menos que se use]...
2.- la funcion desref [como su segundo argumento] 'devolvera' una matriz de celdas en el rango [siempre y cuando]...
3.- 'su' segundo argumento [filas_a_desplazar] debe ser [sea] una matriz, que 'significa' para desref [en este caso] que...
4.- 'su' primer argumento [la celda 'de partida'] 'ira bajando' por la matriz de celdas [del segundo agumento], y para que...
5.- el primer 'desplazamiento' de filas sea CERO =>que inicie en la misma celda 'de partida'<= [se debe restar 'ella misma']
6.- al segundo argumento [filas_a_desplazar] se 'complementa' con la resta de la fila de la '1er_celda_del_rango'.

'destripando' la parte 'central' de la formula [la funcion desref], se obtienen los siguientes 'parciales'
1.- 'b2' es la referencia a la celda 'de partida' [primer argumento]
2.- 'fila($b$2:b2)-fila($b$2)' [segundo argumento] 'devuelve' la matriz [de 'enteros'] por la que 'ira bajando' la celda 'de
partida'
fila($b$2:b2) 'devuelve' una matriz con los numeros de fila de las celdas 'pasadas' [como parte de] al segundo argumento
la parte 'final' [-fila($b$2)] se encarga de 'ajustar' para que el primer desplazamiento sea SIEMPRE CERO
3.- 0 [tercer argumento] 'hara' que la columna de 'desplazamiento' de la referencia sea LA MISMA

la matriz 'devuelta' por la funcion desref es ahora [por fin] 'manipulable' [como segundo argumento] por la funcion subtotales
la matriz que 'devuelve' la funcion subtotales 'muestra' unos o ceros [verdadero o falso] por cada fila [si esta filtrada o no]

'el resto' es...
1.- 'ver' si cada fila [de las celdas del rango] esta filtrada o no.
2.- 'sumar' una unidad por cada celda 'visible' y... ¡ FIN !!! ;)
#4 KL
06/02/2005 - 02:20 | Informe spam
Hola chicos,

Solo una cosa - creo q la formula

=SUMA(1*(SI(SUBTOTALES(3,DESREF($b$2,FILA($b$2:b2)-FILA($b$2),0)),1,0)))
...=> 72 caracteres

se puede depurar/acortarla un pelin:

=SUMA(SI(SUBTOTALES(3,DESREF($B$2,FILA($B$2:B2)-FILA($B$2),0)),1,0)) ...=>
68 caracteres

o bien

=SUMA(--(SUBTOTALES(3,DESREF($B$2,FILA($B$2:B2)-FILA($B$2),0))>0)) ...=> 66
caracteres

Saludos,
KL

"Héctor Miguel" wrote in message
news:uRiiXG%
Mostrar la cita
#5 Héctor Miguel
06/02/2005 - 07:08 | Informe spam
hola, chicos !

Mostrar la cita
[en realidad] si la matriz devuelta por subtotales ya es 'manipulable' [gracias al desref]...
no le hace falta ya ningun 'maquillaje' [puede sumar 0/1 o verdadero/falso]...
=suma(subtotales(3,desref($b$2,fila($b$2:b2)-fila($b$2),0))) => 60 caracteres ;)

saludos,
hector.
Ads by Google
Search Busqueda sugerida