і рядкові російські букви в іменах різняться. Транслятор видає помилку опису змінних:
Dim Zw As Integer, zW As Integer
порахувавши, що двічі описана одна і та ж змінна, але, наприклад, опис:
Dim Чш As String, ЧШ As Byte
допустимо і в модулі будуть одночасно існувати дві різні змінні Чш і ЧШ.
Наступний важливий синтаксичний елемент мови - вираз. Як і в інших мовах, вираження VBA використовуються в якості правої частини операторів присвоювання, в якості умов в умовних операторах і в операторах циклів, а також в інших ситуаціях. p align="justify"> В якості ключових слів у виразах можна використовувати не тільки імена (знаки) арифметичних операцій (^, -, _, /, , Mod, +, &), логічних операцій (Not, And, Or, Xor, Eqv, Imp), порівнянь (=, <>, <,>, <=,> =, Like, Is) і численних вбудованих функцій VBA, а й імена доступних функцій користувача, які повертають значення відповідних типів. Важливіше визначити семантику висловлювання - правила, за якими обчислюються його значення і тип результату. У VBA це не завжди просто, оскільки результат, що повертається виразом, залежить від його використання, зокрема від типу того об'єкта, якому значення виразу присвоюється. Справа в тому, що типізація в VBA вельми ліберальна і інтерпретатор сам намагається привести значення виразу до потрібного типу. Якщо це йому вдається, обчислення продовжується, і ніяке попередження або повідомлення про помилку не видається. Часто це полегшує життя програміста, дозволяючи не піклуватися про такі дрібниці, як перетворення чисел в рядки, але може призвести до важко виправляти помилку. p align="justify"> Програмісти повинні пам'ятати, що такі не строго типізовані мови є джерелом ненадійного програмування. Тому на програмістів при роботі з ними накладається підвищена відповідальність за правильність роботи їхніх програм. p align="justify"> Сформулюємо основні правила автоматичного "приведення" типів. Зауважимо, що в документації їх не знайти в явному вигляді. p align="justify"> Якщо числове вираження присвоюється змінної типу String, то відбувається його обчислення і значенням змінної стає рядок, що містить отриманий результат. Наприклад, якщо S1 - строкова змінна, то після присвоєння
= 12.34_ 2
її значенням стане рядок "24,68".
Якщо рядковий вираз присвоюється числової змінної, то відбувається його обчислення, з отриманого рядка видаляються всі прогалини, і якщо отриманий рядок являє собою запис числа відповідного типу, то воно стає значенням числової змінної. Нехай, наприклад, мінлива Z має тип Double. Тоді після присвоєння = "1,6 78 09" & "88"
її значенням стане число 1.6780988. Як роздільник цілої та дробової частин числа в рядку допускається тільки кома. Оператор
= "1.6 78 09" & "88"