用Excel单元格中的定义值在VBA(Excel)中计数
我想在我的Excel VBAmacros计数,所以然后单元格正在改变+1的起始单元格:Sheet2!$ A1 – > next Cell Sheet2!$ A2
在我的工作表1中,我有一个由1开始的单元格,并通过单击button1(Sheet1中的单元格A1)来获得点数。
我的想法:
Sheets("Sheet2").Range("Sheet2!A Sheets("Sheet1").Range(Sheet1!A1).Value = "MY Input"
应该是这样的:
Sheets("Sheet2").Range("Sheet2!A Sheet1!A1).Value = "MY Input"
但它不起作用。 有任何想法吗 ?
Sheets("Sheet2").Range("A" & Sheets("Sheet1").Range("A1").Value).Value = "My Input"
或者先定义值并使用它:
Dim r as long r = Sheets("Sheet1").Range("A1").Value Sheets("Sheet2").Range("A" & r).value = "My Input"
我想这就是你的意思,如果不是那么请提供一个更清晰的解释,我会相应地编辑答案。
当使用双引号将一个string传递给一个函数(在本例中为Range函数)时,Range函数只能明确地接受“A1”和R1C1 / [R] 1 [C] 1forms的地址。
Sheets("Sheet2").Range("A1").Value = Sheets("Sheet1").Range("A1").Value
不知道你想用button来实现,但为什么不尝试:
Sheets("Sheet1").Range("A1").Value = Sheets("Sheet1").Range("A1").Value + 1
每次执行该行时,这会将单元格A1中的值增加1。
另一种方法是使用Offset()
:
Sheets("Sheet2").Range("A1").Offset(Sheets("Sheet1").Range("A1")).Value = "My Input"