Spočítejte počet slov v řetězci
Následující funkce VBA počítá počet slov v řetězci hledáním mezer v řetězci. Používá funkci MID. Něco podobného můžete dosáhnout pomocí funkcí HLEDAT nebo NAJÍT.
1234567891011121314151617 | Funkce Číslo_slov (Text_String jako řetězec) jako celé číslo'Funkce počítá počet slov v řetězci“tím, že se podíváte na každou postavu a uvidíte, zda je to mezera nebo neNumber_of_Words = 0Dim String_Length As IntegerDim Current_Character jako celé čísloString_Length = Len (Text_String)Pro Current_Character = 1 až String_LengthIf (Mid (Text_String, Current_Character, 1)) = "" ThenNumber_of_Words = Number_of_Words + 1Konec IfDalší Current_CharacterKoncová funkce |
Stojí za zmínku několik bodů:
• Tento kód musí být vložen do modulu sešitu - v podokně VBA klikněte na Vložit a poté na modul
• Funkci lze volat z buňky sešitu aplikace Excel buď s explicitním textem, nebo s odkazem na buňku jako argument:
A3 = Number_of_Words („Pig Dog Cat“)
A4 = Number_of_Words (D1)
Funkce funguje tak, že projde délku řetězce a zjistí, zda je dalším znakem mezera, a pokud ano, přidá ji k počtu mezer v řetězci.