RESPONDER UNA PREGUNTA

Si para responder la pregunta, crees necesario enviar un archivo adjunto, puedes hacerlo a traves del correo [email protected]

    Pregunta:  65422 - MACRO MUY LENTA
Autor:  Oriol Plana
Tengo esta macro que lo único que pretende es copiar los campos de una hoja (pantalla de entrada) y copiarlos en otra a modo de base de datos (consulta). El problema es que me tarda unos 30s cada vez que la ejecuto y el aplicativo se vuelve muy pesado de utilizar. He aprendido visual en los últimos dos días y seguro que hay una forma más fácil de hacer lo que quiero.
Copio la macro para ver si alguien lo puede solucionar.
Muchas gracias

Public Sub new_client()
Dim fila_1 As Integer
Dim fila_2 As Integer
Dim col_1 As Integer

fila_1 = 2
fila_2 = 8
col_1 = 3

While fila_1 < 1000
If Hoja3.Cells(fila_1, 2) = "" Then
While fila_2 < 49
Hoja3.Cells(fila_1, col_1) = Hoja16.Cells(fila_2, 5)
fila_2 = fila_2 + 2
col_1 = col_1 + 1
Hoja3.Cells(fila_1, 22) = Hoja16.Cells(54, 9)
Hoja3.Cells(fila_1, 23) = Hoja16.Cells(56, 9)
Hoja3.Cells(fila_1, 1) = Hoja3.Cells(fila_1, 3) + "-" + Hoja3.Cells(fila_1, 14) + "-" + Hoja3.Cells(fila_1, 15)
Hoja3.Cells(fila_1, 2) = Hoja3.Cells(fila_1, 3) + "-" + Hoja3.Cells(fila_1, 15)
Wend
End If
fila_1 = fila_1 + 1
Wend

End Sub


Nombre
Apellidos
Correo
Comentarios