Excel单击复选框时移动单元格内容

时间:2013-09-11 22:25:32

标签: excel cell move

我想在单击一个复选框时移动excel单元格的内容,到另一个工作表,我还要清除原始内容,我在谷歌搜索并找不到解决方案,我可能不会了解如何做,请告知编写代码的最佳方法

谢谢

1 个答案:

答案 0 :(得分:0)

在Excel 2010&更新,您可以转到文件 - >打开开发人员菜单。选项,然后单击左列中的“自定义功能区”。在最右边的列中,选中“Developer”框并点击“ok”。

在开发人员标签下,现在可以在顶部栏中看到,选择“Visual basic”。

右键单击左栏中的“Microsoft Excel Objects”行,然后单击“insert” - > '模块'

现在在右侧的主窗口(空)中复制以下代码。

Sub MoveData()
  if ThisWorkbook.Worksheets(1).Shapes("Check Box 1").OLEFormat.Object.Value = 1 then
     Range("A1:A5").Select
     Selection.Cut
     Sheets("Sheet2").Select
     Range("A1").Select
     ActiveSheet.Paste
     Range("A1").Select
  End If
End Sub

现在返回到您的Excel工作表(假设为sheet1)并在开发人员选项卡下单击“插入”并选中该复选框。现在在工作表上拖动一个矩形,您可以在其中找到复选框。

右键单击复选框并“指定宏”。选择“MoveData”并点击“ok”。

现在在单元格A1到A5中输入数据到sheet1并选中该复选框。它将从sheet1中删除它并将其粘贴到sheet2中。

取消选中该框时,不会发生任何事情。

如果要更改复选框的名称,可以右键单击它并选择“格式控制”并更改“替换文字”。确保更改宏代码以匹配它。