将单元格内容从单元格拖放到单元格i EXCEL 2

时间:2018-04-01 07:36:37

标签: excel-vba vba excel

我有一个非常庞大而复杂的应用程序,主要基于vba(+7500行代码):它导入和分析我学校每位教师的愿望(也用Excel编写)。然后,管理员可以编辑任何设置/愿望,以便明年教师资源的计划完成。

效果很好。功能几乎就像一个数据库。

我'关注':

用户(管理员)始终更改许多“金砖四国”的位置: 我在第一张图片中用多张纸中的一张来说明它: matter / classes / teacher 。红色箭头显示蓝色 LN - 2 bric向右拖动一个位置:该类别从 1A 更改为 1B fag 丹麦语) DAF

The way we do it now. We need to go to the border the be able to move the cell

它运作良好,但我关注的是用户:每次他想要移动一个金砖四国,他都必须

  1. 选择单元格(即可以),然后选择
  2. '到达'单元格的边框 - 光标变化(移动+箭头)如图所示 - 在拖动之前可以完成。
  3. 我想找到一种直接拖动bric的方法,因此用户不应该在可以拖动之前转到边框。下一个 - 最相同的 - 图像显示了这个愿望:光标 - 交叉 - 位于单元格的中间,单击并拖动到相邻单元格。

    The wish way: remark the cursor is 'somewhere' in the middle of the cell

    '通常'你不能用普通事件(我广泛使用)来做,但也许有人知道一个聪明的方法/库来实现这个目标。

    修改

    准确地说:bric需要被拖到任何方向,无论远距离,不仅仅是:一个向右(仅示例)

1 个答案:

答案 0 :(得分:0)

您可以将以下代码添加到工作表的代码中,添加到Worksheet_BeforeDoubleClick事件,这样用户可以在双击单元格(而不是边框​​)时将单元格移动到右侧

代码(在工作表模块中)

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

If MsgBox("Do you want to drag the cell to the right ?", vbYesNo) = vbYes Then
    Target.Cut Destination:=Target.Offset(, 1)       
End If

End Sub