¿Cuáles son los beneficios de establecer objetos en "Nada"

He notado que algunas personas usaránSet Object = Nothing en procedimientos de cierre. Pude encontrar por qué esto es útil para instancias de Access, pero ninguna respuesta ha sido satisfactoria cuando se trata de hacer esto para Excel, entonces, ¿Cuál es exactamente el beneficio de establecer objetos en Nothing?

Lo agregué a mi código como ejemplo para respaldar esta pregunta, pero ¿es solo una pérdida de espacio? Si es una buena práctica, ¿por qué?

En lo que respecta al código, no hay problemasco osi Set = Nothing. Estoy tomando datos de una exportación del sistema que tiene columnas excesivas que no necesitamos. Para reducir la cantidad de iteraciones de copiar / pegar, estoy tomando todos los rangos con una unión, con la excepción de dos. El orden de las dos últimas columnas debe cambiarse, por lo que me vi obligado a copiar / pegarlas por separado.

With CurrentBook.ActiveSheet

    Dim LRow2 As Long
    LRow2 = .Range("BG" & .Rows.Count).End(xlUp).Row

    Dim Range1 As Range: Set Range1 = .Range("A2:C" & LRow2)
    Dim Range2 As Range: Set Range2 = .Range("F2:F" & LRow2)
    Dim Range3 As Range: Set Range3 = .Range("H2:H" & LRow2)
    Dim Range4 As Range: Set Range4 = .Range("M2:M" & LRow2)
    Dim Range5 As Range: Set Range5 = .Range("P2:P" & LRow2)
    Dim Range6 As Range: Set Range6 = .Range("S2:S" & LRow2)
    Dim Range7 As Range: Set Range7 = .Range("V2:V" & LRow2)
    Dim Range8 As Range: Set Range8 = .Range("X2:X" & LRow2)
    Dim Range9 As Range: Set Range9 = .Range("AD2:AD" & LRow2)
    Dim Range10 As Range: Set Range10 = .Range("AR2:AX" & LRow2)
    Dim Range11 As Range: Set Range11 = .Range("AY2:AY" & LRow2)
    Dim Range12 As Range: Set Range12 = .Range("AZ2:AZ" & LRow2)

End With

Dim CopyRange As Range: Set CopyRange = Union(Range1, Range2, Range3, Range4, Range5, Range6, Range7, Range8, Range9, Range10)
CopyRange.Copy
ws.Range("A2").PasteSpecial xlPasteValues

    Range12.Copy
    ws.Range("S2").PasteSpecial xlPasteValues

        Range11.Copy
        ws.Range("T2").PasteSpecial xlPasteValues

'''''''''''''''
''''Closing''''
'''''''''''''''

Closing:
CurrentBook.Close False
ws.Range("A1").Select

Application.ScreenUpdating = True
Application.DisplayAlerts = True

Set MyFile = Nothing: Set ws = Nothing: Set CurrentBook = Nothing
Set Range1 = Nothing: Set Range2 = Nothing: Set Range3 = Nothing: Set Range4 = Nothing: Set Range5 = Nothing
Set Range6 = Nothing: Set Range7 = Nothing: Set Range8 = Nothing: Set Range9 = Nothing:
Set Range10 = Nothing: Set Range11 = Nothing: Set Range12 = Nothing
Set CopyRange = Nothing

Exit Sub

Respuestas a la pregunta(1)

Su respuesta a la pregunta