Excel如果单元格a2> 8中的值自动移动到单元格D2以输入文本

时间:2013-07-24 21:27:37

标签: excel vba excel-2007

我正在尝试使用电子表格来记录工作时间,这样如果当天的总小时数超过单元格A2中的8小时,则光标将自动移动到第二个单元格D2标签,因此可以输入加班的原因。

  • 第一个标签名为2013
  • 表格二被称为2013年加班。

我对excel不太满意,所以非常感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

您没有提供太多信息。哪些细胞发生变化并为A2做出贡献?是否有类似的列需要选择不同的单元格?请编辑您的问题并添加有关数据结构的更多详细信息。

以下宏的工作原理是假设手动更改了单元格A2。

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim shOvertime As Worksheet
Set shOvertime = ThisWorkbook.Sheets("2013 Overtime")
If Not Intersect(Target, Range("A2")) Is Nothing Then
    If Range("A2") > 8 Then
        shOvertime.Activate
        shOvertime.Range("D2").Select
    End If
End If
End Sub

如果您的数据结构不同,请解释一下。

要使代码生效,请右键单击工作表选项卡,然后选择“查看代码”以打开Visual Basic编辑器(VBE)。将代码粘贴到代码窗口中并关闭VBE。然后在单元格A2中输入数字。