Ответ 1
Чтобы использовать символ новой строки в коде, вы используете _
Пример:
Dim a As Integer
a = 500 _
+ 80 _
+ 90
MsgBox a
Я хотел бы набрать математический forumla в коде VBA, который много строк. Я хотел бы разбить его на несколько строк. Как это сделать?
Например:
U_matrix(i, j, n + 1) = k * b_xyt(xi, yi, tn) / (4 * hx * hy) * U_matrix(i + 1, j + 1, n) + (k * (a_xyt(xi, yi, tn) / hx ^ 2 + d_xyt(xi, yi, tn) / (2 * hx)))
очень длинный. хотел бы разбить его.
Пробовал это:
U_matrix(i, j, n + 1) = k * b_xyt(xi, yi, tn) / (4 * hx * hy) * U_matrix(i + 1, j + 1, n)
_+ (k * (a_xyt(xi, yi, tn) / hx ^ 2 + d_xyt(xi, yi, tn) / (2 * hx)))
Но не работает.. Нужно руководствоваться этим..
Чтобы использовать символ новой строки в коде, вы используете _
Пример:
Dim a As Integer
a = 500 _
+ 80 _
+ 90
MsgBox a
(i, j, n + 1) = k * b_xyt(xi, yi, tn) / (4 * hx * hy) * U_matrix(i + 1, j + 1, n) + _
(k * (a_xyt(xi, yi, tn) / hx ^ 2 + d_xyt(xi, yi, tn) / (2 * hx)))
Чтобы продолжить утверждение из одной строки в другую, введите пробелза которым следует символ продолжения строки [символ подчеркивания на клавиатуре (_)].
Вы можете разбить строку на оператора, разделителя списков или периода.
В VBA (и VB.NET) терминатор линии (возврат каретки) используется для сигнализации конца инструкции. Чтобы разбить длинные заявления на несколько строк, вам нужно
Используйте символ продолжения строки, который является символом подчеркивания (_), в тот момент, когда вы хотите, чтобы линия прерывалась. Подчеркиванием должно быть непосредственно предшествует пробел и сразу же следует ограничитель строки (возврат каретки).
Другими словами: всякий раз, когда интерпретатор встречается с последовательностью <space>
_
<line terminator>
, он игнорируется, и синтаксический анализ продолжается на следующей строке. Обратите внимание, что даже при игнорировании продолжение строки по-прежнему действует как разделитель токенов, поэтому оно не может использоваться, например, в середине имени переменной. Вы также не можете продолжать комментарий, используя символ продолжения строки.
Чтобы разбить оператор в вашем вопросе на несколько строк, вы можете сделать следующее:
U_matrix(i, j, n + 1) = _
k * b_xyt(xi, yi, tn) / (4 * hx * hy) * U_matrix(i + 1, j + 1, n) + _
(k * (a_xyt(xi, yi, tn) / hx ^ 2 + d_xyt(xi, yi, tn) / (2 * hx)))
(Ведущие пробелы игнорируются.)
Если вы хотите вставить эту формулу =SUMIFS(B2:B10,A2:A10,F2)
в ячейку G2, вот как я это сделал.
Range("G2")="=sumifs(B2:B10,A2:A10," & _
"F2)"
Чтобы разделить строку кода, добавьте амперсанд, пробел и подчеркивание.