Encontrar mes numérico dentro de un rago

Espero contar con su ayuda nuevamente, tengo una macro que uso desde hace tiempo pero recién este mes me dio problemas en la columna QUE, tengo el mes numérico que lo toma de una celda donde está la fecha completa:

y con la siguiente macro determino cual es el primer y ultimo dato del mes:

Sub BorrarMF()
'Dim valor As Date
valor = Month(Date)
aux1 = Workbooks("Filtrado_RI").Sheets("Formacion").Cells(Rows.Count, "Q").End(xlUp).Address

On Error Resume Next
myRgn = Workbooks("Filtrado_RI").Sheets("Formacion").Range("Q2:" & aux1).Find(What:=valor, LookIn:=xlValues, SearchDirection:=xlNext).Address
myRv = Range(myRgn).Offset(0, -16).Address
myRgn2 = Workbooks("Filtrado_RI").Sheets("Formacion").Range("Q2:" & aux1).Find(What:=valor, LookIn:=xlValues, SearchDirection:=xlPrevious).Address
Dir1 = Range(myRv, myRgn2).ClearContents
On Error GoTo 0
End Sub 

***La pongo asi porque ya no me dejó utilizar la opción de código fuente.

El problema es que ahora siempre me detecta que que la variable myRgn = Q3 cuando debería ser Q9229.

Y aunque ya estoy trabajando en otras opciones para encontrarlo, me gustaría entender porque no encuentra el valor real.

1 Respuesta

Respuesta
2

Quita la instrucción On Error Resume Next.

Prueba nuevamente la macro y comentas qué sucede.

Gracias Dante,

Lo intenté y sigue dando la misma respuesta, me da Q3.

Saludos.

En esta variable que tienes de resultado:

aux1 = Workbooks("Filtrado_RI").Sheets("Formacion").Cells(Rows.Count, "Q").End(xlUp).Address

Puedes compartir tu libro en googledrive.

Te dejo el enlace, consta de dos archivos en uno están las macros y en otro toda la información, en la pestaña rutas celda D1, añades la ruta donde dejaras los archivos, dentro de esa carpeta puedes colocar la carpeta datos que también está en el enlace.

https://drive.google.com/drive/folders/1ZgEznNi3wpf-H8bSpfrNgMZiiwdwbUQ3?usp=sharing

Te envié la solicitud para acceder al archivo.

Listo, muchas gracias.

El problema es que ahora siempre me detecta que que la variable myRgn = Q3 cuando debería ser Q9229.

Debes buscar que coincida con el contenido de toda la celda.

Para ello Utiliza el parámetro lookat:=xlWhole

myRgn = Range("Q2:" & aux1).Find(What:=valor, LookIn:=xlValues, lookat:=xlWhole, SearchDirection:=xlNext).Address

.[No olvides valorar

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas