vba - 将范围值分配给变量时出错表明它未设置(尽管它不是对象)
问题描述
我一直在尝试实现以下宏来简化 excel 文件的格式设置,但在启动时它指示错误 91 作为未设置的对象。我的问题是我不是在操作一个对象(至少不是在调试器标记我错误的行上)而是将一个变量(双精度)修改为找到的单元格的值。
代码:
Dim id_UO As Double
Dim id_UO_Up As Double
id_UO = Source.Cells(x,1).Value
id_UO_Up = Source.Cells(x,8).Value
hierarchie.Add id_UO
Dim cell As Range
Columns("A:A").Select
Set cell = Selection.Find( _
What:=id_UO_Up, _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False, _
SearchFormat:=False)
id_UO = cell.Value 'error happens here'
cell = cell.Resize(cell.row,7)
id_UO_Up = cell.Value
将 cell.Value 分配给 id_UO 时发生错误。
解决方案
Norie 的评论回答了我的问题,我认为数据总是在第一列中与 id_UO_Up 值匹配,但这并不简单
If not cell is Nothing
检查让我绕过它并处理异常的未发现值。再次感谢@norie 的回复
推荐阅读
- c++ - 为什么在 for 循环中声明 int 是不好的做法?
- scala - Spark - Hive UDF 与 Spark-SQL 一起使用,但不与 DataFrame 一起使用
- java - 如何复制集合
> 进入列表 在 Java 中? - javascript - 使用 onclick 函数将 JS 变量转换为 PHP 变量
- ruby - 更正我的多个 rbenv 路径的 Linux $PATH
- vim - 如何强制 vi/vim 以状态 0 干净地退出
- apache-spark - 使用通配符读取物理分区的数据
- algorithm - 尝试将 DP 解决方案从 2D Array 优化到 1D Array
- flutter - 哎呀;颤振意外退出:“无效参数
- redis - 有没有办法使用 Redisql 包获得与 ServiceStack.Redis 具有相同数据类型的列的结果?