Saltar al contenido

Indice matricial


Hbarreto

Recommended Posts

publicado

Short!

Buenas a todos, no sé si alguien ya tuvo la necesidad de esto, pero necesito crear un indice en matriz como el que pegué aquí pero con formulas no VBA por favor, si hay forma de poder indicar el largo y los espacios vacíos y perdón si es un caso que ya fue resuelto por alguien.

En una celda el largo del indice Ejemplo de este caso 12

En otra celda (si se puede) los espacios en vacíos intermedios Ejemplo para este caso 3

={1\""\""\""\2\""\""\""\3\""\""\""\4\""\""\""\5\""\""\""\6\""\""\""\7\""\""\""\8\""\""\""\9\""\""\""\10\""\""\""\11\""\""\""\12}

Muchas gracias a todos de antemano!

Saludos desde Paraguay!

publicado

Muchas gracias @Oscar_MRFes lo que estaba necesitando excelente solución, ahora me toca estudiar tu solución!

Habría manera de hacer eso mismo pero que me de una matriz desbordaba como resultado?

Saludos desde Paraguay!

publicado

Hola,

@Hbarreto, no estoy seguro de si es lo que buscas, pero suponiendo que el largo esté en A1 y los espacios vacíos en A2, prueba esta fórmula:

=SI(ENTERO(SECUENCIA(A1*(A2+1);;1;1/(A2+1)))=SECUENCIA(A1*(A2+1);;1;1/(A2+1));SECUENCIA(A1*(A2+1);;1;1/(A2+1));"")

Saludos,

publicado

Perdón por si no me hice entender bien @Victor7 tu solución es la que estaba buscando, a esto me refería con resultado como matriz desbordada.

Que sorprendente manera de usar la función secuencia! Muchas gracias!

Saludos desde Paraguay!

publicado

Hola,

Una observación que se debe tener en cuenta dependiendo de las necesidades del resultado.

Los resultado de Victor y Oscar son NUMEROS

El resulado de John son TEXTOS

Estaba estudiando la solución y luego vi la de victor, que se puede recortar un poco con LET

=LET(Numeros,SECUENCIA(A1*(A2+1),,1,1/(A2+1)),SI(ENTERO(Numeros)=Numeros,Numeros,""))
=LET(Numeros,SECUENCIA(C2*E2+C2-E2,,0)/C2*E2+1,SI(RESIDUO((Numeros),1)=0,(Numeros),""))

Victor la trabajo con ENTERO y yo la trabaje con RESIDUO, y llegamos a lo mismo

publicado

¡ Saludos @GabrielRaigosa !

Hace 4 horas, GabrielRaigosa dijo:

El resultado de John son TEXTOS

Si se requiere con números... basta hacer un "pequeño" ajuste:

=SI.ERROR(--DIVIDIRTEXTO(UNIRCADENAS(REPETIR(" ";1+E2);;SECUENCIA(C2));;" ");"")

Tal cual como has comentado, depende de las necesidades del consultante. 

De igual forma, por diversión, dejo otra más:

=LET(e;1+E2;n;SECUENCIA(C2*e-E2)-1;SI(RESIDUO(n;e);"";1+ENTERO(n/e)))

Y... reduciendo un poco la ya propuesta:

=LET(e;1+E2;n;SECUENCIA(C2*e-E2;;;1/e);SI(ENTERO(n)=n;n;""))

¡Bendiciones!

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.