ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 8435|回复: 10

[分享]修改EXCEL图标和程序标题名称

[复制链接]

TA的精华主题

TA的得分主题

发表于 2007-5-18 08:52 | 显示全部楼层 |阅读模式
本帖已被收录到知识树中,索引项:Windows API应用

首先在要改的工作薄相同路径放一个ICO图标,用来作为更改后要显示的图标.

1、

Option Explicit
Public Declare Function ExtractIcon Lib "shell32.dll" Alias "ExtractIconA" (ByVal hInst As Long, ByVal lpszExeFileName As String, ByVal nIconIndex As Long) As Long
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Integer, ByVal lParam As Long) As Long
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Const WM_SETICON = &H80
2、

Private Sub Workbook_Open()
Dim IconPath As Variant
Dim hIcon As Long
IconPath = ThisWorkbook.Path & "\MSN.ICO"
hIcon = ExtractIcon(0, IconPath, 0)
SendMessage FindWindow("XLMAIN", Application.Caption), WM_SETICON, 1, hIcon
Application.Caption = "我的财务系统"
End Sub

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2007-5-18 08:54 | 显示全部楼层

效果如下

 


[分享]修改EXCEL图标和程序标题名称

[分享]修改EXCEL图标和程序标题名称

TA的精华主题

TA的得分主题

发表于 2007-5-18 09:27 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2012-9-27 08:06 | 显示全部楼层
修改和恢复excel程序标题的vba代码

公有的 过程 修改excel的标题()
应用程序.标题 = "标题修改试验"
消息框: "excel标题已经被改为: " & 应用程序.标题 _
& "! 下面将恢复默认的标题文字!"
应用程序.标题 = vbnullstring
结束 过程


修改和恢复excel程序标题的VBA代码

Public Sub 修改Excel的标题()
    Application.Caption = "标题修改试验"
    MsgBox "Excel标题已经被改为: " & Application.Caption _
        & "! 下面将恢复默认的标题文字!"
    Application.Caption = vbNullString
End Sub


TA的精华主题

TA的得分主题

发表于 2012-9-27 08:08 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
option explicit
公有的 声明 函数 extracticon 引用库 "shell32.dll" 别名 "extracticona" (变量 hinst 为 长整型值    变量 lpszexefilename 为 字符串    变量 niconindex 为 长整型值) 为 长整型值
公有的 声明 函数 发送消息API函数 引用库 "user32" 别名 "发送消息API函数a" (变量 hwnd 为 长整型值    变量 wmsg 为 长整型值    变量 wparam 为 整型值    变量 lparam 为 长整型值) 为 长整型值
公有的 声明 函数 findwindow 引用库 "user32" 别名 "findwindowa" (变量 lpcl为sname 为 字符串    变量 lpwindowname 为 字符串) 为 long
公有的 const wm_seticon = &h80
2、
私有的 过程 workbook_open()
定义变量 iconpath 为 变体数据类型
定义变量 hicon 为 长整型值
icon路径 = 当前工作簿.路径 & "\msn.ico"
hicon = extracticon(0, iconpath, 0)
发送消息API函数 findwindow("xlmain"    应用程序.标题)    wm_seticon    1    hicon
应用程序.标题 = "我的财务系统"
结束 过程

TA的精华主题

TA的得分主题

发表于 2012-12-4 22:40 | 显示全部楼层
引用图标,这儿有一个路径是IconPath,即被引用的图标要保存在当地路径。
如果我在vb6中,把该图标放到资源库中,又该如何引用呢?谢谢您的指点,期望指导!~

TA的精华主题

TA的得分主题

发表于 2015-8-5 23:01 | 显示全部楼层
Public Const WM_SETICON = &H80
此句在vba中报警      编译错误:常数、固定长度字符串、数组、用户定义类型以及Declare语句不允许作为对象模块的公共成员
求解释原因!我安装的是excel2010

TA的精华主题

TA的得分主题

发表于 2015-8-6 23:23 | 显示全部楼层
本帖最后由 lujkhua 于 2015-8-6 23:24 编辑
  1. Sub 修改工作簿标题图标就算啦()
  2.     Application.Caption = "不用API也可以改变标题的嘛"
  3.     Application.ActiveWindow.Caption = "怒剑狂花"
  4. End Sub
复制代码
2015-08-06_232258.png

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2017-9-22 16:35 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2018-5-2 10:05 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-4 02:27 , Processed in 0.055716 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表