summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorNoel Power <noel.power@novell.com>2011-07-29 14:11:49 +0100
committerNoel Power <noel.power@novell.com>2011-07-29 14:31:08 +0100
commit09775aa19a0480243bbb1a6aec9edbb2f52c2748 (patch)
tree7dcc466dcb1af6c9ace4bd7545599097315f794f /sc
parent1767dbcd202d3043b14bbbccabedaa6e95e41769 (diff)
bnc#707486, use correct CopyRangeNamesToClip for bUseRangeForVBA
also ensure relevant checks regarding pMarks are only applied for !bUseRangeForVBA
Diffstat (limited to 'sc')
-rw-r--r--sc/source/core/data/document.cxx9
1 files changed, 6 insertions, 3 deletions
diff --git a/sc/source/core/data/document.cxx b/sc/source/core/data/document.cxx
index 27078585df16..ec5cd5241b5a 100644
--- a/sc/source/core/data/document.cxx
+++ b/sc/source/core/data/document.cxx
@@ -1867,7 +1867,7 @@ void ScDocument::CopyToClip(const ScClipParam& rClipParam,
ScDocument* pClipDoc, const ScMarkData* pMarks,
bool bAllTabs, bool bKeepScenarioFlags, bool bIncludeObjects, bool bCloneNoteCaptions, bool bUseRangeForVBA )
{
- OSL_ENSURE( bAllTabs || pMarks, "CopyToClip: ScMarkData fails" );
+ OSL_ENSURE( !bUseRangeForVBA && ( bAllTabs || pMarks ), "CopyToClip: ScMarkData fails" );
if (bIsClip)
return;
@@ -1894,14 +1894,17 @@ void ScDocument::CopyToClip(const ScClipParam& rClipParam,
else
pClipDoc->ResetClip(this, pMarks);
- CopyRangeNamesToClip(pClipDoc, aClipRange, pMarks, bAllTabs);
+ if ( bUseRangeForVBA )
+ CopyRangeNamesToClip(pClipDoc, aClipRange, nTab );
+ else
+ CopyRangeNamesToClip(pClipDoc, aClipRange, pMarks, bAllTabs);
for ( ; i < nEndTab; ++i)
{
if (!maTabs[i] || i >= static_cast<SCTAB>(pClipDoc->maTabs.size()) || !pClipDoc->maTabs[i])
continue;
- if (pMarks && !pMarks->GetTableSelect(i))
+ if ( !bUseRangeForVBA && ( pMarks && !pMarks->GetTableSelect(i) ) )
continue;
maTabs[i]->CopyToClip(rClipParam.maRanges, pClipDoc->maTabs[i], bKeepScenarioFlags, bCloneNoteCaptions);