Lista Paralela

23/12/2003 - 02:23 por Compumakro | Informe spam
Amigos
Antes les reitero mis buenos deseos para todos ustedes. Que estas navidades
sean muy gratificantes y que el año nuevo 2004 esté lleno de paz espiritual,
Amor, Unión, Comprensión y un poco más de dinero.

El siguiente es un Reto de "Fantasía".
En la Hoja "Compras" entran productos diversos (Heterogéneos) Así:
Fecha Artículo Cantidad Nº Remisión Nº
Factura Precio
20/12/03 Arroz 50 5423
1256 810
21/12/03 Tomate 20 45698
3987 970

En la hoja "Estado" deben estar los Artículos y Sumadas las Cantidades.
Hasta aquí no hay nada extraordinario, pues en últimas se resuelve con Suma
Condicional.

Artículo Cantidad
Arroz 50
Tomate 20

El caso es que necesito que en la Hoja "Compras" se copie automáticamente
cada que ingrese un Artículo nuevo, es decir que no estaba en la lista y que
no copie los que ya están. Luego lo pegue en la siguiente fila en blanco de
la Hoja "Estado" y le active la Suma Condicional en la celda contigua.
Que mantenga activada la suma condicional para todos los artículos.

Saludos
Oscar
Barranquilla

Preguntas similare

Leer las respuestas

#6 Compumakro
25/12/2003 - 15:39 | Informe spam
Hola Adriano
Yo no manejo Código, pero aquí he visto tanto que aprendido algo que me han
servido para resolver situaciones. Y lo más satisfactorio para mi, es que ya
me atrevo a "Manipular" algunos códigos. Cuando me resulta lo que me
propongo y sin ayuda la alegría es inmensa.
En las principales librerías de aquí los libros de VBA no existen. Me
prometieron que habrá nuevo surtido y novedades en Febrero próximo. Yo
realmente deseo participar aquí como proveedor de ayudas también. Envidio a
todos ustedes que tienen el conocimiento y comparto con ustedes el ánimo de
servir. Lo que más me llama la atención es que yo no entiendo lo que muchos
solicitan, no veo coherencia en la redacción del problema, no entiendo lo
que buscan...y salen unos intérpretes geniales como Fernando Arroyo, Hector
Miguel, Servando... dando la solución precisa.
Un Abrazo
Oscar
Barranquilla


"Adriano D'Ambra" escribió en el mensaje
news:
Hola Compumakro, con código esta tarea sería muy sencilla. ¿Tenés alguna
idea o no lo manejás?
En caso afirmativo te paso las pautas a seguir:

En lugar de hacer SUMAR.SI yo lo que hago es un corte de control haciendo


un
DO While por cada Artículo y sumando las cantidades. Luego cada uno de


los
resultados se van situando en la otra hoja. Esto hace que la solución sea
genérica no importando si se trata de un producto nuevo. Hay otras
soluciones pero esta es la que mejor me va.

Saludos.


"Compumakro" escribió en el mensaje
news:u$
> Amigos
> Antes les reitero mis buenos deseos para todos ustedes. Que estas
navidades
> sean muy gratificantes y que el año nuevo 2004 esté lleno de paz
espiritual,
> Amor, Unión, Comprensión y un poco más de dinero.
>
> El siguiente es un Reto de "Fantasía".
> En la Hoja "Compras" entran productos diversos (Heterogéneos) Así:
> Fecha Artículo Cantidad Nº Remisión Nº
> Factura Precio
> 20/12/03 Arroz 50 5423
> 1256 810
> 21/12/03 Tomate 20 45698
> 3987 970
>
> En la hoja "Estado" deben estar los Artículos y Sumadas las Cantidades.
> Hasta aquí no hay nada extraordinario, pues en últimas se resuelve con
Suma
> Condicional.
>
> Artículo Cantidad
> Arroz 50
> Tomate 20
>
> El caso es que necesito que en la Hoja "Compras" se copie


automáticamente
> cada que ingrese un Artículo nuevo, es decir que no estaba en la lista y
que
> no copie los que ya están. Luego lo pegue en la siguiente fila en


blanco
de
> la Hoja "Estado" y le active la Suma Condicional en la celda contigua.
> Que mantenga activada la suma condicional para todos los artículos.
>
> Saludos
> Oscar
> Barranquilla
>
>


Respuesta Responder a este mensaje
#7 LauMan MX \(Manolo\)
26/12/2003 - 15:13 | Informe spam
porque no haces una tabla dinamica cada vez que ingreses mercancia a tu
listado. así te va a incluir todo lo nuevo

Saludos

Manolo
Cancun, México





"Compumakro" escribió en el mensaje
news:%23d$
Gracias "Zapata"
Dos cosas:
1 -- Copié y pegué en Código y no funciona. Yo escribí varios Artículos en
"COMPRAS" y no apareció nada en "ESTADO".
2 -- La suma condicional, tal como expuse el problema, que debe ser
"automática" y no se cómo redactarla, (siempre y cuando se pueda) pues
tendría que anexar a la suma condicional un nuevo artículo cada que
aparezca.
El reto es que debe detectar por si sola la aparición de un nuevo artículo


y
crear la suma condicional automáticamente y llevar el resultado a


"ESTADO".
Como comparando tablas de manera activada y anotando los artículos que no
están
Y las suma condicional por Código, no se el código.
Gracias
Oscar
Barranquilla


