1. Use Arrays (100x Faster)
Dim Data As Variant
Data = Range("A1:Z100000").Value
' Process in memory — no slow sheet reads!
2. Turn Off Screen Updating
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
' Your code here
Application.ScreenUpdating = True
3. Dictionary for Fast Lookups
Set Dict = CreateObject("Scripting.Dictionary")
Dict("CustomerID") = "Nairobi Branch"
4. Power Query + VBA Combo
ActiveWorkbook.Queries("SalesData").Refresh
5. Custom Functions (UDF)
Function KESProfit(Sales As Double) As Double
KESProfit = Sales * 0.15
End Function