Autofilter de un excel en VB

Te comento, estoy haciendo un pequeño programita en visual que crea un archivo de excel y luego rellena las filas y columnas con datos desde mi base de datos,
el asunto es que al momento de aplicar "Selection.AutoFilter", para autofiltrar las columnas me tira el siguiente error:
"object variable or with block variable not set"
¿Tienes alguna idea de como solucionarlo?

5 Respuestas

Respuesta
1
Eso me suena al error 91 y normalmente ocurre cuando no has inicializado un objeto.
Asegúrate de que has inicializado todos los objetos de forma correcta.
Te dejo un ejemplo:
Dim apli As Excel.Application
Dim libro As Excel.Workbook
Dim hoja As Excel.Worksheet


Private Sub Command1_Click()


    Set apli = New Excel.Application 'Creo el espacio de trabajo
    Set libro = apli.Workbooks.Add   'Creo un libro dentro del espacio de trabajo 
   
Set hoja = libro.Sheets(1)       'Asocio la primera hoja del libro a mi variable hoja
    hoja.Name = "Mi Hoja" 'Cambio el nombre de la hoja
    For i = 1 To 10
        For j = 1 To 10
            hoja.Cells(i, j) = i * j 'Asigno un valor a las primeras 100 celdas (10x10)
        Next
    Next


    hoja.Range("A1").Select  'Selecciono una celda del rango ocupado
    Selection.AutoFilter          'Aplico el autofiltro
    Selection.AutoFilter Field:=10, Criteria1:="40"
    apli.Visible = True           'Muestro el documento
End Sub


Private Sub Form_Unload(Cancel As Integer)
    libro.Close False
    apli.Quit
End Sub

Tu problema debe estar en una de las lçineas que marquçe en negrita.
Respuesta
1
No se para que sirve el autofilter,
pero ese error significa que no es una variable,
osea que no podes modificar su valor ;)
Respuesta
1
A ver si declaras bien los objetos o como los inicializas los objetos. Con lo que sea me comentas.
Respuesta
1
Este error lo arroja cuando la acción que intentas realizar no tiene objeto definido para recibirla, es decir, como si Selection no tuviera valor.
Asegurate que el autofilter lo haces cuando has seleccionado la columna a filtrar
No se me ocurre de momento nada más
Respuesta
-1
Disculpa la tardanza
Dale un vistazo a esta página a ver si de algo te sirve
http://msdn.microsoft.com/es-es/library/5szkzs17(VS.80).aspx
Seguiré buscando algo para ti...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas