Título: VBA - Error 9 (Subindice) y otra duda. Publicado por: edr89 en 26 Septiembre 2011, 01:44 am Hola,
estoy ejecutando una macro de excel que extrae información de un libro y lo copia a otro, el archivo con datos se llama protocolo y todo se copia al informe de protocolo. Tengo 2 protocolos, ejecuto la macro para el primero, ya que extrae la información cierro el primer protocolo y abro el segundo, al ejecutar la macro me da el Error 9 Subindice fuera de intervalo. Siempre tengo que cerrar y abrir ambos documentos, protocolo e informe y esto es lo que quiero evitar ya que a veces tengo 6 o 7 protocolos y pierdo algo de tiempo cerrando y abriendo todo de nuevo. La información la copio de un libro a otro haciendo referencia entre libros con: Código: Windows().Activate Hay datos que pueden no tienen una celda fija, lo unico que se me ocurrio fue activar una celda del informe y hacer un vlookup: Código: Windows("Informe de Protocolo.xlsm").Activate ¿Hay alguna forma mas eficiente de extraer la información? ¿Cómo puedo evitar el error 9? Saludos. Título: Re: VBA - Error 9 (Subindice) y otra duda. Publicado por: edr89 en 24 Noviembre 2011, 09:01 am Respecto a la extración de información me resultó más útil este código:
Código: Windows("protocolo.xls").Activate Si la celda hace referencia a una formula entonces pego por valores y no con "Active Sheet.Paste". Código: Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ Queda pendiente el error de subindice :huh: Título: Re: VBA - Error 9 (Subindice) y otra duda. Publicado por: edr89 en 1 Diciembre 2011, 08:22 am Para evitar error 9 hice un proceso mas completo, primero abro el archivo y despues ejecuto la extracción
Para abrir archivo: Código: Dim ExtArchivo As String, Titulo As String Título: Re: VBA - Error 9 (Subindice) y otra duda. Publicado por: edr89 en 11 Diciembre 2011, 23:50 pm Para poder extraer la información de libros con diferentes nombres, primero lo abro y despues agrego estas lineas:
Código: Dim LibroaCopiar As String Así ya no tengo que renombrar el archivo a protocolo.xls, el código identifica al archivo abierto como LibroaCopiar, sin importar el nombre o caracteres que tenga. |