2

我有 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、Qty?

其他的对我来说很容易理解

StoreNum, Address1, Address2, City, State, Zip  

Sku, Description, Notes, Size
4

2 回答 2

1

我认为您想像这样将电子表格数据存储在 Access 中...

StoreNum  SKU Qty
       1    1   0
       1    2 100
       1    3  25
       1 1000   1
       2    1   5

如果这就是你想要的,请继续阅读。如果不是你想要的,请说明你想要什么。

在 Access 中,创建指向 Excel 工作表的链接并将该链接命名为ExcelSource

然后创建一个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. 该查询的SELECTSQL 将是前面有一个INSERT INTO ...部分的 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 列,请创建一系列较小的附加查询,每个查询都使用这 1000 个列的可管理子集。

这也可以使用 VBA 代码而不是查询来完成。我不想引导你通过那个选项,因为我什至不知道我是否在正确的轨道上。

于 2012-12-06T18:05:54.740 回答
0

当您打开 Access 数据库时,单击;

文件

获取外部数据

进口

并遵循向导步骤。

几个注意点。确保所有 Excel 工作表具有相同的标题,并且不包含任何 Null、DIV 或任何其他类型的错误。快乐导入!!!

于 2012-12-06T19:27:27.913 回答