Foxtable(狐表)用户栏目专家坐堂 → [求助]多行粘贴,以前的表可以用,现在新表不行!


  共有4178人关注过本帖树形打印复制链接

主题:[求助]多行粘贴,以前的表可以用,现在新表不行!

帅哥哟,离线,有人找我吗?
fivetable
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:337 积分:3067 威望:0 精华:0 注册:2018/5/28 22:12:00
[求助]多行粘贴,以前的表可以用,现在新表不行!  发帖心情 Post By:2023/3/1 19:41:00 [只看该作者]


之前的表格快捷键用以下代码,可以像EXCEL表格一样,多行粘贴。如今重做

一个表格,用一样的代码和事件就不行。不知设置缺少什么?

If e.keycode = Keys.d AndAlso e.control = True Then
    For i As Integer = e.Table.topposition + 1 To e.Table.bottomposition
        e.Table.rows(i)(e.Table.colsel) = e.Table.rows(i - 1)(e.Table.colsel)
    Next
    e.cancel = True
End If


图片点击可在新窗口打开查看此主题相关图片如下:snipaste_2023-03-01_19-06-29.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:snipaste_2023-03-01_19-06-53.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2023/3/1 19:43:02编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110738 积分:563610 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/3/2 8:30:00 [只看该作者]

如果是自定义菜单下,换个快捷键,不要使用d键

 回到顶部
帅哥哟,离线,有人找我吗?
fivetable
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:337 积分:3067 威望:0 精华:0 注册:2018/5/28 22:12:00
  发帖心情 Post By:2023/3/2 9:39:00 [只看该作者]

快捷键换了其他的也一样。这代码是之前复制,论坛里有人问过类似问题的帖子的回复代码。昨天想找这帖子,总找不到。



 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110738 积分:563610 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/3/2 9:40:00 [只看该作者]

我测试没有问题,请上传实例说明

 回到顶部
帅哥哟,离线,有人找我吗?
fivetable
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:337 积分:3067 威望:0 精华:0 注册:2018/5/28 22:12:00
  发帖心情 Post By:2023/3/3 19:38:00 [只看该作者]

原本想做个实例给蓝老师看看。
结果做好后,自己研究下,代码的效果自己测试出来了。
效果就是跟EXCEL表格一样,按Ctrl+d 多行重复复制,而不是像狐表的快捷键一样。只能重复复制一行。
代码放出来,给有需要的人,复制粘贴。
If e.keycode = Keys.f9 AndAlso e.control = True Then ''设置F9+Ctal快捷键 
    For c1 As Integer = e.Table.LeftCol To e.Table.RightCol '循环鼠标所选择的列的位置
        For i As Integer = e.Table.topposition + 1 To e.Table.bottomposition '循环鼠标所选择的行的位置
            e.Table.rows(i)(e.Table.Cols(c1)) = e.Table.rows(i - 1)(e.Table.Cols(c1)) 
        Next 
    Next 
End If

 回到顶部