作者:绿色风
分类:
时间:2022-08-18
浏览:261
楼主 amulee |
本例介绍如何模拟字体倾斜的按钮 通过本例可以学习到功能区如何与工作表进行同步并交互处理的。
操作步骤: 1、首先绘制了一个自定义的Toggle按钮图片用作斜体按钮。(参见[VSTO] 利用VSTO给控件画一个图片 http://www.exceltip.net/thread-22356-1-1.html ) 2、添加一个模块,输入以下代码:
- Module Module1
- '定义Application对象
- Public APP As Microsoft.Office.Interop.Excel.Application
- End Module
3、在Thisworkbook.VB中添加以下代码,主要用于选择不同的按钮时改变ToggleButton的状态
- Public Class ThisWorkbook
- '选择其他工作表时更改Button状态
- Private Sub ThisWorkbook_SheetActivate(ByVal Sh As Object) Handles Me.SheetActivate
- Globals.Ribbons.Ribbon1.ToggleButton1.Checked = APP.ActiveCell.Font.Italic
- End Sub
- '单元格选择时变换Button状态
- Private Sub ThisWorkbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Microsoft.Office.Interop.Excel.Range) Handles Me.SheetSelectionChange
- Globals.Ribbons.Ribbon1.ToggleButton1.Checked = APP.ActiveCell.Font.Italic
- End Sub
- '文件打开时设定Button状态
- Private Sub ThisWorkbook_Startup() Handles Me.Startup
- APP = ThisApplication
- '设定Button状态
- Globals.Ribbons.Ribbon1.ToggleButton1.Checked = APP.ActiveCell.Font.Italic
- End Sub
- Private Sub ThisWorkbook_Shutdown() Handles Me.Shutdown
- End Sub
- End Class
4、在Ribbon中添加以下代码,用于点击ToggleButton时改变字体
- Imports Microsoft.Office.Tools.Ribbon
- Public Class Ribbon1
- Private Sub Ribbon1_Load(ByVal sender As System.Object, ByVal e As RibbonUIEventArgs) Handles MyBase.Load
- End Sub
- '单机按钮时更改字体
- Private Sub ToggleButton1_Click(ByVal sender As System.Object, ByVal e As Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs) Handles ToggleButton1.Click
- If TypeName(APP.Selection) = "Range" Then
- APP.Selection.Font.Italic = ToggleButton1.Checked
- End If
- End Sub
- End Class
利用VSTO使工作表和功能区按钮实现同步并交互.rar |
2楼 亡者天下 |
VSTO一定要够狠VBA一起用吗?
怎么学习的几个帖子都是综合的啊? |
免责声明
有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素,
经与ExcelTip.Net站长Apolloh商议并征得其同意,
现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示,
供有需要的人士查询使用,也慰缅曾经的论坛时代。
所示各个帖子的原作者如对版权有异议,
可与本人沟通提出,或于本站点留言,我们会尽快处理。
在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一