AYUDA CON MACRO

12/10/2006 - 20:35 por LUIS DANNY SALAS | Informe spam
Hola, muchas gracias de antemano a quien pueda ayudarme.
tengo la siguiente macro en un libro llamado "REGISTRO DIGITAL", que me
sirve para actualizar una hoja del mismo llamada "MATRICULA" lo hace
copiando la hoja "RECIENTE" de otro libro llamado "ACTUALIZAR"

Sub ACTUALIZACION()
Sheets("MATRICULA").Select
ActiveSheet.Unprotect
Windows("ACTUALIZAR.xls").Activate
Sheets("RECIENTE").Select
Range("A2:Z5000").Select
Selection.Copy
Windows("REGISTRO DIGITAL.xls").Activate
Sheets("MATRICULA").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Range("A2").Select
Application.CutCopyMode = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True
ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
Sheets("INDICE").Select
End Sub



Funciona perfectamente siempre y cuando el libro que estoy actualizando se
llame "REGISTRO DIGITAL" pero si a este libro le he cambiado el nombre y le
he llamado por ejemplo "REGISTRO DIGITAL I PERIODO" la macro al ejecutarse
presenta el sigueinte error " se ha producido un error 9 en tiempo de
ejecucion, subindice fuera de itervalo.
Que instruccion puedo poner en vez de -Windows("REGISTRO
DIGITAL.xls").Activate - para que reconozca que debe copiar en el mismo
libro aunque no se llame REGISTRO DIGITAL ?

No saben cuanto agradezco si alguien puede ayudarme.
Gracias de antemano
 

Leer las respuestas

#1 Héctor Miguel
13/10/2006 - 03:25 | Informe spam
hola, Luis !

tengo la siguiente macro en un libro llamado "REGISTRO DIGITAL" [...]
Funciona perfectamente siempre y cuando el libro que estoy actualizando se llame "REGISTRO DIGITAL"
pero si a este libro le he cambiado el nombre... por ejemplo "REGISTRO DIGITAL I PERIODO"...
la macro... presenta el... error "se ha producido un error 9 en tiempo de ejecucion, subindice fuera de itervalo.
Que instruccion puedo poner en vez de -Windows("REGISTRO DIGITAL.xls").Activate -
para que reconozca que debe copiar en el mismolibro aunque no se llame REGISTRO DIGITAL ?



solo modifica la linea donde se 'intenta' activar el libro [mismo] que contiene los codigos
[y que no estas seguro de que se siga llamando igual]...
de: -> Windows("REGISTRO DIGITAL.xls").Activate
a. -> ThisWorkbook.Activate

saludos,
hector.

__ el codigo expuesto __
Sub ACTUALIZACION()
Sheets("MATRICULA").Select
ActiveSheet.Unprotect
Windows("ACTUALIZAR.xls").Activate
Sheets("RECIENTE").Select
Range("A2:Z5000").Select
Selection.Copy
Windows("REGISTRO DIGITAL.xls").Activate
Sheets("MATRICULA").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("A2").Select
Application.CutCopyMode = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
Sheets("INDICE").Select
End Sub

Preguntas similares