【发布时间】:2018-07-30 22:04:45
【问题描述】:
我正在开发一个可以过滤数据库(每天更新)并计算特定公式的宏。每次运行宏时,将使用过滤的信息创建一个新工作表(唯一命名),并且将在另一个工作表上执行计算。
我无法使用正确的语法创建宏。每次运行宏时,我需要参考的过滤数据位于工作表 #3(唯一命名)上。我是 VBA 新手,不了解将工作表(索引)作为 R1C1 公式中的工作表引用所需的语法。现在,我的代码如下所示:
Dim LR As Long
LR = Worksheets(3).Cells(Rows.Count, 1).End(x1Up).Row
Range("G6").Select
ActiveCell.FormulaR1C1 = _
"=COUNTIF(='Worksheets(3)'!R6C5:R" & LR &"C5,R[-1]C"
如果一列 Years(可变长度)等于 R[-1]C(包含特定年份的单元格),则代码正在计数,并将在单元格 G6 中显示计数。
在这种情况下是否可以使用工作表(索引)引用?我还能如何完成引用没有名称的工作表的任务?我需要引用“名称”变量吗?
【问题讨论】:
-
在 countif 中使用完整列引用确实没有任何惩罚,除非您的值低于您想要的可能会产生倾斜结果的值。