本帖最后由 phlips5437 于 2011-09-14 20:03:21 编辑

解决方案 »

  1.   

    建一张值班时段表
    建一张人员表
    建个值班表
    然后搞个维护界面就可以了,界面主体可以用个DataGridView,
    列不要用DataGridViewTextBoxColumn用DataGridViewCheckBoxColumn,列标头是周一到周末,
    行标头是12个人  在搞个combobox数据源是值班类型(例如:combobox选择白班,第一个人勾选周一,周二,第二个人勾选....)
    或者
    行标头是值班类型 combox数据源是12个人 (例如:combobox选择张三,勾选周一白班,周五晚班)不知道这个思路LZ可明白?
      

  2.   

    班次需求:周一至周五每日2个班次,共计10个班次。周六、日每日1个班次,共计2个班次。合计12个班次。
    因为共计3个人,故每人每周上4天班即可。
    设A班为早9晚5,B班为早8晚6。
    如果不考虑特别平均,即可如下一周一循环:
     周一 周二 周三 周四 周五 周六 周日
    1 A A B B 休 休 休
    2 B B 休 休 A 休 B
    3 休 休 A A B B 休如果考虑特别平均,即需要如下三周一循环:
     周一 周二 周三 周四 周五 周六 周日 周一 周二 周三 周四 周五 周六 周日 周一 周二 周三 周四 周五 周六 周日
    1 A A B B 休 休 休 B B 休 休 A 休 B 休 休 A A B B 休
    2 B B 休 休 A 休 B 休 休 A A B B 休 A A B B 休 休 休
    3 休 休 A A B B 休 A A B B 休 休 休 B B 休 休 A 休 B