excel vba 2007使用VBA自动更改单元的私有子

时间:2015-03-16 01:19:59

标签: excel-vba vba excel

您好,我一直在尝试让宏自动运行 当有人选择一个单元格时。如果他们不必选择单元格它会自动就像无限循环那样会很好:D

无论如何,我的代码就是这个

 Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim lastRow As Integer
Dim RRnumber As Integer

    If Target.Column = E3 Then

        Sheets("RR LOG").Select
            lastRow = Sheets("RR LOG").Cells(Rows.Count, "A").End(xlUp).Row
            RRnumber = Range("H" & lastRow).Value
            RRnumber = RRnumber + 1
        Sheets("RR").Select
            Range("E3").Value = RRnumber
    End If
    End Sub

我将代码保存在“ThisWorkbook”中我正在使用的工作簿是什么:D ty可以提供任何帮助,我可以在我的方式中给出错误:D

1 个答案:

答案 0 :(得分:0)

您需要将该代码放入与要触发的过程的工作表关联的模块中。请参阅下图,了解双击位置并添加代码。

Example

对于“无限循环”,excel要求用户完成一个事件来触发VBA程序,例如您尝试在示例中使用的SelectionChange事件。

另外值得一提的是,当您使用excel 2007时,您可能希望将lasatRow作为数据类型Long进行分析,因为整数的限制刚刚超过32k(因此,如果您有超过32k行,则使用Integer类型将引发错误。另外,你能保证Range("E3")是一个小于32k的整数吗?如果没有,您可能希望在字母数字条目的情况下使用Long数据类型甚至String