NO uses más estas Dos Funciones en Excel (Estas Alternativas son Mejores)

Поділитися
Вставка
  • Опубліковано 1 чер 2024
  • Referencia archivo: Workbook 1382
    Clic aquí para descargar el libro de trabajo de Excel: www.excelhechofacil.com/p/des...
    Con frecuencia pensamos que las fórmulas (anidación de una o varias funciones) son siempre eficientes. La verdad dista mucho de la realidad; en la práctica muchas fórmulas son rápidas y eficientes con pocos datos de entrada (inputs), pero cuando se someten a muchos datos (varias decenas de miles de filas) algunas consumen más recursos de lo esperado. Un ejemplo claro es combinar dos funciones asesinas de Excel (REDUCE & APILARV); trabajando de manera independiente y aisladas son muy eficientes, pero nada más combinarlas y colocar un input muy grande y todo Excel se ralentiza, APILARV y APILARH usan mucha memoria para realizar movimientos en el Array, y entre mas grande el Array mas demorado es el movimiento, a esto súmale colocarla dentro de una función de iteración ¡Todo se vuelve lento! En este video te doy varias alternativas para que no combines estas dos funciones. Espero te guste el video. Gracias a Leonard Ochea “Leo Rumano” por la solución mas veloz.
    Tutorial para descargar los archivos de Excel Hecho Fácil: • Como Descargar Archivo...
    Inicia la membresía al canal: / @excelhechofacil
    Videos para miembros: • * SOLO PARA MIEMBROS *
    ¿Quieres patrocinar este proyecto? Cómprame un café aquí: www.excelhechofacil.com/p/rega...
    Te estaré muy agradecido.
    #Excel #TrucosExcel #FormulasExcel

