Error en el código

Hola de nuevo,

Al ejecutar el código ahora, me da error. No lo entiendo, es el mismo archivo de anoche, anoche me iba genial y ahora me falla. He intentado hacer todo lo que me dijiste en los anteriores msj y no lo soluciono.

Es que este archivo lo tiene que tener 3 personas, y no puede fallar.

¿Sabes que es lo uqe puede pasar?Sale error 9, en el tiempo de ejecución, error en subíndice.

Gracias

1 respuesta

Respuesta
1

Mandame los archivos nuevamente y lo reviso.

Hola Dam,

Ok. Ya te lo he enviado

Saludo

En los archivos que me enviaste no viene la macro, por favor, puedes enviarme los archivos con los que tienes problemas y que venga la macro, creo que debe venir en el archivo destino.

Gracias. Dam

Hola Dam

Lo acabo de comprobar todo lo que me has dicho, copiarlo en una nueva hoja, quitar los botones, poner otro directorio, y ahora me sale que se han copiado 0 producto.

Pero, esto mal pq en la hoja de origen he metido nuevos productos y no me los copia en el destino.

Gracias

un saludo

¿Ya intentaste correr la macro con una hoja destino vacía? Te debería copiar todos, intentalo y me dices.

Se me ocurre otra idea, al parecer tiene problemas para interactuar con 2 libros, voy a copiar el origen en una nueva hoja en el destino (hoja temporal), hago la actualización de los productos nuevos y borro la hoja temporal.

Te anexo la macro, pruébala y me dices.

Sub destino()
Application.ScreenUpdating = False
Dim Res As Variant
Dim producto As Variant
Workbooks("destino").Activate
    Sheets("CAT.PRINCIPAL").Select
    ufiladestino = Range("C" & Rows.Count).End(xlUp).Row
    Sheets.Add
    nuevahoja = ActiveSheet.Name
Workbooks.Open Filename:="C:\Documents and Settings\DAMOR\Mis documentos\docs\Soporte expertos\fati\origen"
    Cells.Select
    Selection.Copy
Workbooks("destino").Activate
    Sheets(nuevahoja).Select
    ActiveSheet.Paste
    ufilaorigen = Range("B" & Rows.Count).End(xlUp).Row
j = 1
For i = 6 To ufilaorigen
    Sheets(nuevahoja).Select
    ActiveSheet.Cells(i, 2).Select
    producto = ActiveCell
    Sheets("CAT.PRINCIPAL").Select
    Cells(i, 3).Select
    Set RangoObj = Selection.Find(What:=producto, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True _
        , SearchFormat:=False)
    If RangoObj Is Nothing Then
        Sheets(nuevahoja).Select
        ActiveSheet.Range(Cells(i, 1), Cells(i, 16)).Copy
        Sheets("CAT.PRINCIPAL").Select
        Cells(ufiladestino + j, 2).Select
        ActiveSheet.Paste
        j = j + 1
    End If
Next
MsgBox ("Actualización Terminada, Se copiaron: " & j - 1 & " Productos")
   Application.DisplayAlerts = False
   Worksheets(nuevahoja).Delete
   Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

Saludos.daM

Hola Dam,

Ya no sé que hacer, me sigue saliendo el mismo error con la nueva macro.

Error número 9, Subíndice fuera de intervalo.

Ambos libros están abiertos y he cambiado el directorio y la nueva macro como me dijiste ayer.

Sigo intentándolo copiándolo en nuevas hojas, en nuevos libros y me sale el mismo error. No sé que puede pasar, pero esto es rarísimo.

De verdad, perdona por ser tan pesada

Gracias.

Dam

Otra cosa, cada vez que cierro el libro y he hecho un cambio, para guardar los cambios me sale un aviso:

Microsoft Excel comprobador de compatibilidad. Las siguientes características de este libro no se admiten en versiones anteriores de excel, Es posible esta características se pierdan o se degraden...

Algunas celdas o estilo de este libro contiene formato no admitido en el formato de archivo seleccionado. Este formato se convertirá al formato más cercano disponible. 97-2003

¿Puede ser por esto?

Gracias

Un saludo

Voy a ejecutar la macro en un excel 2007, porque yo tengo 2003, entonces la macro que me genere te la mando para verificar si es por eso.

Por otra parte, creo que los archivos que manejas son muy grandes, por las imágenes que tienen cargadas, eso hace que sea lento y a veces se trabe el excel. Voy a crear otra macro, en excel 2007, que lea solamente lea los productos, pero en otra hoja, cerrando los archivos "origen" y "destino", para hacer la comparación y regrese únicamente con los productos nuevos, y después veo como recuperar la imágenes, ya estoy mareado, jajaja. Bueno lo intentamos y te aviso.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas