2010-01-12 22 views
9

Ho un'applicazione che deve valutare Excel Logical Formule e io uso la DLL di Excel per farlo, ma la DLL non è molto efficiente.C# - Valuta le formule logiche di Excel

. NET Framework (C#) ha una classe che può rendere questo lavoro?

Un campione

Fornisco questa

=IF(AND(10>=-5;10<0);(-3,8*10+335);IF(AND(10>=0;10<5);(1,4*10+335);IF(AND(10>=5;10<14,4);(-1,2766*10+348,38);IF(AND(10>=14,4;10<25);(-1,5094*10+351,74);IF(AND(10>=25;10<=45);(-1,4*10+349);0))))) 

e ottenere questo

335,614 

Grazie

+0

Questo è il metodo migliore e fantastico CLICCA [Qui] (http://stackoverflow.com/questions/1437964/best-and-shortest-way-to-evaluate-mathematical-expressions/1438829 # 1438829) – Sarbanjeet

risposta

0

Ci sono un paio di un'espressione matematica parser là fuori, per esempio lundin, ma non sono sicuro che analizzeranno un'espressione excel per te. Deve essere eccellente?

+0

La formula deve utilizzare la sintassi di Excel –

1

Usiamo SpreadsheetGear per fare questo - ma fa molto di più di quanto le formule solo valutando, quindi potrebbe essere eccessivo per voi.

Sembra veloce e fornisce anche un'API .NET di facile utilizzo.

8

Sì, d'accordo, il metodo Excel.Application.Evaluate può essere lento. Di solito si adatta alle mie esigenze, ma non è un fulmine veloce.

penso che la migliore fonte per valutare le formule di Excel senza la modalità oggetto di Excel è:

Alcuni altri articoli correlati:

Spero che questo aiuti ...

2

Sto usando ActiveXls e sta facendo un ottimo lavoro. Non è un componente gratuito, quindi devi pagare per questo. Non so se ci sono componenti buoni e gratuiti, ma preferisco avere supporto nel caso in cui ne abbia bisogno :)

Problemi correlati