Hvis du vil ha en Microsoft Excel 97 og tidligere versjon eller Microsoft Excel 98 Macintosh Edition eller en tidligere versjon av denne artikkelen, kan du se 107564.
Sammendrag
I Microsoft Visual Basic for Applications støttes ikke alle regnearkfunksjoner i Microsoft Excel som metoder for programobjektet. Hvis du prøver å bruke en av disse regnearkfunksjonene med programobjektet, får du følgende feilmelding:
Run-Time Feilen 438:Objektet støtter ikke denne egenskapen eller metoden
Mer informasjon
Du kan skrive Visual Basic-prosedyrer som kaller opp regnearkfunksjoner i Microsoft Excel. Regnearkfunksjonene som er tilgjengelige for Visual Basic-prosedyrer, er i programobjektet og er oppført ilisten metoder eller egenskaper for programobjektet i Visual Basic Object Browser.De fleste regnearkfunksjoner som ikke er tilgjengelige som metoder for programobjektet, har en tilsvarende innebygd Operator eller funksjon i Microsoft Visual Basic. Mod-regnearkfunksjonen er for eksempel ikke tilgjengelig som en metode for programobjektet fordi det finnes en tilsvarende Mod-operator innebygd i Visual Basic. En Visual Basic-operator fungerer raskere enn en Microsoft Excel-funksjon i en Visual Basic-modul.
Excel-regnearkfunksjoner som er tilgjengelige som metoder i Visual Basic
OBS! Følgende trinn forutsetter at du har installert Hjelpefil for Visual Basic.Hvis du vil vise en liste over alle regnearkfunksjonene i Microsoft Excel som er tilgjengelige som metoder for programobjektet i Visual Basic, følger du disse trinnene:
-
Skriv inn regnearkfunksjoner i Microsoft Office Assistant i Visual Basic Editor, og klikk deretter Søk.
-
Klikk Liste over regnearkfunksjoner som er tilgjengelige for Visual Basic, i listen over emner.
Følg disse trinnene for å finne tilsvarende Visual Basic-operator eller -funksjon for en Microsoft Excel-regnearkfunksjon som ikke er tilgjengelig som en Application-objektmetode:
-
Skriv inn funksjons- eller operatornavnet i Office-hjelperen i Visual Basic Editor, og klikk deretter Søk. Skriv for eksempel inn mod.
-
Klikk emnet for funksjonen eller operatoren i listen over emner. Klikk for eksempel modoperatoremnet.
Tabellen nedenfor inneholder regnearkfunksjoner som ikke er tilgjengelige som metoder for programobjektet. Kolonnen Tilsvarende Visual Basic viser funksjoner du kan bruke som gir resultater på samme måte som (eller ligner på) resultater som funksjonene returnerer. Microsoft Excel Visual Basic regneark funksjon tilsvarende ------------------------------------------------------------------- ABS() Abs funksjon ATAN() Atn funksjon CHAR() CHR funksjon CODE() ASC funksjon COS() Cos funksjon DATE() DATESERIAL-funksjon FEIL. TYPE() ERR-funksjonen EXACT() STRCOMP function EXP() Exp function INDIRECT() No direct equivalent - use Range, Cells, Offset, or any other way of referencing cells. INFO() Ingen direkte ekvivalent – bruk følgende: CURDIR-funksjon, følgende programegenskaper (MEMORYTOTAL, MEMORYUSED, MEMORYFREE, VERSION, OPERATINGSYSTEM, CALCULATION, COUNT) ISBLANK() ISEMPTY-funksjon ISREF() TYPENAME-funksjonen LENGDE() LENGDE( ) LENGDE() LCASE-funksjon N() Ingen tilsvarende (ingen nødvendig) NA() Ingen tilsvarende - bruk ActiveCell.Value = "#N/A" RAND() RND-funksjonen RANDOMIZE() Randomize-funksjon SIN() Sin function SIGN() Sgn function SQR() Sqr function SQRT() Sqr function T() No equivalent (none needed) TAN() Tan function TODAY() DATE function TRUNC() FIX function TYPE() TYPENAME-funksjonen STORE() UCASE-funksjonen VERDI() VERDI()-funksjon OBS! Regnearkfunksjonen i Microsoft Excel og tilsvarende operator eller funksjon for Visual Basic beregnes ikke alltid på samme måte og kan gi forskjellige resultater, selv når de har samme navn.Bruk av tilsvarende operator eller funksjon for Visual Basic foretrekkes for økt hastighet og fleksibilitet i beregninger. Visual Basic-operatoren eller -funksjonen er i tillegg tilgjengelig for alle programmer som bruker Microsoft Visual Basic for Applications.Selv om det anbefales at du bruker Visual Basic-operatorer eller -funksjoner som vises i listen ovenfor, finnes det alternative metoder for å bruke regnearkfunksjonene i en Visual Basic-makro om nødvendig. Som et eksempel kan du bruke ATAN-regnearket i Visual Basic-makroen ved hjelp av funksjonene ExecuteExcel4Macro eller Evaluate: x = Application.ExecuteExcel4Macro("Atan(12)") -or- x = Application.Evaluate("Atan(12)")