Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


70633 / 76738 ←次へ | 前へ→

【10608】Re:エクセルタイトルバーのアイコンの変更
回答  INA  - 04/2/3(火) 14:59 -

引用なし
パスワード
   以前、どこかで見つけたコードです。
あらかじめmyIcon.icoをブックと同じフォルダに用意して下さい。

'エクセル・アイコンの変更。(API)
Declare Function DrawMenuBar Lib "user32" _
                (ByVal hWnd As Long) As Long
Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
                (ByVal hWnd As Long, _
                 ByVal wMsg As Long, _
                 ByVal wParam As Long, _
                 lParam As Any) As Long
Declare Function ExtractIcon Lib "shell32.dll" Alias "ExtractIconA" _
                (ByVal hInst As Long, _
                 ByVal lpszExeFileName As String, _
                 ByVal nIconIndex As Long) As Long
Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
                (ByVal lpClassName As String, _
                 ByVal lpWindowName As String) As Long
Declare Function GetActiveWindow Lib "user32" () As Long
              
Public Const WM_SETICON = &H80
Public Const ICON_SMALL = 0&
Public Const ICON_BIG = 1&

'エクセル・アイコンの変更。
Sub Set_xlIcon()
  Dim hWnd As Long
  'エクセル・ハンドル 取得。
  hWnd = FindWindow("XLMAIN", Application.Caption)
  If hWnd = 0 Then Exit Sub
  SetIcon hWnd, ThisWorkbook.Path & Application.PathSeparator & "myIcon.ico"
  
End Sub

'hWnd:Window handle
'strIconName:Name of Icon (*.ico)
Sub SetIcon(hWnd As Long, strIconName As String)
  Dim lngIcon As Long
  lngIcon = ExtractIcon(0, strIconName, 0)
  If lngIcon <> 0 Then
    Call SendMessage(hWnd, WM_SETICON, ICON_SMALL, ByVal lngIcon)
    Call SendMessage(hWnd, WM_SETICON, ICON_BIG, ByVal lngIcon)
    DrawMenuBar hWnd
  End If
End Sub

'エクセル・アイコンのリセット。
Sub Reset_xlIcon()
  Dim hWnd As Long
  'エクセル・ハンドル 取得。
  hWnd = FindWindow("XLMAIN", Application.Caption)
  ResetIcon hWnd
End Sub

Sub ResetIcon(hWnd As Long)
  Call SendMessage(hWnd, WM_SETICON, ICON_SMALL, ByVal 0&)
  Call SendMessage(hWnd, WM_SETICON, ICON_BIG, ByVal 0&)
  DrawMenuBar hWnd
End Sub

0 hits

【4495】エクセルタイトルバーのアイコンの変更 かず 03/3/24(月) 11:12 質問
【4505】Re:エクセルタイトルバーのアイコンの変更 とおりすがり 03/3/25(火) 0:27 回答
【4514】Re:エクセルタイトルバーのアイコンの変更 かず 03/3/25(火) 12:16 お礼
【10607】Re:エクセルタイトルバーのアイコンの変更 ドラゴン 04/2/3(火) 14:16 質問
【10608】Re:エクセルタイトルバーのアイコンの変更 INA 04/2/3(火) 14:59 回答
【10649】Re:エクセルタイトルバーのアイコンの変更 谷 誠之 04/2/5(木) 8:17 発言
【10651】Re:エクセルタイトルバーのアイコンの変更 INA 04/2/5(木) 10:38 回答
【10609】Re:エクセルタイトルバーのアイコンの変更 ukino 04/2/3(火) 15:20 回答
【10610】Re:エクセルタイトルバーのアイコンの変更 ドラゴン 04/2/3(火) 16:29 お礼

70633 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free