Excel自动填充列X +++ .. Y ++ .. Z +

时间:2013-07-18 14:48:38

标签: excel

exl

如何在两者之间自动填充值?

4 个答案:

答案 0 :(得分:6)

选择列A,CTRL+G - > Blanks - > OK 键入=UpArrow,然后按CTRL+ENTER

有关说明,请参阅this link。它基本上找到所有空白并输入所有这些空白的公式。

编辑,因为@kurast指出出于安全/理智的原因选择全部并复制并粘贴特殊值作为值。

答案 1 :(得分:5)

我从未找到过这样做的好方法。我经常使用一个不太好的解决方法:

  1. A
  2. 之后插入一列
  3. 复制第一个值 - 所以B1: =A1
  4. 从B2开始,拖动B2: =IF(A2 = "", B1, A2)
  5. 的公式
  6. 复制B:B
  7. 将值粘贴到A:A
  8. 删除列B

答案 2 :(得分:1)

制作另一列以便为您生成它们。插入新列B,生成B1 = A1,然后在B2中使用此公式:

=IF(A2="",B1+1,A2)

然后拖下去;它会执行你想要的逻辑。

然后您可以复制B列,paste special values - > values要对结果进行“硬编码”。


编辑:我不确定你的意思是“自动填充”; @ corsiKa的公式将导致

11122222333444...

我的结果将是:

12323456345456...

答案 3 :(得分:1)

最终以

结束

simulate2

使用此VBA

Sub FillValues()
    Dim c As Range
    For Each c In Range("A1:A" & Range("B" & Rows.Count).End(xlUp).Row)
        If IsEmpty(c) Then c = c.Offset(-1, 0)
    Next c
End Sub

点击 ALT + F11 打开VBE,然后右键单击Project Explorer CTRL + R < / kbd>)

Insert» Module

然后 ALT + F8 View Macros»选择 FillValues

获取

autofill simulation

使用

Sub FillValues()
    Dim c As Range
    For Each c In Range("A1:A" & Range("B" & Rows.Count).End(xlUp).Row)
        If IsEmpty(c) Then c = c.Offset(-1, 0) +1
    Next c
End Sub