2017-11-25 338 views
-2

所以这是我的问题。当我点击我添加一个新行的按钮时,我为第15列创建的公式未被复制。在Excel VBA宏中复制公式

Original When the button was clicked to add a new row

原始图像: 然而,当我点击了“点击添加行”按钮,我提出的公式15列并没有被复制到同一列的新行。 这是我的代码:

Private Sub CommandButton1_Click() 

    Dim mySheets 
    Dim i As Long 

    mySheets = Array("Sheet1") 

    For i = LBound(mySheets) To UBound(mySheets) 

     With Sheets(mySheets(i)) 

      .Range("B16").EntireRow.Insert Shift:=xlDown 
      .Range("C16").Value = "to" 
      .Range("F16").Value = "±" 
      .Range("J16").Value = "to" 
      .Range("O16").Value = "±" 
      .Range("B16").Font.Color = black 

     End With 

    Next i 

End Sub 
+0

什么是你期待?我很努力,所以明白你的意思?列R中的公式?哪一排?这将有助于了解这一点。 – QHarr

+0

好的,所以公式不会被复制。 ...你为什么说两次? ... 你有问题吗?? – jsotola

+0

你需要发布你的按钮代码。不可否认,否则 – SEarle1986

回答

0

尝试以下操作:

对于完全相同的公式:

With Sheets(mySheets(i)) 

    .Range("A15").Offset(1).Insert 
    .Range("R16").Formula = .Range("R15").Formula 

End With 

对于相同的配方相对引用:

With Sheets(mySheets(i)) 

    .Range("A15").Offset(1).Insert 
    .Range("R15").AutoFill Destination:=Range("R15:R16"), Type:=xlFillDefault 

End With 
+0

谢谢QHarr!但是,你可以尝试一下,而不需要将A15的值复制到O15。我的意思是,当你点击按钮时,R15中的公式将与R14公式中的公式相同。非常感谢你。对于Visual Basic我真的没有足够的知识。我希望你能帮助我。 –

+0

R15中的公式?我猜你的意思是第15行?你实际上是想插入一个新的行还是只改变现有行15中的单元格的值? – QHarr

+0

我的意思是列R行15.我需要插入一个新的行,它在列R中复制相同的公式,但不会将列A中的元素复制到O. –