Сокращение VBA для х = х + 1?
Sub btn1_Click()
Static value As Integer
value = value + 1
MsgBox value
End Sub
Клянусь, когда я проходил курс VB.net в колледже, был более короткий способ сказать переменной добавить '' к себе. Возможно, x = + 1. Я использую Access сейчас, но вместо визуальной студии. Когда я пытаюсь это сделать в VBE, он удаляет+. Я даже удалил Option Explicit
без изменений
Предполагая, что ответ будет отрицательным, нет возможности коротко передать его, а его просто особенность VBA
Ответы
Ответ 1
К сожалению, в VBA нет операторов operation-assignment
.
(Добавление-присвоение +=
и др. доступно в VB.Net)
Бесцельное обходное решение;
function Inc(ByRef i As Integer)
i = i + 1
end function
...
Static value As Integer
inc value
inc value
Ответ 2
Если вы хотите вызвать инкрементный номер непосредственно в функции, это решение работает bettter:
Function inc(ByRef data As Integer)
data = data + 1
inc = data
End Function
например:
Wb.Worksheets(mySheet).Cells(myRow, inc(myCol))
Если функция inc()
не возвращает значения, указанная выше строка генерирует ошибку.