Ver Mensaje Individual
  #3 (permalink)  
Antiguo 26/10/2009, 03:00
alekula
 
Fecha de Ingreso: julio-2007
Mensajes: 79
Antigüedad: 17 años, 9 meses
Puntos: 0
Respuesta: Dos Hojas de Excel distintas

Gracias por responder pero ese fue un error mi al transcribirlo.
Yo sigo investigando pero tengo fe que me ayudes a resolverlo ya que con el otro tema de las cola de impresion lleve mucho tiempo con google y varios tutoriales y ejemplos que no me sirvieron de nada. Pero tu respues si me ayudo a resolverlo.
Mi problema es el siguiente yo llevo varias listas de productos en una planilla de excel la cual tiene varios libros. Cada libro tiene su particularidad para recorrerlo con las sentencias:

With xLibro
'With .Sheets("libro1") 'Hacemos referencia a la Hoja1

.Cells(5, 1).Select 'me posiciono en la primera celda columna y filaSelection.End(xlDown).Select 'Baja hasta la última celda llena
Primeraparte = ActiveCell.Row
alae = 1
For alae = 1 To Primeraparte
Productos1(alae, 0) = .Cells(alae + 4, 1)
Productos1(alae, 1) = .Cells(alae + 4, 2)
Next alae
Selection.End(xlDown).Select 'Baja hasta la última celda llena
Fila = ActiveCell.Row 'capturo la fila
'Columna = ActiveCell.Column 'capturo la columna
'hh = NumeroJuego - 6000 'hh es la fila del primer juego del 6000
rr = .Cells(Fila + hh, 1) 'pongo en ll lo que dice en la celda
'carpeta = .Cells(Fila + hh, 2) 'me posiciono donde elijo
'MsgBox "rr " & rr
Selection.End(xlDown).Select 'Baja hasta la última celda llena
UltimaLinea = ActiveCell.Row 'capturo la fila
UltimoJuego = Val(.Cells(ActiveCell.Row, 1))
'MsgBox "UltimoJuego " & UltimoJuego
'MsgBox "UltimaLinea " & UltimaLinea
For qaq = Fila To UltimaLinea
'MsgBox qaq & .Cells(qaq, 2)
Productos1(rr + kak, 0) = .Cells(qaq, 1)
Productos1(rr + kak, 1) = .Cells(qaq, 2)
kak = kak + 1
Next qaq
End With
End With

con esto cargo en el primer array (Productos1)


Ahora lo que necesito hacer es pasar al libro2 y con otra secuencia de intrucciones dentro del libro2 del excel poder capturar el array(Productos2)
Si hago de esto una rutina (cosa que seria lo ideal) siempre me da error entre que abro y cierro el excel desde vb, hice muchas pruebas y todas me fallaron asi que estoy tratando que lo primero que haga el programa es cargar en array todas las matrices asi despues no tener problemas con variable global algo asi como fuera de rango y demas errores.
Entoces la idea es que antes de cerrar el excel cargar la otra matriz pero como tiene el 'With .Sheets("libro1") no se como pasar al libro2 por lo que se me ocurrio al ver esta intruccion en un ejemplo por la web
msgbox xLibro.Sheets("wii").Cells(8, 2)
que tendria que existir como ir de una casillero a otro haciendo referencia al libro como por ejemplo que no me anda pero me imagino que podria ser esta sintaxis

xLibro.Sheets("libro2").Cells(8, 2).Select
xLibro.Sheets("libro2").Selection.End(xlDown).Sele ct

y asi pero esto me da error capaz existe esto pero con otra sintaxis que no logro encontrar en la web

La idea es hacer referencia en la misma apertura de excel a varios libros de excel

libro1
libro2
libro3


Si sabes algo de esto un ejemplo seria de gran ayuda Gracias.