Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Error 9 en tiempo de ejecución

Estas en el tema de Error 9 en tiempo de ejecución en el foro de Bases de Datos General en Foros del Web. Hola a todos, Lo primero, decir que no tengo muchos conocimientos en el manejo de VBA. Sin embargo, por necesidad, tengo que hacer algún apaño. ...
  #1 (permalink)  
Antiguo 23/09/2014, 03:38
HS7
 
Fecha de Ingreso: septiembre-2014
Mensajes: 2
Antigüedad: 9 años, 7 meses
Puntos: 0
Pregunta Error 9 en tiempo de ejecución

Hola a todos,
Lo primero, decir que no tengo muchos conocimientos en el manejo de VBA. Sin embargo, por necesidad, tengo que hacer algún apaño.

Lo que estoy intentando llevar a cabo es una macro para un filtro avanzado, la cual se ejecute al cambiar el valor de una celda determinada (celda de búsqueda). La macro ha funcionado correctamente cuando la lista a filtrar esta en la misma hoja excel. Sin embargo, mi lista definitiva que quiero filtrar esta en otro archivo excel.

A la hora de ejecutar la macro me da el siguiente error: "Se ha producido el error 9 en tiempo de ejecución. Subíndice fuera del intervalo".

Mi código es el siguiente:
Código vb:
Ver original
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. Celda = "M1"
  3. If Not Application.Intersect(Target, Range(Celda)) Is Nothing Then
  4. Macro1
  5. End If
  6. End Sub
  7.  
  8.  
  9. Sub Macro1()
  10. Range("M1").Select
  11. 'Selection.AutoFilter
  12. Workbooks.Open Filename:="C:\Users\hsaaidi\Desktop\BD\BaseDatos.xls"
  13.  
  14.  
  15.  
  16.  
  17.  
  18. Set r = Workbooks("C:\Users\hsaaidi\Desktop\BD\BaseDatos.xls").Sheets("Lista").Range("A2:D$500")
  19.  
  20. r.AutoFilter Field:=1, Criteria1:="=*" & [M1] & "*", Operator:=xlAnd
  21. End Sub

La línea que da el error es la de "Set r=......"

No consigo dar con la solución. Si alguien me puede ayudar, se lo agradecería.

Última edición por gnzsoloyo; 23/09/2014 a las 04:06

Etiquetas: bd, tiempo, valor
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:49.