我对编码还很陌生,而且我从未接受过任何正规的培训,因此这似乎是一个愚蠢的问题,或者我可能使用了错误的术语,所以请放轻松...!但是我只是想知道:
如果执行操作时是否有快捷方式引用左侧的右侧,而无需再次输入全名?
例如而不是像这样写
sheet1.range("Unnecessarily Long Range Name").value = sheet1.range("Unnecessarily Long Range Name").value + 1
有内置的东西吗
sheet1.range("Unnecessarily Long Range Name").value = LHS + 1
还是我可以创建某种自定义函数来达到这种效果?
我知道我可以使用
dim x as range
set x = sheet1.range("Unnecessarily Long Range Name")
x.value = x.value + 1
但是这是三行(每次),我宁愿一口气做完,我喜欢快捷方式...! :)
答案 0 :(得分:2)
With … End With
语法应做到:
With sheet1.range("Unnecessarily Long Range Name")
.value = .Value + 1
End With
答案 1 :(得分:0)
通过简写代码增加范围值
您不会使用其他语言的i ++之类的结构,但是使用子调用可以执行示例快捷方式 incr
来增加范围值:
incr rng
或
incr Sheet1.range("Unnecessarily Long Range Name")
如果要在递增后返回结果,则可能要传递可选变量by Reference
。
Dim x#
incr Sheet1.range("Unnecessarily Long Range Name"), x
默认情况下,您可以将+ increment
的{{1}}值更改为任何其他显式参数值(例如+ 1
):
100
非连续范围区域
即使范围参考中包含不连续的区域(例如, Dim x#
incr Sheet1.range("Unnecessarily Long Range Name"), x, 100
。 注意:在这种情况下,可选变量将仅返回最上面的单元格值-但您可以轻松地将其适应您的需求。
Sheet1.Range("A3:A6,B1:F1")
答案 2 :(得分:-1)
为简化第二种方法,您始终可以在同一行中用“:”定义和设置变量的值。
dim x as range: set x = sheet1.range("Unnecessarily Long Range Name")