Excel数据怎样快速向下填充空格
1、首先打开Microsoft Office Excel 2007,文件保存为《Excel数据怎样快速向下填满空格》,如下图。

2、然后按下快捷键ALT+F11打开VBA(宏)编辑界面,然后点菜单栏【插入】下拉中列表中点【模块(M)】如图。

3、然后插入了一个模块1,在代码框中复制如下代码:
Sub 数据向下空格填充()
'2020-5-14 22:26:27
Dim myrange As Range, i As Long, mb As Range, j As Long, c As Long, r As Long
On Error Resume Next
Set myrange = Selection
c = myrange.Columns.Count
r = myrange.Rows.Count
For i = 1 To c
For j = 1 To r
If myrange.Cells(j, i).Value <> "" Then Set mb = myrange.Cells(j, i)
If myrange.Cells(j, i).Value = "" And mb.Value <> "" Then
mb.Copy myrange.Cells(j, i)
End If
Next j
Set mb = Nothing
Next i
End Sub

4、以上操作动态过程如下:

5、回到工作表窗口,首先选原数据表,然后运行【数据向下空格填充】宏(菜单栏中点【视图】中下列表中【宏】列表【查看宏(V)】打开宏对方框,选该宏名),输出结果,运行过程如下图。


1、下面修改下代码,只是数值向下空格填充,在上面模块1上面宏后面复制下面代码:
Sub 选数值向下空格填充()
'2020-5-14 22:50:21
Dim myrange As Range, i As Long, mb, j As Long, c As Long, r As Long
On Error Resume Next
Set myrange = Selection
c = myrange.Columns.Count
r = myrange.Rows.Count
For i = 1 To c
For j = 1 To r
If myrange.Cells(j, i).Value <> "" Then mb = myrange.Cells(j, i).Value
If myrange.Cells(j, i).Value = "" And mb <> "" Then myrange.Cells(j, i).Value = mb
Next j
mb = ""
Next i
End Sub

2、回到工作表窗口,选数据表,然后菜单栏中点【视图】中下列表中【宏】列表【查看宏(V)】打开宏对方框,选宏名“选数值向下空格填充 ”点【执行】,生成结果。


1、多行不同公式需要多次复制或拖动填充,用这宏可以快速完成,如下图。

2、选数据表,然后菜单栏中点【视图】中下列表中【宏】列表【查看宏(V)】打开宏对方框,选宏名“数据向下空格填充 ”点【执行】,生成结果。


3、如果觉得这篇经验帮到了您,请点击下方的 “投票点赞" 或者“收藏”支持我!还有疑问的话可以点击下方的 “我有疑问”,谢谢啦!