¿Cómo usar la instrucción Get en VBA?

La instrucción `Get` en VBA se utiliza para leer datos de un archivo a variables en tu código. Se usa principalmente en el contexto de archivos abiertos para acceso binario. Aquí te muestro cómo se utiliza:

Uso Básico de `Get`

  • Abrir un archivo: Antes de usar `Get`, debes abrir el archivo con el método `Open` para acceso binario (`Binary`).
  • Leer datos del archivo: Usar `Get` para leer los datos en variables.
  • Cerrar el archivo: Después de leer los datos, siempre deberías cerrar el archivo utilizando `Close`.

Sintaxis

Get [#]filenumber, [recnumber], varname
  • `filenumber`: El número de archivo asignado por el método `Open`.
  • `recnumber` (opcional): Especifica el número de registro/posición donde empezar a leer. Si se omite, `Get` comienza a leer donde lo dejó la última operación de archivo.
  • `varname`: La variable en la que se almacena la información leída.

Ejemplo Práctico

Imagina que tienes un archivo binario simple que contiene la estructura de un registro de empleados y quieres leer estos datos.

Type Empleado
    ID As Integer
    Nombre As String * 30
    Salario As Currency
End Type

Sub LeerEmpleado()
    Dim emp As Empleado
    Dim i As Integer
    
    ' Abre el archivo binario
    Open "C:rutadelarchivoempleados.dat" For Binary As #1
    
    ' Leer los primeros 5 registros
    For i = 1 To 5
        Get #1, , emp  ' Omitimos recnumber para avanzar secuencialmente

        ' Muestra los datos en la ventana de depuración
        Debug.Print "ID: " & emp.ID
        Debug.Print "Nombre: " & emp.Nombre
        Debug.Print "Salario: " & Format(emp.Salario, "Currency")
    Next i
    
    ' Cierra el archivo
    Close #1
End Sub

Consideraciones

  • Asegúrate que el tipo de datos de la variable coincide con la estructura de los datos en el archivo.
  • Utiliza el método `Seek` si necesitas mover el puntero de archivo a una posición específica antes de usar `Get`.
  • Los tipos de datos definidos por el usuario (como `Empleado` en el ejemplo anterior) deben declararse con `Type`.
  • `Get` es especialmente útil cuando trabajas con archivos binarios que no tienen un formato de texto predecible.

Este es un enfoque básico para leer archivos binarios en VBA utilizando `Get`. Dependiendo de tus necesidades específicas, podrías necesitar ajustar la forma en que manejas los datos y el archivo.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project