我试图在excel的Visual Studio编辑器中运行程序,但是当我单击绿色的运行按钮时,没有任何反应,模块也没有运行。但是,与其他模块一起运行正常。我不确定是什么问题。
我已经尝试过重新启动excel并将代码复制到可以正常工作的另一个文件和模块中,但是会发生相同的问题。
这是代码:
Sub Balance()
Dim rownum As Long
Dim colnum As Long
Dim startrow As Long
Dim lastrow As Long
rownum = 1
colnum = 1
lastrow = ThisWorkbook.Sheets("Sheet1").Range("A65536").End(xlUp).Row
With ThisWorkbook.Sheets("Sheet1").Range("a1:a" & lastrow)
For rownum = 1 To lastrowEmp
Do
If .Cells(rownum, 1).Value = "Employee Group Totals" Then
startrow = rownum
End If
rownum = rownum + 1
If (rownum > lastrow) Then Exit For
Loop Until .Cells(rownum, 1).Value = "Net pay"
endrow = rownum
rownum = rownum + 1
ThisWorkbook.Sheets("Sheet1").Range(startrow & ":" &
endrow).EntireRow.Copy
ThisWorkbook.Sheets("Sheet2").Select
Range("A1").Select
ActiveSheet.Paste
Next rownum
End With
End Sub
答案 0 :(得分:6)
使用此功能:
For rownum = 1 To lastrow
代替:
For rownum = 1 To lastrowEmp
此外,明智的做法是在任何主题之前使用Option Explicit
,以避免这些错误。
您的代码正在运行,但是由于lastrowEmp
中没有值,因此跳过了For循环。