Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在此工作簿中检测到一个或多个无效名称。这些无效名称已更改为#REF_Java_Excel_Apache Poi_Openoffice Calc - Fatal编程技术网

Java 在此工作簿中检测到一个或多个无效名称。这些无效名称已更改为#REF

Java 在此工作簿中检测到一个或多个无效名称。这些无效名称已更改为#REF,java,excel,apache-poi,openoffice-calc,Java,Excel,Apache Poi,Openoffice Calc,尝试将单元格(“CD”)中的值引用到特定单元格,在OpenOffice中可以正常工作,但在ms excel中不起作用 for () { Name houseHoldRelationNamedCell = workbook.createName(); houseHoldRelationNamedCell.setNameName("name"+ loopCounter); houseHoldRelationNamedCell.setRe

尝试将单元格(“CD”)中的值引用到特定单元格,在OpenOffice中可以正常工作,但在ms excel中不起作用

for () {
        Name houseHoldRelationNamedCell = workbook.createName();
                houseHoldRelationNamedCell.setNameName("name"+ loopCounter);
        houseHoldRelationNamedCell.setRefersToFormula("$"+ CellReference.convertNumToColString(hiddenCellColumn) +"$1");

    DVConstraint constraintHouseholdRltn = DVConstraint.createFormulaListConstraint("name"+ beneficiaryRelationVO.getId());
    CellRangeAddressList addressListHouseholdRltn = new CellRangeAddressList(row, totalRows, column-1, column-1);
    HSSFDataValidation validationHouseholdRltn = new HSSFDataValidation(addressListHouseholdRltn, constraintHouseholdRltn);
    validationHouseholdRltn.setSuppressDropDownArrow(false);
    sheet.addValidationData(validationHouseholdRltn);
loopCounter++;
}
Excel错误:“在此工作簿中检测到一个或多个无效名称。这些无效名称已更改为#REF!”


在ms excel中,“公式”->“名称管理器”显示有效名称+“循环计数器值”,但引用值为“=#NA!”

通过查看您的代码。我发现,当您引用单元格时,您只使用了
$CD1$
(CD是没有sheetname的示例单元格地址)

当名称为全局(无工作表引用)时,OpenOffice组织中假定为“当前”工作表(当前为名称引用)。MS Excel 2007+不会这样做。它需要图纸参考
(图纸1!名称)

您的代码应该是这样的

houseHoldRelationNamedCell.setRefersToFormula("'sheetname'!$"+ CellReference.convertNumToColString(hiddenCellColumn) +"$1");

哪个MS excel版本???@SubinCPoonamgode MS excel 2013