我对VBA很新,并且想知道为什么我的公式不起作用?
我试图在匹配函数中循环单元格Sheets("Summary").Cells(11 + X, 13)
,但它似乎无法正常工作。我做错了吗?
Sub Reset()
Dim X As Integer
For X = 0 To 19
Sheets("Summary").Cells(11 + X, 13).Select
Selection.Formula = "=INDEX(YMAX!$A:$W,MATCH(Summary!$J$4&"" ""&Summary!$J$5&"" ""&11,YMAX!$B:$B,0),MATCH(sheets("Summary").cells(11 + x,9),YMAX!$1:$1,0))"
Next X
End Sub
答案 0 :(得分:0)
看起来您有以下错误
.Select
直接设置单元格的公式。使用以下
更新您的代码Sub Reset()
Dim X As Integer
For X = 0 To 19
' Broken up on several lines for clarity
Sheets("Summary").Cells(11 + X, 13).Formula =
"=INDEX(YMAX!$A:$W,MATCH(Summary!$J$4" & " " & _
"Summary!$J$5" & " " & _
"11,YMAX!$B:$B,0),MATCH(" & _
Sheets("Summary").Cells(11 + X,9).Address & _
",YMAX!$1:$1,0))"
Next X
End Sub
我不确定这是否是您想要的公式,但这是我根据您当前的代码解释的内容。如果这对您有用,请告诉我。