以文本方式查看主题
- Foxtable(狐表) (http://foxtable.com/bbs/index.asp)
-- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2)
---- 从EXCEL中复制数据时的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=116892)
|
-- 作者:wangj6666
-- 发布时间:2018/4/2 13:26:00
-- 从EXCEL中复制数据时的问题
各位专家们:您们好!
将EXCEL表格中的数据信息复制如FOXTABLE中时,如何处理在EXCEL单元格中使用了回车换行的数据?因为这类单元格的数据在粘贴到FOXTABLE中时,它会不在1个单元格中,每一个回车换行都自动另起了一行,被放到了多个行的单元格中。谢谢!
|
-- 作者:有点甜
-- 发布时间:2018/4/2 14:24:00
--
keydown事件,写这种代码
If e.control = True AndAlso e.keycode = keys.v Then \'执行代码 Dim str As String = ClipBoard.GetText Dim nstr As String = "" Dim tempstr As String = "" Dim flag As Boolean = False For i As Integer = 0 To str.length - 1 If str(i) = """" Then If i = 0 OrElse str(i-1) = chr(9) OrElse str(i-1) = chr(10) Then \'开始 flag = True ElseIf i = str.length-1 OrElse str(i+1) = chr(9) OrElse str(i+1) = chr(13) Then \'结束 tempstr = tempstr.Replace(chr(13), "") nstr &= tempstr tempstr = "" flag = False End If End If If flag = True Then tempstr &= str(i) Else nstr &= str(i) End If Next ClipBoard.SetText(nstr) End If
|
-- 作者:wangj6666
-- 发布时间:2018/4/3 14:58:00
--
以下是引用有点甜在2018/4/2 14:24:00的发言:
keydown事件,写这种代码
If e.control = True AndAlso e.keycode = keys.v Then \'执行代码 Dim str As String = ClipBoard.GetText Dim nstr As String = "" Dim tempstr As String = "" Dim flag As Boolean = False For i As Integer = 0 To str.length - 1 If str(i) = """" Then If i = 0 OrElse str(i-1) = chr(9) OrElse str(i-1) = chr(10) Then \'开始 flag = True ElseIf i = str.length-1 OrElse str(i+1) = chr(9) OrElse str(i+1) = chr(13) Then \'结束 tempstr = tempstr.Replace(chr(13), "") nstr &= tempstr tempstr = "" flag = False End If End If If flag = True Then tempstr &= str(i) Else nstr &= str(i) End If Next ClipBoard.SetText(nstr) End If
请问是Keydown事件还是KeydowmEdit事件?我没有找到Keydown事件。
|
-- 作者:wangj6666
-- 发布时间:2018/4/3 15:11:00
-- 找到了,搞定
找到了,搞定
|
-- 作者:wangj6666
-- 发布时间:2018/4/4 10:23:00
-- 复制时有一列遇到了新问题
专家:您好!
使用上面的代码复制时,又出现了1个新问题,就是在复制“评论信息”这一列时提示了错误:
我的“评论信息”列单元格内的信息如下:
此主题相关图片如下:微信截图_20180404102007.png
复制时FOXTABLE提示的提示如下:
此主题相关图片如下:微信截图_20180404100333.png
请问还要如何修改代码才能解决这个问题。谢谢!
|
-- 作者:有点甜
-- 发布时间:2018/4/4 10:28:00
--
1、excel文件发上来测试;
2、贴出你keydown的事件代码。
|
-- 作者:wangj6666
-- 发布时间:2018/4/4 10:51:00
--
以下是引用有点甜在2018/4/4 10:28:00的发言:
1、excel文件发上来测试;
2、贴出你keydown的事件代码。
我的EXCEL文件如下:
KEYDOWN的事件代码为:
|
-- 作者:有点甜
-- 发布时间:2018/4/4 11:43:00
--
改成这样
If e.control = True AndAlso e.keycode = keys.v Then \'执行代码 Dim str As String = ClipBoard.GetText Dim nstr As String = "" Dim tempstr As String = "" Dim flag As Boolean = False For i As Integer = 0 To str.length - 1 If str(i) = """" Then If i = 0 OrElse str(i-1) = chr(9) OrElse str(i-1) = chr(10) Then \'开始 flag = True End If If i = str.length-1 OrElse str(i+1) = chr(9) OrElse str(i+1) = chr(10) OrElse str(i+1) = chr(13) Then \'结束 tempstr = tempstr.Replace(chr(13), "") nstr &= tempstr tempstr = "" flag = False End If End If If flag = True Then tempstr &= str(i) Else nstr &= str(i) End If Next msgbox(nstr) ClipBoard.SetText(nstr) End If
|