繁体   English   中英

如何将一列中的日期与另一列中同一行中的单元格进行比较?

[英]How do I compare dates in one column to a cell in the same row in another column?

我觉得这应该是一个简单的任务,但是我对Excel VBA的经验不足,无法知道如何实现。 基本上,我想连续查看两个单元格,如果两个单元格都有特定的日期,请执行一些操作。 这两个单元格将始终在两个特定列之一中。

例如,如果D2和I2中的日期都早于11月,那么我想对该行进行操作并移至下一行。 然后,如果D3和I3中的日期都早于11月,那么我想对该行进行操作,然后移至下一行。 等等等等...

我的问题不是如何执行所有步骤。 这实际上是关于如何进行此比较。 我知道如何通过执行以下操作仅选择这两列中的单元格:

Union(Range(Cells(2, 4), Cells(Rows.Count, 4).End(xlUp)), _
    Range(Cells(2, 9), Cells(Rows.Count, 9).End(xlUp))).Select

但是后来我想到,我不知道如何比较两列的各个单元格。 我只知道如何遍历列的每个单元格。

任何帮助将不胜感激。

仅循环遍历1列,然后使用Offset方法进行比较怎么样。

检查一下:

Option Explicit

Sub CheckTwoCols()

Dim wks As Worksheet, lastrow As Long, rng As Range, cel as Range

Set wks = Sheets(1) 'change sheet reference to suit your needs

With wks

    lastrow = .Range("D" & .Rows.Count).End(xlup).Row

    Set rng = .Range("D2:D" & lastrow)

    For each cel in rng

        'column I is 5 columns to the right of column D
        If cel < "11/1/2012" and cel.offset(,5)  < "11/1/2012" Then

             'process code

        End If 

   Next

End With

End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM