2013-04-22 23 views
2

我想從C#調用Excel函數的所有功能。我可以使用下面的代碼來獲得excel函數:Microsoft.Office.Interop.Excel.WorksheetFunction不包含在Excel

Application app = new Application(); 
WorksheetFunction functions = app.WorksheetFunction; 
var sum = functions.Sum(1, 2); 

我可以從WorksheetFunction對象中獲得像SUM這樣的函數。但現在所有的功能都在那裏,如左,右,日期等。我可以在別的地方找到它們嗎?

+0

你的意思是在網站上? – 2013-04-22 18:15:01

+0

你能用sum嗎? – 2013-04-22 18:15:39

+0

我一直認爲這是因爲這些函數存在於VBA中,或者在您的情況下是C#。你可以只使用C#LEFT,RIGHT或DATE等函數嗎? – 2013-04-22 19:57:15

回答

0

嘗試類似下面例如

using Microsoft.Office.Interop.Excel; 

static void Main(string[] args) 
{ 

    Application a = new Application(); 
    double x = a.WorksheetFunction.Sum(1, 2); 
    Console.WriteLine("Sum = {0}", x); 

} 

編輯

using IExcel = Microsoft.Office.Interop.E 
xcel; 

Then declare and initialise a IWorkSheetFunction object 

IExcel.IWorksheetFunction iwf = new IExcel.IWorksheetFunction(); 

Now you can use the functions as in 
    double result = iwf.NormDist(1,2,3,4); 
+0

總和在WorksheetFunction中。左,右,日期不是。 – Ryan 2013-04-22 18:23:07

+0

我想你將不得不使用的界面,看到我的編輯 – 2013-04-22 18:34:19

+0

此接口不具有左,右和日期函數 – Ryan 2013-04-22 18:48:15