CPLEX 按索引读取 excel
CPLEX read excel by index
我如何通过其索引注释单元格从 cplex 上的 excel 读取一个元组。
我的意思是:
T from SheetRead(sheet,"'Data'!(0,0)");
而不是:
T from SheetRead(sheet,"'Data'!A1");
我的元组在不同的模拟之间可以更长或更短。长度由 n 定义。我可以做这样的事情吗:
T from SheetRead(sheet,"'Data'!(0,0):(0,n)");
谢谢,祝你有美好的一天
您的问题的答案可以在 reference documentation of function SheetRead
:
中找到
- 通常,您可以使用 Excel 的 R1C1 表示法来完全按索引对单元格进行索引。不幸的是,OPL 不支持此功能。
- 函数
SheetRead
的参数只能是字符串文字。所以你不能在那里使用变量。
您的情况的一个选择是在 Excel 工作表中定义一个命名范围。例如,您可以在每个不同的工作表中定义一个名为 "TupleData" 的命名范围,并在不同的工作表中将该范围定义为不同的 dimension/location。然后在.dat
文件中可以写
T from SheetRead(sheet, "'Data'!TupleData");
我如何通过其索引注释单元格从 cplex 上的 excel 读取一个元组。 我的意思是:
T from SheetRead(sheet,"'Data'!(0,0)");
而不是:
T from SheetRead(sheet,"'Data'!A1");
我的元组在不同的模拟之间可以更长或更短。长度由 n 定义。我可以做这样的事情吗:
T from SheetRead(sheet,"'Data'!(0,0):(0,n)");
谢谢,祝你有美好的一天
您的问题的答案可以在 reference documentation of function SheetRead
:
- 通常,您可以使用 Excel 的 R1C1 表示法来完全按索引对单元格进行索引。不幸的是,OPL 不支持此功能。
- 函数
SheetRead
的参数只能是字符串文字。所以你不能在那里使用变量。
您的情况的一个选择是在 Excel 工作表中定义一个命名范围。例如,您可以在每个不同的工作表中定义一个名为 "TupleData" 的命名范围,并在不同的工作表中将该范围定义为不同的 dimension/location。然后在.dat
文件中可以写
T from SheetRead(sheet, "'Data'!TupleData");