IBM CPLEX Ilog错误:“范围的Excel大小不是数组的大小”

时间:2018-11-03 23:04:10

标签: arrays size cplex ilog

我正在连接excel以解决问题。我曾使用相同的.mod文件来解决27行Excel数据的问题。现在,我尝试使用366行数据的Excel。对于其中一个数据(值)正常,而其中一个数据(值)正常时,出现错误“ Excel的范围大小不是数组的大小”。我看不出原因。谁能告诉我是什么原因造成的。 dat文件在下面:

SheetConnection sheet("Pit113_Reserves_by_block.xlsx");

BlocksType from SheetRead(sheet,"Data!A2:D367");
Blocks from SheetRead(sheet,"Data!A2:A367");
TimePeriods from SheetRead(sheet,"Data!O2:O6");

value from SheetRead(sheet,"Data!H2:H367");
oreTons from SheetRead(sheet,"Data!F2:F367");
wasteTons from SheetRead(sheet,"Data!G2:G367");

resourceMaxCap from SheetRead(sheet,"Data!P2:P6");
processMinCap from SheetRead(sheet,"Data!Q2:Q6");

schedule to SheetWrite(sheet,"Data!I2:M367");

mod文件声明部分如下:

    {int} TimePeriods =...;

{int} Blocks =...;



float value[Blocks] = ...;
float oreTons[Blocks] = ...;
float wasteTons[Blocks] = ...;
float resourceMaxCap[TimePeriods] =...;
float processMinCap[TimePeriods] =...;

1 个答案:

答案 0 :(得分:0)

谢谢。我发现了问题。我使用的Blocks值不是连续的序列号。我已经使用了一些逻辑,根据其位置以不连续的数字来标识一个块。我将其更改为一个连续的数字,现在可以使用了。谢谢您对此进行调查。