"Zapata >" <ignaciopsantaella@<hotmail.com> escribió en el mensaje Gracias
"Zapata"news:
> El anterior estaba mal, con esto de copiar y pegar se me olvidó cambiar
una
> c por una x
> With Sheets("COMPRAS").Range("NombresArticulos")
> Set c = .Find(Target.Value, LookIn:=xlValues)
> If c Is Nothing Then
> With Sheets("ESTADO").Range("NombresArticulos")
> Set x = .Find("", LookIn:=xlValues)
> If Not x Is Nothing Then
> x.Value = Target.Value
> x.Offset(0, 1).Formula = "Formula de la suma condicional"
> End If
> End With
> End If
> End With
> End Sub
> Un saludo
>
>



Respuesta Responder a este mensaje
#8 Compumakro
26/12/2003 - 17:03 | Informe spam
Manolo:
Gracias por la sugerencia. Aunque yo nunca he hecho una tabla dinámica, creo
que es hora que vaya aprendiendo.
De todos modos miraré si eso resuelve lo que necesito.
Gracias
Oscar
Barranquilla

"LauMan MX (Manolo)" escribió en el mensaje
news:
porque no haces una tabla dinamica cada vez que ingreses mercancia a tu
listado. así te va a incluir todo lo nuevo

Saludos

Manolo
Cancun, México





"Compumakro" escribió en el mensaje
news:%23d$
> Gracias "Zapata"
> Dos cosas:
> 1 -- Copié y pegué en Código y no funciona. Yo escribí varios Artículos


en
> "COMPRAS" y no apareció nada en "ESTADO".
> 2 -- La suma condicional, tal como expuse el problema, que debe ser
> "automática" y no se cómo redactarla, (siempre y cuando se pueda) pues
> tendría que anexar a la suma condicional un nuevo artículo cada que
> aparezca.
> El reto es que debe detectar por si sola la aparición de un nuevo


artículo
y
> crear la suma condicional automáticamente y llevar el resultado a
"ESTADO".
> Como comparando tablas de manera activada y anotando los artículos que


no
> están
> Y las suma condicional por Código, no se el código.
> Gracias
> Oscar
> Barranquilla
>
>
> "Zapata >" <ignaciopsantaella@<hotmail.com> escribió en el mensaje


Gracias
> "Zapata"news:
> > El anterior estaba mal, con esto de copiar y pegar se me olvidó


cambiar
> una
> > c por una x
> > With Sheets("COMPRAS").Range("NombresArticulos")
> > Set c = .Find(Target.Value, LookIn:=xlValues)
> > If c Is Nothing Then
> > With Sheets("ESTADO").Range("NombresArticulos")
> > Set x = .Find("", LookIn:=xlValues)
> > If Not x Is Nothing Then
> > x.Value = Target.Value
> > x.Offset(0, 1).Formula = "Formula de la suma condicional"
> > End If
> > End With
> > End If
> > End With
> > End Sub
> > Un saludo
> >
> >
>
>
>


Respuesta Responder a este mensaje
#9 Zapata
29/12/2003 - 19:09 | Informe spam
Hola:
Lamento el retraso pero estuve unos dias ausente.Te pongo la macro para que
te haga la suma mediante VBA
la he probado y funciona perfectamente. Aunque esta pensada para empezar a
trabajar sin tener datos en las hojas. Si ya tuvieras datos en las hojas en
la parte del codigo que esta a partir del "Else" deberias poner un bucle
como muy bien indicó nuestro amigo Adriano. Si no consigues que funcione
aqui estoy..
Private Sub Worksheet_Change(ByVal Target As Range)
'Cantidad debe de ser la ultima columna a rellenar de la hoja Compras
' y el nombre del articulo la columna anterior
'esta macro esta en el evento change de la hoja Compras
If Intersect(Target, Range("CantidadArticulo")) Is Nothing Then Exit Sub
With Sheets("Estado").Range("NombresArticulos")
Set c = .Find(Target.Offset(0, -1).Value, LookIn:=xlValues)
If c Is Nothing Then
With Sheets("Estado").Range("NombresArticulos")
Set x = .Find("", LookIn:=xlValues)
x.Value = Target.Offset(0, -1).Value
x.Offset(0, 1).Value = Target.Value
End With
Else

c.Offset(0, 1).Value = c.Offset(0, 1).Value + Target.Value

End If
End With
End Sub
Respuesta Responder a este mensaje
#10 Compumakro
30/12/2003 - 12:13 | Informe spam
Zapata
Esto se pasó de Calidad!!Muchísimas Gracias...Qué
perfecto!!..Espectacular!!
Un Abrazo
Oscar
Barranquilla

"Zapata >" <ignaciopsantaella@<hotmail.com> escribió en el mensaje
news:
Hola:
Lamento el retraso pero estuve unos dias ausente.Te pongo la macro para


que
te haga la suma mediante VBA
la he probado y funciona perfectamente. Aunque esta pensada para empezar a
trabajar sin tener datos en las hojas. Si ya tuvieras datos en las hojas


en
la parte del codigo que esta a partir del "Else" deberias poner un bucle
como muy bien indicó nuestro amigo Adriano. Si no consigues que funcione
aqui estoy..
Private Sub Worksheet_Change(ByVal Target As Range)
'Cantidad debe de ser la ultima columna a rellenar de la hoja Compras
' y el nombre del articulo la columna anterior
'esta macro esta en el evento change de la hoja Compras
If Intersect(Target, Range("CantidadArticulo")) Is Nothing Then Exit Sub
With Sheets("Estado").Range("NombresArticulos")
Set c = .Find(Target.Offset(0, -1).Value, LookIn:=xlValues)
If c Is Nothing Then
With Sheets("Estado").Range("NombresArticulos")
Set x = .Find("", LookIn:=xlValues)
x.Value = Target.Offset(0, -1).Value
x.Offset(0, 1).Value = Target.Value
End With
Else

c.Offset(0, 1).Value = c.Offset(0, 1).Value + Target.Value

End If
End With
End Sub


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida