* @param shift the number of rows by which to shift the cell
	 */
	private static void shiftCellRow( BiffRec cell, int shift )
	{
		int newrow = cell.getRowNumber() + shift;
		cell.setRowNumber( newrow );

		// handle per-record special cases
		switch( cell.getOpcode() )
		{
			case RK:
				((Rk) cell).setMulrkRow( newrow );
				break;

			case FORMULA:
				Formula formula = (Formula) cell;

				// must also shift shared formulas if necessary
				if( formula.isSharedFormula() )
				{
					if( formula.getInternalRecords().size() > 0 )
					{// is it the parent?
						Object o = formula.getInternalRecords().get( 0 );
						if( o instanceof Shrfmla )
						{    // should!
							Shrfmla s = (Shrfmla) o;
							s.setFirstRow( s.getFirstRow() + shift );
							s.setLastRow( s.getLastRow() + shift );
						}
					}
				}
				break;
		}
	}