鉴于电子表格的布局如下:
A B C D E
--- --- --- --- ---
1 user1 1/1/18 1/1/17 1/1/16
2 user2 1/1/16 1/1/15
3 user3 1/1/17
4 user4 1/1/15
5 user5 12/31/18 9/8/16
如何从左到右扫描每一行,并将在B列之后检测到的FIRST列值复制到列B中,以便得到以下结果:
A B C D E
--- --- --- --- ---
1 user1 1/1/18 1/1/17 1/1/16
2 user2 1/1/16 1/1/16 1/1/15
3 user3 1/1/17 1/1/17
4 user4 1/1/15 1/1/15
5 user5 12/31/18 9/8/16
如果B列中已经有一个值,则该值必须保持不变。如上所述,列B中的所有其他值将是每一行扫描的结果。这些天我缺乏宏观技能,所以我愿意接受建议。
答案 0 :(得分:1)
也许这样可以工作:
Sub MyCombine()
With Sheet1
Dim lastRow As Long
lastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
Dim i As Long
For i = 1 To lastRow
If IsEmpty(.Cells(i, 2)) Then
.Cells(i, 2).Value = .Cells(i, 2).End(xlToRight).Value
End If
Next i
End With
End Sub