Pasar datos de una hoja a otra

9 envíos / 0 nuevos
Último envío
patob888
Imagen de patob888
Offline
última acción: Hace 8 años 5 meses
alta: 14/03/2011 - 11:39
Puntos: 55
Pasar datos de una hoja a otra
Buenas gente, mi duda es la siguiente. Tengo datos en una hoja que quiero pasarlos a otra hoja, el problema es que ninguna de las dos hojas tiene el mismo formato para ingresar los datos.
pacomegia
Imagen de pacomegia
Offline
última acción: Hace 10 horas 9 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 10365
mira este ejemplo

antes que nada, mira este envío donde se comenta cómo pasar datos de una hoja a otra

Cuando dices distinto formato me imagino que te refieres a que las columnas no están en el mismo orden, o a que datos equivalentes están en celdas distintas en cada hoja, o a que tienes datos en celdas de un formulario y quieres pasarlo a un listado conjunto.

¿puedes adjuntar un ejemplo de los datos para ver cómo están organizados?

------
Ya sé Excel, pero necesito más ahora en pdf

 

Data Tools Suite
datos y tablas con Excel

patob888
Imagen de patob888
Offline
última acción: Hace 8 años 5 meses
alta: 14/03/2011 - 11:39
Puntos: 55
Re: mira este ejemplo
Hola, te adjunte el ejemplo. Como veras, en la hoja 1 esta la informacion que necesito pasar a la hoja 2. En la hoja1, vas a ver que en columnas distitnas esta el IVA y el total facturado en distintas columnas, esa informacion, en la hoja2 necesito ponerla en una misma columna en 2 filas consecutivas, y en la 3er fila sacar la diferencia de los mismos. Todo eso para un monton de datos. Espero haberme explicado bien. Gracias por contestar
AdjuntoTamaño
File EJEMPLO.xlsx11.56 KB
pacomegia
Imagen de pacomegia
Offline
última acción: Hace 10 horas 9 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 10365
no entiendo

¿por qué tiene que estar todo en la misma columna?¿cómo vas a distinguir un registro del siguiente?

¿la diferencia entre el total facturado y el iva no es el importe, que también está en la Hoja1?

no entiendo tu hoja2.

en cualquier caso:
A fin de cuentas se tratará de crear un bucle que recorra todas las filas de tu hoja1, y para cada una de ellas copie tres datos en la Hoja2

si por ejemplo en la columna A siempre hay datos, puedes utilizarla para ese bucle

Range("A2").Select
Do Until IsEmpty(ActiveCell)
...
  Activecell.Offset(1,0).Select
Loop

------
Ya sé Excel, pero necesito más ahora en pdf

 

Data Tools Suite
datos y tablas con Excel

patob888
Imagen de patob888
Offline
última acción: Hace 8 años 5 meses
alta: 14/03/2011 - 11:39
Puntos: 55
Re: Gracias
Gracias. Mira te explico. La hoja2 son tablas de sql, hay muchos datos de la hoja1 q hay q ponerla en la hoja2, para esa hoja2 luego ponerla en la BD. Podrias decirme tambien como hago para que desde un formulario en excel mediante un textbox pedir un rango de celdas? Ah, otra cosa. Como hago para que en la ultima instruccion antes del loop me vaya aumentando el numero de filas? gracias.
pacomegia
Imagen de pacomegia
Offline
última acción: Hace 10 horas 9 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 10365
Re: Gracias

para elegir un rango, hay un control específico que puedes usar en los formularios, se llama refEdit.
este control es para los formularios de vba, no lo puedes poner en la hoja.

control de formulario en Excel VBA para elegir una referencia.

con un textbox, lo único que puedes hacer es utilizar la cadena de texto que proporcionen, que puede ser algo así "A1:B100"
y emplearlo como argumento del rango

   Range(eltextodetutextbox)

 

Por último, para que aumente el número de filas... ¿cómo las estás contando?¿con una variable? ¿ i = i+1 ?
si estás utilizando la celda activa ten cuidado con los cambios de hoja, asegúrate de que la celda activa es la correcta.

------
Ya sé Excel, pero necesito más ahora en pdf

 

Data Tools Suite
datos y tablas con Excel

patob888
Imagen de patob888
Offline
última acción: Hace 8 años 5 meses
alta: 14/03/2011 - 11:39
Puntos: 55
Re: Gracias

El metodo me queda en un bulce infitino. Podrias explicarme que esoy haciendo mal si no es molestia?

Private Sub CommandButton1_Click()
Range("A2").Select
Do Until IsEmpty(ActiveCell)
Selection.Copy
Sheets("Hoja2").Select
Range("b2").Select
ActiveSheet.Paste
ActiveCell.Offset(1, 0).Select
Loop
End Sub

pacomegia
Imagen de pacomegia
Offline
última acción: Hace 10 horas 9 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 10365
Re: Gracias

Es que dentro del bucle seleccionas siempre la celda B2 de la Hoja2 y pegas ahí, pero no vuelves a la hoja inicial a copiar otra cosa distinta.

el bucle se queda en la Hoja2, selecciona la celda de debajo de la B2, es decir, la B3

copia la B3
selecciona la B2
pega en B2 lo que ha copiado de B3
vuelve a seleccionar B3
y repetimos.

nunca sales de B2 y B3

te vuelvo a decir lo mismo que antes, si trabajas con ActiveCell y ActiveSheet, asegúrate de el programa se está refiriendo realmente a lo que tú crees que se está refiriendo.

------
Ya sé Excel, pero necesito más ahora en pdf

 

Data Tools Suite
datos y tablas con Excel

higinio
Imagen de higinio
Offline
última acción: Hace 8 años 5 meses
alta: 16/03/2011 - 19:41
Puntos: 10
Re: mira este ejemplo

¿Con una tabla dinámica?

AdjuntoTamaño
File Copia de EJEMPLO.xlsx16.97 KB