
Originally Posted by
jolivanes
Try on a copy of your workbook.
Changes the values in Column B to 95 percent if it is more.
This was a very good starting point! Thanks jolivanes!!
Below is what seems to work for me now, even though not sure if it's the most efficient solution. 
Dim rr As Long
For rr = 1 To 3
Region = Choose(rr, "HMT", "CHN", "SEA")
Dim vv As Variant
Dim ii As Long
Dim iii As Long
With Range("Metric_" & Region & "_FCST_SLS_UNT")
'// Load cell values into array x
vv = .Value
'// Loop through both dimensions (if more than one) of array x
For ii = 1 To UBound(vv, 1)
For iii = 1 To UBound(vv, 2)
If Range("Attribute_Status").Item(ii, iii).Value = "STD" Then
If IsError(Range("Metric_" & Region & "_FCST_SLS_UNT").Item(ii, iii).Value) = True Then
vv(ii, iii) = "0"
Else
vv(ii, iii) = "=IFERROR(IF(" & Range("Metric_GCSEA_FCST_SLS_UNT").Item(ii, iii).Value & "/" & ColName(Range("Metric_GCSEA_DTC_OO_UNT")) & Range("Metric_" & Region & "_FCST_SLS_UNT").Item(ii, iii).Row & ">0.95,ROUND(" & ColName(Range("Metric_GCSEA_DTC_OO_UNT")) & Range("Metric_" & Region & "_FCST_SLS_UNT").Item(ii, iii).Row & "*0.95*(" & vv(ii, iii) & "/" & Range("Metric_GCSEA_FCST_SLS_UNT").Item(ii, iii).Value & "),0)," & vv(ii, iii) & "),0)"
End If
End If
Next iii
Next ii
'// Post updated formulas in array x back to the sheet
.Formula = vv
'.Value = .Value
End With
Next rr
Bookmarks