Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

formule pour nom de L'utilisateur

270 views
Skip to first unread message

Daniel Pelletier

unread,
Jun 21, 2004, 8:18:15 PM6/21/04
to
Bonsoir à tous

La macro suivante me donne l'utilisateur du PC

Je voudrait avoir le nom de l'utilisateur dans une formule
ou comment faire pour incorporer cette macro a l'ouverture pour que le nom
de l'utilisateur soit dans la cellule "g3"

Sub UserName ()
With CreateObject("WScript.Network")
MsgBox "Current user is " & Application.UserName
End With
End Sub

Merci


isabelle

unread,
Jun 21, 2004, 9:07:46 PM6/21/04
to
bonjour Daniel,

soit par macro à l'ouverture du classeur,

Private Sub Workbook_Open()
Sheets("Feuil1").Range("G3") = Application.UserName
End Sub

ou bien par une fonction personnalisé,

Function NomUtilisateur()
NomUtilisateur = Application.UserName
End Function

isabelle

Daniel Pelletier a écrit :

Daniel Pelletier

unread,
Jun 21, 2004, 9:29:24 PM6/21/04
to
Bonsoir Isabelle

Très bien cela fonctionne
En passant a tu recue mon courriel se soir :-) ??

Merci


"isabelle" <as.isab...@videotron.ca> a écrit dans le message de
news:40D78662...@videotron.ca...

isabelle

unread,
Jun 21, 2004, 10:53:55 PM6/21/04
to
oui, la macro ne fonctionne pas sur ton pc ?

Daniel Pelletier

unread,
Jun 22, 2004, 6:47:27 PM6/22/04
to
Bonsoir Isabelle
Sur mon PC tous va mais sur mon Laptop
(la macro mot de passe pour ouvrir)
Quand j'exécute la macros avec F8 (pas àpas)
elle saute la ligne "W" pour aller sur msgbox("Utilisateur inconnu")
et après trois tentative la macros arrète, sans fermer le fichier. ???
Mon Laptop a une version anglais cela peut t'il y faire quelque chose.
(thinkPad version Excel 9,0.4402 5r-1)

Merci

Mon Laptop a une version anglais cela peut t'il y faire quelque chose


"isabelle" <as.isab...@videotron.ca> a écrit dans le message de

news:40D79F43...@videotron.ca...

isabelle

unread,
Jun 22, 2004, 6:50:24 PM6/22/04
to
bonjour Daniel,

je n'ai jamais fait de vba sur un laptop, mais une idée comme ça, peut
être que le nom de la variable "w" est déjà utilisé par excel sur le
laptop. essaie avec un autre nom de variable.

Daniel Pelletier

