Crear una hoja resumen de otras celdas
BUenas tardes, tengo una base de datos en excel, en al que esta capturado el stock de mi almacen. Tengo varias hojas donde según el tipo de material se captura.
Requiero una hoja resumen donde se muestre todos aquellos items que estén por debajo del mínimo establecido.
Pero no he podido hacer que la macro lea todas las hojas y arroje los faltantes.
Hice este código pero es solo para una hoja12, al repetir el código no lee las celdas de la siguiente hoja ya que si la hoja12 tenia 20 faltantes en la hoja10 se empieza a contar a partir de la fila 20
Dim Cant As Variant
Dim codigo As Variant
Dim Exis As Variant
Dim Max As Variant
Dim Min As Variant
Do Until I = 300
I = I + 1
Proceso = Worksheets(Hoja12.Name).Cells(I, 6)
Ensamble = Worksheets(Hoja12.Name).Cells(I, 3)
Desc = Worksheets(Hoja12.Name).Cells(I, 4)
Cant = Worksheets(Hoja12.Name).Cells(I, 13)
Max = Worksheets(Hoja12.Name).Cells(I, 12)
Min = Worksheets(Hoja12.Name).Cells(I, 11)
Exis = Worksheets(Hoja12.Name).Cells(I, 12)
If Exis > Min Then Exit Do
codigo = Worksheets(Hoja12.Name).Cells(I, 1)
If codigo = "" Then Exit Do
Worksheets(Hoja23.Name).Cells(I, 4) = codigo
Worksheets(Hoja23.Name).Cells(I, 1) = Hoja12.Name
Worksheets(Hoja23.Name).Cells(I, 2) = Proceso
Worksheets(Hoja23.Name).Cells(I, 3) = Ensamble
Worksheets(Hoja23.Name).Cells(I, 5) = Desc
Worksheets(Hoja23.Name).Cells(I, 6) = Exis
Worksheets(Hoja23.Name).Cells(I, 7) = Cant
Loop
Do Until I = 300
I = I + 1
Proceso = Worksheets(Hoja10.Name).Cells(I, 6)
Ensamble = Worksheets(Hoja10.Name).Cells(I, 3)
Desc = Worksheets(Hoja10.Name).Cells(I, 4)
Cant = Worksheets(Hoja10.Name).Cells(I, 13)
Max = Worksheets(Hoja10.Name).Cells(I, 12)
Min = Worksheets(Hoja10.Name).Cells(I, 11)
Exis = Worksheets(Hoja10.Name).Cells(I, 12)
If Exis > Min Then Exit Do
codigo = Worksheets(Hoja10.Name).Cells(I, 1)
If codigo = "" Then Exit Do
Worksheets(Hoja23.Name).Cells(I, 4) = codigo
Worksheets(Hoja23.Name).Cells(I, 1) = Hoja12.Name
Worksheets(Hoja23.Name).Cells(I, 2) = Proceso
Worksheets(Hoja23.Name).Cells(I, 3) = Ensamble
Worksheets(Hoja23.Name).Cells(I, 5) = Desc
Worksheets(Hoja23.Name).Cells(I, 6) = Exis
Worksheets(Hoja23.Name).Cells(I, 7) = Cant
Loop
Requiero una hoja resumen donde se muestre todos aquellos items que estén por debajo del mínimo establecido.
Pero no he podido hacer que la macro lea todas las hojas y arroje los faltantes.
Hice este código pero es solo para una hoja12, al repetir el código no lee las celdas de la siguiente hoja ya que si la hoja12 tenia 20 faltantes en la hoja10 se empieza a contar a partir de la fila 20
Dim Cant As Variant
Dim codigo As Variant
Dim Exis As Variant
Dim Max As Variant
Dim Min As Variant
Do Until I = 300
I = I + 1
Proceso = Worksheets(Hoja12.Name).Cells(I, 6)
Ensamble = Worksheets(Hoja12.Name).Cells(I, 3)
Desc = Worksheets(Hoja12.Name).Cells(I, 4)
Cant = Worksheets(Hoja12.Name).Cells(I, 13)
Max = Worksheets(Hoja12.Name).Cells(I, 12)
Min = Worksheets(Hoja12.Name).Cells(I, 11)
Exis = Worksheets(Hoja12.Name).Cells(I, 12)
If Exis > Min Then Exit Do
codigo = Worksheets(Hoja12.Name).Cells(I, 1)
If codigo = "" Then Exit Do
Worksheets(Hoja23.Name).Cells(I, 4) = codigo
Worksheets(Hoja23.Name).Cells(I, 1) = Hoja12.Name
Worksheets(Hoja23.Name).Cells(I, 2) = Proceso
Worksheets(Hoja23.Name).Cells(I, 3) = Ensamble
Worksheets(Hoja23.Name).Cells(I, 5) = Desc
Worksheets(Hoja23.Name).Cells(I, 6) = Exis
Worksheets(Hoja23.Name).Cells(I, 7) = Cant
Loop
Do Until I = 300
I = I + 1
Proceso = Worksheets(Hoja10.Name).Cells(I, 6)
Ensamble = Worksheets(Hoja10.Name).Cells(I, 3)
Desc = Worksheets(Hoja10.Name).Cells(I, 4)
Cant = Worksheets(Hoja10.Name).Cells(I, 13)
Max = Worksheets(Hoja10.Name).Cells(I, 12)
Min = Worksheets(Hoja10.Name).Cells(I, 11)
Exis = Worksheets(Hoja10.Name).Cells(I, 12)
If Exis > Min Then Exit Do
codigo = Worksheets(Hoja10.Name).Cells(I, 1)
If codigo = "" Then Exit Do
Worksheets(Hoja23.Name).Cells(I, 4) = codigo
Worksheets(Hoja23.Name).Cells(I, 1) = Hoja12.Name
Worksheets(Hoja23.Name).Cells(I, 2) = Proceso
Worksheets(Hoja23.Name).Cells(I, 3) = Ensamble
Worksheets(Hoja23.Name).Cells(I, 5) = Desc
Worksheets(Hoja23.Name).Cells(I, 6) = Exis
Worksheets(Hoja23.Name).Cells(I, 7) = Cant
Loop
1 respuesta
Respuesta de calvuch
1