Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Variables y Tipos de Datos | Fundamentos de VBA
Excel VBA para Automatización Empresarial

Variables y Tipos de Datos

Desliza para mostrar el menú

Cada procedimiento que escribes necesita un lugar donde almacenar valores mientras se ejecuta — el nombre de un cliente, un total acumulado, una bandera de sí/no. Eso es una variable: una caja etiquetada en la memoria en la que puedes poner un valor y recuperarlo después. Creas una con Dim (abreviatura de "dimension"), y le indicas a VBA de antemano qué tipo de dato almacenará:

Dim productName As String
Dim currentStock As Integer
Dim unitPrice As Double

Cada línea reserva un espacio etiquetado: productName solo puede contener texto, currentStock solo números enteros, unitPrice solo números con decimales. Declarar el tipo de dato desde el principio no es una formalidad innecesaria — es lo que permite a VBA detectar errores antes de que se conviertan en fallos. Si intentas ejecutar productName = 47, VBA te detendrá de inmediato con un error de incompatibilidad de tipo, en lugar de almacenar algo incorrecto y causar confusión más adelante.

Tipos de datos comunes

Regla general: usa Long en lugar de Integer para contadores y números de fila — no es más lento en Excel moderno y no se desbordará con conjuntos de datos grandes. Verás Dim i As Long en todas partes en este curso.

Option Explicit

Coloca esta única línea en la parte superior de cada módulo, antes de cualquier Sub. Cambia una cosa: ahora VBA se negará a ejecutar cualquier línea que use una variable que no hayas declarado previamente con Dim:

Option Explicit
 
Sub Example()
    Dim total As Double
    total = 100        ' works — declared above
    toatl = 200        ' typo — Option Explicit catches this at compile time
End Sub

Sin Option Explicit, ese error tipográfico crea silenciosamente una variable nueva llamada toatl, y podrías pasar veinte minutos preguntándote por qué total nunca cambia. Este simple hábito previene más errores que cualquier otra cosa en este capítulo.

Constantes

Las constantes son valores nombrados que nunca cambian mientras el código se ejecuta — perfectas para cosas como tasas de impuestos o umbrales:

Const REORDER_THRESHOLD As Integer = 20

Usar REORDER_THRESHOLD en lugar de escribir 20 en todas partes significa que si la regla de negocio cambia, editas una sola línea en vez de buscar en todo tu código.

Tarea

  1. En Section_2_VBA_Fundamentals.xlsm, escribir un Sub que declare una variable String para el nombre de un producto, un Double para su precio y un Integer para su stock.
  2. Asignarles los valores de USB-C Hub escribiendo los valores literales.
  3. Usar MsgBox para mostrar los tres en un solo mensaje, concatenados.
  4. Agregar Const LOW_STOCK As Integer = 20 encima del Sub y usarlo en un MsgBox comparándolo con la variable de stock.
Pista
expand arrow
  1. Se necesitan tres líneas Dim con diferentes tipos — consulta la Figura 2.1 si olvidas la sintaxis: Dim name As Type.
  2. La fila de USB-C Hub es Price 39.50, Stock 44. Asígnalos directamente: price = 39.50.
  3. La concatenación utiliza &, no +. Construye la cadena por partes: "Name: " & productName & ", Price: " & price.
  4. Las constantes se declaran fuera de cualquier Sub, en la parte superior del módulo, justo después de Option Explicit. Compara stockCount con LOW_STOCK usando simplemente > o < dentro de una cadena de MsgBox — aún no necesitas un If, solo muestra ambos valores para que puedas comparar visualmente.
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 1

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Sección 2. Capítulo 1
some-alt