我是vba中的新手..我不知道如何从现有的工作表中循环相同的值。我搜索过但我找不到我正在寻找的东西。
这是我的情况。例如。我有一个这样的领域:
year value
2012 100
2013 300
2014 400
我有新的数据2015必须插入5次,结果必须像这样
year value
2012 100
2013 300
2014 400
2015 900
2015 900
2015 900
2015 900
2015 900
我的代码是这样的:
Private Sub AddPostClick_Click()
Dim lRow As Long
Dim ws As Worksheet
Set ws = Worksheets("DATA")
lRow = ws.Cells.Find(What:="*", SearchOrder:=xlRows, _
SearchDirection:=xlPrevious, LookIn:=xlValues).Row + 1
With ws
If CheckBox1.Value = False Then
For lRow = 1 To 5
.Cells(lRow + 1, 1).Value = tYear.Value
.Cells(lRow + 1, 2).Value = txtValue.Value
Next lRow
End If
End With
End Sub
我的代码将替换之前的行,而不是从最后一行连续插入。这是我的问题。
答案 0 :(得分:1)
你正在覆盖lrow
。声明一个新的long
。致电i
并将其用作柜台。
Dim i as long
For i = Lrow + 1 To lrow + 1 + 5
.Cells(i, 1).Value = tYear.Value
.Cells(i, 2).Value = txtValue.Value
Next lRow