在单列命名范围内设置单元格的值,相对于活动单元格
Set Value of Cell, relative to active cell, within single column named range
我编写了以下代码作为较大子例程的一部分,用于在活动单元格内进行特定选择时设置单元格相对于活动单元格的值。
ActiveCell.Offset(0, 5).Value = "CLV 7"
虽然这行得通,但我将来可能需要在我的工作表中添加列,这会带来问题,因为需要设置其值的单元格的位置发生变化,并且通过关联需要每次添加新列时都要重写代码。
在考虑这个变量时,我进行了研究,结果为需要在其中设置值的每一列定义了一个范围名称。我想我将能够确定活动行和命名范围列之间的变量和可重定位交叉点,并将其定义为需要设置值的单元格。
在此之后我研究了定义这个变量交集的方法并尝试设置以下替代代码:
ActiveCell.Offset(0, 0).Range("BusinessStudies").Value = CLV 7
希望它能解决问题,但不幸的是它没有。我看过其他帖子,但看不到如何成功调整它,因为我看不到任何类似的请求。
尝试 VBA
中的 Intersect() 函数
Debug.Print Intersect(Rows(ActiveCell.Row), Range("MyRange")).Value
编辑:适用于您的情况,假设您希望字符串 "CLV 7" 进入单元格:
Intersect(Rows(ActiveCell.Row), Range("BusinessStudies")).Value = "CLV 7"
我编写了以下代码作为较大子例程的一部分,用于在活动单元格内进行特定选择时设置单元格相对于活动单元格的值。
ActiveCell.Offset(0, 5).Value = "CLV 7"
虽然这行得通,但我将来可能需要在我的工作表中添加列,这会带来问题,因为需要设置其值的单元格的位置发生变化,并且通过关联需要每次添加新列时都要重写代码。
在考虑这个变量时,我进行了研究,结果为需要在其中设置值的每一列定义了一个范围名称。我想我将能够确定活动行和命名范围列之间的变量和可重定位交叉点,并将其定义为需要设置值的单元格。
在此之后我研究了定义这个变量交集的方法并尝试设置以下替代代码:
ActiveCell.Offset(0, 0).Range("BusinessStudies").Value = CLV 7
希望它能解决问题,但不幸的是它没有。我看过其他帖子,但看不到如何成功调整它,因为我看不到任何类似的请求。
尝试 VBA
中的 Intersect() 函数Debug.Print Intersect(Rows(ActiveCell.Row), Range("MyRange")).Value
编辑:适用于您的情况,假设您希望字符串 "CLV 7" 进入单元格:
Intersect(Rows(ActiveCell.Row), Range("BusinessStudies")).Value = "CLV 7"