使用来自Excel的数据在不同范围数组上进行迭代解析

时间:2018-10-31 20:41:18

标签: excel main cplex opl

我需要你一些闪闪发光的光!

我在Excel中的工作表上使用不同的范围数组构建了一个迭代分辨率模型,问题是excel中其余工作表的范围是不同的。

例如:在第一张纸上,我要解决12位患者的模型,因此我要使用具有该大小的数组,在第二张纸上,我要解决19位患者,因此数组的范围将改变... < / p>

所以我该如何自动设置Cplex来从不同数组范围的excel中读取数据。实际上,这是我在主体上编写的代码。模式

for (var sheet in thisOplModel.sheets) 

        {                            
    var data0=new IloOplDataElements();
    var data1=new IloOplDataElements();
    var data2=new IloOplDataElements();
    var data3=new IloOplDataElements();
    var data4=new IloOplDataElements();
    var data5=new IloOplDataElements();
    var data6=new IloOplDataElements();
    var data7=new IloOplDataElements();
    var data8=new IloOplDataElements();

data0.readP=sheet+"!B9";
data1.readM=sheet+"!B10";
data2.readI=sheet+"!B11";
data3.readH=sheet+"!B12";
data4.readXmih=sheet+"!N3:BE12";
data5.readQpih=sheet+"!N19:BE30";
data6.readDpm=sheet+"!B18:K29";
data7.readJmax=sheet+"!E2:E13";
data8.readDmax=sheet+"!E31";

     var Opl = new IloOplModel(def,cplex);

 Opl.addDataSource(data0);
 Opl.addDataSource(data1);                  
 Opl.addDataSource(data2);                 
 Opl.addDataSource(data3);                  
 Opl.addDataSource(data4);                 
 Opl.addDataSource(data5);                 
 Opl.addDataSource(data6);                  
 Opl.addDataSource(data7);                  
 Opl.addDataSource(data8);               
 Opl.addDataSource(data);

谢谢!!

致谢

0 个答案:

没有答案