Macro imprimir solo si la hoja cumple la condición
Hola, buenos días,
Buscando en google he encontrado esta pregunta que le habían hecho:
"hola g, creo que tu me puedes ayudar con esto
tengo un libro excel con aprox. 100 pestañas, cada una corresponde a una persona distinta con liquidaciones individuales, estas liq. Se cargan mensualmente por lo que no todas tendrán datos al final de proceso.
Lo que necesito es una macro que asignare a un botón para que imprima solo las hojas que tengan un resultado en una celda determinada, por ej. Si F48 fuera la resultante de la suma de la columna F
si F48>0 imprimir, sino saltear y chequear la sig. Hoja y así hasta el final del libro.
Desde ya muchísimas gracias por tu tiempo y atencio"
El tema lo dejaron a medias porque la persona que preguntó encontró la respuesta... Yo soy bastante más torpe y no doy con ella, pero mi problema es el mismo. Hasta ahora estaba trabajando en este problema pero para que me señalara la pestaña de la hoja que cumple la condición en rojo, pero si me lo imprime me da igual (casi mejor).
Le copio lo que he hecho hasta ahora, casi me funciona, pero solo funciona si todas las celdas que me interesan (en mi caso en vez de la F48 es la D65) son distintas de 0
Private Sub Workbook_Open()
For Each Worksheet In ThisWorkbook.Worksheets
If Range("D65") > 0 Then
Worksheet.Tab.ColorIndex = 3 ' pestaña roja
Else
Worksheet.Tab.ColorIndex = -4142 ' pestaña sin color
End If
Next Worksheet
End Sub ' Workbook_Open
No se que estoy haciendo mal. Si me pudiese ayudar me ahorraría mucho tiempo.
Gracias de antemano por su ayuda.
Buscando en google he encontrado esta pregunta que le habían hecho:
"hola g, creo que tu me puedes ayudar con esto
tengo un libro excel con aprox. 100 pestañas, cada una corresponde a una persona distinta con liquidaciones individuales, estas liq. Se cargan mensualmente por lo que no todas tendrán datos al final de proceso.
Lo que necesito es una macro que asignare a un botón para que imprima solo las hojas que tengan un resultado en una celda determinada, por ej. Si F48 fuera la resultante de la suma de la columna F
si F48>0 imprimir, sino saltear y chequear la sig. Hoja y así hasta el final del libro.
Desde ya muchísimas gracias por tu tiempo y atencio"
El tema lo dejaron a medias porque la persona que preguntó encontró la respuesta... Yo soy bastante más torpe y no doy con ella, pero mi problema es el mismo. Hasta ahora estaba trabajando en este problema pero para que me señalara la pestaña de la hoja que cumple la condición en rojo, pero si me lo imprime me da igual (casi mejor).
Le copio lo que he hecho hasta ahora, casi me funciona, pero solo funciona si todas las celdas que me interesan (en mi caso en vez de la F48 es la D65) son distintas de 0
Private Sub Workbook_Open()
For Each Worksheet In ThisWorkbook.Worksheets
If Range("D65") > 0 Then
Worksheet.Tab.ColorIndex = 3 ' pestaña roja
Else
Worksheet.Tab.ColorIndex = -4142 ' pestaña sin color
End If
Next Worksheet
End Sub ' Workbook_Open
No se que estoy haciendo mal. Si me pudiese ayudar me ahorraría mucho tiempo.
Gracias de antemano por su ayuda.
1 respuesta
Respuesta
1

