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

Author:
Yegor Kozlov

Constructor Summary
XSSFFormulaUtils(XSSFWorkbook wb)
           
 
Method Summary
 void updateSheetName(int sheetIndex, java.lang.String name)
          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 name)
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. The FormulaParsingWorkbook passed to the formula parser is constructed from the old workbook (sheet name is not yet updated) and the FormulaRenderingWorkbook passed to FormulaRenderer#toFormulaString is a custom implementation that returns the new sheet name.

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


Copyright 2012 The Apache Software Foundation or its licensors, as applicable.