2015-12-12 32 views
0

我在Microsoft Access 2013中有一个对应于电话号码的文本框。该文本框的输入掩码为:自动插入区号

!\(999") "000\-0000;;_ 

我试图自动插入区号。例如,当用户输入电话号码时,区号已经填入文本框中。我试图在表格设计和文本框的属性表中设置默认值,但没有运气。它总是与右边对齐。例如,它看起来是这样的:

enter image description here

如果我添加空格文本框属性的默认值,输入掩码被忽略和Microsoft Access生成错误,指出:

的您输入的值不适用于为该字段指定的输入掩码“!(999”)“000-0000 ;; _”。

我已经考虑修改表结构以包含特定的区域代码字段,但那是我的最后手段。

当生成新记录时,是否有更有效的方法在文本框中自动填充区号?

回答

0

您可以在VBA中编写函数来执行此操作。就像是;

Function FormatPhone(PhoneNumber As String) As String 

    FormatPhone = "(719)" & PhoneNumber 

End Function 

该函数将采用像'123-4567'这样的字符串并返回'(719)123-4567'。

在放置电话号码字段的AfterUpdate事件中;

[TextBoxControlName].Value = FormatPhone(Nz([TextBoxControlName].Value,"")) 

这会将格式化的字符串添加到文本框中。