给定x + y = 10,Excel可以给我一个可能的x和y列表吗?

时间:2016-12-08 13:57:40

标签: excel

任何人都可以帮我解决这个问题吗?我当然有一个更复杂的等式。

由于

1 个答案:

答案 0 :(得分:1)

您可以在VBA中创建用户定义的函数,将可能性列为字符串,但是您已经说过您的等式实际上更复杂。

对于x + y = 10的示例,您可以执行以下操作:

Private Function XYPotentials(i As Integer) As String

Dim z As Integer
Dim str As String

For z = 1 To i - 1
    If InStr(str, "(" & z & ", " & i - z & ")") = 0 Then
        str = str & "(" & z & ", " & i - z & "), "
    End If
Next z

XYPotentials = Mid(str, 1, Len(str) - 2)

End Function

然后你可以简单地使用excel中的函数:

=XYPotentials(10)

将返回以下字符串:

  

(1,9),(2,8),(3,7),(4,6),(5,5),(6,4),(7,3),(8,2) ,(9,1)

=XYPotentials(20)将返回:

  

(1,19),(2,18),(3,17),(4,16),(5,15),(6,14),(7,13),(8,12) ,(9,11),(10,10),(11,9),(12,8),(13,7),(14,16),(15,5),(16,4),( 17,3),(18,2),(19,1)