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的错误。 快乐导入!