我在一个专栏中有约会 . 每个日期由8个单元格隔开,这8个单元格为空 . 我希望用第一个日期填充8个空单元格到达下一个日期时,我希望在下一个日期清空接下来的8个空单元格然后重复直到达到最后一个日期,之后填充以下8个空单元格与最后一次约会 .
我不认为我的问题很清楚,因为我还没有正确的答案
05/06/2015
06/06/2015
07/06/2015
应该变成
05/06/2015
05/06/2015
05/06/2015
05/06/2015
05/06/2015
05/06/2015
05/06/2015
05/06/2015
05/06/2015
06/06/2015
06/06/2015
06/06/2015
06/06/2015
06/06/2015
06/06/2015
06/06/2015
06/06/2015
06/06/2015
07/06/2015
07/06/2015
07/06/2015
07/06/2015
07/06/2015
07/06/2015
07/06/2015
07/06/2015
07/06/2015
这是我为什么从theq quickandfun方法得到的输出
05/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
06/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
07/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
08/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
09/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
10/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
11/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
12/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
13/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
14/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
15/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
16/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
17/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
18/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
19/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
20/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
21/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
22/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
23/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
24/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
25/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
26/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
27/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
28/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
29/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
30/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
31/07/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
01/08/2015
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
00/01/1900
我也尝试将公式更改为
.Value = "=R[-1]C1"
求助答案如下
lastRow1 = Sheets(myValue).Cells(Sheets(myValue).Rows.Count, "B").End(xlUp).Row + 7
For r = 2 To lastRow1
If Sheets(myValue).Cells(r, 2) = vbNullString Then
Sheets(myValue).Cells(r, 2) = Sheets(myValue).Cells(r, 2).Offset(-1, 0)
End If
Next
2 回答
不是很漂亮:
虽然以下内容更有趣,但是无论是否为8个单元格都会填补空白:尽管它假定在最后一个单元格之后填充8:
如果第一个单元格是
B3
,那么试试这个:这样的事情应该做的工作:
Note: 此代码不限于连续8个空单元格!