Excel间隔列数据,批量填充内容

说明

批量填充某一列的数据,且这一列有很多行有内容,需要将每一行的空白格填入上方离空白格最近的内容。

需求场景:

如下图,需求数据为A列,要求实现B列效果

Excel间隔列数据,批量填充内容_第1张图片

 步骤:

1.打开Excel文件,按下Alt + F11打开VBA编辑器

Excel间隔列数据,批量填充内容_第2张图片

2.在VBA编辑器中,点击菜单栏的插入,选择模块

Excel间隔列数据,批量填充内容_第3张图片


3.在新建的模块中,插入以下VBA代码:

Sub 填充单元格()
    Dim lastRow As Long
    Dim fillValue As Variant
    Dim i As Long

    lastRow = Cells(Rows.Count, 1).End(xlUp).Row ' 获取第一列最后一行的行数
    fillValue = Cells(1, 1).Value ' 获取第一个单元格的值

    For i = 2 To lastRow
        If Cells(i, 1).Value = "" Then ' 如果单元格为空,则填充上一个非空单元格的值
            Cells(i, 1).Value = fillValue
        Else ' 如果单元格不为空,则更新当前的填充值
            fillValue = Cells(i, 1).Value
        End If
    Next i
End Sub

Excel间隔列数据,批量填充内容_第4张图片

 4.保存,关闭VBA编辑器

5.返回Excel界面,在想要进行填充的工作表中,按下Alt + F8打开宏对话框

6.在对话框中选择刚刚创建的宏"填充单元格",然后点击"运行"按钮。

(在执行前,请确保已保存工作表)

Excel间隔列数据,批量填充内容_第5张图片

 7.执行完毕后,该列中的每个数字下方的单元格都会被填充为相应的数字,直到遇到下一个数字

Excel间隔列数据,批量填充内容_第6张图片

 补充:

使用该方法后,最后一行数据(本例中的“结束”)内容不会往下填充,如果用于数据处理,最后一个数据后面没有内容的话,需要检查是否有填充最后一个单元格的内容(一般是没有的)。

因此,在使用该方法时建议最后一行加辅助内容,使用完成后再删除。

你可能感兴趣的:(Office高效办公技巧,excel)