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

Preguntas similare

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
Respuesta Responder a este mensaje
#2 Héctor Miguel
13/10/2006 - 07:37 | Informe spam
hola, Luis !

no me hagas -mucho- caso, ya que las siguientes son -puras- asunciones mias :D [pero supongo que]...

- aun para los desarrolladores de excel, les seria dificil 'armar' un catalogo de tales 'magnitudes' [imagina que]
para quien 'busque' [algo] de 'cierta manera'... lo encuentre !
para quien 'busque' [algo] de distinta forma... lo encuentre [tambien] ! :))

- [con practica y 'teson']... se va aprendiendo/comprendiendo/... el 'modelo de objetos' de las aplicaciones por VBA [p.e.]...
la palabra 'Selection' -> NO te 'garantiza' que el objeto seleccionado tenga una propiedad '.Font' [al menos de forma 'directa']
la propiedad '.FormulaR1C1' -> NO es 'indispensable' para depositar un -simple- valor/texto/... en una celda

- 'determinar' cuales codigos [o procedimientos] son mas... 'comunes' [seguramente]...
dependeria de otro tipo de 'factores/habitos/costumbres/necesidades/...' :)) [p.e. y 'generalmente']
NO es necesaria una 'danza' por los objetos [seleccionandolos uno a uno] para 'administrar' sus propiedades

[en fin]... que no te 'apene'... el 'molestar'... que TODOS saldremos ganando :D

saludos,
hector.

__ la consulta original __
... habra... catalogo o... una lista de codigos mas comunes con la descripcion de cual funcion ejecuta?? ...ejemplo ...
Trasladarse a una Celda Range("A1").Select
Escribir en una Celda Activecell.FormulaR1C1="Ramon"
Letra Negrita Selection.Font.Bold = True
Letra Cursiva Selection.Font.Italic = True
Letra Subrayada Selection.Font.Underline = xlUnderlineStyleSingle

No me refiero a manuales que yo se que hay muchos si no a una especie de catalogo o glosario o diccionario de codigo
... algo mas extenso, por ejemplo para mi hubiera sido mas util con esta duda buscar en un catalogo o algo asi
... antes de tener que preguntar en el foro, no se si me explico, asi no tendria que estar molestando tanto ;)
Respuesta Responder a este mensaje
#3 LUIS DANNY SALAS
14/10/2006 - 06:44 | Informe spam
Muchisimas Gracias!!!!
no habra alguna especie de catalogo o algo asi donde venga una lista de
codigos mas comunes con la descripcion de cual funcion ejecuta??
por ejemplo algo asi:
Trasladarse a una Celda

Range("A1").Select

Escribir en una Celda

Activecell.FormulaR1C1="Ramon"

Letra Negrita

Selection.Font.Bold = True

Letra Cursiva

Selection.Font.Italic = True

Letra Subrayada

Selection.Font.Underline = xlUnderlineStyleSingle



No me refiero a manuales que yo se que hay muchos si no a una especie de
catalogo o glosario o diccionario de codigo donde venga esto mismo , pero
algo mas extenso , por ejemplo para mi hubiera sido mas util con esta duda
buscar en un catalogo o algo asi antes de tener que preguntar en el foro, no
se si me explico , asi no tendria que estar molestando tanto ;)

muchas gracias nuevamente.

"Héctor Miguel" wrote in message
news:
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


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida