private void ResolveCellCleanableState(XmlNodeInformation nodeInfo, bool m_isFirstCellRefForSheet) { string cellRef = nodeInfo.GetAttributeValue("r"); Dictionary<string, byte> actualCellRefs; if(m_processingDictionaries.GetActualCleanableCellRefs(m_lastSheetIndex, out actualCellRefs)) { SetCleanableStateFlags(actualCellRefs, cellRef); } else { m_inCleanableFormulaCell = false; if (m_addSheetIndexToNextValidCellRef) { string sheetIndex = nodeInfo.GetAttributeValue("i"); if (string.IsNullOrEmpty(sheetIndex))//if it isn't then we have moved to cell refs for another sheet so we don't add this one { nodeInfo.CreateNewAttribute("", "i", "", m_lastSheetIndex); } m_addSheetIndexToNextValidCellRef = false; } } }