VBE Автокоррекция с помощью точек с запятой - PullRequest
0 голосов
/ 01 февраля 2019

Я играл с VBA VBE, чтобы посмотреть, работает ли какой-либо из более эзотерических логических операторов из VB.Net.

IsNot является противоположностьюОператорПреимущество IsNot состоит в том, что вы можете избежать неуклюжего синтаксиса с Not и Is, который может быть трудным для чтения. Оператор IsNot

Для ударов и хихиканья я набрал это в кодовом листе открытого модуля.

Sub test()

    dim obj As object

    debug.print obj isnot nothing

End Sub

Как только я нажму после ввода строки кода debug.print obj nothing VBE автоматически исправляется¹ к этому.

Sub test()

    Dim obj As Object

    Debug.Print obj; isnot; Nothing

End Sub

Oh-key-doh-key,isnot не был распознан, и я понял это.Это не часть VB7.

Что я не могу понять, так это включение точек с запятой в систему автокоррекции VBE.

Какова цель точки с запятой в сценарии VBA?


¹ Настоящие программисты используют COPY CON

Ответы [ 2 ]

0 голосов
/ 01 февраля 2019

Это часть синтаксиса для Debug.Print.

object.Print [ outputlist ]

Аргумент outputlist имеет следующий синтаксис и части: {Spc(n) | Tab(n)} expression charpos

charpos
Необязательно.Определяет точку вставки для следующего символа. Используйте точку с запятой (;), чтобы поместить точку вставки сразу после последнего отображаемого символа.

0 голосов
/ 01 февраля 2019

Просто сравните выходные данные этих 2

Debug.Print "aa", "bb", 1, 2
Debug.Print "aa"; "bb"; 1; 2

Хотя запятая заканчивается на вкладке, точка с запятой добавляет их напрямую (без пробелов).
Числовые значения, очевидно, заключаются в пробелы _1_поэтому между символами и цифрами 1 пробел, а между 2 цифрами 2 пробела.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...