The chyba nesúladu typu v Excel VBA nastane, keď sa pokúsite priradiť hodnotu premennej, ktorá nie je správneho typu.
Na pracovný hárok umiestnite príkazové tlačidlo a pridajte nasledujúce riadky kódu:
Dim číslo ako celé číslo
číslo = "bicykel"
Výsledok po kliknutí na príkazové tlačidlo na hárku:
Vysvetlenie: premennej typu Integer nemôžete priradiť hodnotu reťazca (bicykel).
Chyba nesúladu typu (chyba spustenia 13) sa často vyskytuje pri použití funkcie InputBox v programe Excel VBA.
1. Na pracovný hárok umiestnite príkazové tlačidlo a pridajte nasledujúce riadky kódu:
Dim číslo ako celé číslo
number = InputBox („Zadajte číslo“, „odmocnina“)
MsgBox "Druhá odmocnina z" & číslo & "je" & Sqr (číslo)
2. Kliknite na príkazové tlačidlo na hárku, zadajte hodnotu reťazca sto a kliknite na tlačidlo OK.
Výsledok:
3. Clik End.
4. Zobraziť priateľskú správu namiesto chyba nesúladu typu, aktualizujte kód nasledovne.
Dim číslo Ako variant
number = InputBox („Zadajte číslo“, „odmocnina“)
Ak je číselné (číslo) Potom
MsgBox "Druhá odmocnina z" & číslo & "je" & Sqr (číslo)
Inak
MsgBox „Zadajte číslo“
Koniec Ak
Vysvetlenie: premenná typu Variant môže obsahovať ľubovoľný typ hodnoty (pozri prvý riadok). Funkcia IsNumeric v programe Excel VBA kontroluje, či je hodnota číslo.
5. Zopakujte krok 2.
Výsledok:
6. Nakoniec skontrolujte, či táto jednoduchá kalkulačka odmocniny funguje.
Výsledok:
Tip: Stiahnite si súbor Excel (pravá strana tejto stránky) a vyskúšajte ho.