回答:
配列式として入力する必要があります。Ctrl。+ Shift+を押して行いますEnter。数式は{=MAX(ABS(A1:A10))}
正しく行われたかのように表示されます。
私は配列が好きではないので、次を使用します:
=MAX(-MIN(range), MAX(range))
これが機能するのは、最小値の絶対値が負の数の場合、最大値よりも大きいのは唯一の場合だからです。
このVBAソリューションも機能します。
Public Function absMax(values As Range)
'returns the largest absolute value in a list of pos and neg numbers
Dim myArray() As Double, i As Integer, numel As Integer
numel = values.count
ReDim myArray(1 To numel)
For i = 1 To numel
myArray(i) = Abs(values(i))
Next i
absMax = WorksheetFunction.Max(myArray)
End Function
=absMax(A1:A3)
=IF(ABS(LARGE(A1:A10,1))>ABS(SMALL(A1:A10,1)),LARGE(A1:A10,1),SMALL(A1:A10,1))
これにより、範囲内で絶対値が最大の値が検出されますが、絶対値ではなく元の符号(+/-)で実際の値が返されます。
=IF(ABS(MAX(A1:A10))>ABS(MIN(A1:A10)),MAX(A1:A10),MIN(A1:A10))
か?