martinctc
5/10/2017 - 11:26 AM

Normalise selected range of data - REPLACES EXISTING DATA Using min-max scaling

Normalise selected range of data - REPLACES EXISTING DATA Using min-max scaling

Sub normalise()

Dim rng, cel As Range
Set rng = Application.InputBox("Please select source range area (exclude headers)", "Source data", Default:="=$A$3:$G$10", Type:=8)
Dim max, min As Long

max = Application.max(rng)
min = Application.min(rng)
Debug.Print max
Debug.Print min

For Each cel In rng
    cel.Value = (cel.Value - min) / (max - min) * 100
Next

End Sub