У ВБА можете упоредити два низа користећи СтрЦомп функција. У овом водичу ћете научити како користити ову функцију са различитим методама поређења.
Ако желите да научите како да користите ВБА оператер за упоређивање нетачних подударања, кликните овде: ВБА Лике Оператор.
Ако желите да научите како да користите операторе за поређење, кликните овде: ВБА оператори за поређење - није једнако & више
Употреба функције СтрЦомп за поређење два низа
Тхе СтрЦомп функција узима два низа и метод упоређивања као аргументе. Постоје 3 методе поређења:
- вбБинариЦомпаре - упоређује два бинарна низа (разликују велика и мала слова);
- вбТектЦомпаре - упоређује два низа као текстове (не разликују велика и мала слова);
- вбДатабасеЦомпаре - овај метод је доступан само у Мицрософт Аццесс -у, али не и у ВБА.
Подразумевано, функција користи бинарни метод. Ако изоставимо овај аргумент, функција ће разликовати велика и мала слова.
Ова функција враћа следеће резултате:
- 0 - ако су низови једнаки;
- -1 - ако је низ 1 мањи од низа 2;
- 1 - ако је низ 1 већи од низа 2;
- Нулл - ако је један од низова празан.
Ево примера кода:
123 | Дим интРесулт Ас ИнтегеринтРесулт = СтрЦомп ("Рачунар", "Рачунар") |
У овом примеру желимо да проверимо да ли стрингови "Рачунар" и "Рачунар" су једнаки, користећи подразумевани метод поређења (бинарни). Резултат функције је у интРесулт променљива. Као што видите на слици, оба низа су једнака, стога је интРесулт има вредност 0.
Слика 1. Употреба функције СтрЦомп са бинарном методом у ВБА
Коришћење функције СтрЦомп са бинарном и текстуалном методом
Сада ћете видети разлику између коришћења бинарне и текстуалне методе. Бинарна метода има бинарни број за сваки знак, па су велика и мала слова различити знакови у овој методи. С друге стране, текстуални метод разматра „С“ и „с“ као иста слова. Ако желите да функцију учините неосетљивом на велика и мала слова, морате поставити трећи аргумент на вбБинариЦомпаре. Ево кода:
123456 | Дим интРесулт1 као цео бројДим интРесулт2 као цео бројинтРесулт1 = СтрЦомп ("Рачунар", "ЦомпуТер")интРесулт2 = СтрЦомп ("Рачунар", "ЦомпуТер", вбТектЦомпаре) |
Желимо да упоредимо жице "Рачунар" и "Рачунар", користећи обе методе.
У променљивој интРесулт1, вредност ћемо добити бинарном методом, док је интРесулт2 добиће вредност текстуалном методом. Можете видети вредности ове две променљиве:
Слика 2. Коришћење функције СтрЦомп са бинарном и текстуалном методом
Вредност интРесулт1 је 1, што значи да су два низа различита за бинарну методу. За текстуални метод, ова два низа су једнака, па је вредност интРесулт2 је 0.