Синтаксическая конкатенация сахарных строк при обновлении переменной - PullRequest
2 голосов
/ 13 января 2011

В большинстве языков программирования, которые я использовал, вы можете сделать что-то вроде (где s - строка).

s = "Hello"
s += " World"

Я пытаюсь сделать что-то подобное в VBA, и это не работает.Я пытался

s = "Hello"
s += " World" 
s &= " World" 

В конце концов я сделал

s = "Hello"
s =  s & " World" 

Могу ли я сделать это без s &

Ответы [ 3 ]

5 голосов
/ 13 января 2011

Microsoft Access не использует VB.NET, а оператор конкатенации &= специфичен для VB.NET.

Даже в Access 2010 VBA по-прежнему является VB6.5 (P-Code старой школы | Native / COM VB) и не был обновлен для использования VB.NET.

4 голосов
/ 13 января 2011

VBA имеет два оператора конкатенации - & и +.

Однако он не имеет ярлыка =+ или =& - вынеобходимо написать полный синтаксис:

s = s & " World"

или

s = s + " World"

Хотя + поставляется с предупреждением (поскольку он также используется в качестве оператора сложения):

Хотя вы также можете использовать оператор + для объединения двухсимвольных строк, вы должны использовать оператор & для объединения, чтобы устранить неоднозначность и предоставить самодокументируемый код.

1 голос
/ 13 января 2011

Да, но это не лучше, чем просто использовать амперсанд

s = "Hello"
s = Join(Array(s, "World"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...