org.apache.poi.xssf.usermodel.helpers
Class XSSFFormulaUtils

java.lang.Object
  extended by org.apache.poi.xssf.usermodel.helpers.XSSFFormulaUtils

public final class XSSFFormulaUtils
extends java.lang.Object

Utility to update formulas and named ranges when a sheet name was changed


Constructor Summary
XSSFFormulaUtils(XSSFWorkbook wb)
           
 
Method Summary
 void updateSheetName(int sheetIndex, java.lang.String oldName, java.lang.String newName)
          Update sheet name in all formulas and named ranges.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XSSFFormulaUtils

public XSSFFormulaUtils(XSSFWorkbook wb)
Method Detail

updateSheetName

public void updateSheetName(int sheetIndex,
                            java.lang.String oldName,
                            java.lang.String newName)
Update sheet name in all formulas and named ranges. Called from XSSFWorkbook.setSheetName(int, String)

The idea is to parse every formula and render it back to string with the updated sheet name. This is done by parsing into Ptgs, looking for ones with sheet references in them, and changing those

Parameters:
sheetIndex - the 0-based index of the sheet being changed
oldName - the old sheet name
newName - the new sheet name