我有下面的vba代码,它将一个公式放入一个单元格中。
.Range("D" & lastrow + 1).Formula = "=INDEX(Spread!$C:$C, MATCH(1,INDEX((A330 = Spread!$A:$A) * (""Stack"" =Spread!$B:$B),),0))"如何将公式中的A330更改为vba代码(如Worksheets("Manager").Range("C2").Value )
发布于 2018-12-05 14:33:03
只需使用&操作符像普通字符串一样将其连接起来。由于您不是要连接文本,而是一个VBA对象,所以不要将引号环绕在对象周围。
"=INDEX(Spread!$C:$C, MATCH(1,INDEX((" & Worksheets("Manager").Range("C2").Value & "= Spread!$A:$A) * (""Stack"" =Spread!$B:$B),),0))"发布于 2019-04-04 21:39:37
您还可以将数据存储在变量中,并使用它而不是A330。这样,您就可以随时在代码中的任何地方使用新创建的变量。
myData = Worksheets("Manager").Range("C2").Value
.Range("D" & lastrow + 1).Formula = "=INDEX(Spread!$C:$C, MATCH(1,INDEX((myData = Spread!$A:$A) * (""Stack"" =Spread!$B:$B),),0))"https://stackoverflow.com/questions/53634443
复制相似问题