COPIAR UNA FILA A OTRA HOJA EN CELDAS SEPARADAS

15/11/2006 - 05:59 por seriodevilson | Informe spam
Que tal, saludos a todos, soy nuevo en el Grupo y les agradecería
mucho que me pudieran brindar su ayuda; el asunto es este:
Tengo un Libro con 2 hojas ("Formulario" y "Relacion") de las
cuales "Formulario" es, como su nombre lo dice una plantilla diseñada
como un formulario en la cual ingreso, entre otros datos; fecha de
ingreso del paciente, hora de ingreso, nombre, diagnostico, domicilio,
telefono, etc., y las ingreso en celdas separadas ("A7", "C15", "C9",
"A5", "D3", "F3", "E5", "G5", etc.); para tal efecto copie de una
consulta en un grupo una macro que pega todos los datos en la hoja
"Relacion" en una sola fila a manera de base de datos y funciona
perfectamente; sin embargo quisiera un codigo que hiciera lo contario,
o sea que copie una fila de la hoja "Relacion" y pegue los datos en la
hoja "Formulario" en sus respectivas celdas:

Sub copiarceldas()
Dim rng As Range, i As Long, Rangos
Rangos = Array("A7", "C15", "C9", "A5", "D3", "F3", "E5", "G5",
"E7", "A9", "E9", "A11", "C11", "E11", "G11", "A13", "C13", "A15",
"A17", "F17", "G17", "A19", "G7", "A42")
With Sheets("RELACION")
Set rng = .Cells(.Rows.Count, "A").End(xlUp)
For i = LBound(Rangos) To UBound(Rangos)
rng.Offset(1, i).Value _
= Sheets("FORMULARIO").Range(Rangos(i)).Value
Next i
End With

End Sub

Gracias.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
15/11/2006 - 06:43 | Informe spam
hola, 'nuevo en el grupo' :)

ya que te 'confiesas' nuevo, dejame darle un 'toque de formalidad informal' a esta conversacion :))
yo me llamo hector, y me gusta 'mirar a los ojos de mi interlocutor' :D
asi que, si me lo permites [y/o no te 'incomoda'] te llamare [de momento] 'anomimo/a'
ya que el 'nick' que pones pudiera no tener relacion con tu nombre 'real'... vale ?

'regresando' a tu consulta, y segun comentas...

... un Libro con 2 hojas... "Formulario"... una plantilla... en la cual ingreso
... fecha de ingreso del paciente, hora de ingreso, nombre, diagnostico, domicilio, telefono, etc.
... en celdas separadas ("A7", "C15", "C9", "A5", "D3", "F3", "E5", "G5", etc.)
... copie... una macro que pega... los datos en la hoja "Relacion" en una sola fila a manera de base de datos
... quisiera un codigo que hiciera lo contario, o sea que copie una fila de la hoja "Relacion"
... y pegue los datos en la hoja "Formulario" en sus respectivas celdas:



-> solo haria falta que menciones como sabria el codigo 'cual' fila debe 'traerse' de la hoja 'relacion' a la hoja 'formulario' -?-
y [p.e.] si existe la posibilidad de que un mismo paciente/nombre tenga varios 'registros/fechas/filas/diagnosticos/...' -?-
y/o alguna 'combinacion' de campos/columnas/... que permita 'asegurar/se/te' que 'se va a traer' la fila 'correcta' :))

comentas [si hubiera] algun otro 'detalle en el tintero' ?
saludos,
hector.

__ el codigo expuesto __
Sub copiarceldas()
Dim rng As Range, i As Long, Rangos
Rangos = Array("A7", "C15", "C9", "A5", "D3", "F3", "E5", "G5", "E7", "A9", "E9", "A11", "C11", "E11", "G11", "A13", "C13", "A15", "A17", "F17", "G17", "A19", "G7", "A42")
With Sheets("RELACION")
Set rng = .Cells(.Rows.Count, "A").End(xlUp)
For i = LBound(Rangos) To UBound(Rangos)
rng.Offset(1, i).Value _
= Sheets("FORMULARIO").Range(Rangos(i)).Value
Next i
End With
End Sub
Respuesta Responder a este mensaje
#2 seriodevilson
15/11/2006 - 11:55 | Informe spam
Antes que otra cosa suceda, gracias por responder Hector Miguel, mi
nombre es Sergio y te mando un saludo desde Mazatlan, Sinaloa, Mexico;
tratare de aclarar la duda que te surgio sobre el planteamiento de mi
problema: como lo habras notado, al oprimir el boton que hace correr la
macro las referencias a las celdas incluidas en el codigo expuesto se
copian en la hoja "RELACION" en la siguiente fila vacia empezando por
la columna A y en ese orden, lo que yo quisiera es que al seleccionar
un rango de cualquier fila (de la columna A a la W, si no conte mal)
estas se copien en las celdas equivalentes de la hoja "FORMULARIO"
incluidas en el codigo expuesto; y si, existen muchos pacientes
repetidos, pero eso no importa, lo que pretendo es tomar los datos
anteriores del paciente y modificar solo la fecha, hora y el
diagnostico; bueno, espero no haberte agrandado mas tus dudas,
agradeciendote de antemano, reitero mis saludos
Sergio Gerardo
Respuesta Responder a este mensaje
#3 Héctor Miguel
15/11/2006 - 17:13 | Informe spam
hola, Sergio !

... lo que yo quisiera es que al seleccionar un rango de cualquier fila (de la columna A a la W, si no conte mal)
.. se copien en las celdas equivalentes de la hoja "FORMULARIO" incluidas en el codigo expuesto
... lo que pretendo es tomar los datos anteriores del paciente y modificar solo la fecha, hora y el diagnostico [...]



la siguiente macro, la corres desde la hoja 'relacion' habiendo seleccionado 'cualquier' fila a 'regresar' al formulario ;)
si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

Sub Rellenar_formulario()
Dim Col As Byte, Destino
Destino = Array("a7", "c15", "c9", "a5", "d3", "f3", "e5", "g5", "e7", "a9", "e9", "a11", _
"c11", "e11", "g11", "a13", "c13", "a15", "a17", "g17", "a19", "g7", "a42")
With Worksheets("formulario")
For Col = LBound(Destino) To UBound(Destino)
.Range(Destino(Col)) = Cells(ActiveCell.Row, 1).Offset(, Col)
Next
End With
End Sub

p.d. saludos desde zapopan, jalisco (la 'sucursal del cielo'] :))
Respuesta Responder a este mensaje
#4 seriodevilson
15/11/2006 - 18:54 | Informe spam
Que tal Hector! Quedo Perfecto! Te felicito, y me sirves de aliciente
para dedicarme de lleno para aprender vba. Aunque al principio anduve
rebotando ya que pegaba datos donde no correspondia, revise el codigo
que me proporcionaste y solo faltaba referenciar la celda "f17", pero
eso es "pecata minuta", tambien tuve problemas con pegar los datos
porque la hoja "formulario" la tengo protegida, pero la configure de
tal manera que permitiera pegar los datos, te agradezco mucho que hayas
tomado parte de tu tiempo para resolver mi problema.

P.D. por cierto, tal vez vaya dentro de unos dias a realizar unas
compras a Guadalajara, si no es mucho pedir, me podrias aconsejar sobre
una libreria donde conseguir literatura sobre vba para excel?, te lo
agradeceria mucho.

Te doy las gracias de nueva cuenta,

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