我在MC Access 2017-2013中有一个数据库,其中的字段存储为PIPE分隔字符串。现在我想要一种方法来在单独的字段中解析SELECT查询中的这些字段。
该字段包含9个管道。所以我想将这个领域分成10个领域。
如果有人可以帮助我,我会很棒 谢谢, 彼得
答案 0 :(得分:3)
您需要在标准模块中使用VBA功能来实现拆分,例如
Public Function SplitPipes(str As String, i As Long) As String
Dim arSplit As Variant
arSplit = Split(str, "|")
' Check that arSplit has enough elements
If i - 1 <= UBound(arSplit) Then
' Split creates a 0-based array, but it is easier to start with index 1 in the query
SplitPipes = arSplit(i - 1)
Else
' out of elements -> return empty string
SplitPipes = ""
End If
End Function
然后您可以对每个字段使用此函数,如下所示:
SELECT SplitPipes([Strategic Group],1) AS Destination,
SplitPipes([Strategic Group],2) AS SE,
...
FROM yourTable;
请注意,该函数当前没有任何错误处理。已添加:)