1

我有一个看起来像这样的访问表,

Category | Subcategory | Userdate (mm/dd/yyyy) | Color

我想将其导出到一个 excel 文件中,其中类别和子类别将分别放置在 A 列和 B 列中。但是颜色将按月(用户日期)放置,12 个月意味着从 C 到 N 的列。所以我想做的是根据月份(用户日期)将颜色的记录放在不同的列中。

这样做的最佳方法是什么?创建一个记录集并循环遍历它?我认为当行超过可能的 40k 时,这会有点慢。

我还可以使表格具有月份列,例如:

Category | Subcategory | January | February | etc...

所以我可以像那样导出它,但在我看来,这只是制作表格的一种糟糕方式。

4

1 回答 1

1

听起来你想要一个交叉表查询:

TRANSFORM First(Table1.Colour) AS AColour
SELECT Table1.Category, Table1.Subcategory
FROM Table1
GROUP BY Table1.Category, Table1.Subcategory
PIVOT Format([Userdate],"mm-mmm");

您可以使用 DoCmd.TransferSpreadSheet 以编程方式传输到 Excel

于 2012-08-10T13:05:02.887 回答