我正在尝试使用VBA填充行中的所有空白单元格,其值均为左侧,但我只想填充第一个和第二个空白单元格之间的空白单元格该行中的最后一个值(不包括行1和列A,这是标识符)。Excel - VBA填入第一个和最后一个值之间的单元格
我一直在努力使循环停止,直到最后一列的值已经达到(因为这随每行变化而变化),而不是一直运行到表单上的最后一列。
最初这被标记为重复(Autofill when there are blank values),但这并不能解决上述问题。这一直持续到工作表结束。如下图所示,当达到最后一个值时,填充应停止。
我在寻找一种解决方案,可以让我一次完成整个工作表,即使数据在整张工作表的不同列中结束。有超过1000行,所以每行可能会很乏味。
我一直在使用这段代码来填充数据(不包括第一行和第一列)。但是,这是我不知道如何让它停止在行中的最后一个值。
Sub test()
With ThisWorkbook.Sheets("Sheet1").Range("A:A")
With Range(.Cells(2, 2), .Cells(.Rows.Count, 36).End(xlUp))
With .Offset(0, 1)
.Value = .Value
On Error Resume Next
.SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=RC[-1]&"""""
On Error GoTo 0
.Value = .Value
End With
End With
End With
End Sub
谢谢大家这么多提前为您的帮助!
'我试图使用VBA'请使用编辑在原始文章中包含该尝试的代码。 –
@Jeeped不是完全重复的,因为自动填充结束在每一行上都不相同 – Slai
@Slai - 术语**完全相同**是误导性的。原来应该解决标记为重复问题的基本问题,仅此而已。如果添加一个循环遍历行并确定最后一列的值将会出现另一个问题,那么这是一个次要问题,值得自己去考虑。 – Jeeped