尝试填写某个单元格旁边的文本

时间:2014-05-13 10:11:45

标签: excel vba

如果单击一个单元格,我有一个代码可以搜索E列中的第一个空单元格:

If Target.Cells.Count = 1 Then
    If Not Intersect(Target, [B2]) Is Nothing Then _
        Range("E:E").Find(vbNullString, [E3], , , , xlNext).Select
End If

现在我想更改找到第一个空单元格的代码,并将文本放入同一行的单元格中。因此,如果我只是在excell表中,只需单击,它就会将文本放入B列的单元格中(例如"添加值")。当然,如果我点击单元格,我仍然会进入第一个空单元格。

我不知道从哪里开始,所以任何帮助都会非常感激!

1 个答案:

答案 0 :(得分:1)

简短回答下面的代码将“< - Empty”放在空单元格旁边的单元格中:

Range("E:E").Find(vbNullString, [E3], , , , xlNext).Offset(0,1) = "<--Empty"

Rnage.Find方法按顺序返回符合条件的单元格。要返回相邻单元格,请使用Range.Offset方法。而不是选择,只需在字符串中键入字符串。

长答案: 就个人而言,我尽量不使用Range.Find方法,因为你没有指定的所有参数默认为你的PC最后一个。这可能会导致不同PC上的不同行为。相反,我会使用for循环来遍历感兴趣的范围

 For i = 1 to Max
     if RangeOfInterest(i,1) = vbNullString then RangeOfInterest(i,1).Offset(0,1) = "<--Empty"
 Next i