Macro para hacer rápida el recorrido de miles de celdas en una columna
Adjunto el código con el cual el código "For i = 2 To 40000" recorre 40,000 filas. Quisiera saber si el código adjunto se puede optimizar para que la macro se realice más rápido ya que se demora mucho así como esta.
Agradezco por las enseñanzas.
 'inicializo la variable j
j = 2
'comienzo el bucle
For i = 2 To 40000
'activo la hoja donde están mis datos
Sheets("Report").Activate
'compruebo que el valor que sea mayor a 0
If Cells(i, "B").value > 0 Then
'copio la fila entera
Range(Cells(i, "A"), Cells(i, "BB")).Cut
'selecciono la hoja donde quiero pegar y después la celda
Sheets("PreDespacho").Activate
Range("A1").Select
Do While ActiveCell <> Empty
ActiveCell.Offset(1, 0).Select
Loop
'pego la fila que hemos copiado
ActiveSheet.Paste
'aumento la variable j para que vaya a la siguiente fila de la hoja filtros
'cuando encuentre una nueva fila que cumple con la condición de edad
j = j + 1
End If
Next
'elimino las filas vacias
Sheets("Report").Activate
Set a = Sheets("Report")
uf = a.Range("A" & Rows.Count).End(xlUp).Row
For x = uf To 2 Step -1
If a.Cells(x, 1) = Empty Then Cells(x, 2).EntireRow.Delete
Next x
            
            
            
        2 Respuestas
                    Respuesta de James Bond                
                
        
        
            
                2
              
        
        
        
            
            
        
    
                
                    Respuesta de Cecilio Pérez Maqueda                
                
        
        
            
                1
              
        
        
        
            
            
        
    
                

 
        