IF-Then-Else循环在Excel VBA中

美好的一天,

如果代理的名称和date匹配,我正在尝试编写一个将从工作表auxdata的列C中提取信息的macros。 庸俗的是,报告的编译方式可能会有一天的不匹配(即统一页面上的logging,比如5/1/2014 | x | AGENT X实际上可能对应于5/2/2014以下的logging在auxdata表单上)。 我有以下代码:

Sub testloop() Dim unified As Worksheet Dim auxdata As Worksheet Set unified = ThisWorkbook.Sheets("unified") Set auxdata = ThisWorkbook.Sheets("auxdata") unified.Activate unified.Range("a2").Select Do While ActiveCell.Value <> Empty If ActiveCell.Value = "auxdata[Date]" Then ActiveCell.Offset(0, 3).FormulaR1C1 = _ "=INDEX(auxdata[Staffed Time], MATCH([@agent], auxdata[Agent], 0))" Else ActiveCell.Offset(0, 3).Value = "false" ActiveCell.Offset(1, 0).Select End If Loop End Sub 

这个循环只能到Else语句。 Activecell.value =统一工作表中的date

我需要关于If-Then语句的帮助,以及如何在else状态networking的auxdata [Date]中添加1天

您在以下行中键入了string文字:

 If ActiveCell.Value = "auxdata[Date]" Then 

这是检查string“auxdata [date]”不是您要表示的date。 你希望它匹配实际的date。 如果数据在一个固定的单元格中,则可以使用以下内容:

 If ActiveCell.Value = auxData.Range("A2").Value Then 

希望这可以帮助!