vb表格宏命令.docx
- 文档编号:28316033
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:8
- 大小:19.53KB
vb表格宏命令.docx
《vb表格宏命令.docx》由会员分享,可在线阅读,更多相关《vb表格宏命令.docx(8页珍藏版)》请在冰豆网上搜索。
vb表格宏命令
竭诚为您提供优质文档/双击可除
vb表格宏命令
篇一:
利用宏命令锁定excel公式
利用宏命令锁定excel公式
为了防止excel里面做好的公式误被他人修改,通常大家会通过设置“保护工作表”的方式来锁定,但锁定后别人点击就会弹出对话框,很麻烦。
本文介绍一个通过宏命令来锁定公式的方式,别人根本无法点击锁定后的公式单元格,这样就显得很高大上:
)
一、录制宏
打开excel20xx,在视图里面找到宏图标(20xx版本在工具菜单里寻找),如果没有找到,请打开文件菜单,底部进“选项”,点最下“信任中心”,进入“信任中心设置”,点击“宏设置”,启用宏,然后回到excel就能找到宏图标了。
点击“录制宏”
选择保存在个人宏工作簿,确定
然后点击右下角的
二、编辑Vb宏命令
按alt+F11,进入Vb工程界面蓝色方块,停止录制
选择模块1,双击进入编辑模式
将代码栏中的所有内容全部删除
然后把以下代码复制进去(分割线中间)
------------分割线--------------------
sub保护公式()
activesheet.unprotect("12345678")解除对工作表的保护
cells.select选中整个表格
selection.locked=False解除锁定
selection.specialcells(xlcelltypeFormulas,23).select选中包含公式的单元格
selection.locked=true添加锁定
selection.Formulahidden=true添加隐藏
activesheet.protect("12345678")保护工作表,并设置密码
activesheet.enableselection=xlunlockedcells让锁定单元格不能选中endsub
---------------分割线-----------------
然后,结果如下图,请核对
点击文件菜单,选择“关闭并返回excel”
三、执行宏
点击“查看宏”
点击“执行”,就可以执行了(提示:
无内容的空文档执行时会出错,别担心,打开一个有公式的文档,就可以顺利执行了)
四、建立快捷方式
点击“自定义快速访问工具栏”
从下来菜单中选择宏,这时可以看到保护公式的宏,点“添加”
在最顶上就可以看到宏了,以后打开文档后直接点击该按钮,就会自动执行保护公式的宏了。
温馨提示:
代码栏中的“12345678”是保护文档的密码,大家可以自由设置密码,可以替换。
其余的代码请不要改变。
如果不想保护公式了,可以通过“取消保护工作表”来实现,密码就是你设置的密码(若未改变则为12345678),然后公式就可以自由修改了。
本文为原创,大家可以自由使用,但谢绝转载。
作者:
有风吹过
20xx.4.16
篇二:
excel常用宏编程的代码学习
excel常用宏编程的代码学习
用过Vb的人都应该知道如何声明变量,在Vba中声明变量和Vb中是完全一样的!
使用dim语句
dimaasinteger声明a为整型变量
dima声明a为变体变量
dimaasstring声明a为字符串变量
dimaascurrency,bascurrency,cascurrency声明a,b,c为货币变量......
声明变量可以是:
byte、boolean、integer、long、currency、single、double、decimal(当前不支持)、date、string(只限变长字符串)、string*length(定长字符串)、object、Variant、用户定义类型或对象类型。
强制声明变量
optionexplicit
说明:
该语句必在任何过程之前出现在模块中。
声明常数
用来代替文字值。
const
常数的默认状态是private。
constmy=456
声明public常数。
publicconstmystring="help"
声明privateinteger常数。
privateconstmyintasinteger=5
在同一行里声明多个常数。
constmystr="hello",mydoubleasdouble=3.4567
选择当前单元格所在区域
在excel97中,有一个十分好的功能,他就是把鼠标放置在一个有效数据单元格中,执行该段代码,你就可以将连在一起的一片数据全部选中。
只要将该段代码加入到你的模块中。
submy_select
selection.currentRegion.select
endsub
返回当前单元格中数据删除前后空格后的值
submy_trim
msgboxtrim(activecell.Value)
endsub
单元格位移
submy_offset
activecell.offset(0,1).select当前单元格向左移动一格
activecell.offset(0,-1).select当前单元格向右移动一格
activecell.offset(1,0).select当前单元格向下移动一格
activecell.offset(-1,0).select当前单元格向上移动一格
endsub
如果上述程序产生错误那是因为单元格不能移动,为了解除上述错误,我们可以往submy_offset之下加一段代码onerrorresumenext
注意以下代码都不再添加sub“代码名称”和endsub请自己添加!
给当前单元格赋值
activecell.Value="你好!
!
!
"
给指定单元格赋值
例如:
A1单元格内容设为"HELLO"
Range("a1").value="hello"
又如:
你现在的工作簿在sheet1上,你要往sheet2的A1单元格中插入"HELLO"
1.
sheets("sheet2").select
range("a1").value="hello"
或
2.
sheets("sheet1").Range("a1").Value="hello"
说明:
1.sheet2被选中,然后在将“hello"赋到a1单元格中。
2.sheet2不必被选中,即可“hello"赋到sheet2的a1单元格中。
隐藏工作表
隐藏sheet1这张工作表
sheets("sheet1").Visible=False
显示sheet1这张工作表
sheets("sheet1").Visible=true
打印预览
有时候我们想把所有的excel中的sheet都打印预览,请使用该段代码,它将在你现有的工作簿中循环,直到最后一个工作簿结束循环预览。
dimmyasworksheet
Foreachmyinworksheets
my.printpreview
nextmy
得到当前单元格的地址
msgboxactivecell.address
得到当前日期及时间
msgboxdate删除所有文字、批注、格式
返回选定区域的行数
msgboxselection.Rows.count
返回选定区域的列数
msgboxselection.columns.count
返回选定区域的地址
selection.address
忽略所有的错误
oneRRoRResumenext
遇错跳转
onerrorgotoerr_handle
中间的其他代码
err_handle:
标签
跳转后的代码
删除一个文件
kill"c:
\1.txt"
定制自己的状态栏
application.statusbar="现在时刻:
"&time
恢复自己的状态栏
application.statusbar=false
用代码执行一个宏
application.Runmacro:
="text"
滚动窗口到a1的位置
activewindow.scrollRow=1
activewindow.scrollcolumn=1
定制系统日期
dimmydate,myday
mydate=#12/12/69#
myday=day(mydate)
返回当天的时间
dimmydate,myyear
mydate=date
myyear=year(mydate)
msgboxmyyear
inputbox
xx=inputbox("enternumberofmonthstoadd")
得到一个文件名
dimkkasstring
kk=application.getopenFilename("excel(*.xls),*.xls",title:
="提示:
请打开一个excel文件:
")
篇三:
excel宏入门教程
excel宏入门教程
在介绍学习Vba之前,应该花几分钟录制一个宏。
新术语:
“宏”,指一系列excel能够执行的Vba语句。
以下将要录制的宏非常简单,只是改变单元格颜色。
请完成如下步骤:
1)打开新工作簿,确认其他工作簿已经关闭。
2)选择a1单元格。
调出“常用”工具栏。
3)选择“工具”—“宏”—“录制新宏”。
4)输入“改变颜色”作为宏名替换默认宏名,单击确定,注意,此时状态栏中显示“录制”,特别是“停止录制”
工具栏也显示出来。
替换默认宏名主要是便于分别这些宏。
★宏名最多可为255个字符,并且必须以字母开始。
其中可用的字符包括:
字母、数字和下划线。
宏名中不允许出现空格。
通常用下划线代表空格。
5)选择“格式”的“单元格”,选择“图案”选项中的红色,单击“确定”。
6)单击“停止录制”工具栏按钮,结束宏录制过程。
※如果“停止录制”
工具栏开始并未出现,
请选择“工具”—“宏”—“停止录制”。
录制完一个宏后就可以执行它了。
1.4执行宏
当执行一个宏时,excel按照宏语句执行的情况就像
Vba代码在对excel进行“遥控”。
但Vba的“遥控”
不仅能使操作变得简便,还能使你获得一些使用excel
标准命令所无法实现的功能。
而且,一旦熟悉了excel
的“遥控”,你都会奇怪自己在没有这些“遥控”的
情况下,到底是怎么熬过来的。
要执行刚才录制的宏,
可以按以下步骤进行:
1)选择任何一个单元格,比如a3。
2)选择“工具”—“宏”—“宏”,显示“宏”对话框。
3)选择“改变颜色”,选择“执行”,则a3单元格的颜色变为红色。
试着选择其它单元格和几个单元格组成的区域,然后再执行宏,以便加深印象。
1.5查看录制的代码
到底是什么在控制excel的运行呢你可能有些疑惑.
好,让我们看看Vba的语句吧.
1)选择“工具”—“宏”—“宏”,显示“宏”对话框。
2)单击列表中的“改变颜色”,选择“编辑”按钮。
此时,会打开Vba的编辑器窗口(Vbe)。
关于该编辑器,
以后再详细说明,先将注意力集中到显示的代码上。
代码如下:
(日期和姓名会有不同)
sub改变颜色()’改变颜色macro’xw记录的宏2000-6-10withselection.interior.colorindex=3.pattern=
xlsolid.patterncolorindex=xlautomaticendwithendsub将来会十分熟悉这种代码,虽然现在它们看上去像一种奇
怪的外语。
学习Vba或编程语言在某种程度上比较像在学习一种外语。
sub改变颜色():
这是宏的名称。
中间的以“’”开头的五行称为“注释”,它在录制宏时自动产生。
以with开头到endwith结束的结构是with结构语句,这段语句是宏的主要部分。
注意单词“selection”,它代表“突出显示的区域”(即:
选定区域)。
withselection.interior:
它读作“选择区域的的内部”.这整段语句设置该区域内部的一些“属性”。
其中:
.colorindex=3:
将该内部设为红色。
注意:
有一小圆点,它的作用在于简化语句,小圆点代替出现在with后的词,它是with结构的一部分。
另外:
红色被数字化为3.
(红色警戒是否可称作:
3号警戒,嗯?
)有兴趣的话,
你将3改为其他数字试试看。
.pattern=xlsolid:
设置该区域的内部图案。
由于是录制宏,所以,
虽然你并未设置这一项,宏仍然将其记录下来
(因为在“图案”选项中有此一项,只是你为曾设置而已)。
xlsolid表示纯色。
.patterncolorindex=xlautomatic:
表示内部图案底纹颜色为自动配色。
endwith:
结束with语句。
endsub:
整个宏的结束语
1.6编辑录制的代码
在上一节,我们录制了一个宏并查看了代码,
代码中有两句实际上并不起作用。
哪两句?
现在,
在宏中作一个修改,删除多余行,直到和下面代码相同:
sub改变颜色()’改变颜色macro‘xw记录的宏2000-6-10withselection.interior.colorindex=3
endwith
endsub
完成后,在工作表中试验一下。
你会发现结果和修改前的状况一样。
在with语句前加入一行:
Range("a5").select
试着运行该宏,则无论开始选择哪个单元格,
宏运行结果都是使a5单元格变红.现在可以看到,
编辑录制的宏同样非常简单。
需要编辑宏是因为以下三个方面的原因。
一:
在录制中出错而不得不修改。
二:
录制的宏中有多余的语句需要删除,提高宏的运行速度。
三:
希望增加宏的功能。
比如:
加入判断或循环等无法录制的语句。
1.7录制宏的局限性
希望自动化的许多excel过程大多都可以用录制宏来完成.
但是宏记录器存在以下局限性.通过宏记录器无法完成的工作有:
1)录制的宏无判断或循环能力.
2)人机交互能力差,即用户无法进行输入,计算机无法给出提示.
3)无法显示excel对话框.
4)无法显示自定义窗体.
1.8小结本学習中,你已经掌握了Vba的一些基础知识,
你会录制宏、编辑宏而且了解了录制宏的局限性.你很努力.并且已经为将来学习Vba甚至Vb等编程语言打下了基础.关键是你已经了解了一个谜底,就是说,你了解了什么是编程.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vb 表格 命令