Sumar celdas de rango variable según condición y copiar totales a otra hoja (Luis Mondelo)

aquí nuevamente solicitando su generosa ayuda, uso excel 2010 y quisiera ayuda con la siguiente macro...

tengo Hoja1 con estos datos:

........A...........B..........C.............D

1...N Doc...T Doc.....Fecha......Total

2....1001......B/C.....05/05/13......20

3....1002......F/C.....05/05/13......50

4....1003......S/D.....07/05/13......35

5....1004......B/C.....07/05/13......30

6....1005......S/D.....07/05/13......25

7....1006......F/C.....08/05/13......15

8....1007......F/C.....08/05/13......10

...

Los valores que puede tomar "T Doc" son: B/C, F/C, N/C, S/D, T/D

luego tengo Hoja2 de esta forma:

........A...........B.....
1...T Doc.....Total

2.....B/C...........<== el total se debería llenar con la macro

3.....F/C.......

4.....N/C.......

5.....S/D.......

6.....T/C.......

lo que se quiere es una macro que sume todos los registros (T Doc) iguales de Hoja1 y el total lo ponga en Hoja2 en la celda correspondiente, en caso no exista ningún registro para ese "T Doc" colocar un 0, sobre el ejemplo de arriba debería quedar asi:

........A...........B.....
1...T Doc.....Total
2.....B/C.........50
3.....F/C.........75
4.....N/C...........0
5.....S/D.........60
6.....T/C...........0

espero nuevamente pueda ayudarme.

gracias.

1 Respuesta

Respuesta
1

¿Tomo nota y te lo preparo... Pero... necesitas una macro obligatoriamente?

Esto se puede hacer con tablas dinámicas

si se necesitaría la macro, lo que pasa es que Hoja1 es un resumen de ventas del mes tipo Caja y Banco, en la misma hoja se tiene el resumen de otras 2 tiendas y se maneja una hoja por cada mes, luego Hoja2 viene a ser una especie de archivo maestro donde se almacenarían los totales para que en el archivo / libro del siguiente mes poder llenar el cuadro con los datos de ese mes y los meses anteriores.

actualmente lo tengo funcionando pero copiando T Doc y Total de cada resumen a Hoja2, luego con la macro de agrupar y sumar saco los totales, finalmente usando if y select case range.value veo que valor tiene T Doc y con eso copio los datos en el orden deseado, pero me queda una macro muy larga, mas de 200 lineas.

gracias.

En el siguiente enlace te dejo un archivo con el ejemplo programado

http://share.cx.com/dJ4L7L

No olvides finalizar la consulta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas