使用VBA在列访问中创建表的最有效方法

时间:2014-07-25 23:20:24

标签: vba access-vba

我有一张食谱表。对于每个食谱ID,我有5列(成分1,成分2等),我存储成分的名称。然后在同一张表中我有5列,我有相应数量的每种成分(amount1 for ingredient1等)。

表格的构建方式和输入的数据以及“鸡蛋”等项目可以存储在配方1的配料1列和配方2的配料5列中。

我想要做的是创建一个表,列的标题成为表中不同成分的名称,然后将每个成分的数量存储在右列中。

我知道如何通过以下步骤来实现这一目标:

  1. 查看原始表格的所有成分,并为每种成分创建一列。

  2. 返回表格,并为每个食谱读取每个成分,找到相应的数量,使用成分的名称在新表中找到相应的列,并在新表中添加金额。

  3. 在我看来,如果我必须经历超过500个食谱,这样做可能会变得缓慢。但这是唯一的方法,还是有更自动化的方法来做到这一点。几乎就像自动创建矩阵一样。

1 个答案:

答案 0 :(得分:0)

您似乎应该在VBA中使用ListObjects来轻松访问excel表中的数据。

您可以使用ListObject包装一系列单元格,方法是选择它并按 Ctrl + L ,或者在VBA中调用ActiveSheet.ListObjects.Add(%range%)方法。< / p>