Ejemplos de código de función Environ para VBA

Estoy buscando información o ejemplos de código para la función Environ en VBA para obtener el nombre de usuario en el sistema actual.

Environ() te da el valor de cualquier variable de entorno. Se pueden encontrar haciendo el siguiente comando en el símbolo del sistema:

 set 

Si quisieras obtener el nombre de usuario, harías:

 Environ("username") 

Si quisiera obtener el nombre completo, lo haría:

 Environ("userdomain") & "\" & Environ("username") 

Referencias

  • Microsoft | Referencia de Office VBA | Idioma de referencia VBA | Función Environ
  • Microsoft | Soporte de Office | Función Environ

Como Eric aludió, puedes usar el entorno con el argumento ComputerName de la siguiente manera:

 MsgBox Environ("USERNAME") 

Alguna información adicional que podría ser útil para usted saber:

  1. Los argumentos no son sensibles a mayúsculas y minúsculas.
  2. Hay una versión de cadena ligeramente más rápida de la función Environ. Para invocarlo, use un signo de dólar. (Ej: Environ $ (“nombre de usuario”)) Esto le generará una pequeña ganancia de rendimiento.
  3. Puede recuperar todas las variables del entorno del sistema utilizando esta función. (No solo nombre de usuario). Un uso común es obtener el valor “ComputerName” para ver de qué computadora está iniciando sesión el usuario.
  4. No lo recomiendo para la mayoría de las situaciones, pero a veces puede ser útil saber que también puede acceder a las variables con un índice . Si usa esta syntax, se devuelve el nombre del argumento y el valor. De esta forma, puedes enumerar todas las variables disponibles. Los valores válidos son 1 – 255.
  Sub EnumSEVars() Dim strVar As String Dim i As Long For i = 1 To 255 strVar = Environ$(i) If LenB(strVar) = 0& Then Exit For Debug.Print strVar Next End Sub 

En algún momento cuando utilizamos la función Environ() podemos obtener el error Biblioteca o propiedad no encontrada. Use VBA.Environ() o VBA.Environ$() para evitar el error.