Excel到Access导入,列确定字段值

时间:2013-04-12 01:16:18

标签: excel ms-access import excel-2010 ms-access-2010

我正在尝试创建一个Access数据库来跟踪许多帐户的收入和支出。

我的困难在于我的老板坚持认为负责报告这些帐户支出的人员应该只使用现有的Excel电子表格来执行此操作。我可以从Excel导入,但我已锁定到工作表的现有格式。

以简化形式,工作表包含以下列:

  

帐户ID ||费用类型A ||费用类型B ||费用类型C(等)

我预计将来需要添加新类型的费用,因此表格需要适应这种情况。

我原本想过如下构建费用表:

  

Account_ID || Expense_Type || Expense_Date ||量

有关于存储在自己的表中的类型的更多信息。但我无法弄清楚如何将电子表格的列映射到记录中的类型分类。目前有大约300个帐户,有5种费用类型,两者都可能增长。

任何人都可以帮我吗?我会接受任何类型的解决方案:Excel技巧或更改我的数据库设置或其他任何可能的工作。

PS。我是VBA的新手 - 我只是在记录宏的意义上使用它。

2 个答案:

答案 0 :(得分:1)

将电子表格导入Access中的临时表后,您可以运行以下查询以“解交叉”数据

SELECT [Account ID] AS Account_ID, "Expense Type A" AS Expense_Type, 
        [Expense Type A] AS Amount
    FROM TempTable WHERE [Expense Type A] IS NOT NULL
UNION ALL
SELECT [Account ID] AS Account_ID, "Expense Type B" AS Expense_Type, 
        [Expense Type B] AS Amount
    FROM TempTable WHERE [Expense Type B] IS NOT NULL
UNION ALL
SELECT [Account ID] AS Account_ID, "Expense Type C" AS Expense_Type, 
        [Expense Type C] AS Amount
    FROM TempTable WHERE [Expense Type C] IS NOT NULL

答案 1 :(得分:0)

使用 Alt + DP调用“旧”数据透视表向导,选择多个合并范围和数据透视表,然后选择我将创建页面字段,接下来,输入Range,Next,Finish,然后双击Grand Totals十字路口。