Class XSSFFormulaUtils


  • public final class XSSFFormulaUtils
    extends java.lang.Object
    Utility to update formulas and named ranges when a sheet name was changed
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void updateSheetName​(int sheetIndex, java.lang.String oldName, java.lang.String newName)
      Update sheet name in all charts, formulas and named ranges.
      • Methods inherited from class java.lang.Object

        equals, 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 charts, 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