将countif和转换为另一张表时运行时出错



是什么触发了以下代码的1004错误?

代码:

wsR As Worksheet
Set wsR = Sheets("Rec_9")        
Worksheets("Sheet1").Activate

Dim LastRowD As Long
Dim LastRowJ As Long
LastRowD = wsR.Range("D" & Rows.Count).End(xlUp).Row
LastRowJ = wsR.Range("J" & Rows.Count).End(xlUp).Row
Sheet1.Range("d2").Value = WorksheetFunction.CountIf(wsR.Range("D2:LastRowD"), "[string1]")
Sheet1.Range("e2").Value = WorksheetFunction.CountIf(wsR.Range("D2:LastRowD"), "[string2]")
Sheet1.Range("f2").Value = WorksheetFunction.CountIf(wsR.Range("D2:LastRowD"), "[string3]")
Sheet1.Range("g2").Value = WorksheetFunction.CountIf(wsR.Range("D2:LastRowD"), "[string4]")

其目的是在同一工作簿中将所选字符串的总和从一张表转移到另一张表。起初,我认为范围没有得到适当的来源(指定的表(或定义(不确定的结束(,但它仍然会重复出现。

我不明白。

不要将变量放在引号内。那么它们就不是变量了。然后它们就变成了文字字符串的一部分。相反,使用&将它们连接起来,然后它将使用LastRowD的值并将其放在第一个字符串的末尾。

您还需要指定:两侧的列。。。

wsR.Range("D2:D" & LastRowD) 

这就是你想要做的……是否真的做了你想做的事由你自己决定。这将至少解决运行时错误,这是您的问题。

相关内容

最新更新