2016-07-11 93 views
2

我將一個複雜的Excel表單中的功能轉換爲一個ASP.Net項目。在這我有一個要求解析/處理使用VB.NET或C#的Excel類似的公式。我該如何解析一個excel公式?

我有一個類似網格的結構顯示會計數字,用戶可以在需要的單元格中預先配置公式。

實施例: -以我數據網格細胞[2] [1],我應該能夠配置

公式= SUM(細胞[1] [1] +細胞[1] [2] )

有沒有一種方法可以從vb.net/c#解析/處理excel公式?

+1

的可能的複製[C# - 評估Excel的邏輯公式(http://stackoverflow.com/questions/2049355/c-sharp-evaluate -excel-邏輯公式) – djv

回答

0

你可以解決FLEE庫來評估C#般的表情

// Create the calculation engine 
CalculationEngine engine = new CalculationEngine(); 
ExpressionContext context = new ExpressionContext(); 
VariableCollection variables = context.Variables; 

// Add some variables 
variables.Add("x", 100);    
variables.Add("y", 200); 

// Add an expression to the calculation engine as "a" 
engine.Add("a", "x * 2", context); 

// Add an expression to the engine as "b" 
engine.Add("b", "y + 100", context); 

// Add an expression at "c" that uses the results of "a" and "b" 
engine.Add("c", "a + b", context); 

// Get the value of "c" 
int result = engine.GetResult<int>("c"); 

// Update a variable on the "a" expression    
variables["x"] = 200; 

// Recalculate it 
engine.Recalculate("a"); 

// Get the updated result 
result = engine.GetResult<int>("c");