Saltar al contenido

¿Cuáles son las diferencias entre VBA 6.0 y VBA 7.0?

Isabel, miembro de nuestro equipo, nos hizo el favor de escribir esta reseña porque domina a la perfección el tema.

Solución:

No hay mucho que haya cambiado entre VBA6 y VBA7. VBA7 se introdujo para admitir versiones de 64 bits de Office y Windows (consulte a continuación cuáles son esas diferencias). Aquí están los key cambios:

  1. Compatibilidad con 64 bits, principalmente para llamadas API. Esto se usa para hacer que su código funcione con su versión de OS/Office y con la de otros (es decir, alguien en Office 2003/WinXP)

    • Si tiene una versión de Windows de 64 bits, pero tiene una versión de Office de 32 bits, puede declarar llamadas a la API como se muestra a continuación. .

      #If Win64 Then
          Declare PtrSafe Function GetTickCount64 Lib "kernel32"() As LongLong
      #Else
          Declare PtrSafe Function GetTickCount Lib "kernel32" () As Long
      #End If
    • Si tiene una versión de Windows de 64 bits, y están en una versión de Office de 64 bits, puede declarar llamadas API como: .

      #If VBA7 Then
         Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" ( _
             ByVal lpClassName As String, _
             ByVal lpWindowName As String) As LongPtr
       #Else
         Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal _
             lpClassName As String, ByVal lpWindowName As String) As Long
      #End If
  2. Para apoyar esto, hay:

    • Tres nuevas palabras clave (2 tipos de datos y 1 modificador): LongPtr, LongLong y PtrSafe

    • Una nueva función: CLngLng() (es decir, Int64)

    • Las nuevas constantes de compilación como se usa arriba: VBA7 y Win64

Esta pieza en MSDN tiene más información sobre los cambios en VBA 7 para Office 2010:

http://msdn.microsoft.com/en-us/library/ee691831(loband).aspx#odc_office2010_Compatibility32bit64bit_IntroducingVBA7CodeBase

VBA7 es compatible con las versiones de Office de 64 bits.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *