Actualizar fórmula matricial y algo más

Solo consultas sobre Funciones y Fórmulas Excel.

Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Compartir en:
     

Actualizar fí³rmula matricial y algo más

Notapor Jose L León Q » 10 Oct 2006 23:35

Estimados EXCELnautas

El archivo adjunto lo tomé de un libro que llegó a mis manos. El problema es que al cambiar el valor los monto no se actualizan. Esta hoja es interesante para los colegas y amigos contadores que requieren de valorar los inventarios por el Metodo del Promedio Ponderado.

Importante es que los diligentes expertos en fórmulas matriciales tengan la amabilidad de aclararme el problema o si hay alguna manera de evitar el uso de la fórmula matricial.

En dicho archivo explico con detalle. Si alguién desea agregar algo para hacer esta hoja más práctica bienvenida la solución.

Un gran saludo de este viejo usuario.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
Jose L León Q
Miembro Frecuente
Miembro Frecuente
 
Registrado: 27 Ene 2005 11:25
Ubicación: Venezuela

Re: Actualizar fí³rmula matricial y algo más

Notapor KL » 11 Oct 2006 09:27

Revisa el adjunto
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
KL
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Mar 2006 13:57
Ubicación: Madrid

Re: Actualizar fí³rmula matricial y algo más

Notapor Jose L León Q » 11 Oct 2006 20:32

Estimado KL

En verdad tus observaciones son EXCELentes, utilizar SUMAPRODUCTO no era lógico. Lo entiendo perfectamente. Mis respetos, sugiero a todos los EXCELnautas utilicen el modelo ya corregisdo que es bastante práctico.

Un gran saludo y gracias de este viejo usuario.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
Jose L León Q
Miembro Frecuente
Miembro Frecuente
 
Registrado: 27 Ene 2005 11:25
Ubicación: Venezuela

Notapor xpelos » 13 Oct 2006 08:10

Estimados colegas:
El tema del cálculo de inventarios (LIFO, FIFO, medio, etc.) es para mí­ un tema muy interesante.
Veo que en la celda "D6" se ha propuesto una alternativa curios.
Jose L León Q parece ser un "forofo" de "SUMAPRODUCTO", pero parecen complejas:
D6 =SUMAPRODUCTO(ESNUMERO(HALLAR(DERECHA($A6;8);Datos!$B$5:$B$14))*Datos!$D$5:$D$14)

A lo que KL proponí­a:
D6 =SUMAR.SI(Datos!$B$5:$B$14;"*"&DERECHA($A6;8)&"*";Datos!$D$5:$D$14)

Y yo hubiera propuesto esto:
D6 =SUMAPRODUCTO(--(Datos!B5:B14=Inv.Prom!A6);Datos!D5:D14)

De todas formas, he visto una fórmula de KL que no hubiera sospechado:
E6 =SUMAPRODUCTO((Datos!B4:B13=A6)*Datos!F4:F13*Datos!D4:D13)/D6
Dado que tení­a asumido que =SUMAPRODUCTO((Datos!B4:B13=A6)…
Sólo hubiera funcionado con: =SUMAPRODUCTO(--(Datos!B4:B13=A6)… Y no es así­, por lo visto.
Me queda mucho, aún, por delante...
Un saludo, y gracias.
D6 =SUMAPRODUCTO(ESNUMERO(HALLAR(DERECHA($A6;8);Datos!$B$5:$B$14))*Datos!$D$5:$D$14)

A lo que KL proponí­a:
D6 =SUMAR.SI(Datos!$B$5:$B$14;"*"&DERECHA($A6;8)&"*";Datos!$D$5:$D$14)

Y yo hubiera propuesto esto:
D6 =SUMAPRODUCTO(--(Datos!B5:B14=Inv.Prom!A6);Datos!D5:D14)

De todas formas, he visto una fórmula de KL que no hubiera sospechado:
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
xpelos
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Ene 2006 12:39

Notapor xpelos » 13 Oct 2006 08:11

Estimados colegas:
El tema del cálculo de inventarios (LIFO, FIFO, medio, etc.) es para mí­ un tema muy interesante.
Veo que en la celda "D6" se ha propuesto una alternativa curios.
Jose L León Q parece ser un "forofo" de "SUMAPRODUCTO", pero parecen complejas:
D6 =SUMAPRODUCTO(ESNUMERO(HALLAR(DERECHA($A6;8);Datos!$B$5:$B$14))*Datos!$D$5:$D$14)

A lo que KL proponí­a:
D6 =SUMAR.SI(Datos!$B$5:$B$14;"*"&DERECHA($A6;8)&"*";Datos!$D$5:$D$14)

Y yo hubiera propuesto esto:
D6 =SUMAPRODUCTO(--(Datos!B5:B14=Inv.Prom!A6);Datos!D5:D14)

De todas formas, he visto una fórmula de KL que no hubiera sospechado:
E6 =SUMAPRODUCTO((Datos!B4:B13=A6)*Datos!F4:F13*Datos!D4:D13)/D6
Dado que tení­a asumido que =SUMAPRODUCTO((Datos!B4:B13=A6)…
Sólo hubiera funcionado con: =SUMAPRODUCTO(--(Datos!B4:B13=A6)… Y no es así­, por lo visto.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
xpelos
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Ene 2006 12:39

Notapor xpelos » 13 Oct 2006 08:11

Vaya: lo siento...
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
xpelos
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Ene 2006 12:39

Notapor KL » 13 Oct 2006 11:11

Hola xpelos,

xpelos";p="31856 escribió:...A lo que KL proponí­a:
D6 =SUMAR.SI(Datos!$B$5:$B$14;"*"&DERECHA($A6;8)&"*";Datos!$D$5:$D$14)

Y yo hubiera propuesto esto:
D6 =SUMAPRODUCTO(--(Datos!B5:B14=Inv.Prom!A6);Datos!D5:D14)


La segunda formula usada con un rango de 6000 filas es 9 veces mas lenta que la primera ;-) Por eso llame la formula original del archivo surrealista - tarda 13 veces mas que la construccion con SUMAR.SI
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
KL
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Mar 2006 13:57
Ubicación: Madrid

Notapor KL » 13 Oct 2006 11:32

xpelos";p="31856 escribió:De todas formas, he visto una fórmula de KL que no hubiera sospechado:
E6 =SUMAPRODUCTO((Datos!B4:B13=A6)*Datos!F4:F13*Datos!D4:D13)/D6
Dado que tení­a asumido que =SUMAPRODUCTO((Datos!B4:B13=A6)…
Sólo hubiera funcionado con: =SUMAPRODUCTO(--(Datos!B4:B13=A6)… Y no es así­, por lo visto.


Como regla general, cualquier operacion matematica basica realizada mediante un operador (p.ej.: -, +, *, /, ^) asi como la funcion N() covierten los valores logicos en sus equivalentes numericos. O sea que las siguientes expresiones devuelven el mismo resultado:

=--(Datos!B4:B13=A6)
=(Datos!B4:B13=A6)*1
=(Datos!B4:B13=A6)/1
=(Datos!B4:B13=A6)^1
=(Datos!B4:B13=A6)-0
=(Datos!B4:B13=A6)+0
=N(Datos!B4:B13=A6)

por tanto expresiones como las siguientes funcionarian (obviamente, segun lo que se quiera conseguir)

=SUMAPRODUCTO(--(Datos!B4:B13=A6);Datos!D4:D13)
=SUMAPRODUCTO((Datos!B4:B13=A6)*Datos!D4:D13)
=SUMAPRODUCTO((Datos!B4:B13=A6)/Datos!D4:D13)
=SUMAPRODUCTO((Datos!B4:B13=A6)^Datos!D4:D13)
=SUMAPRODUCTO((Datos!B4:B13=A6)-Datos!D4:D13)
=SUMAPRODUCTO((Datos!B4:B13=A6)+Datos!D4:D13)
=SUMAPRODUCTO(N(Datos!B4:B13=A6);Datos!D4:D13)

Y como ya he indicado antes, cuando se trata de una condicion unica, salvo excepciones como la siguiente:

=SUMAPRODUCTO(--(DIASEM(Datos!B4:B13)=7))

se deben utilizar las funciones SUMAR.SI y CONTAR.SI para evitar la perdidas en la eficiencia importantes.

Tambien existen casos de multiples condiciones cuando el uso de SUMAR.SI y CONTAR.SI resulta mucho mas eficiente, p.ej.:

=SUMAPRODUCTO(CONTAR.SI(Datos!B4:B13;{"<0"\2\5\7">500"})
=CONTAR.SI(Datos!B4:B13;">20")-CONTAR.SI(Datos!B4:B13;">=5")
etc.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
KL
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Mar 2006 13:57
Ubicación: Madrid

Notapor xpelos » 13 Oct 2006 14:00

Estimado KL

Desde luego, para mí­ eres como un pozo sin fondo...
Esto amplí­a un montón el horizonte de posibilidades, aunque por experiencia, aprenderé cuando tenga la ocasión (un problema que resolver) y eche mano a los "apuntes" que recibo del foro.

Te quedo muy agradecido.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
xpelos
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Ene 2006 12:39

Re: Actualizar fí³rmula matricial y algo más

Notapor KL » 13 Oct 2006 14:26

No se si lo he dicho antes. Eso de las formulas matriciales es como aquellos libros de paginas magicas (con hologramas) que se vendian mucho por aqui a finales de los años 80. Eran un caos total de colores y dibujos. Tenias que encontrar una combinacion de distancia y enfoque (cruzando los ojos hasta casi quedar bizco) y despues de horas/dias de intentos fallidos y dolor en los ojos inaguantable, derrepente se te abria otro mundo en tres dimensiones. Y desde entonces podias ir por ahi presumiendo de ver algo que los demas no veian diciendo "si es facil , hombre! No se como es que no consigues verlo" :-)))
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
KL
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Mar 2006 13:57
Ubicación: Madrid

Notapor xpelos » 13 Oct 2006 15:03

Cachissss...
KL: no me descubras.
Hasta ahora, habí­a conseguido -con cierto éxito- esconder la razón de los tremendos "culos de botella" que llevo por lentes...
Pero ahora, el viejo secreto que guardaba desde los 80's ha quedado al descubierto.
Y aún sigo intentando con los puñeteros hologramas... (Tierra: trágame !!!)
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
xpelos
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Ene 2006 12:39

Re: Actualizar fí³rmula matricial y algo más

Notapor KL » 13 Oct 2006 15:50

Gracias por avisar! Por si las moscas contigo no me siaento a jugar a las cartas :-)
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
KL
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Mar 2006 13:57
Ubicación: Madrid


Compartir en:
     

  • Anuncio
Manual Excel avanzado

Volver a Funciones y Fórmulas

¿Quién está conectado?

Usuarios navegando por este Foro: Adrian y 6 invitados