Range(“ J”&lastrow).Formula =“ = Range”(H&lastrow“ / 4000&”)“的语法错误

时间:2019-08-01 07:23:18

标签: excel vba

我正在尝试写Range(“ H”和lastrow)/ 4000 假设lastrow = 150,我已经尝试过使用H150了,但是我需要动态地编号。所以请帮助我

Range("J" & lastrow).Formula = "=Range"(H & lastrow" / 4000 & ")"

1 个答案:

答案 0 :(得分:0)

虽然最初的问题是将VBA语法与Excel公式参数混合使用,但我也想通知您,您可能不需要输入公式。在上面提到的注释中,您只需要H150 /4000。公式的使用似乎是多余的。看看下面的两行代码,看看有什么区别。

Sub Test()

Dim lastrow As Long
With ThisWorkbook.Sheets("Sheet1") 'Change sheetname according to yours
    lastrow = 150
    .Range("J" & lastrow).Formula = "=H" & lastrow & "/4000" 'This will input a formula
    .Range("J" & lastrow) = .Range("H" & lastrow) / 4000 'This will input the value directly
End With

End Sub

现在,如果您的总数可能有所不同,则可以使用另一个变量,例如:total来存储该值并在代码中使用。

Sub Test()

Dim lastrow As Long, total as long
With ThisWorkbook.Sheets("Sheet1") 'Change sheetname according to yours
    lastrow = 150
    total = 100
    .Range("J" & lastrow).Formula = "=H" & lastrow & "/" & total 'This will input a formula
    .Range("J" & lastrow) = .Range("H" & lastrow) / total'This will input the value directly
End With

End Sub