int nameNum = book.getNumberOfNames(); for (int i = 0; i < nameNum; i++) { HSSFName namedRef = book.getNameAt(i); System.out.println("Cell ref = " + namedRef.getReference()); CellReference cellRef = new CellReference(namedRef.getReference()); } results in: Cell ref = Summary!$D$31 java.lang.NumberFormatException: D$31 at java.lang.Integer.parseInt(Integer.java:426) at java.lang.Integer.parseInt(Integer.java:476) at org.apache.poi.hssf.util.CellReference.<init>(CellReference.java:82) because it doesn't seem to be parsing the string right (it doesn't pass over the sheet name before trying to parse row/col information out. Patch is attached.
Created attachment 3742 [details] Patch to fix reported problem
Created attachment 3768 [details] Fixed patch file that doesn't have a println accidentally left in
Oops, I accidentally left in a println() in the first patch. Use the second attached patch file please.
applied, sold out, tonight. Please crosscheck. It would be good if we had a unit test for the same.