Этот вопрос исходит из комментария к Range.Formula = в VBA вызывает странную ошибку.
Я написал эту программу методом проб и ошибок, поэтому я, естественно, попробовал +
объединить строки.
Но &
а не +
более правильный метод для конкатенации строк?
&
всегда оценивается в контексте строки, а +
может не конкатенироваться, если один из операндов не содержит строки:
"1" + "2" => "12"
"1" + 2 => 3
1 + "2" => 3
"a" + 2 => type mismatch
Это просто тонкий источник потенциальных ошибок, и поэтому его следует избегать. &
всегда означает "конкатенация строк", даже если его аргументы не являются строками:
"1" & "2" => "12"
"1" & 2 => "12"
1 & "2" => "12"
1 & 2 => "12"
"a" & 2 => "a2"
Существует функция конкатенации. Например
=CONCATENATE(E2,"-",F2)Но оператор и оператор всегда объединяет строки. + часто будет работать, но если в одной из ячеек есть номер, он не будет работать так, как ожидалось.
excel имеет функцию Concatenate()...
13 & "2"
? будет ли это132
?