diff options
author | Eike Rathke <erack@redhat.com> | 2016-04-05 18:03:00 +0100 |
---|---|---|
committer | Eike Rathke <erack@redhat.com> | 2016-04-05 18:08:36 +0100 |
commit | 3c36ba50f65d663f35264f2a11c99c0ff98674a2 (patch) | |
tree | 21f2b732461ac8b6caf4f767a3021e64e1480359 | |
parent | 6858d559fe1d2a0b7163ad0c04be4f123c68bf21 (diff) |
Resolves: tdf#98990 accept R1C1 notation entire column/row references
... which consist of only C4 or C[3] without a range operator.
Change-Id: I1865f0ec4c4fec1101b93b6b40d6f26871a65f07
-rw-r--r-- | sc/source/core/tool/compiler.cxx | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/sc/source/core/tool/compiler.cxx b/sc/source/core/tool/compiler.cxx index d45008af6813..38e2da084060 100644 --- a/sc/source/core/tool/compiler.cxx +++ b/sc/source/core/tool/compiler.cxx @@ -3036,15 +3036,19 @@ bool ScCompiler::IsReference( const OUString& rName ) } else { - // Special treatment for the 'E:\[doc]Sheet1:Sheet3'!D5 Excel sickness, - // mnRangeOpPosInSymbol did not catch the range operator as it is - // within a quoted name. switch (pConv->meConv) { case FormulaGrammar::CONV_XL_A1: - case FormulaGrammar::CONV_XL_R1C1: case FormulaGrammar::CONV_XL_OOX: - if (rName[0] == '\'' && IsDoubleReference( rName)) + // Special treatment for the 'E:\[doc]Sheet1:Sheet3'!D5 Excel + // sickness, mnRangeOpPosInSymbol did not catch the range + // operator as it is within a quoted name. + if (rName[0] != '\'') + return false; // Document name has to be single quoted. + // fallthru + case FormulaGrammar::CONV_XL_R1C1: + // C2 or C[1] are valid entire column references. + if (IsDoubleReference( rName)) return true; break; default: |