2017-09-19 43 views
1

我试图寻找这个问题的一些潜在答案,但我想我的问题太具体,我不能应用我找到的解决方案。VBA搜索两个范围并执行操作

Source Example

有了上面的源代码我需要扫描列A,并确定所有李四的,之后所有李四我需要扫描相应的列B细胞,如果有时间在任何人采取的最新日期并粘贴到所有相应的单元格中。

因此,预期的结果将是:

​​

就如何实现这一目标的任何提示?我担心我的VBA技能太弱。

+1

即使技能薄弱,您也可以使用VBA实现很多功能。尝试一些东西,通过Excel循环并将值保存在变量中。然后分享。 – Vityata

回答

1

在Excel 2013和以前的版本,这可以在不与阵列式的宏来实现。使用一个数组公式,输入一个单元式(无{}),然后按Ctrl键 + + 输入

enter image description here

+0

非常感谢你弗兰克!这完美的作品! –

1

我可以为您的问题提出简单的配方解决方案吗?如果在A列中有您的电子邮件名称,并且在B列中的日期,请在单元格B2中输入此公式=MAXIFS($B$2:$B$100,$A$2:$A$100,A2),并将其拖动到底部。你应该得到这个结果。根据您的需要调整配方内的范围。

enter image description here

+1

''MAXIFS()''是在Excel 2016中引入的,我相信。在以前的版本中,你需要一个数组公式,例如'{= MAX(IF(criteria_range = criteria,value_range))}'' –

+1

谢谢Kresimir-不幸的是我正在运行Excel 2013(应该有指定 - 道歉),所以你的建议不起作用。 弗兰克 - 因为我不得不承认我不熟悉那个功能 - Criteria_range; Criteria_value和value_range在我的情况? –

+0

试用@Frank Seifert解决方案,该解决方案应该在Excel 2013及更高版本上运行。 –