Excel DateDiff用于一列日期
我能帮上忙吗,我想在这样一列中计算出日期的差异Excel DateDiff用于一列日期,excel,vba,datediff,Excel,Vba,Datediff,我能帮上忙吗,我想在这样一列中计算出日期的差异 显然,我已经尝试了for循环,但它从来没有那么容易,有人能帮忙吗:)如果您的日期都在列a中,请放入列BA3-A2并向下拖动所有有日期的单元格(最后一个除外) 如果您正试图通过VBA实现这一目标,假设您的日期在A2:A6范围内,请尝试以下方法 Sub DateDif() Dim lr As Long, i As Long lr = Cells(Rows.Count, 1).End(xlUp).Row For i = 2 To lr - 1
显然,我已经尝试了for循环,但它从来没有那么容易,有人能帮忙吗:)如果您的日期都在列
a
中,请放入列B
A3-A2
并向下拖动所有有日期的单元格(最后一个除外)
如果您正试图通过VBA实现这一目标,假设您的日期在A2:A6范围内,请尝试以下方法
Sub DateDif()
Dim lr As Long, i As Long
lr = Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To lr - 1
If IsDate(Cells(i, 1)) And IsDate(Cells(i + 1, 1)) Then
Cells(i, 2) = DateDiff("d", Cells(i, 1), Cells(i + 1, 1))
End If
Next i
End Sub
或者像这样尝试,这是很容易调整
Sub DateDif()
Dim lr As Long
Dim Rng As Range, Cell As Range
lr = Cells(Rows.Count, "B").End(xlUp).Row
Set Rng = Range("B2:B" & lr)
For Each Cell In Rng
If IsDate(Cell) And IsDate(Cell.Offset(1, 0)) Then
Cell.Offset(0, 1) = DateDiff("d", Cell, Cell.Offset(1, 0))
End If
Next Cell
End Sub
和什么相比日期差?上面那个?下面那个?当前日期?显示您迄今为止所做的尝试tom下面是一个,列在下面,因此希望日期差异(以天为单位)位于右侧:)您可以在Excel公式中从另一个中减去一个,以得到您想要的。不需要任何花哨的东西,但我更喜欢使用VBA和for循环,我不喜欢同时使用两者:(奇怪吗?我很喜欢写它。是的,很奇怪。Excels的内置功能比vba更高效。你发现它“奇怪”,这是在给你的cpu增加性能负担。Excel也从来没有被设计成一个或另一个。很抱歉,它们不是。它们位于单元格B10下方:)没有问题。我添加了另一种方法,您可以轻松调整。非常感谢,这就是我想要做的,因为我相信您可以理解这对初学者来说很复杂,谢谢兄弟