Excel导入到Access
我有3个电子表格,我想导入到Access,但我有一个问题搞清楚,我甚至不知道它可以做我想做的方式。
一个电子表格看起来像这样:
StoreNum, SKU_1, SKU_2, SKU_3, ..., SKU_1000 1, 0, 100, 25, ..., 1 2, 5, 250, 15, ..., 5 3, 78, 25, 12, ..., 15
我如何导入这个,所以我有StoreNum,SKU,数量?
其他人很容易理解
StoreNum, Address1, Address2, City, State, Zip
和
Sku, Description, Notes, Size
我想你想存储电子表格数据存储在这样的…
StoreNum SKU Qty 1 1 0 1 2 100 1 3 25 1 1000 1 2 1 5
如果这就是你想要的,继续阅读。 如果这不是你想要的,请澄清你想要的。
在Access中,创build一个到Excel工作表的链接,并链接ExcelSource
名称。
然后创build一个类似如下的SELECT
查询:
SELECT StoreNum, 1 AS SKU, SKU_1 AS Qty FROM ExcelSource UNION ALL SELECT StoreNum, 2 AS SKU, SKU_2 AS Qty FROM ExcelSource UNION ALL SELECT StoreNum, 3 AS SKU, SKU_3 AS Qty FROM ExcelSource UNION ALL SELECT StoreNum, 1000 AS SKU, SKU_1000 AS Qty FROM ExcelSource;
如果来自该SELECT
查询的结果集为您提供了所需的内容,请将其转换为“附加查询”以将这些数据存储在名为YourTable
的表中。 该查询的SQL将是INSERT INTO ...
部分前面的SELECT
SQL:
INSERT INTO YourTable (StoreNum, SKU, Qty) SELECT StoreNum, 1 AS SKU, SKU_1 AS Qty FROM ExcelSource UNION ALL SELECT StoreNum, 2 AS SKU, SKU_2 AS Qty FROM ExcelSource UNION ALL SELECT StoreNum, 3 AS SKU, SKU_3 AS Qty FROM ExcelSource UNION ALL SELECT StoreNum, 1000 AS SKU, SKU_1000 AS Qty FROM ExcelSource;
如果您的Excel工作表包含1000个SKU列,请创build一系列较小的追加查询,其中每个查询都使用这1000列的可pipe理子集。
这也可以用VBA代码而不是查询来完成。 我不想引导你通过这个选项,因为我甚至不知道我是否在这条正确的轨道上。
当你打开你的Access数据库点击;
文件
获取外部数据
import
并按照向导步骤。
一些谨慎的观点。 确保所有的Excel表都具有相同的标题,并且不包含任何Null,DIV或任何其他types的错误。 快乐导入!