Using the method getSheetName of the class HSSFName does not work with noncontiguous named ranges. More precisely the method getExternSheetNumber of class NameRecord uses the wrong entry in the stack field_13_name_definition in that case. Because for noncontiguous named ranges the first entry is not Area3DPtg or Ref3DPtg but MemFuncPtg. So it always return the first sheet. I tested it with version 3.0.2 and 3.1 BETA1, both without success.
Any chance you could upload a small sample spreadsheet that triggers this problem, along with letting us know which named range will trigger the issue? That'd give us something to test a fix against
no response in a long time => resolving for now, please reopen with more information ifnthis is still an issue