Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Nom de l'utilisateur en VBA

11 réponses
Avatar
Papyjac
Bonjour

Je n'arrive pas à trouver les propriétés relatives à la boite de dialogue
options du menu outils, notamment l'onglet Général, champ nom de l'utilisateur

(En Excel et Word, c'est Application.username)

Mais où donc c'est elle bien cachée ?

--
Papyjac

10 réponses

1 2
Avatar
Geo
Bonjour

Bonjour

Je n'arrive pas à trouver les propriétés relatives à la boite de dialogue
options du menu outils, notamment l'onglet Général, champ nom de l'utilisateur

(En Excel et Word, c'est Application.username)

Mais où donc c'est elle bien cachée ?



A défaut d'autre chose, cette solution sortie des archives marche
partout

Declare Function GetUserName Lib "ADVAPI32.DLL" Alias "GetUserNameA" _
(ByVal lpBuffer As String, nSize As Long) As Long

Function UserName()
Dim S As String
Dim N As Long
Dim Res As Long

S = String$(200, 0)
N = 199
Res = GetUserName(S, N)
UserName = Left(S, N - 1)

End Function

Sub test()
MsgBox UserName
End Sub

Réponse postée sur le forum public microsoft. public. fr. powerpoint

--
A+
Avatar
Papyjac
Bonjour Geo

Merci pour le tuyau,
Ca ne s'invente pas, je teste cela demain


--
Papyjac


"Geo" a écrit :

Bonjour

> Bonjour
>
> Je n'arrive pas à trouver les propriétés relatives à la boite de dialogue
> options du menu outils, notamment l'onglet Général, champ nom de l'utilisateur
>
> (En Excel et Word, c'est Application.username)
>
> Mais où donc c'est elle bien cachée ?

A défaut d'autre chose, cette solution sortie des archives marche
partout

Declare Function GetUserName Lib "ADVAPI32.DLL" Alias "GetUserNameA" _
(ByVal lpBuffer As String, nSize As Long) As Long

Function UserName()
Dim S As String
Dim N As Long
Dim Res As Long

S = String$(200, 0)
N = 199
Res = GetUserName(S, N)
UserName = Left(S, N - 1)

End Function

Sub test()
MsgBox UserName
End Sub

Réponse postée sur le forum public microsoft. public. fr. powerpoint

--
A+





Avatar
Geo
Bonsoir

Ca ne s'invente pas, je teste cela demain



Ça date du temps lointain, où je découvrais les forums (et internet),
si ce n'a pas 10 ans ce n'est pas loin.

J'ai vérifié avec PowerPoint 2007 avant de le poster, ça marche
toujours.

--
A+
Avatar
Papyjac
Bonjour geo

Oui ça marche comme tu le dis en V2007, je vais maintenant testé sous V2003

Ta solution m'ouvre d'autres horizons : je suppose que des fonctions GET de
ce genre, il y en a d'autres. Sais tu où on peut les trouver

Encore merci

--
Papyjac


"Geo" a écrit :

Bonsoir

> Ca ne s'invente pas, je teste cela demain

Ça date du temps lointain, où je découvrais les forums (et internet),
si ce n'a pas 10 ans ce n'est pas loin.

J'ai vérifié avec PowerPoint 2007 avant de le poster, ça marche
toujours.

--
A+





Avatar
Papyjac
Boujour Geo

Question N°1 - test sous V2003

La fonction GetSuerName ne donne pas le nom utilisateur de la boite de
dialogue Outil, Options, Général... elle donne le nom utilisateur réseau
déclaré sur mon micro


Question N°2 - Est-il possible de modifier le nom utilisateur par cette
méthode ?

Par exemple PutUserName


--
Papyjac


"Geo" a écrit :

Bonsoir

> Ca ne s'invente pas, je teste cela demain

Ça date du temps lointain, où je découvrais les forums (et internet),
si ce n'a pas 10 ans ce n'est pas loin.

J'ai vérifié avec PowerPoint 2007 avant de le poster, ça marche
toujours.

--
A+





Avatar
Geo
Bonjour

Ta solution m'ouvre d'autres horizons : je suppose que des fonctions GET de
ce genre, il y en a d'autres. Sais tu où on peut les trouver



Elle fait partie de ce qu'on appelle les API.
On les utilisait beaucoup avec Visual Basic jusqu'à la version 6,
avec Visual Studio beaucoup moins.

La difficulté n'est pas tant de trouver des listes d'API, mais de
trouver celle (i = interface, donc féminin ?) qui fait telle
fonctionnalité.
Une autre est parfois de trouver le fichier contenant telle API et donc
qu'il faut référencer.
J'en ai dans les bouquins sur Visual Basic, et voici quelques favoris
qui marchent encore :
http://msdn.microsoft.com/en-us/library/aa383749.aspx
http://docvb.free.fr/api.php
http://Visual.basic.free.fr/
http://msdn.microsoft.com/fr-fr/vbasic/bb892763.aspx
http://www.vbfrance.com/tutoriaux/API-WINDOWS-VB6-VB-NET_453.aspx

En entreprise je m'en suis beaucoup servi en vba, car ça permettait de
faire des applications qui fonctionnaient du moment qu'on avait Office.


Message posté seulement sur microsoft.public.fr.powerpoint

--
A+
Avatar
Geo
Bonjour

Question N°1 - test sous V2003

La fonction GetSuerName ne donne pas le nom utilisateur de la boite de
dialogue Outil, Options, Général... elle donne le nom utilisateur réseau
déclaré sur mon micro



Oui, cela donne l'utilisateur de la session au sens Windows, amha sous
2007 aussi.
C'est le but : donner l'utilisateur de la machine (authentifié si login
et mot de passe) et non l'utilisateur déclaré dans Office.
Sinon il reste la méthode de contournement, faire un Create de Word ou
Excel et utiliser la méthode que vous connaissez.
D'accord c'est lourdingue mais du moment que ça marche !

Question N°2 - Est-il possible de modifier le nom utilisateur par cette
méthode ?

Par exemple PutUserName



Probablement non pour la raison indiquée, sauf à ouvrir une session.

--
A+
Avatar
Papyjac
Bonjour geo

Je comprends ta réponse, et du coup ma question

Merci pour tous les liens à utiliser le moment venu


--
Papyjac


"Geo" a écrit :

Bonjour

> Ta solution m'ouvre d'autres horizons : je suppose que des fonctions GET de
> ce genre, il y en a d'autres. Sais tu où on peut les trouver

Elle fait partie de ce qu'on appelle les API.
On les utilisait beaucoup avec Visual Basic jusqu'à la version 6,
avec Visual Studio beaucoup moins.

La difficulté n'est pas tant de trouver des listes d'API, mais de
trouver celle (i = interface, donc féminin ?) qui fait telle
fonctionnalité.
Une autre est parfois de trouver le fichier contenant telle API et donc
qu'il faut référencer.
J'en ai dans les bouquins sur Visual Basic, et voici quelques favoris
qui marchent encore :
http://msdn.microsoft.com/en-us/library/aa383749.aspx
http://docvb.free.fr/api.php
http://Visual.basic.free.fr/
http://msdn.microsoft.com/fr-fr/vbasic/bb892763.aspx
http://www.vbfrance.com/tutoriaux/API-WINDOWS-VB6-VB-NET_453.aspx

En entreprise je m'en suis beaucoup servi en vba, car ça permettait de
faire des applications qui fonctionnaient du moment qu'on avait Office.


Message posté seulement sur microsoft.public.fr.powerpoint

--
A+





Avatar
Papyjac
Bonjour Geo,

Oui, effectivement, j'avais pensé à l'accès à Word (ou EXcel)
comme tu dis c'est lourdingue, mais avec mon outillage perso : je vais donc
me créer une "primitive" une seule fois accessible depuis Word, Excel et
Powerpoint, de manière totalement tranparente pour ma procédure

Mais c'est vrai que c'est lourdingue... en attendant mieux

encore merci

--
Papyjac


"Geo" a écrit :

Bonjour

> Question N°1 - test sous V2003
>
> La fonction GetSuerName ne donne pas le nom utilisateur de la boite de
> dialogue Outil, Options, Général... elle donne le nom utilisateur réseau
> déclaré sur mon micro

Oui, cela donne l'utilisateur de la session au sens Windows, amha sous
2007 aussi.
C'est le but : donner l'utilisateur de la machine (authentifié si login
et mot de passe) et non l'utilisateur déclaré dans Office.
Sinon il reste la méthode de contournement, faire un Create de Word ou
Excel et utiliser la méthode que vous connaissez.
D'accord c'est lourdingue mais du moment que ça marche !

> Question N°2 - Est-il possible de modifier le nom utilisateur par cette
> méthode ?
>
> Par exemple PutUserName

Probablement non pour la raison indiquée, sauf à ouvrir une session.

--
A+





Avatar
Geo
Bonjour

Je comprends ta réponse, et du coup ma question



;-)

Merci pour tous les liens à utiliser le moment venu



Un petit dernier que j'aimais bien et qui a déménagé entre temps :
http://allapi.mentalis.org/

[Réponse faite sur le forum public PowerPoint :
news://msnews. microsoft.com/microsoft.public.fr.PowerPoint ] >>

--
A+
1 2