You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Excel批量读取AnyLogic日程例外日期 无需手动逐个录入

AnyLogic Schedule批量导入Excel例外日期实现方法

实现逻辑

Schedule对象本身提供了Java API可动态添加例外日期,无需手动逐个录入,你只需要先通过AnyLogic内置的Excel读取组件把假期列表读入模型,再循环调用API添加即可。

具体操作步骤

  • 第一步:在画布中添加Excel File组件,关联你保存假期的Excel文件,确保假期日期列在Excel中设置为标准日期格式。
  • 第二步:在模型的启动触发逻辑(比如Main代理的On startup代码块)中写入以下代码,替换对应参数为你自己的组件和参数即可:
// 替换为你添加的Excel File组件的名称
ExcelFile holidayExcel = excelFile;
// 替换为你自己的参数:工作表名、数据起始行、日期所在列
String sheetName = "假期表";
int dataStartRow = 2; // 跳过表头行
int dateColIndex = 1;
int totalRow = holidayExcel.getLastRowNum(sheetName);

for (int i = dataStartRow; i <= totalRow; i++) {
    Date holiday = holidayExcel.getCellDate(sheetName, i, dateColIndex);
    // 替换为你的Schedule对象名称,第二个参数为例外日期对应的排班值,按需修改
    workSchedule.addException(holiday, 0);
}
  • 第三步:运行模型前可新增调试日志确认读取的日期正确,避免因Excel格式问题导致导入失败。

补充说明

如果你的Excel中日期存储为字符串格式,可先使用SimpleDateFormat工具类将字符串转换为Date类型后再调用addException方法即可。
如果需要设置例外的生效时间区间,可使用addException的重载方法,传入开始和结束两个时间参数即可。

内容的提问来源于stack exchange,提问作者w-.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 22:54:03