VBA:拉取特定的行数据

时间:2013-08-04 16:40:33

标签: vba excel-vba excel

我有我的Excel工作表数据(我转换成数组格式),如下所示

1st row......['one', , , , 'Folder', 'Folder', 'Extended Data', 'Extended Data', 'Extended Data','Extended Data' ],
2nd row.....['ID', 'Label', 'Longitude', 'Latitude', 'Country', 'City', 'Inventory', 'Safety stock', 'weight', 'hdsjka'],
3rd row......['AFKBL', 'Kabul, Afghanistan', 69.136749, 34.53091, 'Afghanistan', 'Kabul', 12, 1845, 12, 1845],
4th row......['AFKDH', 'Kandahar, Afghanistan', 65.700279, 31.61087, 'Afghanistan', 'Kandahar', 18, 1193, 18, 1193], ....etc etc

我想提取“扩展数据”(位于第1行)的第2行中的所有值  并将其写入不同文件中的单个列数组中。

我想使用此列数组在google图表中创建控件包装器。

如果有人能写一个宏并帮助我,我真的很感激..

1 个答案:

答案 0 :(得分:0)

我无法弄清楚你的数组是什么样的,但在我看来,你想要的数据应该通过循环遍历数组单元来获得。   假设您想要的数据位于您已经拥有的数组的第2行和第4列到第7行(“oldarr”),然后您只需创建一个新的newarr数组(4,1)。

dim newarr(4,1)
for j = 1 to 4
newarr(j,1) = arr(2, (j+3)) ''cycles across the needed columns on the second row 
next j

然后,您可以将newarr的内容粘贴到您喜欢的任何位置。

现在,这似乎太简单了,不需要宏来做,这就是为什么我认为我必须遗漏一些东西。但是,只要知道哪些数组列包含所需信息,通用方法就会成立。我能想到的唯一细微之处在于,如果您不知道每次迭代需要复制多少行或列(在这种情况下可以使用动态数组),或者包含“扩展数据”的列可以更改

希望这至少可以帮助您入门。