我希望输入到特定列的所有数据始终都有一个尾随逗号,而且我还需要第一个字符始终为逗号。我该怎么做呢?最好的解决方案可能不是在vba或sql中,而是可能是表的属性?
答案 0 :(得分:1)
您需要将Validation Rule或Input Mask应用于表格的该字段(在表格设计视图中)。
答案 1 :(得分:1)
如果您只想检查值是否符合要求并显示错误(如果不符合),则使用VeeArr建议的验证规则。如果要在不符合要求的情况下更正该值,请使用VBA事件。
答案 2 :(得分:1)
考虑您是否确实需要存储在表格中的那些前导和尾随逗号。您可以在需要时将它们包含在查询中。
SELECT
some_text,
"," & some_text & "," AS with_commas,
IIf(Not IsNull(some_text), "," & some_text & ",", Null) AS with_commas_ignore_nulls
FROM YourTable;
如果您确实需要使用该字段存储的逗号,请考虑使用Before Update事件的表单以要求逗号。
Private Sub txtsome_text_BeforeUpdate(Cancel As Integer)
If Len(Me.txtsome_text & vbNullString) > 0 _
And Not Me.txtsome_text Like ",*," Then
MsgBox "some_text must start and end with a comma"
Cancel = True
End If
End Sub