最大公約数 ― 2つの数値の最大公約数を返す関数 the greatest common divisor Sub CallTest() Debug.Print 最大公約数(24, 96) End Sub Function 最大公約数(ByVal M As Long, ByVal N As Long) As Long If M <= 0 Or N <= 0 Then Exit Function 'M>=Nに調整 If M < N Then Swap M, N Dim Q As Long, R As Long Do Q = M \ N R = M Mod N If R = 0 Then 最大公約数 = N Exit Function End If M = N N = R Loop End Function Private Sub Swap(A As Long, B As Long) Dim T