MS Excel og NAGs C-bibliotek
Hvis du bruker MS Excel og ønsker å bruke matematiske funksjoner som ikke er tilgjengelige i Excel er kanskje C-biblioteket fra NAG det du er ute etter.
Krav for å komme i gang
Denne veiledningen tar utgangspunkt i at du bruker MS Excel 2000 eller nyere og har installert NAG C Library Mark 7. Det er også en fordel om du har litt erfaring med macro-programmering i VBA (Visual Basic for Applications), da det er macroer som brukes for å kalle funksjoner i biblioteket. Miljøvariabelen PATH må inneholde stien til katalogen der nagc.dll finnes. På en standardinstallasjon av biblioteket er dette stien: C:\Program Files\Numerical Algorithms Group\CLDLL0742\bin. For hver funksjon i biblioteket finnes det en fil som heter funksjonsnavn_skeleton.bas som inneholder en VB-deklarasjon av C-funksjonen i biblioteket. Les om og last ned Visual Basic Declarations for the NAG C Library.
Eksempel bruk av NAG C-biblioteket
Den beste måten å illustrere bruken av biblioteket er nok med et lite eksempel som punktvis demonstrerer hvordan du kan gjøre det. Du kan lese om og laste ned eksempler fra Sample Microsoft Excel Projects Illustrating How to Call the NAG C Library .
- Lag et nytt regneark og sett inn tallene -1,7 i celle C3 og 2,6 i celle D3.
- Gå til Tools->Macro->Macros og lag en ny macro.
- Skriv inn følgende kode i macro-editoren som kommer opp:
kode #1' Start a02dcc_skeleton.bas Option Base 1 Option Explicit Global Const NAG_FILE_LEN = 512 Global Const NAG_ERROR_BUF_LEN = 512 Global Const MPS_NAME_LEN = 8 Type Complex re As Double im As Double End Type Declare Function a02dcc Lib "nagc.dll" ( _ ByVal zRe As Double, ByVal zIm As Double _ ) As Complex ' Slutt a02dcc_skeleton.bas Sub test() Dim x As Double, y As Double, result As Complex With Worksheets("Sheet1") x = .Cells(3, 3) y = .Cells(3, 4) result = a02dcc(x, y) .Cells(5, 3) = result.im .Cells(5, 4) = result.re End With End Sub - Gå til Tools->Macro->Macros og kjør macroen du nettopp har skrevet.
- Det som regnes ut er kvadratroten til et kompleks tall der den reelle delen hentes fra celle C3 og den imaginære delen hentes fra celle D3. Kvadratroten av dette tallet er også et kompleks tall. Verdien i C5 er del reelle delen og verdien i D5 er den imaginære delen.
| Språk: | Kommentarer: | 0 | Aid: | 333 | Brukervurdering: |
|
|
| Sist oppdatert: | 2007-07-02 | Forfatter: | krismika | Lest: | 4322 ganger |