vba > environ("username")

  • Initiateur de la discussion Initiateur de la discussion yaka
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

yaka

XLDnaute Occasionnel
bonjour,

dans un module vba j'utilise le code 'environ("username")' pour utiliser le nom de l'utilisateur de la cession windows ouverte.

sur certains postes mon programme ne fonctionne pas, j'ai alors le code 'environ' en surbrillance et la boîte de dialogue vba qui m'annonce 'erreur de compilation, Projet ou bibliothèque introuvable'

Comment faire pour résoudre mon pb? que dois-je cocher alors dans les options d'excel de ces postes, ou ailleurs, pour que cela fonctionne?

Par avance merci pour votre aide.

Y+
 
Re : vba > environ("username")

Bonjour,

Voici ce que j'utilise pour un de mes fichiers mais c'est à partir d'un USF.

Code:
Private Sub CommandButton3_Click()
  Dim X As String
  Dim c As Range
Dim y As Long
  X = Environ("username")
  y = X
  With Worksheets("Utilisateurs").Range("G1:L500")
       Set c = .Find(y, LookIn:=xlValues)
       
       If Not c Is Nothing Then
     Sheets("Base de Reponse").Select
     Else: MsgBox "Vous n'êtes pas autorisés à accéder à cette base"
End If
End With
End Sub
 
Re : vba > environ("username")

merci biloute mais mon pb c'est justement que sur certains postes le code environ() n'est pas reconnu ... 'projet ou bibliothèque introuvable'!.

donc en fait.... où faut-il agir pour activer la bonne bibliothèque?
 
Re : vba > environ("username")

Bonjour,

Code:
Declare Function wu_GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Function GetUserName() As Variant
   Dim strUserName As String, lngLength As Long, lngResult As Long
   strUserName = String$(255, 0)
   lngLength = 255
   lngResult = wu_GetUserName(strUserName, lngLength)
   GetUserName = Left(strUserName, InStr(1, strUserName, Chr(0)) - 1)
End Function

JB
 

Pièces jointes

Re : vba > environ("username")

Boisgontier... bingo! ça marche! merci.

mais ça décale mon pb de 'bibliothèque introuvable' pour le code suivant : Date


je pense qu'il faut que j'active une bibliothèque mais laquelle? et où ça?
 
Re : vba > environ("username")

bon ok.

en fait sur certains postes le code Environ("UserName") fonctionne très bien et sur d'autre il faut que je l'écrive Application.Environ("UserName") pour qu'il soit reconnu.

Donc ce n'est en définitive pas un pb de code mais un pb de Bibliothèque ou un truc comme ça.

Comme j'ai le pb pour d'autres instructions (Date, Left,...) = comment faire pour activer la bonne Bibliothèque qui m'évitera de reprendre tout mon code pour y ajouter Application. devant chaque instruction?
 
Re : vba > environ("username")

j'ai résolu mon pb de comptabilité et de Bibliothèque manquante en ajoutant 'VBA.' devant les instructions suivantes :

'Environ' 'Left' 'Right' 'Ucase' 'Len' 'Format' 'Date'

mon programme ça fonctionne sur tous les postes à présent

y+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
72
Affichages
1 K
Réponses
2
Affichages
2 K
Réponses
1
Affichages
929
  • Question Question
XL 2016 VBA
Réponses
5
Affichages
615
Retour