直接在复制EXCEL单元格默认会带一个换行,在VB文本框中如何判断此事件?

直接在复制EXCEL单元格默认会带一个换行(粘贴在记事本中可以看得出来)
请问这是换行事件,还是回车事件?
在VB文本框中如何抓到此事件?

第1个回答  2010-03-19
不要换行吗?那多别扭.
要么VB里 text1.multiline 的属性值=false

要么
Private Sub Text1_Change()
Dim str As String
str = Text1.Text
While Right(str, 1) = Chr(13) Or Right(str, 1) = Chr(10)
a = Len(str)
i = a - 1
str = Mid(str, 1, i)
Wend
Text1.Text = str
Text1.SelStart = Len(str)
End Sub

Excel里复制的单元格,是既有换行事件,又有回车事件
比如单元格里123456
按说这个字符串长度是6
但复制它到Text1.text以后Len(Text1.text)
得出来是8
就是说Chr(10)和Chr(13)都存在了,换行和回车都有本回答被提问者采纳
第2个回答  2019-11-20
最简单直接的方法是这样,不需要判断,直接替换,就算字符串中间有换行符也没问题
Private Sub Text1_Change()
Text1.Text = Replace(Text1.Text, Chr(13), "")
Text1.Text = Replace(Text1.Text, Chr(10), "")
End Sub
第3个回答  2010-03-19
接触过,是回车事件
相似回答