unread,
Jun 22, 2004, 7:33:00 PM6/22/04
to
Rebonsoir
Bien non j'ai utiliser "p" et après "i" ni un ni l'autre change quelque
chose . :-((

Private Sub CommandButton1_Click()
util = TextBox1.Value
rec:
trouve = Not IsError(Application.Match(util, Range("Users").Columns(1), 0))
ligne = Application.Match(util, Range("Users").Columns(1), 0)
If util <> "" And trouve = "Vrai" Then
p = Sheets("Donné").Cells(ligne, 28)
If TextBox2.Value = p Then
ReplaceFenêtre
End
Else
'ici si le mot de passe n'est pas valide rien ne s'exécute
MsgBox ("Mot de passe invalide")
'il faut ajouter
ThisWorkbook.Close SaveChanges:=False '<----
End
End If
Else
MsgBox ("Utilisateur inconnu")
x = x + 1
If x = 3 Then
End
Else
util = InputBox("Entrer votre nom d'utilisateur")
GoTo rec
End If
End If
End Sub

"isabelle" <as.isab...@videotron.ca> a écrit dans le message de

news:40D8B7B0...@videotron.ca...

isabelle

unread,
Jun 22, 2004, 8:06:02 PM6/22/04
to
et lorsque tu l'exécute au pas à pas quel sont les valeurs des variable
util et trouve ?

Daniel Pelletier

unread,
Jun 22, 2004, 8:47:32 PM6/22/04
to
Rebonsoir

Avec F8 s'exécute au pas à pas mais je ne voie pas les valeur que tu me
demande.

"isabelle" <as.isab...@videotron.ca> a écrit dans le message de

news:40D8C96A...@videotron.ca...

isabelle

unread,
Jun 22, 2004, 8:54:19 PM6/22/04
to
Daniel Pelletier a écrit :
> Avec F8 s'exécute au pas à pas mais je ne voie pas les valeur que tu me
> demande.

ajoute un msgbox pour en connaitre les valeurs, il faut absolument que
"util" soit différent de vide et égalemet que "trouve" soit égal à vrai
pour que p soit égal à une valeur.

Private Sub CommandButton1_Click()
util = TextBox1.Value
rec:
trouve = Not IsError(Application.Match(util, Range("Users").Columns(1),
0))
ligne = Application.Match(util, Range("Users").Columns(1), 0)

'ici
'----------------------------------------
msgbox "la valeur de util = " & util
msgbox "la valeur de trouve = " & trouve
'----------------------------------------

Daniel Pelletier

unread,
Jun 22, 2004, 9:18:29 PM6/22/04
to
La première boite me donne ( la valeur de util = pellet15 )
et la deuxième ( la valeur de trouve = True )
troisième ( Utilisateur inconnu )
et quatième ( entrer votre nom d'utilisateur )
ect... fin :-(( ??


"isabelle" <as.isab...@videotron.ca> a écrit dans le message de

news:40D8D4BB...@videotron.ca...

isabelle

unread,
Jun 22, 2004, 10:52:01 PM6/22/04
to
je crois bien que la réponse est là, la valeur de la formule
Application.Match(util, Range("Users").Columns(1)
est retourner en anglais,
il faut remplacer
If util <> "" And trouve = "Vrai" Then
par
If util <> "" And trouve = "True" Then

isabelle


Daniel Pelletier a écrit :
>

Daniel Pelletier

unread,
Jun 22, 2004, 11:19:33 PM6/22/04
to
OUI OUI
La mod........langue de Shapeare me fait encore du trouble

Merci encore merci

"isabelle" <as.isab...@videotron.ca> a écrit dans le message de

news:40D8F051...@videotron.ca...

Daniel Pelletier

unread,
Jun 22, 2004, 11:32:38 PM6/22/04
to
Isabelle
Est t'il possible d'avoir les deux "Vrai" et "True"
parce que je doit envoyer mon fichier a mon confrère et je ne sais quel
version il a.

Merci


"isabelle" <as.isab...@videotron.ca> a écrit dans le message de

news:40D8F051...@videotron.ca...

isabelle

unread,
Jun 22, 2004, 11:55:30 PM6/22/04
to
je ne suis pas sur Daniel, peut être en déclarant
Dim trouve As Byte
il faudrait vérifier la valeur "trouve"
sur le pc francais si le résulat est
vrai---> trouve =255
faux---> trouve =0
mais je ne sais pas si se sera pareil sur le laptop.

isabelle

Daniel Pelletier a écrit :
>

michdenis

unread,
Jun 22, 2004, 11:57:38 PM6/22/04
to
Bonsoir Daniel,

Pour obtenir toujours "True" indépendamment de la langue : Française ou Anglaise, utilise ceci dans ton code :

trouve = Format(Not IsError(Application.Match(util, Range("Users").Columns(1), 0)))

à la place de

trouve = Not IsError(Application.Match(util, Range("Users").Columns(1), 0))


Et tu vas alors pouvoir utiliser ceci dans tous les cas :


If util <> "" And trouve = "True" Then

Salutations!

"Daniel Pelletier" <pell...@videotron.ca> a écrit dans le message de news:%23SoY4KN...@tk2msftngp13.phx.gbl...

isabelle

unread,
Jun 22, 2004, 11:58:59 PM6/22/04
to
ou bien plus simple avec
Dim trouve As Integer

vrai---> -1
faux---> 0

isabelle

Daniel Pelletier a écrit :
>

Daniel Pelletier

unread,
Jun 23, 2004, 9:44:57 PM6/23/04
to
Bonsoir Isabelle
Merc cela va

Une autre petite question ,
Comment faire pour que le curseur soit dans la deuxième boite-texte
près a recevoir le mot de passe.

Merci pour votre aide :-))))))))))))))))))))

"isabelle" <as.isab...@videotron.ca> a écrit dans le message de

news:40D90003...@videotron.ca...

Daniel Pelletier

unread,
Jun 23, 2004, 9:54:19 PM6/23/04
to
Bonsoir michdenis
ok cela fonctionne bien.

Merci
"michdenis" <mich...@hotmail.com> a écrit dans le message de
news:e2046YNW...@TK2MSFTNGP09.phx.gbl...

isabelle

unread,
Jun 23, 2004, 11:42:07 PM6/23/04
to
re bonjour Daniel,

une solution possible serait sur l'événement Initialise du userform

Private Sub UserForm_Initialize()
With CreateObject("WScript.NetWork")
TextBox1.Value = .UserName
TextBox2.SetFocus
End With
End Sub

Daniel Pelletier

unread,
Jun 24, 2004, 3:45:24 PM6/24/04
to
Bonjour Isabelle

Super cela fonctionne très bien :-)))))))))))))))))
Quand vous aurai une minute regarde ma question (copier "SI" et insérer)

Merci beaucoup et bonne fête de la ST-Jean

"isabelle" <as.isab...@videotron.ca> a écrit dans le message de

news:40DA4D8F...@videotron.ca...

0 new messages