⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 function.cs

📁 Excel的操作,其中可以读取及写入Excel 文件
💻 CS
📖 第 1 页 / 共 3 页
字号:
using System;
using System.Collections;

using Microsoft.Fawvw.Components.NExcel.ExcelCommon;

namespace Microsoft.Fawvw.Components.NExcel.Biff.Formula
{
	
	/// <summary> An enumeration detailing the Excel function codes</summary>
	class Function
	{
		/// <summary> Gets the function code - used when generating token data
		/// 
		/// </summary>
		/// <returns> the code
		/// </returns>
		virtual internal int Code
		{
			get
			{
				return code;
			}
			
		}
		/// <summary> Gets the property name. Used by the FunctionNames object when initializing
		/// the locale specific names
		/// 
		/// </summary>
		/// <returns> the property name for this function
		/// </returns>
		virtual internal string PropertyName
		{
			get
			{
				return name;
			}
			
		}
		/// <summary> Gets the number of arguments for this function</summary>
		virtual internal int NumArgs
		{
			get
			{
				return numArgs;
			}
			
		}
		/// <summary> The logger</summary>
				private static Logger logger;
		
		/// <summary> The code which applies to this function</summary>
				private int code;
		
		/// <summary> The property name of this function</summary>
				private string name;
		
		/// <summary> The number of args this function expects</summary>
				private int numArgs;
		
		
		/// <summary> All available functions.  This attribute is package protected in order
		/// to enable the FunctionNames to initialize
		/// </summary>
		internal static Function[] functions;
		
		
		/// <summary> Constructor
		/// Sets the token value and adds this token to the array of all token
		/// 
		/// </summary>
		/// <param name="v">the biff code for the token
		/// </param>
		private Function(int v, string s, int a)
		{
			code = v;
			name = s;
			numArgs = a;
			
			// Grow the array
			Function[] newarray = new Function[functions.Length + 1];
			Array.Copy(functions, 0, newarray, 0, functions.Length);
			newarray[functions.Length] = this;
			functions = newarray;
		}
		
		/// <summary> Standard hash code method
		/// 
		/// </summary>
		/// <returns> the hash code
		/// </returns>
		public override int GetHashCode()
		{
			return code;
		}
		
		/// <summary> Gets the function name</summary>
		/// <param name="ws">the workbook settings
		/// </param>
		/// <returns> the function name
		/// </returns>
		internal virtual string getName(WorkbookSettings ws)
		{
			FunctionNames fn = ws.FunctionNames;
			return fn.getName(this);
		}
		
		/// <summary> Gets the type object from its integer value</summary>
		public static Function getFunction(int v)
		{
			Function f = null;
			
			for (int i = 0; i < functions.Length; i++)
			{
				if (functions[i].code == v)
				{
					f = functions[i];
					break;
				}
			}
			
			return f != null?f:UNKNOWN;
		}
		
		/// <summary> Gets the type object from its string value.  Used when parsing strings</summary>
		/// <param name="">v
		/// </param>
		/// <param name="ws">the workbook settings
		/// </param>
		/// <returns> the function 
		/// </returns>
		public static Function getFunction(string v, WorkbookSettings ws)
		{
			FunctionNames fn = ws.FunctionNames;
			Function f = fn.getFunction(v);
			return f != null?f:UNKNOWN;
		}
		
		// The functions
		
				public static readonly Function COUNT;
				public static readonly Function ATTRIBUTE;
				public static readonly Function ISNA;
				public static readonly Function ISERROR;
				public static readonly Function SUM;
				public static readonly Function AVERAGE;
				public static readonly Function MIN;
				public static readonly Function MAX;
				public static readonly Function ROW;
				public static readonly Function COLUMN;
				public static readonly Function NA;
				public static readonly Function NPV;
				public static readonly Function STDEV;
				public static readonly Function DOLLAR;
				public static readonly Function FIXED;
				public static readonly Function SIN;
				public static readonly Function COS;
				public static readonly Function TAN;
				public static readonly Function ATAN;
				public static readonly Function PI;
				public static readonly Function SQRT;
				public static readonly Function EXP;
				public static readonly Function LN;
				public static readonly Function LOG10;
				public static readonly Function ABS;
				public static readonly Function INT;
				public static readonly Function SIGN;
				public static readonly Function ROUND;
		//public static final Function LOOKUP;
				public static readonly Function INDEX;
		//public static final Function REPT;
				public static readonly Function MID;
				public static readonly Function LEN;
				public static readonly Function VALUE;
				public static readonly Function TRUE_Renamed;
				public static readonly Function FALSE_Renamed;
				public static readonly Function AND;
				public static readonly Function OR;
				public static readonly Function NOT;
				public static readonly Function MOD;
				public static readonly Function DCOUNT;
				public static readonly Function DSUM;
				public static readonly Function DAVERAGE;
				public static readonly Function DMIN;
				public static readonly Function DMAX;
				public static readonly Function DSTDEV;
				public static readonly Function VAR;
				public static readonly Function DVAR;
				public static readonly Function TEXT;
				public static readonly Function LINEST;
				public static readonly Function TREND;
				public static readonly Function LOGEST;
				public static readonly Function GROWTH;
		//public static final Function GOTO;
		//public static final Function HALT;
				public static readonly Function PV;
				public static readonly Function FV;
				public static readonly Function NPER;
				public static readonly Function PMT;
				public static readonly Function RATE;
		//public static final Function MIRR;
		//public static final Function IRR;
				public static readonly Function RAND;
				public static readonly Function MATCH;
				public static readonly Function DATE;
				public static readonly Function TIME;
				public static readonly Function DAY;
				public static readonly Function MONTH;
				public static readonly Function YEAR;
				public static readonly Function WEEKDAY;
				public static readonly Function HOUR;
				public static readonly Function MINUTE;
				public static readonly Function SECOND;
				public static readonly Function NOW;
				public static readonly Function AREAS;
				public static readonly Function ROWS;
				public static readonly Function COLUMNS;
				public static readonly Function OFFSET;
		//public static final Function ABSREF;
		//public static final Function RELREF;
		//public static final Function ARGUMENT;
		//public static final Function SEARCH;
				public static readonly Function TRANSPOSE;
				public static readonly Function ERROR;
		//public static final Function STEP;
				public static readonly Function TYPE;
		//public static final Function ECHO;
		//public static final Function SETNAME;
		//public static final Function CALLER;
		//public static final Function DEREF;
		//public static final Function WINDOWS;
		//public static final Function SERIES;
		//public static final Function DOCUMENTS;
		//public static final Function ACTIVECELL;
		//public static final Function SELECTION;
		//public static final Function RESULT;
				public static readonly Function ATAN2;
				public static readonly Function ASIN;
				public static readonly Function ACOS;
				public static readonly Function CHOOSE;
				public static readonly Function HLOOKUP;
				public static readonly Function VLOOKUP;
		//public static final Function LINKS;
		//public static final Function INPUT;
				public static readonly Function ISREF;
		//public static final Function GETFORMULA;
		//public static final Function GETNAME;
		//public static final Function SETVALUE;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -