【发布时间】:2016-07-15 08:57:41
【问题描述】:
这看起来很奇怪,虽然代码看起来是正确的,但我总是得到一个 False 布尔值:
- AgencyNameResult = CheckLenght(AgencyName, 2)
- AgencyWebsiteResult = CheckLenght(AgencyWebsite, 5)。
你能找出错误吗?
Public Function CheckLenght(value As String, CharLimit As Integer) As Boolean
Dim StringLength As Integer
StringLength = Len(value)
If StringLength > CharLimit Then
CheckLength = True
Else
CheckLength = False
End If
End Function
Private Sub btAddAgency_Click()
Dim AgencyName As String
Dim AgencyWebsite As String,
Dim AgencyNameResult As Boolean
Dim AgencyWebsiteResult As Boolean
Me.tbAgencyName.SetFocus
AgencyName = Me.tbAgencyName.Text
Me.tbAgencyWebsite.SetFocus
AgencyWebsite = Me.tbAgencyWebsite.Text
AgencyNameResult = CheckLenght(AgencyName, 2)
AgencyWebsiteResult = CheckLenght(AgencyWebsite, 5)
....
【问题讨论】:
-
你有一个类型错误,你的函数是
CheckLenght,你使用的参数是CheckLength。 -
天哪,我应该喝那杯咖啡。这很奇怪。感谢您的意见!
-
这是一个很好的例子,为什么你应该总是使用
Option Explicit:) -
我通常不使用 VBA 编程。感谢您向我展示此选项。它会在未来拯救我。