Excel 将值填充到动态范围中的最后一行
抱歉,伙计们,我意识到这真的很简单,但上个小时试图弄明白这一点非常令人沮丧。 我想让值“427”(D列)一直向下到范围最后一行的末尾。(第32行)由于它是一个动态范围,随着时间的推移,该范围将有新的条目。我使用下面的代码来完成它Excel 将值填充到动态范围中的最后一行,excel,vba,Excel,Vba,抱歉,伙计们,我意识到这真的很简单,但上个小时试图弄明白这一点非常令人沮丧。 我想让值“427”(D列)一直向下到范围最后一行的末尾。(第32行)由于它是一个动态范围,随着时间的推移,该范围将有新的条目。我使用下面的代码来完成它 Sub EnterRemainingValues() Dim Workbook As Workbook Dim lastrow As Long Set Workbook = Workbooks("Workbook 1")
Sub EnterRemainingValues()
Dim Workbook As Workbook
Dim lastrow As Long
Set Workbook = Workbooks("Workbook 1") 'name of workbook
lastrow = Worksheets("Sheets1").Cells(Rows.Count, 1).End(xlUp).Row
Worksheets("Sheet1").Range("D14:D" & lastrow).Value = "427"
我认为我遇到的问题是,范围从A13开始,而不是从A1开始,因此值427只填充与工作表标题高度(A1:A3)相对应的前3行。代码认为这是最后一行。我想用“427”填充D列,一直到第14行开始的最后一行。多谢各位
编辑:我忘了提及-我正在控制“workbook1”,其中包含来自不同工作簿的图片范围(“workbookfinal”)尝试以下操作:
Option Explicit
Sub EnterRemainingValues()
' Define workbook.
Dim wb As Workbook ' You might need to use '.xlsm'
Set wb = Workbooks("Workbook 1") ' name of workbook
' Define worksheet.
Dim ws As Worksheet
Set ws = wb.Worksheets("Sheet1")
' Calculate last row.
Dim lastrow As Long
lastrow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
' Write values.
ws.Range("D14:D" & lastrow).Value = "427"
End Sub
工作簿中的代码是否包含工作表?还是两本不同的作业本?@BigBen我已经试过了,这种方法似乎不起作用。请看我的编辑,我忘了提到!道歉。我从不同的位置控制工作簿1workbook@VBasic2008对不起,我忘了提了,我知道已经改正了。代码位于不同的工作簿(“workbookfinal”)中,我正在尝试在图中所示的工作簿(“Workbook1”)上运行此代码。是否使用J列解决问题<代码>最后一行=工作表(“Sheets1”)。单元格(Rows.Count,10)。结束(xlUp)。行