Se ha producido el error 91 en tiempo de ejecución
Tengo un problema con esta macro ya que si me funciona en el archivo que la grabe depurador.xls, pero cuando la quiero utilizar en otros libros como complemento depurador.xla no me funciona
Sub buscarbital()
'
' buscarbital Macro
' Macro grabada el 31/08/2004 por Check Plus
'
'
Workbooks.Open Filename:="G:plazas.xls"
ThisWorkbook.Activate
ActiveCell.FormulaR1C1 = _
"=+VLOOKUP(RC[-1],'G:[plazas.xls]Hoja2'!C1:C2,2,FALSE)"
Range("G2").Select
ThisWorkbook.ActiveSheet.Range("G2").Select
Selection.AutoFill Destination:=Range("G2:G1000")
Range("G2:G1000").Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
Range("G1").Select
Selection.AutoFilter
Selection.AutoFilter Field:=7, Criteria1:="#N/A"
Range("G2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
Selection.End(xlUp).Select
Selection.AutoFilter Field:=7
Selection.AutoFilter
Windows("plazas.xls").Activate
ActiveWindow.Close
ThisWorkbook.Activate
Range("G2").Select
End Sub
ThisWorkbook. ActiveSheet. Range("G2").Select esta parte es la que me pone en amarillo el depurador
y este es el mensaje de la ayuda
variable de objeto o bloque with no establecido
La variable de objeto o la variable de bloque With no está establecida (Error 91)
Existen dos pasos para crear una variable de objeto. Primero, debe declarar la variable de objeto y a continuación, debe asignar una referencia válida a dicha variable de objeto, para lo cual utiliza la instrucción Set. Igualmente, un bloque With...End With se debe inicializar ejecutando el punto de entrada de la instrucción With. Las causas y posibles soluciones de este error son las siguientes:
Intentó utilizar una variable de objeto que todavía no está haciendo referencia a un objeto válido.
Especifique o vuelva a especificar una referencia para la variable de objeto. Por ejemplo, si se omitiera la instrucción Set en el código siguiente, se generaría un error en la referencia a MiObjeto:
Dim MyObject As Object ' Crea una variable de objeto.
Set MyObject = Sheets(1) ' Crea referencia de objeto válida.
MyCount = MyObject.Count ' Asigna valor Cuenta a MiCuenta
Intentó utilizar una variable de objeto que se ha establecido como Nothing.
Set MyObject = Nothing ' Libera el objeto.
MyCount = MyObject.Count ' Hace referencia a un objeto liberado.
Vuelva a especificar una referencia para la variable de objeto. Por ejemplo, utilice una nueva instrucción Set para establecer una nueva referencia para el objeto.
El objeto es válido, pero no se estableció porque la biblioteca de objetos donde está descrito no está seleccionada en el cuadro de diálogo Referencias.
Seleccione la biblioteca de objetos en el cuadro de diálogo Agregar referencias.
El destino de una instrucción GoTo está dentro de un bloque With.
No debe saltar al interior de un bloque With. Asegúrese de que el bloque se inicializa ejecutando el punto de entrada indicado por la instrucción With.
Especificó una línea incluida dentro de un bloque With al elegir el comando Establecer siguiente instrucción.
El bloque With se debe inicializar ejecutando la instrucción With.
Si desea más información, seleccione el tema en cuestión y presione F1 (en Windows) o Ayuda (en Macintosh).
Sub buscarbital()
'
' buscarbital Macro
' Macro grabada el 31/08/2004 por Check Plus
'
'
Workbooks.Open Filename:="G:plazas.xls"
ThisWorkbook.Activate
ActiveCell.FormulaR1C1 = _
"=+VLOOKUP(RC[-1],'G:[plazas.xls]Hoja2'!C1:C2,2,FALSE)"
Range("G2").Select
ThisWorkbook.ActiveSheet.Range("G2").Select
Selection.AutoFill Destination:=Range("G2:G1000")
Range("G2:G1000").Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
Range("G1").Select
Selection.AutoFilter
Selection.AutoFilter Field:=7, Criteria1:="#N/A"
Range("G2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
Selection.End(xlUp).Select
Selection.AutoFilter Field:=7
Selection.AutoFilter
Windows("plazas.xls").Activate
ActiveWindow.Close
ThisWorkbook.Activate
Range("G2").Select
End Sub
ThisWorkbook. ActiveSheet. Range("G2").Select esta parte es la que me pone en amarillo el depurador
y este es el mensaje de la ayuda
variable de objeto o bloque with no establecido
La variable de objeto o la variable de bloque With no está establecida (Error 91)
Existen dos pasos para crear una variable de objeto. Primero, debe declarar la variable de objeto y a continuación, debe asignar una referencia válida a dicha variable de objeto, para lo cual utiliza la instrucción Set. Igualmente, un bloque With...End With se debe inicializar ejecutando el punto de entrada de la instrucción With. Las causas y posibles soluciones de este error son las siguientes:
Intentó utilizar una variable de objeto que todavía no está haciendo referencia a un objeto válido.
Especifique o vuelva a especificar una referencia para la variable de objeto. Por ejemplo, si se omitiera la instrucción Set en el código siguiente, se generaría un error en la referencia a MiObjeto:
Dim MyObject As Object ' Crea una variable de objeto.
Set MyObject = Sheets(1) ' Crea referencia de objeto válida.
MyCount = MyObject.Count ' Asigna valor Cuenta a MiCuenta
Intentó utilizar una variable de objeto que se ha establecido como Nothing.
Set MyObject = Nothing ' Libera el objeto.
MyCount = MyObject.Count ' Hace referencia a un objeto liberado.
Vuelva a especificar una referencia para la variable de objeto. Por ejemplo, utilice una nueva instrucción Set para establecer una nueva referencia para el objeto.
El objeto es válido, pero no se estableció porque la biblioteca de objetos donde está descrito no está seleccionada en el cuadro de diálogo Referencias.
Seleccione la biblioteca de objetos en el cuadro de diálogo Agregar referencias.
El destino de una instrucción GoTo está dentro de un bloque With.
No debe saltar al interior de un bloque With. Asegúrese de que el bloque se inicializa ejecutando el punto de entrada indicado por la instrucción With.
Especificó una línea incluida dentro de un bloque With al elegir el comando Establecer siguiente instrucción.
El bloque With se debe inicializar ejecutando la instrucción With.
Si desea más información, seleccione el tema en cuestión y presione F1 (en Windows) o Ayuda (en Macintosh).
4 respuestas
Respuesta de caedlozano
1
Respuesta de johndavid
1
Respuesta de crer
1
Respuesta de leoncio999
-1