Problema con macro: Copiar modulo de VB

Hola, desde ya gracias por su tiempo
Tengo un problema al querer escribir una macro para copiar un modulo de VB de un libro a otro.
Primero, salvo el archivo en el cual generé el informe (y donde están guardados todos los modulos) con un nombre nuevo
Dim newFile As String, fName As String
fName = Range("F2").Value
newFile = "IDM - Docs qtty evolution - " & fName & " " & Format$(Date, "yyyymmdd")
ChDir _
"D:\Documents and Settings\60030972\My Documents\DIQT\IDM\Docs qtty evolution\Reports"
ActiveWorkbook.SaveAs Filename:=newFile, ReadOnlyRecommended:=True
Hasta acá todo OK, funciona sin problema.
Luego, quiero copiarle a ese nuevo archivo un modulo del archivo anterior:
Const MODULE_NAME As String = "Module11"
Const TEMPFILE As String = "D:\Modul1.bas"
Dim newFile As Workbook
On Error Resume Next
Kill ("D:\Modul1.bas")
On Error GoTo 0
'Exporto el modulo al archivo temporal
ActiveWorkbook.VBProject.VBComponents(MODULE_NAME).Export TEMPFILE
'Importo el modulo al archivo que creamos al inicio (al que le dimos nombre con el uso de la variable newFile)
newFile.VBProject.VBComponents.Import TEMPFILE
'kill al modulo temporal
Kill TEMPFILE
End Sub
Tengo un problema concreto y además una duda, si pudieran aclararme:
El problema: en la linea "ActiveWorkbook.VBProject.VBComponents(MODULE_NAME).Export TEMPFILE" recibo el error Run-time error'9': Subscritp out of range. No se como solucionarlo. Por ende el archivo temporal no se crea.
La duda: ¿va a funcionar la linea "newFile.VBProject.VBComponents.Import TEMPFILE", si primero a newFile lo defini como string y luego como Workbook?
Muchas gracias nuevamente!

Añade tu respuesta

Haz clic para o