VBA命令大全汇集.docx

上传人:b****7 文档编号:11034756 上传时间:2023-02-24 格式:DOCX 页数:29 大小:28.32KB
下载 相关 举报
VBA命令大全汇集.docx_第1页
第1页 / 共29页
VBA命令大全汇集.docx_第2页
第2页 / 共29页
VBA命令大全汇集.docx_第3页
第3页 / 共29页
VBA命令大全汇集.docx_第4页
第4页 / 共29页
VBA命令大全汇集.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

VBA命令大全汇集.docx

《VBA命令大全汇集.docx》由会员分享,可在线阅读,更多相关《VBA命令大全汇集.docx(29页珍藏版)》请在冰豆网上搜索。

VBA命令大全汇集.docx

VBA命令大全汇集

VBA命令大全

使用Dim语句

Dimaasinteger'声明a为整型变量

Dima'声明a为变体变量

Dimaasstring'声明a为字符串变量

Dimaascurrency,bascurrency,cascurrency'声明a,b,c为货币变量

DimzAsVariant定义实数〔带小数〕

......

声明变量可以是:

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&chr(13)&time

保护工作簿

ActiveSheet.Protect

取消保护工作簿

ActiveSheet.Unprotect

给活开工作表改名为"liu"

ActiveSheet.Name="liu"

翻开一个应用程序

