Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ms access “按下后如何操作?”;输入“;在表单字段中文本的末尾添加"&引用;光标没有移动到下一行?_Ms Access_Vba - Fatal编程技术网

Ms access “按下后如何操作?”;输入“;在表单字段中文本的末尾添加"&引用;光标没有移动到下一行?

Ms access “按下后如何操作?”;输入“;在表单字段中文本的末尾添加"&引用;光标没有移动到下一行?,ms-access,vba,Ms Access,Vba,在表单字段的文本末尾按“回车”后,如何添加“,”而光标没有移动到下一行? 逻辑: -用户输入“Text_1” -用户按下“回车键” -代码中增加了“,” -结果出现在表单字段“Text_1”中 -用户输入“Text_2” -用户按下“回车键” -代码中增加了“,” -结果出现在表单字段-“Text_1,Text_2” 我试着去做,但做不到。 现在,按“回车”键后的光标移动到下一行。 如何使光标与文本保持在同一行上? 更新\u 1 如何在逗号后加空格? 按“回车”后,我的解决方案在逗号后不留

在表单字段的文本末尾按“回车”后,如何添加“,”而光标没有移动到下一行?
逻辑:
-用户输入“Text_1”
-用户按下“回车键”
-代码中增加了“,”
-结果出现在表单字段“Text_1”中
-用户输入“Text_2”
-用户按下“回车键”
-代码中增加了“,”
-结果出现在表单字段-“Text_1,Text_2”

我试着去做,但做不到。
现在,按“回车”键后的光标移动到下一行。

如何使光标与文本保持在同一行上?

更新\u 1

如何在逗号后加空格?

按“回车”后,我的解决方案在逗号后不留空格。

更新_2
数据库文件-

您想“吞下”按键。您可以通过将
KeyCode
设置为
0
-注意,它隐式地传递
ByRef
(参数在VBA中通过引用传递,除非另有规定),也可以通过更改处理程序中的值(在按键进入文本框之前调用该值),事件源将看到该值为
0

Private Sub Field1_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode = 13 Then  
        Me.Field1.Text = Me.Field1.Text & ", "                     
        Me.Field1.SelStart = Len(Me.Field1.Text)             
        KeyCode = 0
    End If
End Sub

“我试着去做,但我做不到”-这是一个完整的句子吗?到底是什么问题?如果要“吞下”ENTER键,可以在处理程序返回之前将
KeyCode
设置为
0
。如果在Access中使用逗号分隔的列表,可能需要查看数据库规范化级别。“听起来好像你想把应该是多条记录的内容放在一个字段中。”MathieuGuindon更新了这个问题。如果我不能正确表述,我将等待你们的补充问题。@Comintern更新了问题。如果我无法正确表述,我将等待你的补充问题。请参阅@MathieuGuindon的第一条评论。吃了按键就行了。如何在逗号后留一个空格?空格应该在那里,它与逗号更新的问题连在一起。如果我理解正确,那么你会说代码中存在漏洞。它是“,”。但当我按下“回车”键时,光标仍紧跟在逗号之后。还是我做错了什么?@eusataf,而你使用的正是代码?文本框是否绑定到表上的文本字段?如果是这样,它可能继承了可变长度字段的修剪行为。
Private Sub Field1_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode = 13 Then  
        Me.Field1.Text = Me.Field1.Text & ", "                     
        Me.Field1.SelStart = Len(Me.Field1.Text)             
        KeyCode = 0
    End If
End Sub