The chyba neshody typu v Excel VBA nastane, když se pokusíte přiřadit hodnotu proměnné, která není správného typu.
Umístěte na list příkazové tlačítko a přidejte následující řádky kódu:
Dim číslo jako celé číslo
číslo = "kolo"
Výsledek po kliknutí na příkazové tlačítko na listu:
Vysvětlení: proměnné typu Integer nelze přiřadit hodnotu řetězce (kolo).
Chyba nesouladu typu (chyba běhu 13) se často vyskytuje při použití funkce InputBox v aplikaci Excel VBA.
1. Umístěte příkazové tlačítko na list a přidejte následující řádky kódu:
Dim číslo jako celé číslo
number = InputBox („Zadejte číslo“, „odmocnina“)
MsgBox "Druhá odmocnina" & number & "is" & Sqr (číslo)
2. Klikněte na příkazové tlačítko na listu, zadejte hodnotu řetězce 100 a klikněte na OK.
Výsledek:
3. Clik End.
4. Chcete -li zobrazit přátelskou zprávu místo chyba neshody typu, aktualizujte kód následujícím způsobem.
Dim číslo jako varianta
number = InputBox („Zadejte číslo“, „Square Root“)
If IsNumeric (number) Then
MsgBox "Druhá odmocnina" & number & "is" & Sqr (číslo)
Jiný
MsgBox „Zadejte prosím číslo“
Konec If
Vysvětlení: proměnná typu Variant může obsahovat jakýkoli typ hodnoty (viz první řádek). Funkce IsNumeric v aplikaci Excel VBA kontroluje, zda je hodnota číslo.
5. Opakujte krok 2.
Výsledek:
6. Nakonec zkontrolujte, zda tato jednoduchá odmocninová kalkulačka funguje.
Výsledek:
Tip: Stáhněte si soubor aplikace Excel (pravá strana této stránky) a zkuste to.