Tento tutoriál vás naučí používať Je číselné a IsNumber funkcie vo VBA na kontrolu, či sú hodnoty čísla.
IsNumeric je vstavaná funkcia VBA, zatiaľ čo IsNumber je funkcia programu Excel, ktorú je možné vyvolať z kódu VBA.
Rozdiel medzi IsNumber a IsNumeric vo VBA
IsNumber kontroluje, či je hodnota uložená ako číslo. Zatiaľ čo IsNumeric kontroluje, či je možné hodnotu previesť na číslo.
Ak napríklad ako parameter odovzdáte prázdnu bunku, IsNumber vráti FALSE, zatiaľ čo IsNumeric vráti TRUE. Ak odovzdáte bunku obsahujúcu číslo uložené ako text, funkcia IsNumber vráti hodnotu FALSE a IsNumeric TRUE.
Musíte venovať pozornosť týmto obmedzeniam oboch funkcií a rozhodnúť sa, v ktorých prípadoch je lepšie použiť IsNumeric a kedy IsNumber.
Použitie IsNumeric vo VBA
Je číselné je funkcia VBA, ktorá kontroluje, či je hodnota číselná a ako výsledok vracia logickú hodnotu TRUE alebo FALSE.
Funkcia môže mať premennú alebo hodnotu bunky.
Tu je príklad prevzatia hodnoty bunky:
12345 | Ak je IsNumeric (Sheet1.Range ("A1"). Hodnota) = True ThenMsgBox "Hodnota v A1 je číselná"InakMsgBox "Hodnota v A1 nie je číselná"Koniec Ak |
V tomto prípade pomocou IsNumeric skontrolujeme, či je hodnota z bunky A1 číselná. Táto funkcia vráti príslušnú správu v závislosti od výsledku funkcie.
Tento nasledujúci príklad vykoná rovnakú operáciu, s výnimkou premennej namiesto hodnoty bunky:
123456789 | Dim n ako variantn = List1.Range ("A1"). HodnotaAk je IsNumeric (n) = True ThenMsgBox "Hodnota v A1 je číselná"InakMsgBox "Hodnota v A1 nie je číselná"Koniec Ak |
Použitie IsNumber vo VBA
IsNumber je funkcia programu Excel, ktorú je možné použiť vo VBA. Má takmer podobný výstup ako IsNumeric. Pozrime sa na príklad funkcie IsNumber:
123456789 | Ak Application.WorksheetFunction.IsNumber (Sheet1.Range ("A1"). Value) = True ThenMsgBox "Hodnota v A1 je číselná"InakMsgBox "Hodnota v A1 nie je číselná"Koniec Ak |
Ako vidíte z kódu, rozdiel je v syntaxi pri volaní funkcie. Pretože IsNumber je funkcia Excelu, musíme uviesť Application.WorksheetFunction pred volaním funkcie.