使用循环验证工作表之间的数据并检索与其对应的数据

时间:2014-12-04 18:09:25

标签: excel excel-vba vba

任何人都可以帮我解决循环/嵌套循环功能。

我想创建一个比较工作表之间数据的宏。

我在Sheet1下的数据(A行/长度不是常数)需要与A列下的Sheet2中的数据进行比较。如果该特定单元格匹配,那么我将需要下一个数据将Sheet1中的Coulmn(即Sheet1中的B列)粘贴到C列(Sheet1)中。我试图使用If和Loop编写一个宏但是我失败了,我忘了保存我写的宏。

当我使用索引匹配时,excel变得很慢..而且我现在对我的数据起了一个新标准..如果第一张表中的列A与第二张表中的列A匹配那么我想要列b到在第二张表格中用关闭验证,如果两个条件都满足,那么我想要一个C列中的值。

我相信这种复杂情况可以通过宏循环或每个下一个进行排序..我不确定..

请为我排序..

任何人都可以帮助我提高你的专业技能。

等待您的回复。

非常感谢。

2 个答案:

答案 0 :(得分:0)

简单的VLOOKUP公式不是这样吗?

答案 1 :(得分:0)

如果有很多行需要通过,循环可能会很棘手,你可以在宏中使用相同的vlookup公式来完成后续:

Sheets("first").Range("B2", Sheets("first").Range("A2").End(xlDown).Offset(0, 1)).FormulaR1C1 = "=IFERROR(VLOOKUP(RC[-1],second!C1:C2,2,FALSE),"""")" Sheets("first").Range("B2", Sheets("first").Range("A2").End(xlDown).Offset(0, 1)).Value = Sheets("first").Range("B2", Sheets("first").Range("A2").End(xlDown).Offset(0, 1)).Value

它将做的是:在您的原始"第一"选项卡,在所有条目旁边,它将是vlookup列" A"反对"第二"选项卡,并填充列" B"列中出现的任何值" B"在第二个选项卡上,列" A"两张纸都有匹配。