bug 31044: Corrected parsing of references which contain double sheet names ie 'Sheet 1'!F1:'Sheet 1'!F10.
Although i have hacked it a bit such that it gets translated to 'Sheet 1'!F1:F10 git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@437684 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
1b451b3e8a
commit
2bbff11ea5
@ -290,8 +290,19 @@ public class FormulaParser {
|
|||||||
if (look == ':') {
|
if (look == ':') {
|
||||||
Match(':');
|
Match(':');
|
||||||
String second=GetName();
|
String second=GetName();
|
||||||
|
if (look == '!') {
|
||||||
tokens.add(new Area3DPtg(first+":"+second,externIdx));
|
//The sheet name was included in both of the areas. Only really
|
||||||
|
//need it once
|
||||||
|
Match('!');
|
||||||
|
String third=GetName();
|
||||||
|
|
||||||
|
if (!sheetName.equals(second))
|
||||||
|
throw new RuntimeException("Unhandled double sheet reference.");
|
||||||
|
|
||||||
|
tokens.add(new Area3DPtg(first+":"+third,externIdx));
|
||||||
|
} else {
|
||||||
|
tokens.add(new Area3DPtg(first+":"+second,externIdx));
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
tokens.add(new Ref3DPtg(first,externIdx));
|
tokens.add(new Ref3DPtg(first,externIdx));
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user