使用VBA在公式中输入公式

时间:2014-08-15 13:05:06

标签: excel-vba vba excel

好的,所以这可能是许多现有问题的组合,但这里有......

我需要将数据从一个工作表复制到另一个工作表,然后更改一些数据,然后使用以下内容添加一个列:

=if(G2="+",1,0)

然后需要运行整个数据集,但行数会有所不同。

有没有办法可以让这个公式显示在包含数据的每一行的旁边,而不再使用vba?

2 个答案:

答案 0 :(得分:1)

以下是公式列为 H

列的示例
Sub qwertyu()
    Dim N As Long
    N = Cells(Rows.Count, "G").End(xlUp).Row
    Dim xCol As String
    xCol = "H"
    Range(xCol & 2 & ":" & xCol & N).Formula = "=if(G2=""+"",1,0)"
End Sub

更改列ID以满足您的需求。

答案 1 :(得分:1)

是的,你可以!

Sub ABC()
Dim ws As Worksheet
Dim Lastrow As Long

Set ws = ThisWorkbook.Worksheets("Sheet1") ' change to relevant sheet

With ws
Lastrow = .Range("A" & .Rows.Count).End(xlUp).Row ' change "A" to correct column

.Range("A1:A" & Lastrow).Formula = "=if(G2="+",1,0)" 'change "A1:A" to correct column

' convert formulas to values if you like:
.Range("A1:A" & Lastrow).Value = .Range("A1:A" & Lastrow).Value 'again change "A1:A" to correct column
End With

End Sub