[英]VBA excel function syntax
I need to write an excel macro, to read length of triangle sides and check if this triangle exists, also if it exists macro should define type of triangle, then output result. 我需要编写一个excel宏,以读取三角形边的长度并检查此三角形是否存在,如果存在,宏也应定义三角形的类型,然后输出结果。 Here is my code -
这是我的代码-
Public Function tri(a, b, c)
Public answer As String
If a + b <= c Or b + c <= a Or c + a <= b Then
answer = "triangle doesn't exist"
ElseIf a = b = c Then
answer = "eq triangle"
ElseIf a = b Or c = a Or b = c Then
answer = "isosceles triangle"
ElseIf (a + b) ^ 2 = c ^ 2 Or (a + c) ^ 2 = b ^ 2 Or (c + b) ^ 2 = a ^ 2 Then
answer = "right triangle"
Else
answer = "regular triangle"
End If
ActiveCell = answer
End Function
I'll appreciate any help. 我将不胜感激。
We must: 我们必须:
Dim
Dim
Public Function tri(a, b, c) As String
Dim answer As String
If a + b <= c Or b + c <= a Or c + a <= b Then
answer = "triangle doesn't exist"
ElseIf a = b = c Then
answer = "eq triangle"
ElseIf a = b Or c = a Or b = c Then
answer = "isosceles triangle"
ElseIf (a + b) ^ 2 = c ^ 2 Or (a + c) ^ 2 = b ^ 2 Or (c + b) ^ 2 = a ^ 2 Then
answer = "right triangle"
Else
answer = "regular triangle"
End If
tri = answer
End Function
I think Select Case
is a more appropriate syntax in such cases 我认为
Select Case
在这种情况下是更合适的语法
moreover you can get rid of backing variable 此外,您可以摆脱支持变量
Public Function tri(a, b, c) As String
Select Case True
Case a + b <= c Or b + c <= a Or c + a <= b
tri = "triangle doesn't exist"
Case a = b = c
tri = "eq triangle"
Case a = b Or c = a Or b = c
tri = "isosceles triangle"
Case (a + b) ^ 2 = c ^ 2 Or (a + c) ^ 2 = b ^ 2 Or (c + b) ^ 2 = a ^ 2
tri = "right triangle"
Case Else
tri = "regular triangle"
End Select
End Function
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.