在一个单元格中使用年份来确定另一个单元格的内容

时间:2019-07-03 20:21:24

标签: excel vba

我想要做的是根据另一列中的年份将值放入一列。年列采用MM / DD / YYYY格式。我不是一个非常有经验的VBA程序员,但是我想尽快学习它。

我已经尝试在IF语句中使用Year()函数来查看它是否显示我想要的文本,但是在单元格中什么都没有显示。

Dim SrchRng As Range, cel As Range

Set SrchRng = Range("D1:D9")

For Each cel In SrchRng
    If IsEmpty(cel) And Year(cel.Offset(0, -1)) = Year(2020) Then
        cel.Offset(0, -2).Value = "Test"
    End If
Next cel

cel -2单元中什么都没有显示,我不确定下一步该怎么做。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

前面提到的

<div class="slide-progress-bar"> <div class="progress-bar" id="progress-bar"></div> <!--progress-bar--> </div> <button onclick="progressBar()">Start</button> <!--slide-progress-bar-->返回1905,这是因为它可以处理未格式化的原始编号/序列号。单元格中写为日期的日期将被识别为日期,并且该值将更改,但通过格式化它看起来将相同。例如,今天的日期是43650,没有格式化,而Year(2020)返回2019

如果您想将每个Year(43650)与该数字进行比较,只需像下面这样写2020

Year(date)

您还可以尝试在工作表中的公式(例如,单元格D1中的= Year(C1)),然后更改C1中日期的格式以查看不存在的效果。