Error en el método 'Range'de objeto '_Global'

Quisiera que me pudieras ayudar con un problema en un form de excel:
Tengo un informe de más de 2mil registros con 9 columnas, entonces realice un form con un textbox y un botón donde en el textbox dígito la palabra a buscar de la primera col y luego le doy click al botón para que empiece la búsqueda
Pero al realizar esto me sale el siguiente error:
Se ha producido el error '1004'en tiempo de ejecución:
Error en el método 'Range'de objeto '_Global'
Este es el código que tengo en el botón:
Dim Celdas As String
    Application.ScreenUpdating = False
   Set c = [A:A].Find(What:=TextBox1, LookIn:=xlFormulas, LookAt:=xlPart, _
    MatchCase:=False, SearchOrder:=xlByRows, SearchDirection:=xlNext)
        If c Is Nothing Then
        MsgBox ("No se encontraron resultados")
        Exit Sub
    End If
    firstAddress = c.Address
Do
    Celdas = Celdas & "," & c.Address
    Set c = [A:A].FindNext(After:=c)
    Range(c.Address).Select
Loop While c.Address <> firstAddress
Application.ScreenUpdating = True
Range(Mid(Celdas, 2, Len(Celdas))).Select '**AQUI ME RESALTA EL  ERROR******
Selection.Copy
    Set c = Nothing.
Por otro lado como podría agregar otro textbox y me busque por ejemplo en la 3 columna, para que me identifique un registro único, osea com parar entre los 2 textbox y me busque esas coincidencias entre ambos.

1 respuesta

Respuesta
Te cuento que pues necesito ver todo el código puesto que infortunadamente a mi me corre, pero sin embargo veo varios errores a la hora de evaluar los casos prácticos dado que si no encuientra nada copia la ultima celda.
No veo que hayas dimensionado C
Necesito más información para ayudarte. Saludos!
Recuerda visitar www.ayconcol.com son expertos en el tema ellos también responden de forma gratuita directamente en la web o por todoexpertos en un pequeño espacio een la página principal, si quieres aprender más puedes meterte en www.ayconcol.com/foro creas usuario y todo y listo! Si quieres ellos también elaboran aplicativos a un costo muy bajo!
Carlos ese es el único código que manejo y pues cuando dígito la palabra me va al error, si son 40 registro no hay problema, pero como son más de 2mil registros pasa ese problema.
Dim Celdas As String
    Application.ScreenUpdating = False
   Set c = [A:A].Find(What:=TextBox1, LookIn:=xlFormulas, LookAt:=xlPart, _
    MatchCase:=False, SearchOrder:=xlByRows, SearchDirection:=xlNext)
        If c Is Nothing Then
        MsgBox ("No se encontraron resultados")
        Exit Sub
    End If
    firstAddress = c.Address
Do
    Celdas = Celdas & "," & c.Address
    Set c = [A:A].FindNext(After:=c)
    Range(c.Address).Select
Loop While c.Address <> firstAddress
Application.ScreenUpdating = True
Range(Mid(Celdas, 2, Len(Celdas))).Select '**AQUI ME RESALTA EL  ERROR******
Selection.Copy
    Set c = Nothing.
Ese código realmente es muy confuso...
¿Por lo que ue vi en tu primer post quieres digitar una palabra y que te lo busque en la primera columna verdad?
¿Te pregunto el valor es exacto o es aproximado? Y hacemos un código distinto porque a mi me reporta un Loop...

Añade tu respuesta

Haz clic para o