![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
17/11/2009, 02:06
|
![Avatar de ceSharp](http://static.forosdelweb.com/customavatars/avatar269155_2.gif) | | | Fecha de Ingreso: octubre-2008 Ubicación: Madrid
Mensajes: 495
Antigüedad: 16 años, 3 meses Puntos: 66 | |
Respuesta: Podría hacerce esto en excel? ayuda!!!! a ver, que ahora creo que me he enterado... jejejeje
Tu quieres rellenar en hoja1 un rango de varias filas y columnas, no?
y que dicho rango se copie en la hoja2 y cada nueva ficha se vaya copiando justo debajo de la última copiada, eso es?
si quieres cópiate este código para tu botón. yo he estado probando esta funcionalidad y funciona bien.
-----------------------------------------------
'declaro la variable que controla la cantidad de fichas almacenadas
Dim fichas As Integer
fichas = Hoja2.Range("F1")
'selecciono el rango de la hoja1 (en este caso desde A1 a E6)
Range("A1:E6").Select
'copio el rango
Selection.Copy
'voy a hoja2
Sheets("Hoja2").Select
'mediante la variable fichas sé en todo momento cuántas hay almacenadas,
'sin necesidad de abrir ningún archivo. si fichas es 0 es que es la primera de todas
If fichas = 0 Then
Hoja2.Range("A1").Select
ActiveSheet.Paste
'y actualizo la celda F1 de hoja2 para que ahora haya una
Hoja2.Range("F1") = 1
Else
'si fichas es mayor que cero multiplico la variable por el número de filas
'que copio de la hoja1. En este ejemplo el total de filas es 6 añado un más uno
'para que no pise la última fila de la anterior ficha
Hoja2.Range("A" & (fichas * 6) + 1).Select
ActiveSheet.Paste
'y actualizo la celda F1 con una ficha más
Hoja2.Range("F1") = Hoja2.Range("F1") + 1
End If
'opcional: si no quieres volver a la hoja1 comenta esta línea
Sheets("Hoja1").Select
Range("A1").Select
--------------------------------------------------
como puedes ver en este ejemplo ya no es necesario que llames a un archivo externo para saber en que fila tiene que empezar a pegar la ficha, la almacenas en la propia hoja. Yo te he puesto F1 de la hoja2, pero bueno, veo que controlas VBA y sabrás 'esconder' bien esta celda que marcará cuántas fichas tienes ya almacenadas.
bueno, si esto tampoco te vale ya desisto! jejejejejeje que debe ser que ando muy 'espeso' últimamente. ;)
salu2 |