我正在尝试使用find函数来查找空间并为相邻单元格指定名称,但是我在调​​试器中获得了代码91

时间:2017-07-06 14:28:49

标签: excel vba excel-vba

我正在尝试使用find函数查找空间并为相邻单元格指定名称,但是我在调​​试器中获得了代码91。我已经多次使用这个find函数并且它完美无缺,但是当我将它设置为一个新变量并更改了sheet和userform引用时,它就停止了工作。

布局在sheet3上有一个所有房间号A:A的列表,我想要一个代码来查找在userform中分配的房间号,并将该人的姓名添加到第二列B: B.

'Update Occupancy List
Sheet3.Select
Dim FndRng As Range
Set FndRng = Sheet3.Columns("A:A").Find(What:=AddOccupant.txtRoom.Value,  LookIn:=xlFormulas, LookAt:=xlPart, _
            SearchOrder:=xlByRows, SearchDirection:=xlNext,     MatchCase:=False, SearchFormat:=False)
FndRng.Offset(0,1).Value = txtName.Value

1 个答案:

答案 0 :(得分:0)

错误91是“对象变量或未设置块变量”

我在这里看到的唯一未声明的变量是[AddOccupant],我假设是带有[txtRoom]文本框的UserForm。如果我的假设是正确的,那么你需要先声明一个表格

Dim frmX作为UserForm 设置frmX = [无论表格名称是什么]

并修改搜索行:...(What:= frmX.txtRoom.Value,...

顺便说一下,.Value是普遍默认的,所以你不必是明确的,即“frmX.txtRoom.Value”和“frmX.txtRoom”是相同的。