¿Cómo puedo concatenar cadenas en VBA?

Esta pregunta proviene de un comentario en Range.Formula = en VBA arroja un error extraño .

Escribí ese progtwig por prueba y error, así que naturalmente intenté + concatenar cadenas.

¿Pero es & más correcto que + para concatenar cadenas?

& siempre se evalúa en un contexto de cadena, mientras que + puede no concatenarse si uno de los operandos no es una cadena:

 "1" + "2" => "12" "1" + 2 => 3 1 + "2" => 3 "a" + 2 => type mismatch 

Esta es simplemente una fuente sutil de posibles errores y, por lo tanto, debe evitarse. & siempre significa “concatenación de cadena”, incluso si sus argumentos no son cadenas:

 "1" & "2" => "12" "1" & 2 => "12" 1 & "2" => "12" 1 & 2 => "12" "a" & 2 => "a2" 

Existe la función de concatenación. Por ejemplo

  = CONCATENATO (E2, "-", F2) 

Pero el operador & siempre concatena cadenas. + a menudo funcionará, pero si hay un número en una de las celdas, no funcionará como se esperaba.

La principal (muy interesante) diferencia para mí es que:
"string" & Null -> "string"
mientras
"string" + Null -> Null

Pero eso probablemente sea más útil en aplicaciones de bases de datos como Access.