copiar lineaen otra hoja

28/01/2008 - 21:22 por JAGE | Informe spam
Hola a todos
De nuevo necesito un poco de idea,
Como puedo con una macro buscar un valor en una columna y copiar toda la
línea del valor en otra hoja .
no se muy bien como copiar de una hoja a otra una línea por medio de una
macro

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
29/01/2008 - 06:25 | Informe spam
hola, !

Como puedo con una macro buscar un valor en una columna y copiar toda la linea del valor en otra hoja.
no se muy bien como copiar de una hoja a otra una linea por medio de una macro



vendria bien si recortas un poco el "abanico" (posiblemente extenso) de probabilidades/eventualidades/suposiciones/... (p.e.)

- como debe la macro identificar el dato que se va a buscar ?
(alguna celda ?... cual ?... de que hoja ?... quieres que le pregunte al usuario ?... algun formulario ?... ???)

- en cual columna (y de que hoja) habra de buscar si existe el dato que se busca ?

- "copiar"... significa con todo y formulas/formatos/propiedades/... ? (o solo te interesan los valores resultantes) ?
(y si es necesario copiar TODA la fila ?... o solamente "ciertas" columnas ?)

- "a donde" (celda y hoja) quieres que se haga la copia del dato encontrado (si existe) ?
(en la siguiente fila libre de algun registro previo/acumulado/historico/... ?)
(o necesitas que previamente compruebe si ya se paso ese dato anteriormente y solo "actualice" sus cambios ?)

(probablemente haya algun otro detalle "en el tintero"... como que es buen momento de sacarlo a la superficie) :))

saludos,
hector.
Respuesta Responder a este mensaje
#2 JAGE
29/01/2008 - 19:50 | Informe spam
Bien :)
Gracias Héctor ya en anteriores ocasiones me has dado ideas.
En esta ocasión se nota que no he sido muy concreto.
mi intención es, ya sea con un formulario, o con un input o selec, no me lo
había planteado, poder seleccionar un dato de una sola columna, (es una hoja
con 5 columnas y no mas de 200 filas) copiar la línea donde esta el dato en
otra hoja que ya existe.
posteriormente la podré imprimir
eso es todo gracias


"Héctor Miguel" escribió en el mensaje
news:
hola, !

Como puedo con una macro buscar un valor en una columna y copiar toda la
linea del valor en otra hoja.
no se muy bien como copiar de una hoja a otra una linea por medio de una
macro



vendria bien si recortas un poco el "abanico" (posiblemente extenso) de
probabilidades/eventualidades/suposiciones/... (p.e.)

- como debe la macro identificar el dato que se va a buscar ?
(alguna celda ?... cual ?... de que hoja ?... quieres que le pregunte al
usuario ?... algun formulario ?... ???)

- en cual columna (y de que hoja) habra de buscar si existe el dato que se
busca ?

- "copiar"... significa con todo y formulas/formatos/propiedades/... ?
(o solo te interesan los valores resultantes) ?
(y si es necesario copiar TODA la fila ?... o solamente "ciertas"
columnas ?)

- "a donde" (celda y hoja) quieres que se haga la copia del dato
encontrado (si existe) ?
(en la siguiente fila libre de algun registro
previo/acumulado/historico/... ?)
(o necesitas que previamente compruebe si ya se paso ese dato
anteriormente y solo "actualice" sus cambios ?)

(probablemente haya algun otro detalle "en el tintero"... como que es buen
momento de sacarlo a la superficie) :))

saludos,
hector.

Respuesta Responder a este mensaje
#3 Héctor Miguel
30/01/2008 - 01:19 | Informe spam
hola, !

... mi intencion es, ya sea con un formulario, o con un input o selec, no me lo habia planteado
poder seleccionar un dato de una sola columna, (es una hoja con 5 columnas y no mas de 200 filas)
copiar la línea donde esta el dato en otra hoja que ya existe. posteriormente la podre imprimir. eso es todo ...



