目前我有一个Access 2013数据库表,其中有一列有一些值;
Value1: 90.1244.1234
Value2: 90.1295
我想根据小数点将这些分成3列。
Column1 Column2 Column 3
90 1244 1234
然而,当我尝试将它们分开时,只有1个小数点的值会抛出一个#Func!错误。而不是#Func!错误,我想将单元格留空。
我正在使用的代码:
First Split: Left$([JDE Account Number],InStr([JDE Account Number],".")-1)
Middle Split: Mid([JDE Account Number],InStr([JDE Account Number],".")+1,InStrRev([JDE Account Number],".")-InStr([JDE Account Number],".")-1)
Last Split: Right$([JDE Account Number],Len([JDE Account Number])-InStrRev([JDE Account Number],"."))
导致#FUNC的中间分裂!错误,因为有时值只有1位小数。
如果值只有一位小数而不是两位,有没有办法让中间单元格留空?
答案 0 :(得分:0)
创建一个小函数:
Public Function SplitString(ByVal Triple As String, ByVal Element As Integer) As Variant
Dim Elements As Variant
Dim TriplePart As Variant
Elements = Split(Triple, ".")
If UBound(Elements) >= Element - 1 Then
TriplePart = Elements(Element - 1)
Else
TriplePart = Null
End If
SplitString = TriplePart
End Function
并在查询中将其用作表达式:
Column1: SplitString(Nz([JDE Account Number]),1)
Column2: SplitString(Nz([JDE Account Number]),2)
Column3: SplitString(Nz([JDE Account Number]),3)