2016-02-14 83 views
1

这是我的代码,因为我试图将此公式应用于不断更改的数据列。VBA范围不工作,全局参数?

Dim x As Integer 
x = Range("N3").FormulaR1C1 = "=COUNT(C[-10])" 
Range("P1").FormulaR1C1 = "Die Type" 
Range("P2:Px").FormulaR1C1 = "=RIGHT(LEFT(RC[-12],2),1)"*** 

我不断收到错误1004说“法范围object_global失败。

如何设置X作为我的变量值?

我使用Excel 2007中

回答

2

这是奇怪,我不认为你可以通过这种方式获得细胞数:

x = Range("N3").FormulaR1C1 = "=COUNT(C[-10])" 

可以哟ü尝试:

Dim x As Integer 
x = Application.WorksheetFunction.Count(Range("D3:N3")) 

Range("P1") = "Die Type" 
Range("P2:P" & x).FormulaR1C1 = "=RIGHT(LEFT(RC[-12],2),1)" 
0

计数()只计数数字
您可能需要使用COUNTA()如果你有文字D3:N3
x = Application.WorksheetFunction.Counta(Range("D3:N3"))