代码之家  ›  专栏  ›  技术社区  ›  Stewart Johnson

从记录中查询窗体列的访问权限

  •  2
  • Stewart Johnson  · 技术社区  · 15 年前

    在工作中,我们有一个名册,历史上一直保存在一个巨大的Excel工作簿。由于人员变动等原因,它变得有点脆弱,所以我尝试将其作为Access数据库重新实现。

    我有一个人员表(字段包括姓名和人员的一些其他属性)和一个休假表--每个休假都有一个人员ID、开始日期和结束日期。

    Date    Person A    Person B    Person C
    01 Jan  -           -           -
    02 Jan  -           -           -
    03 Jan  VAC         -           -
    04 Jan  VAC         VAC         -
    05 Jan  VAC         VAC         -
    06 Jan  -           VAC         -
    07 Jan  -           -           -
    08 Jan  -           -           -
    09 Jan  -           -           -
    

    (在本例中,Vactions表有两条记录——一条用于人员A,另一条用于人员B。)

    Excel能做到这一点吗?还是我得写些代码?

    2 回复  |  直到 15 年前
        1
  •  1
  •   CResults    15 年前

    我建议你

    • 为自己构建一个日期表(表中有一行表示您可能要使用的每个日期,例如2000年1月1日到2020年12月31日)

    • 在该表的帮助下,构建一个视图,列出每个人的每个日期,并显示该人是否在该日期休假(休假和日期表之间的左联接以及休假和人员之间的联接)

    • 现在更棘手的一点。您现在需要为自己构建一个交叉表查询。。。。但是使用access会很有趣(有一段时间没有使用access了,所以这可能是错误的)。

    • 然而 ,我建议您在上面的第2步中构建视图,然后使用Excel的强大功能为您构建数据透视表。将Excel电子表格链接到Access数据库,每次用户需要刷新数据时,他们都会刷新它!

    HTH公司

        2
  •  2
  •   Kevin Ross    15 年前

    您可以使用access中的pivot表来实现这一点,但是这样显示数据是Excel-to-access/数据库综合症的典型症状。

    缓和切线

    我总是被告知在数据库中只有3个数字0,1和n,其中n是2和无穷大之间的任意数字。当你有少量的员工时,这样显示数据是可以的,但是当你有50或300名员工时会发生什么呢?我将以一种不同的方式显示数据,可能是一种交互式形式或其他类型的动态显示。如果必须是纸质的,那么可能是某种按人分类的报告?

    /缓和切线