我有一张工作表,上面列出了名为Matrix
的课程名称。在另一张名为Courses Date
的工作表中,我将选择与他们修读日期相同的课程。
名为Safety Driving
的课程将位于第1行的Matrix
中。在Courses Date
中有来自E1:BF1
的同名数据。如果课程需要补习,将在另一列中命名与课程名称完全相同的名称+ Refresher
(Safety Driving Refresher
)。
我想做的是查找一门课程是否设有复习课程。如果未找到任何内容,我的代码将返回运行时错误'91': Object variable or With block variable not set
。
这是我的代码:
RefresherColNumber = Range("'Courses Date'!E1:BF1").Find(Range("'Matrix'!" & courseColLetter & "1").Value & " Refresher").Column
答案 0 :(得分:1)
添加支票
HttpStatusCode
答案 1 :(得分:0)
如果在行中找到值,则可以使用Application.Match
进行IsError测试,并在找到的位置加4以获取列。您还应该使用父级工作表对象来限定范围,以避免使用隐式活动表引用的错误。
Dim matchValue As Variant
matchValue = Application.Match(Range("'Matrix'!" & courseColLetter & "1").Value & " Refresher", Range("'Courses Date'!E1:BF1"), 0)
If Not IsError(matchValue) Then RefresherColNumber = matchValue + 4