检查找到的值旁边的单元格是否为空VBA

时间:2017-10-25 15:07:54

标签: excel vba excel-vba

我对VBA完全不熟悉。我可能每年使用一次,当我在这个和其他论坛搜索代码时。对于我的卑微需求,这通常是完美的。不幸的是由于我对代码缺乏真正的了解,在这种情况下,我无法看到我做错了什么。希望有人可以提供帮助。

我有一个时间表,我想将值复制到数据表。我有那个工作。但重要的是用户在表单中填写正确的周数。为了检查他们是否已经这样做,我写了一段代码,当未填写周数时,该代码应该返回一个消息框。当我只使用对单个单元格的引用时,代码就可以工作。但由于周数没有填入所有表格的同一单元格中,我希望宏搜索文本"周数:"然后检查它旁边的单元格是否为空。

Sub Weeknumber()
dim cl as Range
Worksheets("Invul_Tabel").Activate
With Worksheets("Invul_Tabel").Cells
Set cl = .Find("Weeknummer:", After:=.Range("A1"), LookIn:=xlValues)
If IsEmpty(Range(cl).Offset(0, 1).Value) = True Then
  MsgBox "Geen weeknummer ingevuld"
  Exit Sub
     End If
End With

End Sub

代码在" If IsEmpty"上给出错误。线" (错误1004)。 可能很简单,但我似乎无法弄明白!

1 个答案:

答案 0 :(得分:3)

您的cl变量已经是一个范围。

更改

If IsEmpty(Range(cl).Offset(0, 1).Value) = True Then

If IsEmpty(cl.Offset(0, 1).Value) Then