Index: inc/oox/xls/worksheethelper.hxx =================================================================== --- inc/oox/xls/worksheethelper.hxx (revision 1515688) +++ inc/oox/xls/worksheethelper.hxx (working copy) @@ -19,8 +19,6 @@ * *************************************************************/ - - #ifndef OOX_XLS_WORKSHEETHELPER_HXX #define OOX_XLS_WORKSHEETHELPER_HXX @@ -154,6 +152,7 @@ ApiCellRangeList maRanges; ApiTokenSequence maTokens1; ApiTokenSequence maTokens2; + ::rtl::OUString msRef; ::rtl::OUString maInputTitle; ::rtl::OUString maInputMessage; ::rtl::OUString maErrorTitle; Index: source/xls/worksheetfragment.cxx =================================================================== --- source/xls/worksheetfragment.cxx (revision 1515688) +++ source/xls/worksheetfragment.cxx (working copy) @@ -158,6 +158,7 @@ { mxValModel.reset( new ValidationModel ); getAddressConverter().convertToCellRangeList( mxValModel->maRanges, rAttribs.getString( XML_sqref, OUString() ), getSheetIndex(), true ); + mxValModel->msRef = rAttribs.getString( XML_sqref, OUString() ); mxValModel->maInputTitle = rAttribs.getXString( XML_promptTitle, OUString() ); mxValModel->maInputMessage = rAttribs.getXString( XML_prompt, OUString() ); mxValModel->maErrorTitle = rAttribs.getXString( XML_errorTitle, OUString() ); Index: source/xls/worksheethelper.cxx =================================================================== --- source/xls/worksheethelper.cxx (revision 1515688) +++ source/xls/worksheethelper.cxx (working copy) @@ -19,8 +19,6 @@ * *************************************************************/ - - #include "oox/xls/worksheethelper.hxx" #include @@ -1073,6 +1071,26 @@ { PropertySet aValProps( xValidation ); + try + { + sal_Int32 nIndex = 0; + OUString aToken = aIt->msRef.getToken( 0, ' ', nIndex ); + + Reference xSheet = getSheetFromDoc( getCurrentSheetIndex() ); + Reference xDBCellRange; + Reference xCell; + xDBCellRange = xSheet->getCellRangeByName( aToken ); + + xCell = xDBCellRange->getCellByPosition( 0, 0 ); + Reference xCellAddressable( xCell, UNO_QUERY_THROW ); + CellAddress aFirstCell = xCellAddressable->getCellAddress(); + Reference xCondition( xValidation, UNO_QUERY_THROW ); + xCondition->setSourcePosition( aFirstCell ); + } + catch( Exception& ) + { + } + // convert validation type to API enum ValidationType eType = ValidationType_ANY; switch( aIt->mnType )