Icone + nom classeur Excel barre de tache

cartoiide

Habitué
Bonjour,

En me balladant sur plusieurs forum j'ai trouvé ce code qui doit me permettre de modifier l'icone du classeur Excel dans la barre de tâche (lorsque l'on réduit le classeur) et changer le nom affiché dans cette barre.

Je ne parviens pourtant pas à le faire fonctionner car je ne sais pas quel nom donner à l'image du userform (Name) ?

Merci d'avance pour vos réponses.

Voici le texte du post évoqué ci-dessus et le code qui était proposé :

"A) Création d'un UserForm
1) Créez un UserForm et mettez sa propriété (Name) = UF
2) Insérez un contrôle Image et affectez à sa propriété Picture
l'icône de votre choix

B) Code à copier dans un module standard

[cpp]
Private Declare Function FindWindowA Lib "user32" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetClassLongA Lib "user32" _
(ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetClassLongA Lib "user32" _
(ByVal hWnd As Long, ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long
Private Declare Function LoadImageA Lib "user32" _
(ByVal hInst As Long, ByVal lpsz As String, ByVal un1 As Long, _
ByVal n1 As Long, ByVal n2 As Long, ByVal un2 As Long) As Long

Dim HIcon As Long
Dim hWnd As Long

Sub IconeNomAppli_PMO()
Dim MonIcone As Control
'---- Change l'icône d'Excel en cherchant ----
'---- une icône stockée dans un formulaire ----
Set MonIcone = UF.Controls(0)
hWnd = FindWindowA(vbNullString, Application.Caption)
HIcon = GetClassLongA(hWnd, -14)
SetClassLongA hWnd, -14, MonIcone.Picture
'---- Change le nom de l'application ----
Application.Caption = "Personnalisée" 'à adapter
End Sub
[/cpp]

"Lancez la macro IconeNomAppli_PMO.
Vous pouvez, si vous le voulez, appeler cette macro à partir
de l'évènement Workbook_Open avec le code suivant
à copier dans l'évènementiel de ThisWorkbook"

[cpp]
Private Sub Workbook_Open()
Call IconeNomAppli_PMO
End Sub
[/cpp]
 

mikebzh

Nouveau membre
Salut,
la réponse se trouve dans ton énoncé et dans le code, tu peut mettre le nom que tu veux pour ta userform, ici "UF", nom qui sert ligne 19 de ton code, tu pourrais mettre "toto" comme nom de forme et = toto.controls(0) dans le code que cela fonctionnerait pareil.
A plus.
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 098
Messages
6 717 060
Membres
1 586 286
Dernier membre
petitangebleu1977
Partager cette page
Haut