Vba 公式未填充
我试着把(A和B)前面的两行填到c列的最后一行。 但是,我的代码只插入公式,不填充。如果我继续执行代码,它将填充一行。然后,如果我再次单击“执行”,它将填充另一行Vba 公式未填充,vba,excel,Vba,Excel,我试着把(A和B)前面的两行填到c列的最后一行。 但是,我的代码只插入公式,不填充。如果我继续执行代码,它将填充一行。然后,如果我再次单击“执行”,它将填充另一行 Sub row() Cells(Rows.Count, 1).End(xlUp).Offset(1, 1).Select ActiveCell.Formula = "=year(today())" 'this will be inserted into the first empty cell in column B Activ
Sub row()
Cells(Rows.Count, 1).End(xlUp).Offset(1, 1).Select
ActiveCell.Formula = "=year(today())" 'this will be inserted into the first empty cell in column B
ActiveCell.Offset(0, -1).Value = "Actual" ''this will be inserted into the first empty cell in column A
ActiveCell.FillDown
end sub
首先,从评论中采纳Mat的Mug建议,并确保限定调用Cells方法的工作表/工作簿。然后,尝试下面的代码。我相信只有当下面的单元格中有东西需要替换时,填充才会起作用。否则,如果函数正在填充空单元格,它将不知道在哪里停止。相反,在C列中找到最后一个使用的单元格,然后在A行和B行的所有单元格中一次性清除所需的值/函数
Sub row()
Dim wb As Workbook
Dim ws as Worksheet
Dim rngA As Range
Dim rngB As Range
Dim rngC As Range
Set wb = ThisWorkbook
Set ws = wb.Worksheets("SheetNameHere") ' change this to an actual sheet name
Set rngA = ws.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
Set rngB = rngA.Offset(0,1)
Set rngC = ws.Cells(Rows.Count, 3).End(xlUp)
ws.Range(rngA,rngC.Offset(-2,0)).Value = "Actual" ''this will be inserted into ever empty cell in column A up to the last cell in Column C
ws.Range(rngB,rngC.Offset(-1,0)).Formula = "=year(today())" 'this will be inserted into every empty cell in column B up to the last cell in Column C
End Sub
首先,从评论中采纳Mat的Mug建议,并确保限定调用Cells方法的工作表/工作簿。然后,尝试下面的代码。我相信只有当下面的单元格中有东西需要替换时,填充才会起作用。否则,如果函数正在填充空单元格,它将不知道在哪里停止。相反,在C列中找到最后一个使用的单元格,然后在A行和B行的所有单元格中一次性清除所需的值/函数
Sub row()
Dim wb As Workbook
Dim ws as Worksheet
Dim rngA As Range
Dim rngB As Range
Dim rngC As Range
Set wb = ThisWorkbook
Set ws = wb.Worksheets("SheetNameHere") ' change this to an actual sheet name
Set rngA = ws.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
Set rngB = rngA.Offset(0,1)
Set rngC = ws.Cells(Rows.Count, 3).End(xlUp)
ws.Range(rngA,rngC.Offset(-2,0)).Value = "Actual" ''this will be inserted into ever empty cell in column A up to the last cell in Column C
ws.Range(rngB,rngC.Offset(-1,0)).Formula = "=year(today())" 'this will be inserted into every empty cell in column B up to the last cell in Column C
End Sub
也许你是这个意思?由于未指定目标范围,需要在填写时向上读取
Sub row()
With Range(Cells(1, 3), Cells(Rows.Count, 3).End(xlUp))
.Offset(, -1).Formula = "=year(today())"
.Offset(, -2).Value = "Actual"
End With
End Sub
也许你是这个意思?由于未指定目标范围,需要在填写时向上读取
Sub row()
With Range(Cells(1, 3), Cells(Rows.Count, 3).End(xlUp))
.Offset(, -1).Formula = "=year(today())"
.Offset(, -2).Value = "Actual"
End With
End Sub
您位于该列的最后一个单元格中。Excel应该做什么?另外,请阅读C列中的.I数据,但A列和B列为空白。所以我想用这个公式把这些值插入到空的A列和B列中,到CSo列的最后一个非空单元格中如果你在C1:C10中有值,你想在A1:A10中加上“实际值”,在B1:B10中加上“=年(今天)”?使用FillDown,您必须指定一个目的地。是的,这就是我想要做的。您位于列的最后一个单元格中。Excel应该做什么?另外,请阅读C列中的.I数据,但A列和B列为空白。所以我想用这个公式把这些值插入到空的A列和B列中,到CSo列的最后一个非空单元格中如果你在C1:C10中有值,你想在A1:A10中加上“实际值”,在B1:B10中加上“=年(今天)”?使用FillDown必须指定目的地。是的,这就是我要做的