Hola compañeros, hoy me surgio un gran problema ya que despues de tratar por mucho tiempo mi codigo no funciona. Lo que quiero es pasar informacion a partir de id's entre dos libros de excel. Mi idea es recorrer todos los id's con un do while. El proceso es sencillo, busca el primer id y copia su numero, de ahi copia los datos necesario para despues abrir el otro libro buscar el id que tiene guardado y pegar los datos. Por alguna razon me da error 91 cuando busca el id. Por favor ayudenme que es para mi servicio social y ya no se que hacer. Les pego mi codigo simplificado para que me ayuden.
totallibro = Application.ThisWorkbook.Name
casalibro = Application.GetOpenFilename
Workbooks.Open casalibro
casalibro = Application.ActiveWorkbook.Name
'Nos situamos en la celda con el primer dato
Sheets("CLASES 1").Select
Range("A7").Select
'Hasta que no encuentre una fila vacía...
Do While Not IsEmpty(ActiveCell)
If ActiveCell.Offset(1, 0).Value = "" Then
'puse este exit do para que cuando llegue al espacio en blanco termine
Exit Do
End If
'---------------------------------------------------------------------------------------
'primera hoja
Dim id As String, valor As String, total As String
id = ActiveCell.Text
[A:A].Find(What:=id, LookIn:=xlValues, LookAt:= _
xlPart).Activate
'---------------------------------------------------------------------------------------
Dim clasefor As String, horafor As String
'copia los datos
total = "CLASES - FORMACIÓN HUMANA"
x = hojacasa(total)
clasefor = ActiveCell.Text
'---------------------------------------------------------------------------------------
'segunda hoja
'buscamos el id que queremos
Workbooks(totallibro).Activate
Sheets("CAPACITACION").Select
[A:A].Find(What:=id, LookIn:=xlValues, LookAt:= _
xlPart).Activate
'su fila
Dim fila As String, dato As String
dato = ActiveCell.Address
fila = Mid(dato, InStr(dato, "$") + 3)
'copia los datos
mesclasereli = mesclasereli & fila
Range(mesclasereli).FormulaR1C1 = Val(clasereli) + Val(Range(mesclasereli).Text)
meshorareli = meshorareli & fila
Range(meshorareli).FormulaR1C1 = Val(horareli) + Val(Range(meshorareli).Text)
'---------------------------------------------------------------------------------------
Workbooks(casalibro).Activate
Sheets("CLASES 1").Select
[A:A].Find(What:=id, LookIn:=xlValues, LookAt:= _
xlPart).Activate
x = meses()
'movernos un espacio
ActiveCell.Offset(1, 0).Select
Loop
Workbooks(casalibro).Close
Workbooks(totallibro).Activate
Exit Sub
Espero me puedan ayudar.