我在Excel中有一个垂直分组但有空行的表,表示该行中的字段对应于上面的那个组。
示例:
Column A Column B Column C Colunm D
Classroom A Course A Teacher A Student 1
Student 2
Teacher B Student 3
Course B Teacher A Student 1
我只需要从上面复制下面的空白字段。
结果:
Column A Column B Column C Colunm D
Classroom A Course A Teacher A Student 1
Classroom A Course A Teacher A Student 2
Classroom A Course A Teacher B Student 3
Classroom A Course B Teacher A Student 1
答案 0 :(得分:3)
对于您发布的数据,请尝试使用以下简单宏:
Sub GetAFillUp()
Dim rng As Range
Set rng = Range("A2:D4")
For Each r In rng
If r.Value = "" Then
r.Value = r.Offset(-1, 0).Value
End If
Next r
End Sub
答案 1 :(得分:0)
创建仅包含列标题的空白模板。
在列标题下方行的第一个单元格中,假设为A2,输入公式=A1
。这将使A2具有与其上方的单元格相同的值,除非它被覆盖。选择此单元格(A2),复制并粘贴到您希望具有此重复特征的所有列,以获得足够多的行。 (也就是说,如果您希望该功能在前三列中工作,并且如果您预计永远不需要超过100行,则粘贴到A2 - C101范围。)
现在,复制空白模板,并将数据输入相应的单元格。每个值都将向下复制,直到下一个手动输入的值。如果您需要再次执行此操作,请重新开始使用空白模板的新副本。
如果您输入一个值但又要删除它,请复制一个仍然从上面自动复制的单元格并将其粘贴到您要删除的单元格中。这将使其恢复为从上方自动填充。