2017-10-13 93 views
0

我已经在两个单独的数组内部定义了单元格。 (即source_arr = ("B4","B5"...)target_arr = ("B5","B6")要通过单元格值循环的数组Excel VBA

欲通过两个阵列环路和设置目标工作簿细胞等于源工作簿的细胞的值。现在它设置所有等于一个值的单元格。

For i = LBound(source_array) To UBound(source_array) 
For j = LBound(target_array) To UBound(target_array) 
Data = source_workbook.Sheets("Questionnaire").Cells(source_array(i)).Value 
target_workbook.Sheets("Questionnaire").Cells(target_array(j)).Value = Data 
Next j 
Next i 
+0

你可能根本不会被需要两个数组,你可以发布你的数据的截图 – Mahesh

+0

也许像'target_arr =阵列(? “B5”,“B6”)' – Jeeped

+0

如果数组是同构的,则只需要一个循环。 –

回答

2

你只需要一个循环,你想无此范围细胞:

For i = LBound(source_array) To UBound(source_array) 
    Data = source_workbook.Sheets("Questionnaire").Range(source_array(i)).Value 
    target_workbook.Sheets("Questionnaire").Range(target_array(i)).Value = Data 
Next i 
+0

只要我发布问题,我确实设法修复了Range部分... * roll eyes *但是由于某种原因,我想我需要2个循环!这样的bozo,我一直在想它。感谢它的完美帮助。 – Mdurocher