j'ai bidouillé ce code à l'aide ressources sur le net (et un peu avec ma
petite tête vide ...) :
Function fOSUserName() As String
' Retourne le nom d'usager fourni lors du branchement au réseau.
Dim lngLen As Long, lngX As Long
Dim strUserName As String
strUserName = String$(254, 0)
lngLen = 255
lngX = apiGetUserName(strUserName, lngLen)
If lngX <> 0 Then
fOSUserName = Left$(strUserName, lngLen - 1)
Else
fOSUserName = ""
End If
'sélectionne le FOusername dans la liste de param
Sheets("Param").Select
Range("I:I").Select
Selection.Find(What:=fOSUserName, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Select
'décale la sélection d'une ligne pour sélectionner le prénom
Dim LigVar, ColVar
LigVar = 0
ColVar = 1
Selection.Offset(LigVar, ColVar).Select
'ajoute la colonne nom à la sélection
With ActiveCell
Union(.Cells, .Offset(0, 1)).Select
End With
'affiche le contenu de la sélection
MsgBox "bonjour " & ActiveCell
or :
1. il ne s'éxecute que si le classeur est positionné sur la feuille param
malgrès le "Sheets("Param").Select" ??? pourquoi tant de haine ? (au départ,
dans mon esprit tortueux la feuille param était censée être masqué ...du coup
forcément ça marche beaucoup moins bien ...)
2.en fait comme ce n'est pas marqué ici la msgbox était censée retourner les
deux cellules sélectionnées au préalable, mais là je n'ai pas trouvé le moyen
de lui faire comprendre que c'est la sélection que je veux pas que
l'activecell ...
j'espère que c'est à peu près clair ...
si vous avez la solution ....
D'avance merci !!!
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Clément Marcotte
Bonjour,
1. il ne s'éxecute que si le classeur est positionné sur la feuille param
malgrès le "Sheets("Param").Select" ??? pourquoi tant de haine ? (au départ,
dans mon esprit tortueux la feuille param était censée être masqué ...du coup
forcément ça marche beaucoup moins bien ...)
À première vue, et pas testé:
Contrairement au DOS, Il y a des situations où VBA est sensible à la casse des mots. Si tu veux sélectionner la feuille "param", tu dois avoir Sheets("param").select et si tu veux sélectionner la feuille paRam, tu dois avoir Sheets("paRam").select etc.
Mais pour des adresses de cellule, range("z1") ou range("Z1"), c'est pareil.
2.en fait comme ce n'est pas marqué ici la msgbox était censée retourner les
deux cellules sélectionnées au préalable, mais là je n'ai pas trouvé le moyen
de lui faire comprendre que c'est la sélection que je veux pas que l'activecell ...
Toujours à première vue et pas testé; remplace ActiveCell par selection.
-- On apprend pas à un vieux singe à faire des grimaces
Bonjour,
1. il ne s'éxecute que si le classeur est positionné sur la feuille
param
malgrès le "Sheets("Param").Select" ??? pourquoi tant de haine ? (au
départ,
dans mon esprit tortueux la feuille param était censée être masqué
...du coup
forcément ça marche beaucoup moins bien ...)
À première vue, et pas testé:
Contrairement au DOS, Il y a des situations où VBA est sensible à la
casse des mots. Si tu veux sélectionner la feuille "param", tu dois
avoir Sheets("param").select et si tu veux sélectionner la feuille
paRam, tu dois avoir Sheets("paRam").select etc.
Mais pour des adresses de cellule, range("z1") ou range("Z1"), c'est
pareil.
2.en fait comme ce n'est pas marqué ici la msgbox était censée
retourner les
deux cellules sélectionnées au préalable, mais là je n'ai pas trouvé
le moyen
de lui faire comprendre que c'est la sélection que je veux pas que
l'activecell ...
Toujours à première vue et pas testé; remplace ActiveCell par
selection.
--
On apprend pas à un vieux singe à faire des grimaces
1. il ne s'éxecute que si le classeur est positionné sur la feuille param
malgrès le "Sheets("Param").Select" ??? pourquoi tant de haine ? (au départ,
dans mon esprit tortueux la feuille param était censée être masqué ...du coup
forcément ça marche beaucoup moins bien ...)
À première vue, et pas testé:
Contrairement au DOS, Il y a des situations où VBA est sensible à la casse des mots. Si tu veux sélectionner la feuille "param", tu dois avoir Sheets("param").select et si tu veux sélectionner la feuille paRam, tu dois avoir Sheets("paRam").select etc.
Mais pour des adresses de cellule, range("z1") ou range("Z1"), c'est pareil.
2.en fait comme ce n'est pas marqué ici la msgbox était censée retourner les
deux cellules sélectionnées au préalable, mais là je n'ai pas trouvé le moyen
de lui faire comprendre que c'est la sélection que je veux pas que l'activecell ...
Toujours à première vue et pas testé; remplace ActiveCell par selection.
-- On apprend pas à un vieux singe à faire des grimaces
kalinaja
Bonjour Clément,
Merci pour votre réponse,
en fait la casse a bien été respectée pour le champs sheets(""), et quand j'utilise Selection cela déclenche une erreur de type 13.
Donc je sèche ...
Bonjour,
1. il ne s'éxecute que si le classeur est positionné sur la feuille param
malgrès le "Sheets("Param").Select" ??? pourquoi tant de haine ? (au départ,
dans mon esprit tortueux la feuille param était censée être masqué ....du coup
forcément ça marche beaucoup moins bien ...)
À première vue, et pas testé:
Contrairement au DOS, Il y a des situations où VBA est sensible à la casse des mots. Si tu veux sélectionner la feuille "param", tu dois avoir Sheets("param").select et si tu veux sélectionner la feuille paRam, tu dois avoir Sheets("paRam").select etc.
Mais pour des adresses de cellule, range("z1") ou range("Z1"), c'est pareil.
2.en fait comme ce n'est pas marqué ici la msgbox était censée retourner les
deux cellules sélectionnées au préalable, mais là je n'ai pas trouvé le moyen
de lui faire comprendre que c'est la sélection que je veux pas que l'activecell ...
Toujours à première vue et pas testé; remplace ActiveCell par selection.
-- On apprend pas à un vieux singe à faire des grimaces
Bonjour Clément,
Merci pour votre réponse,
en fait la casse a bien été respectée pour le champs sheets(""),
et quand j'utilise Selection cela déclenche une erreur de type 13.
Donc je sèche ...
Bonjour,
1. il ne s'éxecute que si le classeur est positionné sur la feuille
param
malgrès le "Sheets("Param").Select" ??? pourquoi tant de haine ? (au
départ,
dans mon esprit tortueux la feuille param était censée être masqué
....du coup
forcément ça marche beaucoup moins bien ...)
À première vue, et pas testé:
Contrairement au DOS, Il y a des situations où VBA est sensible à la
casse des mots. Si tu veux sélectionner la feuille "param", tu dois
avoir Sheets("param").select et si tu veux sélectionner la feuille
paRam, tu dois avoir Sheets("paRam").select etc.
Mais pour des adresses de cellule, range("z1") ou range("Z1"), c'est
pareil.
2.en fait comme ce n'est pas marqué ici la msgbox était censée
retourner les
deux cellules sélectionnées au préalable, mais là je n'ai pas trouvé
le moyen
de lui faire comprendre que c'est la sélection que je veux pas que
l'activecell ...
Toujours à première vue et pas testé; remplace ActiveCell par
selection.
--
On apprend pas à un vieux singe à faire des grimaces
en fait la casse a bien été respectée pour le champs sheets(""), et quand j'utilise Selection cela déclenche une erreur de type 13.
Donc je sèche ...
Bonjour,
1. il ne s'éxecute que si le classeur est positionné sur la feuille param
malgrès le "Sheets("Param").Select" ??? pourquoi tant de haine ? (au départ,
dans mon esprit tortueux la feuille param était censée être masqué ....du coup
forcément ça marche beaucoup moins bien ...)
À première vue, et pas testé:
Contrairement au DOS, Il y a des situations où VBA est sensible à la casse des mots. Si tu veux sélectionner la feuille "param", tu dois avoir Sheets("param").select et si tu veux sélectionner la feuille paRam, tu dois avoir Sheets("paRam").select etc.
Mais pour des adresses de cellule, range("z1") ou range("Z1"), c'est pareil.
2.en fait comme ce n'est pas marqué ici la msgbox était censée retourner les
deux cellules sélectionnées au préalable, mais là je n'ai pas trouvé le moyen
de lui faire comprendre que c'est la sélection que je veux pas que l'activecell ...
Toujours à première vue et pas testé; remplace ActiveCell par selection.
-- On apprend pas à un vieux singe à faire des grimaces