成品超市网站,网站免费申请,删除wordpress文章修订版本,钓鱼网站制作教程视频将excel宏安全性调到中#xff1a; 按altf11进入vba编辑器#xff1a; 记住以下快捷键#xff1a; F7 代码窗口 F4 属性窗口 ctrlR 工程资源窗口 F5 程序运行 TAb 代码缩进 SHIFTTAB 凸出 加菜单#xff1a; 在excel表中按altf11进入代码窗口#xff1a; 解释#xff1a…将excel宏安全性调到中 按altf11进入vba编辑器 记住以下快捷键 F7 代码窗口 F4 属性窗口 ctrlR 工程资源窗口 F5 程序运行 TAb 代码缩进 SHIFTTAB 凸出 加菜单 在excel表中按altf11进入代码窗口 解释 第一行vbaproject (测试.xls) 是excel表的文件名。 第二行microsoft excel对象 表示vba针对的对象是sheetdata还是thisworkbook本工作表 第三行窗体是用来设计窗体用的即界面容器 第四行模块。比如设计菜单就需要用到。什么叫模块鼠标能点的都叫模块比如要做的菜单要点击的按钮、sheet1等它也是一种容器用于存放用户代码 什么是类 Dim tx1 As Textbox 这里我们用到一个类Textbox定义了一个对象tx1 类是一个隐者上面Textbox是VBA已经给我们准备好的一个类我们无法知道VBA是怎么准备的它的真身被隐藏了但我们可以知道对象tx1怎么用。VBA把对对象的使用划分为三种属性、方法和事件。 1.窗体模块 由于VB是面向对象的应用程序开发工具所以应用程序的代码结构就是该程序在屏幕上表示的对应模型。根据定交对象包含数据和代码。应用程序中的每个窗体都有一个相对应的窗体模块文件扩展名为.frm 窗体模块是VB应用程序的基础。窗体模块可以包含处理事件的过程、通用过程以及变量、常数、自定义类型和外部过程的窗体级声明。写入窗体模块的代码是该窗体所属的具体应用程序专用的也可以引用该程序内的其它窗体和对象 每个窗体模块都包含事件过程在事件过程中有为响应该事件而执行的程序段。窗体可包含控件。在窗体模块中对窗体上的每个控件都有一个对应的事件过程集。除了事件过程窗体模块还可包含通用过程它对来自该窗体中任何事件过程的调用都作出响应。 2.标准模块 标准模块是程序中的一个独立容器包含全局变量、Function(函数)过程和Sub过程子过程。 可将那些与特定窗体或控件无关的代码放入标准模块中。标准模块中包含应用程序内的允许其它模块访问的过程和声明。它们可以包含变量、常数、类型、外部过程和全局声明或模块级声明。 3.类模块 在VB中类模块是面向对象编程的基础。可以在类模块中编写代码建立新对象。这些新对象可以包含自定义的属性和方法。实际上窗体正是这样一种类模块在其上可安放控件可显示窗体窗口。用类模块创建对象这些对象可被应用程序内的过程调用。标准模块只包含代码而类模块包含代码又包含数据可视为没有物理表示的控件。 step 1双击thisworkbook打开代码窗口输入 Private Sub Workbook_Open() 打开文件时自动加载自定义菜单项 Menu_CreateEnd Sub Private Sub Workbook_BeforeClose(Cancel As Boolean) 关闭文件时自动卸载自定义菜单项 Menu_DeleteEnd Sub step 2在工程窗口右键插入模块 在属性里将名称改为menu 双击menu输入以下代码 Sub Menu_Create() Dim myMnu As Object Set myMnu CommandBars(Worksheet menu bar).Controls. Add(Type:msoControlPopup, Before:10) With myMnu .Caption 关于 A End With menuItem_CreateEnd Sub Sub menuItem_Create() With Application.CommandBars(Worksheet menu bar).Controls(关于 A) .Controls.Add(Type:msoControlButton, Before:1).Caption 帮助 .Controls(帮助).OnAction 宏1 .Controls.Add(Type:msoControlButton, Before:1).Caption 注册 .Controls(注册).OnAction 宏2 End WithEnd Sub Sub Menu_Delete()CommandBars(Worksheet menu bar).Controls(关于 A).DeleteEnd Sub 其中宏1宏2可以进行单独的程序编写。 保存再次打开此文件后菜单中出现 恢复菜单 如果出现程序错误而导致菜单固定可用代码恢复 在thisworkbook里输入 Sub RestroeBar() Application.CommandBars(Worksheet menu bar).ResetEnd Sub 然后运行此代码即可。 还有一种办法恢复 在Windows XP中删除“C:\Documents and Settings\用户名\Application Data\Microsoft\Excel”文件夹中的“Excel11.xlb”文件而在Windows Vista中该文件在“C:\用户\用户名\AppData\Roaming\Microsoft\Excel”文件夹中。“Excel11.xlb”文件中保存了Excel 2003自定义菜单栏和工具栏设置删除该文件后Excel将自动恢复默认的菜单栏和工具栏。 呃很多人会找不到这个文件。Application Data是隐藏的。 如果要加载菜单到鼠标右键中 则在thisworkbook里加入下面代码 *****************************************************************时间2011-4-24功能在Excel2007版右键菜单中生成2003版菜单 来源http://hi.baidu.com/winas***************************************************************** Sub addto_rightkey() With Application.CommandBars(cell).Reset With .Controls.Add(Type:msoControlButton, before:1).Caption 新加入的右键菜单.BeginGroup True.OnAction do_rightEnd With End With End Sub ---------------------------------Sub do_right()Application.CommandBars(Built-in Menus).ShowPopupEnd Sub *****************************************************************Sub del_rightkey()Application.CommandBars(cell).ResetEnd Sub 菜单的属性 在 VBA 和 Microsoft Visual Basic 中按钮和菜单项用 CommandBarButton 对象表示。显示菜单和子菜单的弹出控件用 CommandBarPopup 对象表示。 其他请参考F1. commandbarbutton的属性与方法 Add 添加菜单栏方法是使用 CommandBars 对象集合的 Add 方法然后为 Menubar 参数指定 TRUE 值。 Enabled 如果 Enabled 属性的值为 TRUE那么用户可以使用 Visual Basic 代码使指定的菜单栏可见。如果 Enabled 属性的值为 FALSE用户就无法让菜单栏可见。不过菜单栏将出现在可用命令栏列表中。Protection 使您可以通过特定用户操作来保护菜单栏。Position 指定新菜单栏相对于程序窗口的位置。菜单栏相对于程序窗口的位置可以是以下 MsoBarPosition 常量属性之一msoBarLeft、msoBarTop、msoBarRight、msoBarBottom、msoBarFloating、msoBarPopup用于创建快捷菜单或 msoBarMenuBar仅用于 Apple Macintosh。Visible 指定控件是可见的还是隐藏的。 以下代码示例创建名为 My Command Bar 的自定义命令栏 Sub MenuBar_Create() Application.CommandBars.Add Name:My command bar End Sub 以下代码示例返回活动菜单栏的名称Sub MenuBars_GetName() MsgBox CommandBars.ActiveMenuBar.Name End Sub 您还可以通过使用 Temporary:True 参数来创建自定义命令栏。Temporary:True 参数允许命令栏在您退出 Excel 时自动重置。以下代码使用 Temporary:True 参数创建自定义命令栏Sub MenuBar_Create() Application.CommandBars.Add Name:My command bar, Temporary:True End Sub 在模块中 针对sheet中的退出按钮 Sub 退出系统()MsgBox 歡迎您下次再使用,如有意見請與我聯系 ActiveWorkbook.Save 自动保存 ActiveWorkbook.Close 关闭表,相当于ctrlf4End Sub 引用链接http://hi.baidu.com/winas/item/5fdb2b267dd9e84646996280转载于:https://www.cnblogs.com/wenxiangchen/p/3237835.html