vb表格宏命令.docx

上传人:b****7 文档编号:8810987 上传时间:2023-02-01 格式:DOCX 页数:8 大小:19.53KB
下载 相关 举报
vb表格宏命令.docx_第1页
第1页 / 共8页
vb表格宏命令.docx_第2页
第2页 / 共8页
vb表格宏命令.docx_第3页
第3页 / 共8页
vb表格宏命令.docx_第4页
第4页 / 共8页
vb表格宏命令.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

vb表格宏命令.docx

《vb表格宏命令.docx》由会员分享,可在线阅读,更多相关《vb表格宏命令.docx(8页珍藏版)》请在冰豆网上搜索。

vb表格宏命令.docx

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等编程语言打下了基础.关键是你已经了解了一个谜底,就是说,你了解了什么是编程.

  

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1