Foros del Web » Programas, Hardware y Redes » Ofimática »

BUscar y Pegar datos con macros

Estas en el tema de BUscar y Pegar datos con macros en el foro de Ofimática en Foros del Web. Buenas Tardes Soy muy inexperto en el tema de visual basic en excel, hace tiempo tenia un macro que me ayudaba a hacer todo esto ...
  #1 (permalink)  
Antiguo 09/10/2011, 00:15
 
Fecha de Ingreso: octubre-2011
Ubicación: Jalisco
Mensajes: 2
Antigüedad: 3 años
Puntos: 0
BUscar y Pegar datos con macros

Buenas Tardes
Soy muy inexperto en el tema de visual basic en excel, hace tiempo tenia un macro que me ayudaba a hacer todo esto que pido pero perdi todos mis archivos de la maquina y aunque pude recuperar varios archivos este no pude,
tengo dos archivos, en uno tengo cientos de miles de personas que se identifican con un numero y estan en la columna A
y el otro es un archivo que cambia cada mes y actualiza algunos de los clientes, entonces tengo qu buscar en el archivo master todo los clientes que se actualizan que a veces son miles y lo tengo que hace uno por uno
Entonces pido su apoyo de favor para una macro que me busque todos los clientes que tengo en la columna A del archivo master, los busque en la columna A del archivo nuevo y si lo encuentra que pegue lo que tenga en la celda siguiente, osea de la columna B, lo pegue en la columna B del archivo master
Si quieren les mando un pedazo del archivo
saludos y muchisimas gracias
  #2 (permalink)  
Antiguo 09/10/2011, 11:05
Avatar de rid501  
Fecha de Ingreso: agosto-2011
Mensajes: 244
Antigüedad: 3 años, 1 mes
Puntos: 30
Respuesta: BUscar y Pegar datos con macros

Para ese caso concreto no es necesaria una macro, te bastaría usar la función BUSCARV que busca un determinado valor en un rango de celdas de una hoja y si lo encuentra coloca el valor de la celda que le indiques
  #3 (permalink)  
Antiguo 10/10/2011, 22:00
 
Fecha de Ingreso: octubre-2011
Ubicación: Jalisco
Mensajes: 2
Antigüedad: 3 años
Puntos: 0
Respuesta: BUscar y Pegar datos con macros

Gracias por tu pronta respuesta

Pensaba en una macro porque el buscarv me rentaliza mucho el sistema

A veces tengo que buscar como 500 mil personas en un archivo de otros 500 u 800 mil datos y eso me tarda hasta 20 horas con buscarv

Lo que em hace que tenga que utilizar otra maquina o esperarme a que me espere a que haya otra

Me podrian ayudar de favor

De nuevo muchisimas gracias
  #4 (permalink)  
Antiguo 11/10/2011, 00:07
Avatar de rid501  
Fecha de Ingreso: agosto-2011
Mensajes: 244
Antigüedad: 3 años, 1 mes
Puntos: 30
Respuesta: BUscar y Pegar datos con macros

Pues pienso que la función va a ser más rápida que cualquier macro porque su código ya está optimizado y compilado dentro del propio Excel
  #5 (permalink)  
Antiguo 11/10/2011, 08:27
Avatar de Monimo  
Fecha de Ingreso: noviembre-2007
Ubicación: Mexico Df
Mensajes: 703
Antigüedad: 6 años, 11 meses
Puntos: 67
Respuesta: BUscar y Pegar datos con macros

Cita:
Iniciado por tranza3 Ver Mensaje
Buenas Tardes
Soy muy inexperto en el tema de visual basic en excel, hace tiempo tenia un macro que me ayudaba a hacer todo esto que pido pero perdi todos mis archivos de la maquina y aunque pude recuperar varios archivos este no pude,
tengo dos archivos, en uno tengo cientos de miles de personas que se identifican con un numero y estan en la columna A
y el otro es un archivo que cambia cada mes y actualiza algunos de los clientes, entonces tengo qu buscar en el archivo master todo los clientes que se actualizan que a veces son miles y lo tengo que hace uno por uno
Entonces pido su apoyo de favor para una macro que me busque todos los clientes que tengo en la columna A del archivo master, los busque en la columna A del archivo nuevo y si lo encuentra que pegue lo que tenga en la celda siguiente, osea de la columna B, lo pegue en la columna B del archivo master
Si quieren les mando un pedazo del archivo
saludos y muchisimas gracias
Pues entonces me imagino que la macro hacía mas o menos lo mismo:


Suponiendo que :
Archivo master= ArchivoA
Archivo de actualización= ArchivoB



Código:
Workbook("ArchivoA").Sheets(1).select

empieza=1
activesheet.cells(empieza,1).select

value=Workbook("ArchivoA").Sheets(1).cells(empieza,1).value
var=1
Do while value <> " "

do while  Workbook("ArchivoB").Sheets(1).cells(var,1).value <> " "
if value=Workbook("ArchivoB").Sheets(1).cells(var,1).value
valor=Workbook("ArchivoB").Sheets(1).cells(var,2).value
Workbook("ArchivoA").Sheets(1).cells(empieza,1).value=valor
else
var=var+1
end if


loop
empieza=empieza+1
value=Workbook("ArchivoA").Sheets(1).cells(empieza,1).value
var=1
loop
__________________
La verdad es que lo que no quisiera dejar de hacer nunca (a parte de comer) es programar
  #6 (permalink)  
Antiguo 11/10/2011, 13:05
Avatar de mrocf  
Fecha de Ingreso: marzo-2007
Ubicación: Bs.As.
Mensajes: 1.084
Antigüedad: 7 años, 6 meses
Puntos: 85
De acuerdo Respuesta: BUscar y Pegar datos con macros

Hola! tranza3.
Me parece que tanto la sugerencia de rid como el código de monimo son opciones válidas.
Sin embargo podrían "chocar" con la gran cantidad de datos que dices necesitar procesar.

Quizás requieras otro enfoque más propio de un procesamiento tan masivo.

Te sugiero -entonces- que presentes un libro conteniendo dos hojas: cada hoja representará la información de cada uno de tus dos libros (no más de 50 líneas de datos en cada una de ellas).

Indica allí -con claridad- cual es el libro fuente y cual es el libro que recibirá la información, respeta "a rajatablas" la ubicación real de los datos (columnas, encabezados) y veremos que alternativa se podría aplicar.

Saludos, Cacho R.
  #7 (permalink)  
Antiguo 13/10/2011, 14:31
nec
 
Fecha de Ingreso: diciembre-2007
Mensajes: 31
Antigüedad: 6 años, 9 meses
Puntos: 1
Respuesta: BUscar y Pegar datos con macros

totalmente de acuerdo con mrocf, con un archivo de muestra te podríamos ayudar con un código..
saludos...

Etiquetas: macro
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:29.
SEO by vBSEO 3.3.2