Acelear una macro

Hola experto
Tengo este código
Lo que deseo es acelerar la macro, ya que la ejecuto y tarda hasta 3 minutos en realizar la operación
sera que sean por los datos son como 70 datos
o por el código
espero me puedas ayudar a solucionar mi problema
saludos cordiales
Sub Actualizamayojunio()
Application.ScreenUpdating = False
Dim mes
letra1 = InputBox("Letra que desea sustituir?  MAYUSCULAS", "ORIGEN")
If letra1 = Empty Then Exit Sub 'mejorar con revisión validez fecha
letra2 = InputBox("letra nueva?  MAYUSCULAS", "DESTINO")
If letra2 = Empty Then Exit Sub 'mejorar con revisión fecha
'Le preguntarás al usuario por las fechas a sustituir y la nueva, y
mes = InputBox("Introducir el mes en el que se esta efectuando?  MAYUSCULAS")
If mes = Empty Then Exit Sub 'mejorar con revisión validez fecha
Set fecha = Selection.Find(What:=letra2)
If fecha Is Nothing Then
Application.DisplayAlerts = False
End If
'MES DE MAYO
If Format(mes) = "MAYO" Then
Selection.Replace What:="GPP\Reportes\[LAYOUT DE OPERACION_MAYO.XLS]modificado'!$" & Format(letra1), Replacement:="GPP\Reportes\[LAYOUT DE OPERACION_MAYO.XLS]modificado'!$" & Format(letra2), LookAt:=xlPart _
        , SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
Selection.Replace What:="GPP\Reportes\[LAYOUT DE OPERACION_MAYO.XLS]Inventarios'!$" & Format(letra1), Replacement:="GPP\Reportes\[LAYOUT DE OPERACION_MAYO.XLS]Inventarios'!$" & Format(letra2), LookAt:=xlPart _
        , SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
Selection.Replace What:="GPP\SUBGERENCIA DE AROMATICOS\[layout de operación.xls]BDGPP_MAYO'!$" & Format(letra1), Replacement:="GPP\SUBGERENCIA DE AROMATICOS\[layout de operación.xls]BDGPP_MAYO'!$" & Format(letra2), LookAt:=xlPart _
        , SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
Else
'MES DE JUNIO
If Format(mes) = "JUNIO" Then
Selection.Replace What:="GPP\Reportes\[LAYOUT DE OPERACION_JUNIO.XLS]modificado'!$" & Format(letra1), Replacement:="GPP\Reportes\[LAYOUT DE OPERACION_JUNIO.XLS]modificado'!$" & Format(letra2), LookAt:=xlPart _
        , SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
Selection.Replace What:="GPP\Reportes\[LAYOUT DE OPERACION_JUNIO.XLS]Inventarios'!$" & Format(letra1), Replacement:="GPP\Reportes\[LAYOUT DE OPERACION_JUNIO.XLS]Inventarios'!$" & Format(letra2), LookAt:=xlPart _
        , SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
Selection.Replace What:="GPP\SUBGERENCIA DE AROMATICOS\[layout de operación.xls]BDGPP_JUNIO'!$" & Format(letra1), Replacement:="GPP\SUBGERENCIA DE AROMATICOS\[layout de operación.xls]BDGPP_JUNIO'!$" & Format(letra2), LookAt:=xlPart _
        , SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    End If
    End If
MsgBox "Se ha cambiado la letra correctamente"
Application.ScreenUpdating = True
End Sub

1 Respuesta

Respuesta
1
Posiblemente la tardanza se deba a que tiene que ir fichero a fichero
Y eso es lento ya que por detrás tiene que cargar todo el excel

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas