Det type mismatch fejl i Excel VBA opstår, når du forsøger at tildele en værdi til en variabel, der ikke er af den korrekte type.
Placer en kommandoknap på dit regneark, og tilføj følgende kodelinjer:
Dim nummer som heltal
nummer = "cykel"
Resultat, når du klikker på kommandoknappen på arket:
Forklaring: Du kan ikke tildele en strengværdi (cykel) til en variabel af typen Heltal.
Type-mismatch-fejlen (køre-fejl 13) opstår ofte, når du bruger InputBox-funktionen i Excel VBA.
1. Placer en kommandoknap på dit regneark, og tilføj følgende kodelinjer:
Dim nummer som heltal
number = InputBox ("Indtast et tal", "Square Root")
MsgBox "Kvadratroden af" & tal & "er" & Sqr (tal)
2. Klik på kommandoknappen på arket, indtast strengværdien hundrede og klik på OK.
Resultat:
3. Clik End.
4. At vise en venlig besked i stedet for type mismatch fejl, opdater koden som følger.
Dim nummer Som variant
number = InputBox ("Indtast et tal", "Square Root")
Hvis er numerisk (tal) Så
MsgBox "Kvadratroden af" & tal & "er" & Sqr (tal)
Andet
MsgBox "Indtast venligst et nummer"
Afslut Hvis
Forklaring: en variabel af typen Variant kan indeholde enhver form for værdi (se første linje). IsNumeric -funktionen i Excel VBA kontrollerer, om en værdi er et tal.
5. Gentag trin 2.
Resultat:
6. Kontroller endelig, om denne simple kvadratrodsberegner fungerer.
Resultat:
Tip: download Excel -filen (højre side af denne side), og prøv den.