Excel VBA公式插入当前单元格

时间:2016-06-06 09:38:28

标签: excel vba

由于VBA的初学者,我很难找到这个代码。 我需要创建' Command Button'按照插入公式 当前小区位置。 例如。如果当前单元格位置是S7,则需要将公式输入到其中' = K7 * L7'。 当前的小区位置始终在变化。列K和L的乘法固定。 请帮我写这个代码。

2 个答案:

答案 0 :(得分:1)

您可以将以下代码分配给命令按钮

Sub Insert_Formula
    n = Selection.row
    Selection.Value = "=K" & n & "*L" & n
End Sub

在VBA中,选择将获得所选的单元格属性。

例如,如果选择 S7

n = Selection.Row

然后 n 7

Selection.Value = "=K" & n & "*L" & n

以上会将所选单元格的公式设置为 = K7 * L7

此外,如果您希望按钮在多个单元格的选定范围内工作,

Private Insert_Formula_Multi_Cells
    For X = 1 To Selection.Rows.Count
        n = Selection.Row + X - 1
        Selection.Range(Cells(X, 1), Cells(X, Selection.Columns.Count)) = "=K" & n & "*L" & n
    Next X
End Sub

Selection.Rows.Count 获取所选行数。

Selection.Columns.Count 获取所选列数

答案 1 :(得分:0)

要获取excel中的当前位置,您可以使用ActiveCell.Address命令。

下面的代码首先获取当前选定的单元格地址,然后与K(11)和L(12)列相乘以在活动单元格中打印值。

Sub acell()
  Dim s As String
  s = ActiveCell.Address
  Range(s).Select
  Range(s).Value2 = Cells(2, 11) * Cells(2, 12)
  Debug.Print s
End Sub

您可以根据需要在循环中添加它们。