Option Explicit Sub q4() Dim q4a(1 To 25, 1 To 25) As Double Dim col As Integer, row As Integer For col = 1 To 25 For row = 1 To 25 q4a(row, col) = WorksheetFunction.RandBetween(100, 1000) Next row Next col range("B2").Resize(25, 25) = q4a End Sub Function exammax(bigrange As range) As String Dim cell As range, maxval As Double Set bigrange = range("B2:Z26") maxval = range("B2") For Each cell In bigrange If cell >= maxval Then maxval = cell Next cell exammax = maxval End Function Function exammin(bigrange As range) As String Dim cell As range, minval As Double Set bigrange = range("B2:Z26") minval = range("B2") For Each cell In bigrange If cell <= minval Then minval = cell Next cell exammin = minval End Function Sub sortino() Dim bigrange As range, cell As range, counter As Integer, cellmean As Double Set bigrange = range("B2:Z26") cellmean = WorksheetFunction.Average(bigrange) counter = 2 For Each cell In bigrange If cell <= cellmean Then Cells(28, counter) = cellmean - cell counter = counter + 1 End If Next cell range("A31") = "sortino ratio" range("B31") = WorksheetFunction.Average(range(Cells(28, 2), Cells(28, counter))) End Sub
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter