我是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
我的代码将替换前面的行,而不是从最后一个现有行连续插入它。这是我的问题。
您正在覆盖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