Problema con macro para varias hojas
Hola, tengo la siguiente macro que me crea una hoja nueva con los datos de los productos que vencen al día siguiente:
Sub prueba()
Dim Datos As Range
Dim Nombre As String
Dim Existe As Boolean
Set Datos = Sheets("Hoja1").Range("a1").CurrentRegion
Nombre = Format(Date, "dddd dd-mm-yy")
On Error Resume Next
Existe = Sheets(Nombre).Name = Nombre
On Error GoTo 0
If Not Existe Then
With Sheets.Add(Sheets(1))
.Name = Nombre
.Tab.ColorIndex = 3
.Range("a1") = Date
.Range("a3") = "=Hoja1!e2=today()"
Datos.AdvancedFilter 2, .Range("a2:a3"), Range("a4")
.Range("a3") = "Hoy se vencen:"
With .Range("a" & Rows.Count).End(xlUp)(3)
.Formula = "=Hoja1!e2=today()+1"
Datos.AdvancedFilter 2, .Offset(-1).Resize(2), .Offset(1)
.Value = "Mañana se vencen:"
End With
End With
End If
Set Datos = Nothing
End Sub
Con esta macro todo funciona bien para la hoja1, pero quiero que también mire en la hoja2, hoja3... ¿se puede poner una especie de rango de hojas o algo parecido?
Gracias
Sub prueba()
Dim Datos As Range
Dim Nombre As String
Dim Existe As Boolean
Set Datos = Sheets("Hoja1").Range("a1").CurrentRegion
Nombre = Format(Date, "dddd dd-mm-yy")
On Error Resume Next
Existe = Sheets(Nombre).Name = Nombre
On Error GoTo 0
If Not Existe Then
With Sheets.Add(Sheets(1))
.Name = Nombre
.Tab.ColorIndex = 3
.Range("a1") = Date
.Range("a3") = "=Hoja1!e2=today()"
Datos.AdvancedFilter 2, .Range("a2:a3"), Range("a4")
.Range("a3") = "Hoy se vencen:"
With .Range("a" & Rows.Count).End(xlUp)(3)
.Formula = "=Hoja1!e2=today()+1"
Datos.AdvancedFilter 2, .Offset(-1).Resize(2), .Offset(1)
.Value = "Mañana se vencen:"
End With
End With
End If
Set Datos = Nothing
End Sub
Con esta macro todo funciona bien para la hoja1, pero quiero que también mire en la hoja2, hoja3... ¿se puede poner una especie de rango de hojas o algo parecido?
Gracias
1 respuesta
Respuesta de Jorge Cue
-1