КОМЕНТАРІ • 25

  • @tomasevangeliomartinez1522
    @tomasevangeliomartinez1522 29 днів тому +1

    Vídeo tutorial súper interesante para comprobar la eficiencia de distintas funciones y ser conscientes de que el rendimiento de los recursos se ve considerablemente afectado dependiendo de la utilización de unas u otras más o menos óptimas.
    Fuerte abrazo desde España parcero!!!

  • @nednavarrete
    @nednavarrete Місяць тому +3

    REDUCE+VSTACK, eran mi par de funciones preferidas, para resolución de muchos problemas. por ser tan simple de usar. Solo me quedara usarla para data pequeña, donde no se sienta mucho el rendimiento. Habrá que usar las alternativas que muestras y las que hubiera.
    Excelente explicación Andres , como siempre. Un abrazo, gracias por compartir.

    • @ExcelHechoFacil
      @ExcelHechoFacil  Місяць тому

      Muchas gracias Ned! Me alegra que te pases por el canal, gracias de corazón. La Fx de Leo está muy rápida. Saludos amigo.

  • @miguelpizzi5171
    @miguelpizzi5171 Місяць тому +2

    Lo felicito MAESTRO 👍 excelente e instructivo video,lo felicito señor Moncada 👍👍👍👍👍👍👍👍👍👍

    • @ExcelHechoFacil
      @ExcelHechoFacil  Місяць тому

      Muchas gracias Miguel, espero que todo te haya gustado. Saludos amigo.

  • @LEO_rumano
    @LEO_rumano Місяць тому +2

    Yo todavía creo que en un futuro próximo , esa clase de problemas se puedan solucionar solo usando la función MAP ,(sin REDUCE y APILANDO CADA ITERACION) , iterando cada fila y DEVOLVER UN VECTOR HORIZONTAL POR CADA ITERACION (lo digo porque se que es posible , los de GOOGLE lo tienen asi y funciona sin problemas ) .
    Las explicaciones , a tope de detalles , como siempre . Eres una maquina !

    • @ExcelHechoFacil
      @ExcelHechoFacil  Місяць тому +1

      Ojalá algún día las funciones de interacción a excepción de "reduce con trucos" arrojen Arrays multidimensional. Gracias amigo, tu fx es muy veloz. La mejor de las tres. Un abrazo Leo parcero.

    • @sofiafisacvarela2070
      @sofiafisacvarela2070 Місяць тому +1

      Buenas Leo, pero cómo haces eso,? la función map sólo se puede utilizar por una columna no con varias, no? por favor nos puedes dejar tu fórmula detallada? muchas gracias de antemano

    • @LEO_rumano
      @LEO_rumano 29 днів тому

      ​@@sofiafisacvarela2070 , fácil . La función MAP admite , si se necesita , varias columnas(matrices , vectores ) de entrada , pero en este caso el mapeo lo hacemos por solo una columna , pero una columna de índices , bajo cuales vamos a extraer toda una fila (con INDICE)
      Te pongo un ejemplo sobre la misma estructura de los datos del video , simplemente que la rezumo hasta la fila 100
      =MAP(A2:A100;LAMBDA(a;TOROW(SORT(TOCOL(B1:G1);TOCOL(INDICE(B2:G100;a;0));1))))
      Mi separador de argumentos es el punto y coma , si el suyo es la coma , cambia esto en la formulación . También uso la versión en Español .
      Se hace un MAPeo a la secuencia de números dada por el rango A2:A100 (1 , 2 , 3 ...... 99 ) Estos datos se asigna con el LAMBDA a la variable "a" (que indica el numero de fila de datos a analizar . Con la función INDICE ( B2:G100; a ; 0) se trae toda la fila correspondiente al numero "a" y se ordena la cabecera B1:G1 , bajo estos números de esta fila . He tenido que hacer unas pequeños truquitos en transponer las filas en columnas ya que en Google Sheet no hay una función ORDENARPOR como en EXCEL . La función que ordena en Google Sheet es SORT y solo puede ordenar por COLUMNA , por esto modifico las filas en columnas con TOCOL y luego el resultado lo muestro en FILA con TOROW .
      Este mapeo con una devolución de mas de un elemento por fila , en excel (todavía) no se puede conseguir y para esto se recurre al parche de REDUCE con un APILAR en vertical que como bien lo explica Andres , gasta bastante recursos cuando se trata de rangos mas grandes de datos .
      Si se quiere algo mas dinámico
      =LET(d;B2:G100;c;B1:G1;MAP(SEQUENCE(FILAS(d));LAMBDA(a;TOROW(SORT(TOCOL(c);TOCOL(INDICE(d;a;0));1)))))
      d => el rango de datos
      c => el rango de cabecera (deben tener el mismo numero de columnas)
      Espero que se me ha entendido . Saludos !

  • @eduardoelizalde3600
    @eduardoelizalde3600 Місяць тому

    ¡Muchas muchas, Muchísimas gracias !!

    • @ExcelHechoFacil
      @ExcelHechoFacil  Місяць тому

      Muchas gracias Eduardo, de corazón muchas gracias por tremendo detalle y aprecio a mi trabajo y el proyecto. Desde la distancia hasta México un abrazo fuerte. Saludos cordiales.

  • @sofiafisacvarela2070
    @sofiafisacvarela2070 Місяць тому +1

    Pues no sé por qué pero a mí no me funciona ninguna función he probado a reducir la matriz de entrada a 500 filas por si pesaba muchísimo y me ordenador no era capaz pero aún así no me funciona pero en teoría tengo todas las funciones porque utilizo office 365, ¿por qué puede ser?
    Agradeceríamos que detallarais la versión de Leo Rumano (para los que somos mucho más inexpertos y no sabemos cómo aplicarla)

  • @huashor.p.9304
    @huashor.p.9304 Місяць тому +2

    👏👏👏👌

  • @MateFast_Oficial
    @MateFast_Oficial Місяць тому +2

    excelente video

  • @jorge.briceno
    @jorge.briceno Місяць тому

    Hola Andrés, estoy en la ciudad de Cúcuta, ¿usted ofrece un programa de formación presencial en Excel Avanzado?

    • @ExcelHechoFacil
      @ExcelHechoFacil  Місяць тому +1

      Este año en septiembre es la segunda formación, aun no la organizo. Virtual dependiendo de los temas a tratar. Si gustas me envías un correo y te dejo información. Saludos.

    • @jorge.briceno
      @jorge.briceno Місяць тому

      ✅ Enviado

  • @jagilren
    @jagilren 17 днів тому

    Andres hola, tengo en la Columna A 100 registros, pero en algunas filas está vacío.
    Uso esta formula en la Celda B1,
    =LET(matriz,A1:A1000,filaActual,FILA(),BYROW(matriz,LAMBDA(v,SI(v="",INDICE(A1:A20,SI(FILA()=1,1,FILA()-1)),v))))
    Para rellenar los vacíos con el elemento inmediatamente anterior que no sea vació, pero siempre se me rellena con el dato de la celda A1.
    Me podrías ayudar con la corrección de esta formula
    Muchas gracias

    • @ExcelHechoFacil
      @ExcelHechoFacil  2 дні тому

      Aqui la respuesta a tu pregunta: ua-cam.com/video/0ODv2LDPVDo/v-deo.html Saludos y espero te sirva.

  • @themixhetlcave
    @themixhetlcave Місяць тому

    Maldición... no entiendo nada.
    Esto solo me dice que debo estudiar más...

    • @ExcelHechoFacil
      @ExcelHechoFacil  Місяць тому

      Ánimo! Ánimo! Ánimo! Intenta practicar un poco. Saludos y cualquier pregunta que tengas con gusto coméntala. Un abrazo.

  • @jersonm9
    @jersonm9 Місяць тому

    Maestro de maestros te tengo un problema: Tengo una base de transacciones bancarias con las siguientes columnas: Banco, Numero de cuenta, Fecha de transacción, (hay varias trasacciones en un mismo día) valor débito, valor credito. Supon que sean 5 bancos diferentes con 5 cuentas cada banco. En la hoja dos esta el saldo inicial de cada cuenta bancaria. Como hallo el saldo acumulado de cada transacción, es decir por cada fila de registro de la base teniendo en cuenta el orden del dia segun la fecha, la cuenta, el banco y el saldo inicial con el empieza cada cuenta que esta en la segunda hoja. Una columna llamado saldo creada al lado de esta tabla que muestra el saldo que va quedando por cada transacción efectuada. Sumando o restando al saldo dependiendo si es un debito o crédito. Vi que una posible solución es con scan, let y posiblemente archivo makarray pero despues de varias semanas me resultó imposible anidarlas. Ayuda pls. Gracias de antemano, eres un genio!