AppActivate(Shell("C:

\WINDOWS\CALC.EXE"))

增加一个工作表

Worksheets.Add

删除活开工作表

activesheet.delete

翻开一个工作簿文件

Workbooks.OpenFileName:

="C:

\MyDocuments\Book2.xls"

关闭活动窗口

ActiveWindow.Close

单元格格式

选定单元格左对齐

Selection.HorizontalAlignment=xlLeft

选定单元格居中

Selection.HorizontalAlignment=xlCenter

选定单元格右对齐

Selection.HorizontalAlignment=xlRight

选定单元格为百分号风格

Selection.Style="Percent"

选定单元格字体为粗体

Selection.Font.Bold=True

选定单元格字体为斜体

Selection.Font.Italic=True

选定单元格字体为宋体20号字

WithSelection.Font

.Name="宋体"

.Size=20

EndWith

With语句

With对象

.描述

EndWith

去除单元格

ActiveCell.Clear'删除所有文字、批注、格式

返回选定区域的行数

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文件:

")

msgboxkk

翻开zoom对话框

Application.Dialogs(xlDialogZoom).Show

激活字体对话框

Application.Dialogs(xlDialogActiveCellFont).Show

翻开另存对话框

DimkkAsString

kk=Application.GetSaveAsFilename("excel(*.xls),*.xls")

Workbooks.Openkk

1excle快捷键大全

对工具栏进行操作的快捷键

激活菜单栏,F10,Alt

选定前一个或下一个工具栏,Ctrl+Tab或Ctrl+Shift+Tab

选定工具栏中的下一个或前一个按钮或菜单,Tab或Shift+Tab(当某个工具栏被激活时)

翻开选定的菜单,Enter

运行选按钮的操作,Enter

在选定的文本框中输入文本,Enter

在对话框中使用的快捷键

取消当前任务,Esc

单击相应命令,Alt+下划线字母

单击选定的按钮,Enter

在选项中前移,Tab

在选项后移,Shift+Tab

在选项卡中前移,Ctrl+Tab

在选项卡中后移,Ctrl+Shift+Tab

刷新“另存为〞或“翻开〞对话框,F5

插入、删除和复制选定区域的快捷键

复制选定区域,Ctrl+C

粘贴选定区域,Ctrl+V

剪切选定区域,Ctrl+X

去除选定区域的内容,Delete

插入空白单元格,Ctrl+Shift+加号

删除选定区域,Ctrl+-

撤消最后一次操作,Ctrl+Z

使用“office助手〞需要用到的快捷键

关闭“office助手〞提供的消息,Esc

通过“office助手〞获取帮助信息,F1

显示下一项提示,Alt+N

显示前一项提示,Alt+B

在向导中显示或隐藏“office助手〞,空格键

对窗口进行操作的快捷键

切换到下一个程序,Alt+Tab

切换到前一个程序,Alt+Shift+Tab

显示windwos“开始〞菜单,Ctrl+Esc

关闭活开工作薄窗口,Ctrl+W

恢复活开工作薄窗口,Ctrl+F5

切换到下一个工作薄窗口,Ctrl+F6

切换到前一个工作薄窗口,Ctrl+Shift+F6

执行“移动〞命令(菜单栏中的工作薄图标菜单),Ctrl+F7

运行“大小〞命令(菜单栏中的工作薄图标菜单),Ctrl+F8

将工作薄窗口最小化为图标,Ctrl+F9

最大化或恢复工作薄窗口,Ctrl+F10

在“翻开〞或“另存为〞对话框中更新可见的文件,F5

使用对话框进行操作的快捷键

切换到对话框中的下一个选项卡,Ctrl+Tab或Ctrl+PageDown

切换到对话框中的前一个选项卡,Ctrl+Shift+Tab或Ctrl+PageUp

移动到下一个选项或选项组,Tab

移动到前一个选项或选项组,Shift+Tab

在活动下拉列表框的选项间移动,或在选项组选项间移动,方向键

招待活动按钮的操作,或选定或去除当前复选框,空格键

取消命令或关闭对话框,Esc

在文本框中进行操作的快捷键

移动到内容的开始,Home

移动到内容的最后,End

向左或向右移动一个字符,左右方向键

向左或向右移动一个字,Ctrl+左右方向键

选定从插入点到开始的输入内容,Shift+Home

选定从插入点到最后的输入内容,Shift+End

选定或取消左面的一个字符,Shift+左方向键

选定或取消右面的一个字符,Shift+右方向键

选定或取消左面的一个字,Ctrl+Shift+左方向键

选定或取消右面的一个字,Ctrl+Shift+右方向键

在工作表和工作薄中选定单元格、列、行或对象的快捷键

选定当前单元格周围的区域,Ctrl+Shift+*(星号)

将选定区域扩展一个单元格宽度,Shift+方向键

将选定区域扩展到与活动单元格同一行或同一列的最后一个非空白单元格,Ctrl+Shift+方向键

将选定区域扩展到行首,Shift+Home

将选定区域扩展到工作表的开始,Ctrl+Shift+Home

将选定区域扩展到工作表的最后一个包含数据的单元格,Ctrl+Shift+End

选定整列,Ctrl+空格键

选定整行,Shift+空格键

选定整个工作表,Ctrl+A

假设已选定多个单元格,那么只选定其中的活动单元格,Shift+Backspace

将选定区域向下扩展一屏,Shift+PageDown

将选定区域向上扩展一屏,Shift+PageUp

在选定一个对象时,选定工作表上的所有对象,Ctrl+Shift+空格键

在隐藏对象、显示对象与对象占位符之间切换,Ctrl+6

显示或隐藏“常用〞工具栏,Ctrl+7

分级显示数据的快捷键

取消行或列分组,Alt+Shift+左方向键

对行或列分组,Alt+Shift+右方向键

显示或隐藏分级显示符号,Ctrl+8

隐藏选定行,Ctrl+9

取消隐藏选定行,Ctrl+Shift+(

隐藏选定列,Ctrl+0

取消隐藏选定列,Ctrl+Shift+)

编辑单元格的快捷键

完成单元格输入,Enter

取消单元格输入,Esc

重复单元格一次操作,F4或Ctrl+Y

在单元格中折行,Alt+Enter

删除插入点左边的字符或删除选定区域,Backspace

删除插入点右边的字符或删除选定区域,Delete

向上下左右移动一个字符,方向键

移到行首,Home

移到行尾,End

编辑单元格批注,Shift+F2

由行或列标志创立名称,Ctrl+Shift+F3

向下填充,Ctrl+D

向右填充,Ctrl+R

用当前输入项填充选定的单元格区域,Ctrl+Enter

完成单元格输入并在选定区域中下移,Enter

完成单元格输入并在选定区域中上移,Shift+Enter

完成单元格输入并在选定区域中右移,Tab

完成单元格输入并在选定区域中左移,Shift+Tab

在单元格或编辑栏中使用的快捷键

键入公式,=(等号)

取消单元格或编辑栏中的输入项,Esc

编辑当前单元格,F2

编辑活动单元格并去除其内容,或在编辑时删除前一个字符,Backspace

将名称粘贴到公式中,F3

定义名称,Ctrl+F3

计算所有翻开工作薄中的所有工作表,F9

计算活开工作表,Shift+F9

输入“自动求和〞公式,Alt+=(等号)

输入日期,Ctrl+;

输入时间,Ctrl+Shift+:

插入超级链接,Ctrl+K

完成单元格输入,Enter

将当前单元格上方单元格中的数值复制到当前单元格或编辑栏,Ctrl+Shift+(双引号)

将当前单元格上方单元格中的公式复制到当前单元格或编辑栏,Ctrl+'(单引号)

在显示单元格值与单元格公式间转换,Ctrl+`(撇号)

输入数组公式,Ctrl+Shift+Enter

键入有效函数名后,显示公式选项板,Ctrl+A

键入有效函数名后,为该函数插入变量名和括号,Ctrl+Shift+A

显示“记忆式键入〞列表,Ctrl+下方向键

快捷键与数据格式设置

显示“样式〞命令,Alt+'(单引号)

显示“单元格〞命令,Ctrl+1

应用常规数字格式,Ctrl+Shift+~

应用带两个小数位的“贷币〞格式,Ctrl+Shift+$

应用不带小数位的“百分比〞格式,Ctrl+shift+%

应用带两个小数位的“科学记数〞数字格式,,Ctrl+shift+^

应用年月日“日期〞格式,Ctrl+shift+#

应用小时和分钟“时间〞格式,并说明上午或下午,Ctrl+shift+@

应用外边框,Ctrl+shift+&

取消选定单元格区域中的所有边框,Ctrl+shift+_

应用或取消字体加粗格式,Ctrl+B

应用或取消字体倾斜格式,Ctrl+I

应用或取消字体下划线格式,Ctrl+U

应用或取消删除线格式,Ctrl+5

隐藏行,Ctrl+9

取消隐藏行,Ctrl+Shift+(

隐藏列,Ctrl+0

取消隐藏列,Ctrl+Shift+)

使用Excel2003工作表的VBA例如 

适用范围:

MicrosoftOfficeExcel2003

摘要:

寻找能够为Excel工作表增加额外功能的宏。

只需稍加练习,您就可以扩展这些程序,使其适合您自己的应用程序。

本页内容

引言

导出带有逗号和引号分隔符的文本文件

计算包含公式、文本或数字的单元格数量

使用Saved属性确定工作簿是否已发生更

合并数据列

数组中的总行数和总列数

结论

引言

本文介绍几个MicrosoftVisualBasicforApplications(VBA)宏,您可以使用这些宏为MicrosoftOfficeExcel2003工作簿和工作表增加额外的功能。

这些宏将为您的应用程序提供新的功能或增强现有的功能。

阅读例如的同时,您应该寻找扩展这些宏的方法,以适合您自己的情况。

导出带有逗号和引号分隔符的文本文件

Excel没有自动将数据导出为文本文件的菜单命令,因此导出的文本文件同时带有逗号和引号分隔符。

例如,没有命令能自动创立包含以下内容的文本文件:

"Text1","Text2","Text3"

但是,您可以使用VBA宏在Excel中创立该功能。

这种文件格式是在诸如MicrosoftOfficeAccess2003和MicrosoftOfficeWord2003之类的应用程序中导入文本数据时常见的格式。

您可以在如下所示的VBA宏中使用Print语句,导出同时带有逗号和引号分隔符的文本文件。

要使该程序正常运行,必须在运行该程序之前选择包含数据的单元格。

使用以下例如之前,请执行以下步骤:

1.翻开一个新工作簿。

2.在“工具〞菜单中,指向“宏〞,然后单击“VisualBasic编辑器〞〔或者简单地按下ALT+F11组合键〕。

在“VisualBasic编辑器〞中,单击“插入〞菜单,然后单击“模块〞。

3.将以下例如代码键入或粘贴到模块中:

SubQuoteCommaExport()

DimDestFileAsString

DimFileNumAsInteger

DimColumnCountAsInteger

DimRowCountAsInteger

'提示用户指定目标文件名。

DestFile=InputBox("Enterthedestinationfilename"&_

Chr(10)&"(withcompletepathandextension):

",_

"Quote-CommaExporter")

'获取下一个可用的文件句柄编号。

FileNum=FreeFile()

'关闭错误检查功能。

OnErrorResumeNext

'尝试翻开目标文件以供输出。

OpenDestFileForOutputAs#FileNum

'如果出现错误,那么报告错误并结束程序。

IfErr<>0Then

MsgBox"Cannotopenfilename"&DestFile

End

EndIf

'翻开错误检查功能。

OnErrorGoTo0

'循环选择的每一行。

ForRowCount=1ToSelection.Rows.Count

'循环选择的每一列。

ForColumnCount=1ToSelection.Columns.Count

'将当前单元格中的文本写入到文件中,文本用引号括起来。

Print#FileNum,""""&Selection.Cells(RowCount,_

ColumnCount).Text&"""";

'检查单元格是否位于最后一列。

IfColumnCount=Selection.Columns.CountThen

'如果是,那么写入一个空行。

Print#FileNum,

Else

'否那么,那么写入一个逗号。

Print#FileNum,",";

EndIf

'开始ColumnCount循环的下一个迭代。

NextColumnCount

'开始RowCount循环的下一个迭代。

NextRowCount

'关闭目标文件。

Close#FileNum

EndSub

4.运行该宏之前,请选择要导出的数据,然后在“工具〞菜单中指向“宏〞并单击“宏〞。

5.选择QuoteCommaExport宏,然后单击“运行〞。

计算包含公式、文本或数字的单元格数量

在Excel中,您可以对包含公式、文本或数字的工作表中的单元格数量进行计算,方法是使用“定位条件〞对话框选择单元格,然后运行计算所选单元格数量的宏。

例如,当您需要设置表格以确定合计列的每一行是否都包含公式而不用手动检查每一行时,此方法可能很有用。

选择单元格

要选择公式、文本或数字,请执行以下步骤:

1.在“编辑〞菜单中,单击“定位〞,然后单击“定位条件〞。

2.在“定位条件〞对话框中,要选择所有公式,请单击“公式〞并确保选中“数字〞、“文本〞、“逻辑值〞以及“错误〞复选框。

要选择文本,请选择“常量〞选项,然后仅单击并选中“文本〞复选框。

要选择数字,请选择“常量〞选项,然后仅单击并选中“数字〞复选框。

计算所选单元格数量的VBA代码

要计算所选的单元格数量并在消息框中显示计算结果,请使用以下程序:

SubCount_Selection()

DimcellAsObject

DimcountAsInteger

count=0

ForEachcellInSelection

count=count+1

Nextcell

MsgBoxcount&"item(s)selected"

EndSub

您可以将此程序指定给一个命令按钮,这样,当您单击该按钮时,将显示所选项的数量。

使用Saved属性确定工作簿是否已发生更改

可以通过检查工作簿的Saved属性来确定工作簿是否已发生更改。

根据工作簿是否发生了更改,Saved属性将返回True或False值。

注意:

用户除了可以通过“事件〞设置Saved属性外,还可以通过代码将其设置为True或False。

本节包含的例如宏说明了如何在这两种情况下使用Saved属性。

工作表中的各种情况〔例如存在可变函数〕都可能会影响Saved属性。

可变函数是指工作表中每次发生更改时都会重新计算的函数,而不管发生的更改是否影响到这些函数。

某些常见的可变函数包括RAND()、NOW()、TODAY()和OFFSET()。

如果活开工作簿包含未保存的更改,第一个宏将显示如下消息:

SubTestForUnsavedChanges()

IfActiveWorkbook.Saved=FalseThen

MsgBox"Thisworkbookcontainsunsavedchanges."

EndIf

EndSub

下一个宏将关闭

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

当前位置:首页 > 高等教育 > 历史学

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

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