我在表单中有两个字段用于显示当前版本号和先前版本号。我要做的是输入当前版本号(写成这样的18.04.15),即在下一个文本框中输入上一个版本号以自动用18.04。 14 。< / p>
我尝试过:
=[txtCurrentVersion]-1
在控制源中,但是显然因为我没有递减一个,所以它没有用。
请多多指教,谢谢:)
答案 0 :(得分:0)
下面的代码基于点分割文本,并从最后一项减去一个。
Private Sub txtCurrentVersion_AfterUpdate()
If Nz(Me.txtCurrentVersion, "") <> "" Then
Me.txtPrevVersion.Value = Split(Me.txtCurrentVersion, ".")(0) & "." & Split(Me.txtCurrentVersion, ".")(1) & "." & Split(Me.txtCurrentVersion, ".")(2) - 1
End If
End Sub
答案 1 :(得分:0)
我建议创建一个函数,在其中给函数提供3个参数,第一个是当前版本号字符串,第二个是版本号级别(0表示主版本号,1表示次版本号,2表示次要版本号)以及增加或减少的值。
例如:
Function ModifyVersion(VersionNumber, NumberLevel, Number)
If VersionNumber <> "" AND NumberLevel >= 0 AND NumberLevel < 3 Then
dim VersionArray
VersionArray = Split(VersionNumber, ".")
Select Case NumberLevel
Case 0
VersionArray(0) = VersionArray(0) + Number
Case 1
VersionArray(1) = VersionArray(1) + Number
Case 2
VersionArray(2) = VersionArray(2) + Number
End Select
ModifyVersion = VersionArray(0) & "." & VersionArray(1) & "." & VersionArray(2)
End If
End Function
然后从次要版本号减少一个:
VersionNumber = [txtCurrentVersion]
Dim UpdateVersion
UpdateVersion = ModifyVersion(VersionNumber, 2, -1)