不能用vba更改excel图标(在任务栏中)

您好我正在使用下面的代码(对不起,不能相信,我不知道我从哪里得到它)将WINDOWS的TASKBAR中的Excel图标从通常的Excel图标更改为我所做的图标。

但它不起作用…只更改应用程序左上angular的小图标(而不是任务栏)

但是,当我直接在VBA窗口中运行代码时,它将vba窗口的任务栏图标更改为我的图标!

我认为它看到活动窗口当前正在打开的窗口(直接运行VBA窗口),但是当打开书,它不是以同样的方式…

我正在使用Windows 7

我希望有人能帮帮忙….

Declare Function GetActiveWindow32 Lib "user32" Alias "GetActiveWindow" () As Integer Declare Function SendMessage32 Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Declare Function ExtractIcon32 Lib "shell32.dll" Alias "ExtractIconA" (ByVal hInst As Long, ByVal lpszExeFileName As String, ByVal nIconIndex As Long) As Long Sub ChangeApplicationIcon() '*****Change Icon To Suit******* NewIcon = ThisWorkbook.Path & "\MYICON.ICO" '***************************** Icon = ExtractIcon32(0, NewIcon, 0) SendMessage32 GetActiveWindow32(), &H80, 0, Icon '< 1 = big Icon SendMessage32 GetActiveWindow32(), &H80, 1, Icon '< 0 = small Icon ActiveWindow.Caption = "MY APPLICATION" End Sub 

任务栏图标是一个32像素的图标。 您将小图标和大图标设置为16像素图标。 对ICON_BIG使用32像素的图标。