División de líneas de código
¿Alguna vez has tenido que escribir líneas de código largas cuando defines muchas variables al mismo tiempo o cuando defines los argumentos de una función en VBA?
En estos casos, dividir el código en varias líneas puede mejorar la legibilidad del programa.
En este artículo, explicaremos cómo dividir líneas de código en VBA y presentaremos ejemplos prácticos y de uso.
Cómo dividir líneas de código
Para dividir líneas de código en VBA, es posible continuar el código en la siguiente línea insertando un espacio + guion bajo.
Por ejemplo, si tienes el siguiente código:
Sub Ejemplo()
MsgBox "¡Hola, Mundo!"
End Sub
Al dividirlo en varias líneas, se verá así:
Sub Ejemplo()
MsgBox "¡Hola, " & _
"Mundo!"
End Sub
Escenarios de uso
Definición de argumentos de funciones
Al definir una función que requiere muchos argumentos o argumentos Optional
, el código puede volverse largo.
Public Sub ProcesoEjemplo(ByRef hoja As Worksheet, ByRef rangoAnterior As String, Optional ByRef rangoActual As String = "", Optional ByRef nuevoRango As String = "")
' ______________
' ...parte del proceso...
' ______________
End Sub
Al dividirlo en varias líneas, se verá así: Los argumentos estarán alineados, mejorando la legibilidad.
Public Sub ProcesoEjemplo( _
ByRef hoja As Worksheet, _
ByRef rangoAnterior As String, _
Optional ByRef rangoActual As String = "", _
Optional ByRef nuevoRango As String = "")
' ______________
' ...parte del proceso...
' ______________
End Sub
Sentencias IF complejas
Cuando se especifican condiciones complejas en una sentencia IF, la línea puede volverse larga.
Sub ProcesoEjemplo(ByVal num1 as Long, ByVal num2 as Long, ByVal num3 as Long)
Dim resultado As String
If num1 > 0 And num2 > 0 And num3 > 0 And num1 + num2 + num3 > 50 Then
resultado = "Verdadero"
Else
resultado = "Falso"
End If
MsgBox resultado
End Sub
Al dividirlo en varias líneas, se verá así: Es recomendable dividir las líneas en función de un número razonable de caracteres en lugar de hacerlo por cada condición en la sentencia IF.
Sub ProcesoEjemplo(ByVal num1 as Long, ByVal num2 as Long, ByVal num3 as Long)
Dim resultado As String
If num1 > 0 And num2 > 0 And _
num3 > 0 And num1 + num2 + num3 > 50 Then
resultado = "Verdadero"
Else
resultado = "Falso"
End If
MsgBox resultado
End Sub
Puntos a tener en cuenta
Dividir líneas de código en VBA puede mejorar la legibilidad, como se mencionó anteriormente. Sin embargo, hay algunos puntos a tener en cuenta al hacerlo.
Presta atención a dónde divides las líneas
Solo se puede dividir entre palabras.
Si divides en otros lugares, el código puede no funcionar como se espera.
Por ejemplo, si divides una cadena de texto, esta puede quedar cortada.
Alinea las indentaciones
Es recomendable alinear las indentaciones al dividir líneas. Los ejemplos de argumentos de funciones son buenos ejemplos.
Alinear las indentaciones facilita la distinción de bloques de código y mejora la legibilidad.
Sigue las convenciones de código
En archivos de Excel que son manipulados por varias personas, es importante unificar las convenciones de código, como “dividir líneas en estas condiciones”.
Usar un estilo de codificación consistente en el proyecto permite escribir código más legible y mantenible.
Teniendo en cuenta estos puntos, dividamos líneas de código en VBA para mejorar la legibilidad.