如何在Excel中的列中添加缺失时间以进行插值

我有一个Excel电子表格,包含时间和温度两栏中的数据。 “时间”列的值如下所示,其中有一些跳过的秒数:

2017-10-17 14:18:15 2017-10-17 14:18:17 2017-10-17 14:18:18 2017-10-17 14:18:19 2017-10-17 14:18:21 2017-10-17 14:18:22 

是否有可能让Excel在相应的空白行中添加这些缺失的时间(那么我可以对这些空白点进行插值?)

我不确定你的数据是怎么样的,但是如果你不想使用VBA,这是你可以做的。

cell B2使用此公式并向下拖动:

 =IF(B1="","",IF(N(B1),IF(ROW(A2)-ROW($A$1)-1<SECOND(MAX($A$2:$A$7)-MIN($A$2:$A$7))+1,B1+TIME(0,0,1),""),A2)) 

这是确定最大和最小值之间的秒数,然后使用行作为参考(您可以根据您的数据结构更改此部分)。 尝试看看这是否适合你。

尝试这个! 它假定你的时间在列A中,在单元格A1中有一个标题

 Sub AddRows() 'Finds out what row to go up to Dim lRow As Long lRow = Cells(Rows.Count, 1).End(xlUp).Row For i = 2 To lRow + 1 'If the difference between the cell below is more than a second, then add a row above and skip the next i If Cells(i + 1, 1) - Cells(i, 1) > 0.000011575 Then Cells(i + 1, 1).Select Selection.EntireRow.Select Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove lRow = lRow + 1 Cells(i + 1, 1).Select Cells(i + 1, 1).Value = Cells(i, 1).Value + 0.000011575 i = i + 1 Else End If Next i End Sub