/*******************************************************************************
* You may amend and distribute as you like, but don't remove this header!
*
* EPPlus provides server-side generation of Excel 2007/2010 spreadsheets.
* See http://www.codeplex.com/EPPlus for details.
*
* Copyright (C) 2011 Jan Källman
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU Lesser General Public License for more details.
*
* The GNU Lesser General Public License can be viewed at http://www.opensource.org/licenses/lgpl-license.php
* If you unfamiliar with this license or have questions about it, here is an http://www.gnu.org/licenses/gpl-faq.html
*
* All code and executables are provided "as is" with no warranty either express or implied.
* The author accepts no liability for any damage or loss of business that this product may cause.
*
* Code change notes:
*
* Author Change Date
* ******************************************************************************
* Eyal Seagull Conditional Formatting Adaption 2012-04-03
*******************************************************************************/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
namespace OfficeOpenXml.ConditionalFormatting
{
///
/// Enum for Conditional Format Type ST_CfType §18.18.12. With some changes.
///
public enum eExcelConditionalFormattingRuleType
{
#region Average
///
/// This conditional formatting rule highlights cells that are above the average
/// for all values in the range.
///
/// AboveAverage Excel CF Rule Type
AboveAverage,
///
/// This conditional formatting rule highlights cells that are above or equal
/// the average for all values in the range.
///
/// AboveAverage Excel CF Rule Type
AboveOrEqualAverage,
///
/// This conditional formatting rule highlights cells that are below the average
/// for all values in the range.
///
/// AboveAverage Excel CF Rule Type
BelowAverage,
///
/// This conditional formatting rule highlights cells that are below or equal
/// the average for all values in the range.
///
/// AboveAverage Excel CF Rule Type
BelowOrEqualAverage,
#endregion
#region StdDev
///
/// This conditional formatting rule highlights cells that are above the standard
/// deviationa for all values in the range.
/// AboveAverage Excel CF Rule Type
///
AboveStdDev,
///
/// This conditional formatting rule highlights cells that are below the standard
/// deviationa for all values in the range.
///
/// AboveAverage Excel CF Rule Type
BelowStdDev,
#endregion
#region TopBottom
///
/// This conditional formatting rule highlights cells whose values fall in the
/// bottom N bracket as specified.
///
/// Top10 Excel CF Rule Type
Bottom,
///
/// This conditional formatting rule highlights cells whose values fall in the
/// bottom N percent as specified.
///
/// Top10 Excel CF Rule Type
BottomPercent,
///
/// This conditional formatting rule highlights cells whose values fall in the
/// top N bracket as specified.
///
/// Top10 Excel CF Rule Type
Top,
///
/// This conditional formatting rule highlights cells whose values fall in the
/// top N percent as specified.
///
/// Top10 Excel CF Rule Type
TopPercent,
#endregion
#region TimePeriod
///
/// This conditional formatting rule highlights cells containing dates in the
/// last 7 days.
///
/// TimePeriod Excel CF Rule Type
Last7Days,
///
/// This conditional formatting rule highlights cells containing dates in the
/// last month.
///
/// TimePeriod Excel CF Rule Type
LastMonth,
///
/// This conditional formatting rule highlights cells containing dates in the
/// last week.
///
/// TimePeriod Excel CF Rule Type
LastWeek,
///
/// This conditional formatting rule highlights cells containing dates in the
/// next month.
///
/// TimePeriod Excel CF Rule Type
NextMonth,
///
/// This conditional formatting rule highlights cells containing dates in the
/// next week.
///
/// TimePeriod Excel CF Rule Type
NextWeek,
///
/// This conditional formatting rule highlights cells containing dates in this
/// month.
///
/// TimePeriod Excel CF Rule Type
ThisMonth,
///
/// This conditional formatting rule highlights cells containing dates in this
/// week.
///
/// TimePeriod Excel CF Rule Type
ThisWeek,
///
/// This conditional formatting rule highlights cells containing today dates.
///
/// TimePeriod Excel CF Rule Type
Today,
///
/// This conditional formatting rule highlights cells containing tomorrow dates.
///
/// TimePeriod Excel CF Rule Type
Tomorrow,
///
/// This conditional formatting rule highlights cells containing yesterday dates.
///
/// TimePeriod Excel CF Rule Type
Yesterday,
#endregion
#region CellIs
///
/// This conditional formatting rule highlights cells in the range that begin with
/// the given text.
///
///
/// Equivalent to using the LEFT() sheet function and comparing values.
///
/// BeginsWith Excel CF Rule Type
BeginsWith,
///
/// This conditional formatting rule highlights cells in the range between the
/// given two formulas.
///
/// CellIs Excel CF Rule Type
Between,
///
/// This conditional formatting rule highlights cells that are completely blank.
///
///
/// Equivalent of using LEN(TRIM()). This means that if the cell contains only
/// characters that TRIM() would remove, then it is considered blank. An empty cell
/// is also considered blank.
///
/// ContainsBlanks Excel CF Rule Type
ContainsBlanks,
///
/// This conditional formatting rule highlights cells with formula errors.
///
///
/// Equivalent to using ISERROR() sheet function to determine if there is
/// a formula error.
///
/// ContainsErrors Excel CF Rule Type
ContainsErrors,
///
/// This conditional formatting rule highlights cells in the range that begin with
/// the given text.
///
///
/// Equivalent to using the LEFT() sheet function and comparing values.
///
/// ContainsText Excel CF Rule Type
ContainsText,
///
/// This conditional formatting rule highlights duplicated values.
///
/// DuplicateValues Excel CF Rule Type
DuplicateValues,
///
/// This conditional formatting rule highlights cells ending with given text.
///
///
/// Equivalent to using the RIGHT() sheet function and comparing values.
///
/// EndsWith Excel CF Rule Type
EndsWith,
///
/// This conditional formatting rule highlights cells equals to with given formula.
///
/// CellIs Excel CF Rule Type
Equal,
///
/// This conditional formatting rule contains a formula to evaluate. When the
/// formula result is true, the cell is highlighted.
///
/// Expression Excel CF Rule Type
Expression,
///
/// This conditional formatting rule highlights cells greater than the given formula.
///
/// CellIs Excel CF Rule Type
GreaterThan,
///
/// This conditional formatting rule highlights cells greater than or equal the
/// given formula.
///
/// CellIs Excel CF Rule Type
GreaterThanOrEqual,
///
/// This conditional formatting rule highlights cells less than the given formula.
///
/// CellIs Excel CF Rule Type
LessThan,
///
/// This conditional formatting rule highlights cells less than or equal the
/// given formula.
///
/// CellIs Excel CF Rule Type
LessThanOrEqual,
///
/// This conditional formatting rule highlights cells outside the range in
/// given two formulas.
///
/// CellIs Excel CF Rule Type
NotBetween,
///
/// This conditional formatting rule highlights cells that does not contains the
/// given formula.
///
/// CellIs Excel CF Rule Type
NotContains,
///
/// This conditional formatting rule highlights cells that are not blank.
///
///
/// Equivalent of using LEN(TRIM()). This means that if the cell contains only
/// characters that TRIM() would remove, then it is considered blank. An empty cell
/// is also considered blank.
///
/// NotContainsBlanks Excel CF Rule Type
NotContainsBlanks,
///
/// This conditional formatting rule highlights cells without formula errors.
///
///
/// Equivalent to using ISERROR() sheet function to determine if there is a
/// formula error.
///
/// NotContainsErrors Excel CF Rule Type
NotContainsErrors,
///
/// This conditional formatting rule highlights cells that do not contain
/// the given text.
///
///
/// Equivalent to using the SEARCH() sheet function.
///
/// NotContainsText Excel CF Rule Type
NotContainsText,
///
/// This conditional formatting rule highlights cells not equals to with
/// given formula.
///
/// CellIs Excel CF Rule Type
NotEqual,
///
/// This conditional formatting rule highlights unique values in the range.
///
/// UniqueValues Excel CF Rule Type
UniqueValues,
#endregion
#region ColorScale
///
/// Three Color Scale (Low, Middle and High Color Scale)
///
/// ColorScale Excel CF Rule Type
ThreeColorScale,
///
/// Two Color Scale (Low and High Color Scale)
///
/// ColorScale Excel CF Rule Type
TwoColorScale,
#endregion
#region IconSet
///
/// This conditional formatting rule applies a 3 set icons to cells according
/// to their values.
///
/// IconSet Excel CF Rule Type
ThreeIconSet,
///
/// This conditional formatting rule applies a 4 set icons to cells according
/// to their values.
///
/// IconSet Excel CF Rule Type
FourIconSet,
///
/// This conditional formatting rule applies a 5 set icons to cells according
/// to their values.
///
/// IconSet Excel CF Rule Type
FiveIconSet,
#endregion
#region DataBar
///
/// This conditional formatting rule displays a gradated data bar in the range of cells.
///
/// DataBar Excel CF Rule Type
DataBar
#endregion
}
///
/// Enum for Conditional Format Value Object Type ST_CfvoType §18.18.13
///
public enum eExcelConditionalFormattingValueObjectType
{
///
/// Formula
///
Formula,
///
/// Maximum Value
///
Max,
///
/// Minimum Value
///
Min,
///
/// Number Value
///
Num,
///
/// Percent
///
Percent,
///
/// Percentile
///
Percentile
}
///
/// Enum for Conditional Formatting Value Object Position
///
public enum eExcelConditionalFormattingValueObjectPosition
{
///
/// The lower position for both TwoColorScale and ThreeColorScale
///
Low,
///
/// The middle position only for ThreeColorScale
///
Middle,
///
/// The highest position for both TwoColorScale and ThreeColorScale
///
High
}
///
/// Enum for Conditional Formatting Value Object Node Type
///
public enum eExcelConditionalFormattingValueObjectNodeType
{
///
/// 'cfvo' node
///
Cfvo,
///
/// 'color' node
///
Color
}
///
/// Enum for Conditional Formatting Operartor Type ST_ConditionalFormattingOperator §18.18.15
///
public enum eExcelConditionalFormattingOperatorType
{
///
/// Begins With. 'Begins with' operator
///
BeginsWith,
///
/// Between. 'Between' operator
///
Between,
///
/// Contains. 'Contains' operator
///
ContainsText,
///
/// Ends With. 'Ends with' operator
///
EndsWith,
///
/// Equal. 'Equal to' operator
///
Equal,
///
/// Greater Than. 'Greater than' operator
///
GreaterThan,
///
/// Greater Than Or Equal. 'Greater than or equal to' operator
///
GreaterThanOrEqual,
///
/// Less Than. 'Less than' operator
///
LessThan,
///
/// Less Than Or Equal. 'Less than or equal to' operator
///
LessThanOrEqual,
///
/// Not Between. 'Not between' operator
///
NotBetween,
///
/// Does Not Contain. 'Does not contain' operator
///
NotContains,
///
/// Not Equal. 'Not equal to' operator
///
NotEqual
}
///
/// Enum for Conditional Formatting Time Period Type ST_TimePeriod §18.18.82
///
public enum eExcelConditionalFormattingTimePeriodType
{
///
/// Last 7 Days. A date in the last seven days.
///
Last7Days,
///
/// Last Month. A date occuring in the last calendar month.
///
LastMonth,
///
/// Last Week. A date occuring last week.
///
LastWeek,
///
/// Next Month. A date occuring in the next calendar month.
///
NextMonth,
///
/// Next Week. A date occuring next week.
///
NextWeek,
///
/// This Month. A date occuring in this calendar month.
///
ThisMonth,
///
/// This Week. A date occuring this week.
///
ThisWeek,
///
/// Today. Today's date.
///
Today,
///
/// Tomorrow. Tomorrow's date.
///
Tomorrow,
///
/// Yesterday. Yesterday's date.
///
Yesterday
}
///
/// 18.18.42 ST_IconSetType (Icon Set Type) - Only 3 icons
///
public enum eExcelconditionalFormatting3IconsSetType
{
///
/// (3 Arrows) 3 arrows icon set.
///
Arrows,
///
/// (3 Arrows (Gray)) 3 gray arrows icon set.
///
ArrowsGray,
///
/// (3 Flags) 3 flags icon set.
///
Flags,
///
/// (3 Signs) 3 signs icon set.
///
Signs,
///
/// (3 Symbols Circled) 3 symbols icon set.
///
Symbols,
///
/// (3 Symbols) 3 Symbols icon set.
///
Symbols2,
///
/// (3 Traffic Lights) 3 traffic lights icon set (#1).
///
TrafficLights1,
///
/// (3 Traffic Lights Black) 3 traffic lights icon set with thick black border.
///
TrafficLights2
}
///
/// 18.18.42 ST_IconSetType (Icon Set Type) - Only 4 icons
///
public enum eExcelconditionalFormatting4IconsSetType
{
///
/// (4 Arrows) 4 arrows icon set.
///
Arrows,
///
/// (4 Arrows (Gray)) 4 gray arrows icon set.
///
ArrowsGray,
///
/// (4 Ratings) 4 ratings icon set.
///
Rating,
///
/// (4 Red To Black) 4 'red to black' icon set.
///
RedToBlack,
///
/// (4 Traffic Lights) 4 traffic lights icon set.
///
TrafficLights
}
///
/// 18.18.42 ST_IconSetType (Icon Set Type) - Only 5 icons
///
public enum eExcelconditionalFormatting5IconsSetType
{
///
/// (5 Arrows) 5 arrows icon set.
///
Arrows,
///
/// (5 Arrows (Gray)) 5 gray arrows icon set.
///
ArrowsGray,
///
/// (5 Quarters) 5 quarters icon set.
///
Quarters,
///
/// (5 Ratings Icon Set) 5 rating icon set.
///
Rating
}
///
/// 18.18.42 ST_IconSetType (Icon Set Type)
///
public enum eExcelconditionalFormattingIconsSetType
{
///
/// (3 Arrows) 3 arrows icon set.
///
ThreeArrows,
///
/// (3 Arrows (Gray)) 3 gray arrows icon set.
///
ThreeArrowsGray,
///
/// (3 Flags) 3 flags icon set.
///
ThreeFlags,
///
/// (3 Signs) 3 signs icon set.
///
ThreeSigns,
///
/// (3 Symbols Circled) 3 symbols icon set.
///
ThreeSymbols,
///
/// (3 Symbols) 3 Symbols icon set.
///
ThreeSymbols2,
///
/// (3 Traffic Lights) 3 traffic lights icon set (#1).
///
ThreeTrafficLights1,
///
/// (3 Traffic Lights Black) 3 traffic lights icon set with thick black border.
///
ThreeTrafficLights2,
///
/// (4 Arrows) 4 arrows icon set.
///
FourArrows,
///
/// (4 Arrows (Gray)) 4 gray arrows icon set.
///
FourArrowsGray,
///
/// (4 Ratings) 4 ratings icon set.
///
FourRating,
///
/// (4 Red To Black) 4 'red to black' icon set.
///
FourRedToBlack,
///
/// (4 Traffic Lights) 4 traffic lights icon set.
///
FourTrafficLights,
///
/// (5 Arrows) 5 arrows icon set.
///
FiveArrows,
///
/// (5 Arrows (Gray)) 5 gray arrows icon set.
///
FiveArrowsGray,
///
/// (5 Quarters) 5 quarters icon set.
///
FiveQuarters,
///
/// (5 Ratings Icon Set) 5 rating icon set.
///
FiveRating
}
}