1

这是我的数据库的示例:

id    year   birthday      ...
1     1995   10 Oct 1990   ... 
1     1996   10 Oct 1990   ...
      1997   10 Oct 1990   ...
2     1995   01 Aug 1988   ...
2     1996   01 Aug 1988   ...
2     1997   01 Aug 1988   ...
3     1995   21 Mar 1987   ...
      1996   21 Mar 1987   ...
      1997   21 Mar 1987   ...

id 是一个数字标识和个人。该数据库是纵向的,因此有多个收集日期,我称之为年份。我不得不从包含这些信息的不同数据库中编译这些数据,所以一些 ID 号没有输入,但我希望它们能输入。例如,此数据库中的个人缺少 1997 年的身份证号,而第三个人缺少 1996 年和 1997 年的身份证号。有没有办法通过使用公式来添加这些值?我有超过 13 年的大约 300 个人的数据,所以我不想手动输入它们。

4

2 回答 2

0

我没有看到足够多的数据,但我认为宏会更合适

Sub FillInEmpties()
    Dim i As Long
    Dim lr As Long
    lr = Range("B" & Rows.Count).End(xlUp).Row
    Dim cell As Range
    For i = 1 To lr
        Set cell = Range("A" & i)
        If IsEmpty(cell) Then
            cell = cell.Offset(-1, 0)
        End If
    Next i
End Sub

因为您必须在每个空单元格中输入公式,这并不是一种真正有效的做事方式。


另一种方法是比较年份,然后根据年份差异填写 A 列

例子

把它粘在 A3 中并向下拖动

=IF(B3>B2,A2,A2+1)

在此处输入图像描述

于 2013-11-12T11:17:59.100 回答
0

我不确定您是否需要一次性或定期执行此操作,这可能属于 SuperUser,但这是一种无代码方法:

  1. 选择 A 列。

  2. Ctrl+G调出 GoTo,然后选择Blanks。这将选择您要填写的单元格。

  3. 在编辑栏中,输入选中的第一个空白单元格上方的单元格,例如下面,第一个空白单元格是A4,所以我输入了=A3.

    电子表格图像

  4. Ctrl+ Enter,公式将被复制到以前的空白单元格中。

  5. 复制粘贴为值,你就完成了。

于 2013-11-12T11:45:41.157 回答