tu consulta (aunque es clara en su solicitud creo que) sigue siendo ambigua (en sus alcances)
(solo a manera de ejemplo) la siguiente macro...
busca en la columna A de la hoja1 el dato puesto en C5 de hoja2
(una vez localizado) copia 5 columnas (de la hoja1) en la siguiente fila libre de la hoja3
OJO: no lleva preparacion ni manejo de (posibles) errores, asi que...

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

en un modulo de codigo normal ==Sub Copiar()
Dim Celda As Range
Set Celda = Worksheets("Hoja1").Range("a:a").Find( _
What:=Worksheets("Hoja2").Range("c5"), _
LookIn:=xlValues, _
LookAt:=xlWhole)
If Not Celda Is Nothing Then
Worksheets("Hoja3").Range("a65536").End(xlUp).Offset(1) _
.Resize(, 5).Value = Celda.Resize(, 5).Value
Set Celda = Nothing
End If
End Sub
Respuesta Responder a este mensaje
#4 JAGE
31/01/2008 - 23:04 | Informe spam
Hola Héctor:
Mis conocimientos de Excel no son tan grandes, espero mejorar :)

Set Celda = Worksheets("Hoja1").Range("a:a").Find( _
What:=Worksheets("Hoja2").Range("c5"), _
LookIn:=xlValues, _
LookAt:=xlWhole)

de esta parte no comprendo su funcionamiento.

Pero no es posible que en la "hoja1" yo seleccione "c7" ó "C9" simplemente
con el ratón (no me importa un input) y con una ejecución macro me copie la
línea "7" o la "9" en la "hoja2"

gracias de nuevo




"Héctor Miguel" escribió en el mensaje
news:
hola, !

... mi intencion es, ya sea con un formulario, o con un input o selec, no
me lo habia planteado
poder seleccionar un dato de una sola columna, (es una hoja con 5
columnas y no mas de 200 filas)
copiar la línea donde esta el dato en otra hoja que ya existe.
posteriormente la podre imprimir. eso es todo ...



tu consulta (aunque es clara en su solicitud creo que) sigue siendo
ambigua (en sus alcances)
(solo a manera de ejemplo) la siguiente macro...
busca en la columna A de la hoja1 el dato puesto en C5 de hoja2
(una vez localizado) copia 5 columnas (de la hoja1) en la siguiente fila
libre de la hoja3
OJO: no lleva preparacion ni manejo de (posibles) errores, asi que...

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

en un modulo de codigo normal ==> Sub Copiar()
Dim Celda As Range
Set Celda = Worksheets("Hoja1").Range("a:a").Find( _
What:=Worksheets("Hoja2").Range("c5"), _
LookIn:=xlValues, _
LookAt:=xlWhole)
If Not Celda Is Nothing Then
Worksheets("Hoja3").Range("a65536").End(xlUp).Offset(1) _
.Resize(, 5).Value = Celda.Resize(, 5).Value
Set Celda = Nothing
End If
End Sub

Respuesta Responder a este mensaje
#5 Héctor Miguel
01/02/2008 - 05:44 | Informe spam
hola, !

... no es posible que en la "hoja1" yo seleccione "c7" o "C9" simplemente con el raton
(no me importa un input) y con una ejecucion macro me copie la línea "7" o la "9" en la "hoja2"



segun cambien las necesidades (o la exposicion de la "realidad" con los ejemplos de las consultas)...
habra que ir adaptando tambien las propuestas de (posible) solucion :))
(solo que sigues "reacio" a contestar re/preguntas como: "a donde quieres la copia ?") :D

si suponemos que necesitas ir copiando los datos a la siguiente fila libre de la hoja2...
y que la columna A de la hoja2 podra considerarse para determinar la siguiente fila libre -?-

ActiveCell.EntireRow.Copy Destination:= _
Worksheets("hoja2").Range("a65536").End(xlUp).Offset(1)

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida