1、用Excel绘制电路图用Excel绘制电路图(原创)_1模块_菜单 代码:Public myShe As Worksheet 声明对象变量Public myJh As Collection 声明集合变量Public myJhsz() 声明动态数组变量Public myRGB As Long 声明长整数值变量_颜色Public myLeft As Double 声明双精度数值变量_左边距Public myTop As Double 声明双精度数值变量_右边距Public myXt As Double 声明双精度数值变量_线条宽度Public myLj As String 声明字符变量_工作表路径
2、*工作表打开自动运行Sub Auto_Open() myRGB = 0 颜色 黑色 myXt = 1.5 线条宽度 myLj = ThisWorkbook.Path 获得工作表路径 Call DLMenu 调用菜单处理过程End Sub*自定义_电路菜单Public Sub DLMenu(Optional ByRef temzf As String = )Dim mybar As CommandBarDim myMenu As ObjectDim mymenuitem As ObjectFor Each dq In Application.CommandBars 在当前菜单中查找电路菜单,有则
3、删除 If dq.Name = 电路菜单 Then Application.CommandBars(电路菜单).DeleteNext添加菜单栏 Name:菜单栏的名称 Position:新菜单栏的位置或者类型 MenuBar:新菜单栏不取代当前活动菜单栏 Temporary:新菜单栏成为临时,程序关闭时被删除Set mybar = CommandBars.Add(Name:=电路菜单, Position:=msoBarTop, MenuBar:=False, Temporary:=True)员工管理菜单及菜单项=添加菜单 Type:指定添加到菜单栏中的菜单类型 Temporary:新菜单成为临
4、时,程序关闭时被删除Set myMenu = mybar.Controls.Add(Type:=msoControlPopup, Temporary:=True)myMenu.Caption = 电路图 菜单标题-添加菜单项 Type:指定添加到菜单中的菜单项类型Set mymenuitem = myMenu.Controls.Add(Type:=msoControlButton)With mymenuitem .BeginGroup = True 增加间隔线 .Caption = 线路 菜单项标题 .OnAction = myDL_xl 点击引发的过程End WithSet mymenuit
5、em = myMenu.Controls.Add(Type:=msoControlButton)With mymenuitem .BeginGroup = True 增加间隔线 .Caption = 电阻 菜单项标题 .OnAction = myDL_dz 点击引发的过程End WithSet mymenuitem = myMenu.Controls.Add(Type:=msoControlButton)With mymenuitem .BeginGroup = True 增加间隔线 .Caption = 电容 菜单项标题 .OnAction = myDL_dr 点击引发的过程End With
6、Set mymenuitem = myMenu.Controls.Add(Type:=msoControlButton)With mymenuitem .BeginGroup = True 增加间隔线 .Caption = 电感 菜单项标题 .OnAction = myDL_dg 点击引发的过程End WithSet mymenuitem = myMenu.Controls.Add(Type:=msoControlButton)With mymenuitem .BeginGroup = True 增加间隔线 .Caption = 半导体 菜单项标题 .OnAction = myDL_bdt 点
7、击引发的过程End WithSet mymenuitem = myMenu.Controls.Add(Type:=msoControlButton)With mymenuitem .BeginGroup = True 增加间隔线 .Caption = 设备 菜单项标题 .OnAction = myDL_sb 点击引发的过程End Withmybar.Visible = True 显示自定义的菜单栏Set mybar = Nothing 释放内存Set myMenu = NothingSet mymenuitem = NothingEnd Sub*自定义_工具栏_线路Sub myDL_xl(Op
8、tional ByRef temzf As String = )Dim xBar As CommandBar, xButton As CommandBarButton 声明对象变量For Each dq In Application.CommandBars 在当前菜单中查找电路菜单,有则删除 If dq.Name = 电路菜单_线路 Then Application.CommandBars(电路菜单_线路).Delete Exit Sub End IfNextSet xBar = CommandBars.Add(电路菜单_线路, msoBarTop, False, True) 添加菜单Set
9、xButton = xBar.Controls.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 横线 按钮标题 .Picture = LoadPicture(myLj + 电路图标xl01.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标xl01.jpg) 透明效果 .OnAction = xl_hx 点击引发的过程 .TooltipText = 横线 提示文本End WithSet xButton =
10、 xBar.Controls.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 竖线 按钮标题 .Picture = LoadPicture(myLj + 电路图标xl02.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标xl02.jpg) 透明效果 .OnAction = xl_sx 点击引发的过程 .TooltipText = 竖线 提示文本End WithSet xButton = xBar.Con
11、trols.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 相交线 按钮标题 .Picture = LoadPicture(myLj + 电路图标xl03.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标xl03.jpg) 透明效果 .OnAction = xl_3xjx 点击引发的过程 .TooltipText = 三相交线 提示文本End WithSet xButton = xBar.Control
12、s.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 相交线 按钮标题 .Picture = LoadPicture(myLj + 电路图标xl04.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标xl04.jpg) 透明效果 .OnAction = xl_4xjx 点击引发的过程 .TooltipText = 四相交线 提示文本End WithSet xButton = xBar.Controls.Ad
13、d(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 十字线 按钮标题 .Picture = LoadPicture(myLj + 电路图标xl05.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标xl05.jpg) 透明效果 .OnAction = xl_szx 点击引发的过程 .TooltipText = 十字线 提示文本End WithSet xButton = xBar.Controls.Add(msoC
14、ontrolButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 接地线 按钮标题 .Picture = LoadPicture(myLj + 电路图标xl06.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标xl06.jpg) 透明效果 .OnAction = xl_jdx 点击引发的过程 .TooltipText = 接地线 提示文本End WithSet xButton = xBar.Controls.Add(msoControl
15、Button) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 线头 按钮标题 .Picture = LoadPicture(myLj + 电路图标xl07.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标xl07.jpg) 透明效果 .OnAction = xl_xt 点击引发的过程 .TooltipText = 线头 提示文本End WithxBar.Visible = True 显示自定义的菜单栏Set xBar = Nothing 释放内
16、存Set xButton = NothingEnd Sub*自定义_工具栏_电阻Sub myDL_dz(Optional ByRef temzf As String = )Dim xBar As CommandBar, xButton As CommandBarButton 声明对象变量For Each dq In Application.CommandBars 在当前菜单中查找电路菜单,有则删除 If dq.Name = 电路菜单_电阻 Then Application.CommandBars(电路菜单_电阻).Delete Exit Sub End IfNextSet xBar = Com
17、mandBars.Add(电路菜单_电阻, msoBarTop, False, True) 添加菜单Set xButton = xBar.Controls.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 保险丝 按钮标题 .Picture = LoadPicture(myLj + 电路图标dz00.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标dz00.jpg) 透明效果 .OnAction = dz
18、_bxs 点击引发的过程 .TooltipText = 保险丝 提示文本End WithSet xButton = xBar.Controls.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 电阻器 按钮标题 .Picture = LoadPicture(myLj + 电路图标dz01.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标dz01.jpg) 透明效果 .OnAction = dz_dzq 点
19、击引发的过程 .TooltipText = 电阻器 提示文本End WithSet xButton = xBar.Controls.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 可变电阻 按钮标题 .Picture = LoadPicture(myLj + 电路图标dz02.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标dz02.jpg) 透明效果 .OnAction = dz_kbdz 点击引发的
20、过程 .TooltipText = 可变电阻 提示文本End WithSet xButton = xBar.Controls.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 电位器 按钮标题 .Picture = LoadPicture(myLj + 电路图标dz03.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标dz03.jpg) 透明效果 .OnAction = dz_dwq 点击引发的过程 .T
21、ooltipText = 电位器 提示文本End WithSet xButton = xBar.Controls.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 热敏电阻 按钮标题 .Picture = LoadPicture(myLj + 电路图标dz04.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标dz04.jpg) 透明效果 .OnAction = dz_rmdz 点击引发的过程 .Toolt
22、ipText = 热敏电阻 提示文本End WithSet xButton = xBar.Controls.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 压敏电阻 按钮标题 .Picture = LoadPicture(myLj + 电路图标dz05.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标dz05.jpg) 透明效果 .OnAction = dz_ymdz 点击引发的过程 .TooltipT
23、ext = 压敏电阻 提示文本End WithxBar.Visible = True 显示自定义的菜单栏Set xBar = Nothing 释放内存Set xButton = NothingEnd Sub*自定义_工具栏_电容Sub myDL_dr(Optional ByRef temzf As String = )Dim xBar As CommandBar, xButton As CommandBarButton 声明对象变量For Each dq In Application.CommandBars 在当前菜单中查找电路菜单,有则删除 If dq.Name = 电路菜单_电容 Then
24、 Application.CommandBars(电路菜单_电容).Delete Exit Sub End IfNextSet xBar = CommandBars.Add(电路菜单_电容, msoBarTop, False, True) 添加菜单Set xButton = xBar.Controls.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 电容器 按钮标题 .Picture = LoadPicture(myLj + 电路图标dr01.jpg) 加载图片 .Mask = LoadPicture(myLj + 电路图标dr01.jpg) 透明效果 .OnAction = dz_drq 点击引发的过程 .TooltipText = 电容器 提示文本End WithSet xButton = xBar.Controls.Add(msoControlButton) 添加菜单工具栏按钮With xButton .Style = msoButtonIconAndCaption 图像和文本且文本位于图像的右侧 .Caption = 可变电容 按钮标题 .Picture = Lo
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1