一些实用的excel宏

一些实用的excel宏
一些实用的excel宏

Excel宏教程

一、选中单个单元格

Range(“<单元格地址>“).Select

例:Range("C9").Select …选中“C9”单元格

二、选中多个单元格

Range(“<单元格地址>:<单元格地址>[,<单元格地址>……]”).Select

例:Range(“A1:B2”).Select…选中“A1”、“A2”、“B1”、“B2”四个连续的单元格Range(“12:12”).Select…选中第12行

Range(“B:B”).Select…选中第B列

Range(“A1:A2,B7,2:2”).Select…选中“A1”、“A2”、“B7”五个不连续的单元格和第二行Cells.Select …选中当前SHEET中的所有单元格

Rows("<行地址>:<行地址>").Select …选中整行

Columns("<列地址>:<列地址>").Select …选中整列

例:Rows(“2:2”). Select…选中第2行

Rows(“2:5”). Select…选中2到5行

Columns("A:A").Select …选中A列

Columns("E:B").Select …选中E到B列

三、设置活动单元格

Range("<单元格地址>").Activate

注:设置活动单元格与选中单元格类似,不同之处就是

后者在选中指定的单元格之前会将在此前已被选中的单元格取消掉。

前者在设置之前不会取消已选中的单元格,

如果此时操作的单元格不是被选中的单元格,这时他实现的功能与选一个单元格相同。

四、给活动的单元格赋值

ActiveCell.FormulaR1C1 = <值>

例:Range("A1").Select

ActiveCell.FormulaR1C1 = "Name"

Range("B1").Select

ActiveCell.FormulaR1C1 = "Age"

Range("A2:B3").Select

Range("A2").Activate

ActiveCell.FormulaR1C1 = " BUG"

Range("B2").Activate

ActiveCell.FormulaR1C1 = "12"

Range("A3").Activate

ActiveCell.FormulaR1C1 = "Archer"

Range("B3").Activate

ActiveCell.FormulaR1C1 = "37"

五、得到指定单元格中的值

Range("<单元格地址>").Text

六、插入单元格

Selection.Insert Shift:=

Selection.EntireRow.Insert

Selection.EntireColumn.Insert

例:Selection.Insert Shift:=xlToRight …在当前选中单元格的位置插入单元格并将当前选中的单元格向右移动

Selection.Insert Shift:=xlDown …在当前选中单元格的位置插入单元格并将当前选中的单元格向下移动

Selection.EntireRow.Insert …在当前选中单元格的上面插入一行

Selection.EntireColumn.Insert …在当前选中单元格的左侧插入一列

七、设置字体属性

1. 设置字体名称和大小

https://www.360docs.net/doc/3d11327751.html, = <字体名称>

Selection.Font.Size = <字号>

例:https://www.360docs.net/doc/3d11327751.html, = "隶书"

Selection.Font.Size = 15

2. 设置字体样式

Selection.Font.Bold = …加粗

Selection.Font.Italic = …斜体

Selection.Font.Underline = < XlUnderlineStyle(下划线样式)> …下划线

XlUnderlineStyle(下划线样式):

xlUnderlineStyleDouble …双下划线

xlUnderlineStyleDoubleAccounting …会计用双下划线(如果当前单元格中的数据是数字时则下划线的宽度是当前单元格的宽度)

xlUnderlineStyleNone 没有下划线

xlUnderlineStyleSingle …单下划线

xlUnderlineStyleSingleAccounting …会计用单下划线(如果当前单元格中的数据是数字时则下划线的宽度是当前单元格的宽度)

3. 设置字体的颜色

Selection.Font.ColorIndex = <0到56之间的数字>

Selection.Font.Color =

4. 设置字体的特殊效果

Selection.Font.Strikethrough = …删除线

Selection.Font.Superscript = …上标

Selection.Font.Subscript = …下标

八、清空选中单元格里的内容

Selection.ClearContents

例:Range(“A1:A2,B7,2:2”).Select …选中“A1”、“A2”、“B7”五个不连续的单元格和第二行Selection.ClearContents …清空“A1”、“A2”、“B7”五个不连续单元格中的所有内容

九、设置选中单元格的边线属性

XlBordersIndex(边线):

xlEdgeLeft '单元格左边线

xlEdgeTop …单元格上边线

xlEdgeRight …单元格右边线

xlEdgeBottom …单元格下边线

xlDiagonalDown …单元格左上右下斜线

xlDiagonalUp …单元格左上右下斜线

xlInsideVertical …多个单元格内垂直线

xlInsideHorizontal …多个单元格内水平线

1. 设置边线的类型

Selection.Borders(<边线>).LineStyle = < XlLineStyle(边线类型)>

XlLineStyle(边线类型):

xlLineStyleNone …无样式

xlContinuous …单线

xlDash …破折号线(间隔线)

xlDashDot …破折号点线

xlDashDotDot …破折号点点线

xlDot …点线

xlDouble …双横线

xlSlantDashDot …斜点线

2. 设置边线的宽度

Selection.Borders(<边线>).Weight =

XlBorderWeight(宽度值):

xlHairline …极细

xlThin …细

xlMedium …中等

xlThick …粗

3. 设置边线的颜色

Selection.Borders(x lEdgeLeft).ColorIndex = <0到56之间的数字>

Selection.Borders(x lEdgeLeft).Color =

十、删除选中的单元格

Selection.Delete

Selection.EntireRow.Delete

Selection.EntireColumn.Delete

例:Selection.Delete Shift:=xlToLeft …删除选中的单元格,并将已删除单元格所在位置右面的单元格向左移动

Selection.Delete Shift:=xlUp …删除选中的单元格,并将已删除单元格所在位置下面的单元格向上移动

Selection.EntireRow.Delete …删除选中单元格所在的行

Selection.EntireColumn.Delete …删除选中单元格所在的列

十一、设置单元格背景色及图案

1. 背景色

Selection.Interior.ColorIndex = <0到56之间的数字> Selection.Interior.Color =

2. 图案样式

Selection.Interior.Pattern =

Constants(图案样式):

xlSolid '实心

xlGray75 '75% 灰色

xlGray50 '50% 灰色

xlGray25 '25% 灰色

xlGray16 '12.5% 灰色

xlGray8 '6.25% 灰色

xlHorizontal '水平条纹

xlVertical '垂直条纹

xlDown '逆对角线条纹

xlUp '对角线条纹

xlChecker '对角线剖面线

xlSemiGray75 '粗对角线剖面线xlLightHorizontal '细水平条纹

xlLightVertical '细垂直条纹

xlLightDown '细逆对角线条纹

xlLightUp '细对角线条纹

xlGrid '细水平剖面线

xlCrissCross '细对角线剖面线

3. 图案颜色

Selection.Interior.PatternColorIndex = <0到56之间的数字>

Selection.Interior.PatternColor =

十二、返回工作表中的行数

https://www.360docs.net/doc/3d11327751.html,edRange.Rows.Count …返回从最小已输入内容的行号到最大已输入内容的行号之间的行数

https://www.360docs.net/doc/3d11327751.html,edRange.Rows(https://www.360docs.net/doc/3d11327751.html,edRange.Rows.Count).Row …最大已输入内容的行号

十三、得到当前EXCEL的文件名

ThisWorkbook.Path …文件路径

https://www.360docs.net/doc/3d11327751.html, …文件名

ThisWorkbook.FullName …全路径

十四、批注的操作

1. 添加批注

AddComment([Content])

例:Range("A1").AddComment ("Writes the content in here!")

2. 修改批注内容

Comment.Text

例:Range("B1").Comment.Text Text:= "Writes the content in here!"

3. 显示/隐藏批注

Comment.Visible =

4. 删除批注

ClearComments

例:Selection.Range("B1").ClearComments

5. 选中批注

Comment.Shape.Select True

例:Range("D8").Comment.Shape.Select True

6. 改变批注大小和位置

Selection.ShapeRange.ScaleWidth <宽度比例>, msoFalse, Selection.ShapeRange.ScaleHeight <高度比例>, msoFalse,

例:Selection.ShapeRange.ScaleWidth 1.5, msoFalse, msoScaleFromTopLeft …每次增加5%的宽度

Selection.ShapeRange.ScaleHeight 0.6, msoFalse, msoScaleFromTopLeft …每次减少6%的宽度

Selection.ShapeRange.Left = <左边距>

Selection.ShapeRange.Top = <上边距>

Selection.ShapeRange.Width = <宽度值>

Selection.ShapeRange.Height = <高度值>

十五、剪切、复制、粘贴

Selection.Cut …剪切

Selection.Copy …复制

ActiveSheet.Paste …粘贴

例:Range("A1").Select

Selection.Cut

Range("A2").Select

ActiveSheet.Paste

Selection.Copy

Range("A3").Select

ActiveSheet.Paste

十六、选择性粘贴

Selection.PasteSpecial

十七、改变列宽

Selection.ColumnWidth = <宽度值> …指定列宽

例:Columns("A:A").Select

Selection.ColumnWidth = 30 …改变已选列的宽度

EntireColumn.AutoFit …自动改变列宽

例:Columns("C:C").EntireColumn.AutoFit …根据C列的内容自动改变列的宽度

在Excel 97中,"宏"是一个难以理解的概念,但对于一个具体的"宏"而言,却是容易理解的,如果说"将一块文字变为注释:黑体注释:,字号为注释:三号注释:"就可以看作一个"宏"的话,那么"宏"就不难理解了,其实Excel 97中的许多操作都可以是一个"宏"。

"记录宏"其实就是将工作的一系列操作结果录制下来,并命名存储(相当于VB中一个子程序)。在Excel 97中,"记录宏"仅记录操作结果,而不记录操作过程。例如,改变文字字体时,需要打开"字体"栏中的下拉列表,再选择一种字体,这时文字即变为所选择的字体,这是一个过程,结果是将所选择的文字改变为所选择的字体。而"记录宏"则只记录"将所选择的文字改变为所选择的字体"这一结果。

Excel 97中工作表是由行和列组成的二维表格,我们可以通过系统提供的语句actives heet.cells(I,j),将当前工作表中的第I行第j列所在的单元格中的数据取出(也可将它数据填入到指定的单元格中),然后反把它放入所定义的数组中,这时就可以对其进行各种操作,如求平均分、总分、分数段人数等等。

本人就利用Excel 97中所提供的宏功能来做学生成绩的分析处理程序。本程序是Exce l中的一个文件,其中包含以下几个宏:分班、总分、平均分、分数段、删除等。

说明:⑴本程序是以本校高三理科班学生成绩进行分析。

⑵有关程序中用到的几具宏的功能说明:

分班:针对于难以确定班级的情况下,以班为单位进行分班,本宏可以作为高一新生入学时进行分班的功能。

总分:对原始的成绩自动求总分。

平均分:对原始的成绩以班为单位进行各学科平均成绩的计算及全校各学科成绩的计算。

分数段:给定一个最高分数及最低分数,然后统计出各班各个分数段的人数,各分数段人数进行累计。

删除:用于删除不用的工作表。

现将各个宏的代码列举如下:

⑴分班

Sub 分班()

Const studentno = 191 '注释:学生人数

Const zdno = 12 '注释:字段数

Dim zd$(zdno) ' 注释:定义为12个字段的数组

Dim a(studentno, zdno), stu(60, zdno)

Dim nam$(studentno), bjname$(60) '注释:定义一个存放全校学生名字及各班学生名字的数组

Dim bj(studentno) '注释:定义存放班级的一个数组注释: 理科班工作表Sheets("高三理").Select

For i = 2 To studentno

bj(i) = ActiveSheet.Cells(i, 1)

nam$(i) = ActiveSheet.Cells(i, 2)

For j = 3 To zdno

a(i, j) = ActiveSheet.Cells(i, j)

Next j

Next i

'注释: 存放字段到数组中?

For i = 1 To zdno

zd$(i) = ActiveSheet.Cells(1, i)

Next i

'注释: 先建立各个班级的工作表

Sheets("高三理").Select

Sheets("高三理").Copy After:=Sheets("高三理")

Sheets("高三理(2)").Select

Sheets("高三理(2)").Name = "33"

For i = 2 To studentno

For j = 1 To zdno

ActiveSheet.Cells(i, j) = Space$(1)

Next j

Next i

Range("a1").Select

For i = 1 To zdno

ActiveSheet.Cells(1, i) = zd$(i)

Next i

'注释:34到36班工作表的建立

For i = 34 To 36

x$ = Mid$(Str(33), 2)

Sheets(x$).Select

Sheets(x$).Copy After:=Sheets("高三理")

Sheets(x$ & " (2)").Select

Sheets(x$ & " (2)").Name = Mid$(Str(i), 2)

Next i

'注释: 具体分班?

For k = 33 To 36

bjrs = 0

x$ = Mid$(Str(k), 2)

no = k Mod 10

Sheets(x$).Select

For i = 2 To studentno

If bj(i) = no Then

bjrs = bjrs + 1

bjname$(bjrs) = nam$(i)

For j = 3 To zdno

stu(bjrs, j) = a(i, j)

Next j

End If

Next i

For i = 2 To bjrs

ActiveSheet.Cells(i, 1) = no

ActiveSheet.Cells(i, 2) = bjname$(i)

For j = 3 To zdno

ActiveSheet.Cells(i, j) = stu(i, j)

Next j

Next i

Next k

End Sub

⑵总分

Sub 总分()

Const studentno = 191

Const xknum = 6

Const zdnum = 12

Sheets("高三理").Select

For i = 2 To studentno

Sum = 0

For j = 1 To xknum

Sum = Sum + ActiveSheet.Cells(i, j + 2)

Next j

ActiveSheet.Cells(i, zdnum - 3) = Sum

Next i

End Sub

⑶平均分

Sub 平均分()

Const studentno = 190

Const xknum = 6

Dim fs(studentno, xknum), pjf3(4, 6), bjrs(4), qxpjf(6) Dim bj(studentno)

Sheets("高三理").Select

注释:以下程序段用于求全校平均分

For i = 1 To studentno

bj(i) = ActiveSheet.Cells(i 1, 1)

For j = 1 To xknum

fs(i, j) = ActiveSheet.Cells(i 1, j 3) Next j

Next i

For i = 1 To xknum

Sum = 0

For j = 1 To studentno

Sum = Sum fs(j, i)

Next j

qxpjf(i) = Sum / (j - 1)

Next i

注释:以下程序段用于求各班平均分

For j = 1 To 4

For i = 1 To studentno

If bj(i) = j 2 Then

bjrs(j) = bjrs(j) 1

For k = 1 To xknum

pjf3(j, k) = pjf3(j, k) fs(i, k)

Next k

End If

Next i

Next j

For j = 1 To 4

For i = 1 To 6

pjf3(j, i) = pjf3(j, i) / bjrs(j)

Next i

Next j

注释:写入各班各科平均分

Sheets("平均分").Select

For i = 1 To 4

For j = 1 To 6

ActiveSheet.Cells(i 2, j 1) = pjf3(i, j) Next j

Next i

注释:写入全校各科平均分

i = 7

For j = 1 To 6

ActiveSheet.Cells(i, j 1) = qxpjf(j) Next j

End Sub

⑷分数段

Sub 分数段()

Const max = 600

Const min = 390

Const studentno = 190

Const bjnum = 4

Const fsdnum = 22

Dim bjfsd(bjnum, fsdnum), zf(studentno, 2)

Sheets("高三理").Select

For i = 1 To studentno

zf(i, 1) = ActiveSheet.Cells(i 1, 1) 注释:存放班级

zf(i, 2) = ActiveSheet.Cells(i 1, 11) 注释:存放总分Next i

For i = 1 To studentno

For j = 1 To 4 注释:3---6班共4个班级

If zf(i, 1) = j 2 Then

For k = max To min Step -10

low = Int((max 10 - k) / 10)

If zf(i, 2) > k Then bjfsd(j, low) = bjfsd(j, low) 1 Next k

End If

Next j

Next i

Sheets("sheet3").Select

For i = 3 To 6

For k = 1 To fsdnum

ActiveSheet.Cells(i, k 1) = bjfsd(i - 2, k)

Next k

Next i

Range("M3:W6").Select

Selection.Cut

https://www.360docs.net/doc/3d11327751.html,rgeScroll ToRight:=-1

Range("B8").Select

ActiveSheet.Paste

End Sub

⑸删除

Sub 删除()

Sheets("33").Select

ActiveWindow.SelectedSheets.Delete

Sheets("34").Select

ActiveWindow.SelectedSheets.Delete

Sheets("35").Select

ActiveWindow.SelectedSheets.Delete

Sheets("36").Select

ActiveWindow.SelectedSheets.Delete End Sub

Excel宏功能简单应用介绍

OFFice几个出色招数 Word独门绝招: 一、输入三个“=”,回车,得到一条双直线; 二、输入三个“~”,回车,得到一条波浪线; 三、输入三个“*”或“-”或“#”,回车,惊喜多多; Powerpoint出色过招: Q:如果已经word写好一份报告,并且要根据报告的内容做幻灯片,怎么直接把 word文档的标题发送到powerPoint? A:打开word文档,从“文件”菜单单击“发送”命令,再选择发送到ppt。ppt 会自动启动,并且根据每个word文档的一级标题建立一张相同标题的幻灯片,其下的二级标题也会被自动添加到幻灯片。 Excel宏功能简单应用介绍 所谓宏,就是一组指令集,通过执行类似批处理的一组命令,来完成某种功能。Microsoft Office的组件都可以支持宏(Macro)的操作,而Office的宏是指使用VB Script指令集(VB编程语言的子集,可以使用VB的常用语句)编写的针对Office组件的小程序。利用宏,我们可以完成很多程序原本并不支持的特殊应用,比如完成某种特殊的数据计算,或者文档的特殊格式排版等等。下面,就让我们举个简单的例子,看看宏在Excel中如何应用。 有这样一个Excel表格,工作表Sheet1中的第2行的B列开始至D列的连续单元格中是一组共3个数据,第A列的第3行开始至第6行的连续单元格中是一组共4个日期,要编写一段宏来完成这样的工作:将Sheet1第2行的数据由左至右依次纵向复制到Sheet2的B列(从B2开始)中,然后将这组复制完的3个数据所在行的A列都填入Sheet1的A3单元格里面的日期,完成后重复之前的操作,将Sheet1第2行的数据再次复制到Sheet2的B列,这次是从上次复制的B列数据下面的空白单元格,也就是B5开始,然后再在这次复制的3个数据的左侧A列填入Sheet1的A4单元格的日期,这样反复循环,直到Sheet1的A列的所有日期都出现在了Sheet2的A列里面,也就是Sheet1的第2行数据在Sheet2的B列里面被复制了4次为止。 编写宏只要有一点点简单的VB编程知识就可以了,并不一定需要很高深的编程技巧,很多时候我们需要的只是一些重复的操作,我们可以通过宏的录制功

EXCEL使用VBA宏生成SQL语句

有时候需要将Excel文件中的数据导入到数据库中,常用的做法是使用程序读取Excel,然后存入数据库;这里换一个方法,用Excel生成SQL语句,然后用这些SQL语句来更新数据库。 本文主要说明Excel如何使用VB宏构造需要的SQL语句,并生成文件。 2、如何添加按钮: 依次打开:视图–工具栏–控件工具箱,选择“命令按钮”,自己画一个就行了; 依次打开:右键–属性,可以修改名称、样式等。 具体操作可以上网找找。 3、如何使用VB宏: 依次打开:工具–宏–安全性,看看你的Excel是否允许使用“宏”。 然后打开:工具–宏–Visual Basic编辑器,双击左侧的“Sheet1”,然后在右侧的代码区域粘贴如下代码: '最大行数 Const MAX_NUM_ROW=5000 '导出文件路径所在单元格 Const PATH_OUTPUT_ROW=3 Const PATH_OUTPUT_COL=3 '定义列常量 Const NAME_COL=1 Const GENDER_COL=2 Const PHONE_COL=3 Const EMAIL_COL=4 '读取数据开始行数 Const START_ROW=5 '定义数据实体类 Private Type Tmplt NAME As String GENDER As String PHONE As String EMAIL As String End Type '行数变量 Dim noOfTmplts As Integer '数据实体类数组 Dim TmpltArray(MAX_NUM_ROW)As Tmplt '点击按钮触发事件 Private Sub CommandButton1_Click() generateSQL End Sub '生成SQL Private Sub generateSQL() makedir initData writeToFile

excel的宏教程免费下载

Microsoft excel是一款功能非常强大的电子表格软件。它可以轻松地完成数据的各类数学运算,并用各种二维或三维图形形象地表示出来,从而大大简化了数据的处理工作。但若仅利用excel的常用功能来处理较复杂的数据,可能仍需进行大量的人工操作。但excel的强大远远超过人们的想象--宏的引入使其具有了无限的扩展性,因而可以很好地解决复杂数据的处理问题。 随着支持Windows的应用程序的不断增多和功能的不断增强,越来越多的程序增加了宏处理来方便用户的自由扩展。但初期各应用程序所采用的宏语言并不统一,这样用户每使用一种应用程序时都得重新学习一种宏语言。为了统一各种应用程序下的宏,Microsoft推出了VBA(Visual Basic for Applications)语言。 VBA是从流行的Visual Basic编程语言中派生出来的一种面向应用程序的语言,它适用于各种Windows应用程序,可以解决各应用程序的宏语言不统一的问题。除此之外,使用 VBA语言还有如下优点:1、VBA是一种通用程序语言,通过它不仅可以共享Microsoft相关的各种软件(如excel、 word、access)……,而且随着其它的一些软件(如大名鼎鼎的AutoCAD2000)等对VBA的支持,这些软件也已进入到了VBA的控制范围;2、可以将用VBA编写的程序复制到Visual Basic中调试并运行,从而实现用Visual Basic来控制有关的应用程序;3、VBA 提供的大量内部函数大大简化了用户的操作。 对于而今的宏,不仅语言统一规范,而且其功能也已非常强大。但在大多数介绍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-10 ' ' With Selection.Interior

一些实用的excel宏

Excel宏教程 一、选中单个单元格 Range(“<单元格地址>“).Select 例:Range("C9").Select …选中“C9”单元格 二、选中多个单元格 Range(“<单元格地址>:<单元格地址>[,<单元格地址>……]”).Select 例:Range(“A1:B2”).Select…选中“A1”、“A2”、“B1”、“B2”四个连续的单元格Range(“12:12”).Select…选中第12行 Range(“B:B”).Select…选中第B列 Range(“A1:A2,B7,2:2”).Select…选中“A1”、“A2”、“B7”五个不连续的单元格和第二行Cells.Select …选中当前SHEET中的所有单元格 Rows("<行地址>:<行地址>").Select …选中整行 Columns("<列地址>:<列地址>").Select …选中整列 例:Rows(“2:2”). Select…选中第2行 Rows(“2:5”). Select…选中2到5行 Columns("A:A").Select …选中A列 Columns("E:B").Select …选中E到B列

三、设置活动单元格 Range("<单元格地址>").Activate 注:设置活动单元格与选中单元格类似,不同之处就是 后者在选中指定的单元格之前会将在此前已被选中的单元格取消掉。 前者在设置之前不会取消已选中的单元格, 如果此时操作的单元格不是被选中的单元格,这时他实现的功能与选一个单元格相同。 四、给活动的单元格赋值 ActiveCell.FormulaR1C1 = <值> 例:Range("A1").Select ActiveCell.FormulaR1C1 = "Name" Range("B1").Select ActiveCell.FormulaR1C1 = "Age" Range("A2:B3").Select Range("A2").Activate ActiveCell.FormulaR1C1 = " BUG" Range("B2").Activate ActiveCell.FormulaR1C1 = "12" Range("A3").Activate ActiveCell.FormulaR1C1 = "Archer" Range("B3").Activate ActiveCell.FormulaR1C1 = "37"

Excel宏的用法详解

宏的用法详解 1.1 VBA是什么 直到90年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得不学习一种不同的自动化语言.例如:可以用excel的宏语言来使excel自动化,使用word BASIC使word自动化,等等.微软决定让它开发出来的应用程序共享一种通用的自动化语言--------Visual Basic For Application(VBA),可以认为VBA是非常流行的应用程序开发语言V ASUAL BASIC 的子集.实际上VBA是"寄生于"VB应用程序的版本.VBA和VB的区别包括如下几个方面: 1. VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(excel等)自动化 2. VB具有自己的开发环境,而VBA必须寄生于已有的应用程序. 3. 要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的"父"应用程序,例如excel. 尽管存在这些不同,VBA和VB在结构上仍然十分相似.事实上,如果你已经了解了VB,会发现学习VBA非常快.相应的,学完VBA会给学习VB打下坚实的基础.而且,当学会在excel中用VBA创建解决方案后,即已具备在word access OUTLOOK FOXPRO PROWERPOINT 中用VBA创建解决方案的大部分知识. * VBA一个关键特征是你所学的知识在微软的一些产品中可以相互转化. * VBA可以称作excel的“遥控器”. VBA究竟是什么?更确切地讲,它是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案. 此外,如果你愿意,还可以将excel用做开发平台实现应用程序. 1.2 excel环境中基于应用程序自动化的优点 也许你想知道VBA可以干什么?使用VBA可以实现的功能包括: 1. 使重复的任务自动化. 2. 自定义excel工具栏,菜单和界面. 3. 简化模板的使用. 4. 自定义excel,使其成为开发平台. 5. 创建报表. 6. 对数据进行复杂的操作和分析. 用excel作为开发平台有如下原因: 1. excel本身功能强大,包括打印,文件处理,格式化和文本编辑. 2. excel内置大量函数. 3. excel界面熟悉. 4. 可连接到多种数据库. 用其他语言开发应用程序,一半的工作是编写一些基本功能的模块,包括文件的打开和保

excel常用宏

1.拆分单元格赋值 Sub 拆分填充() Dim x As Range For Each x In https://www.360docs.net/doc/3d11327751.html,edRange.Cells If x.MergeCells Then x.Select x.UnMerge Selection.Value = x.Value End If Next x End Sub 2.E xcel 宏按列拆分多个excel Sub Macro1() Dim wb As Workbook, arr, rng As Range, d As Object, k, t, sh As Worksheet, i& Set rng = Range("A1:f1") Application.ScreenUpdating = False Application.DisplayAlerts = False arr = Range("a1:a" & Range("b" & Cells.Rows.Count).End(xlUp).Row) Set d = CreateObject("scripting.dictionary") For i = 2 To UBound(arr) If Not d.Exists(arr(i, 1)) Then Set d(arr(i, 1)) = Cells(i, 1).Resize(1, 13) Else Set d(arr(i, 1)) = Union(d(arr(i, 1)), Cells(i, 1).Resize(1, 13)) End If Next k = d.Keys t = d.Items For i = 0 To d.Count - 1 Set wb = Workbooks.Add(xlWBATWorksheet) With wb.Sheets(1) rng.Copy .[A1] t(i).Copy .[A2] End With wb.SaveAs Filename:=ThisWorkbook.Path & "\" & k(i) & ".xlsx" wb.Close Next

Excel宏功能简单应用介绍

Excel宏功能简单应用介绍 所谓宏,就是一组指令集,通过执行类似批处理的一组命令,来完成某种功能。MicrosoftOffice的组件都可以支持宏(Macro)的操作,而Office的宏是指使用VB Script指令集(VB编程语言的子集,可以使用VB的常用语句)编写的针对Office组件的小程序。利用宏,我们可以完成很多程序原本并不支持的特殊应用,比如完成某种特殊的数据计算,或者文档的特殊格式排版等等。下面,就让我们举个简单的例子,看看宏在Excel中如何应用。 有这样一个Excel表格,工作表Sheet1中的第2行的B列开始至D列的连续单元格中是一组共3个数据,第A列的第3行开始至第6行的连续单元格中是一组共4个日期,要编写一段宏来完成这样的工作:将Sheet1第2行的数据由左至右依次纵向复制到Sheet2的B列(从B2开始)中,然后将这组复制完的3个数据所在行的A列都填入Sheet1的A3单元格里面的日期,完成后重复之前的操作,将Sheet1第2行的数据再次复制到Sheet2的B列,这次是从上次复制的B列数据下面的空白单元格,也就是B5开始,然后再在这次复制的3个数据的左侧A列填入Sheet1的A4单元格的日期,这样反复循环,直到She et1的A列的所有日期都出现在了Sheet2的A列里面,也就是Sheet1的第2行数据在 Sheet2的B列里面被复制了4次为止。 编写宏只要有一点点简单的VB编程知识就可以了,并不一定需要很高深的编程技巧,很多时候我们需要的只是一些重复的操作,我们可以通过宏的录制功能来录制一次需要的操作过程,然后再对已经录制的宏进行简单的修改,就能得到所需要的宏了。 对于上面这个事例,实际上只是简单的复制操作,所以甚至连录制的工作都可以省掉了。因为所需要的操作是一个循环的过程,所以我们可以使用一个循环语句来编写程序,这样只要写出一个完成的复制过程,一次循环就可以达到我们的目的了。循环判断的依据就是是否Sheet1的A列所有日期都复制过了,因为数据都是连续排列的,艘以我们可以把Sheet1的A列某个单元格是否有数据作为进入循环的条件,依次复制日期,直到A7这个没有数据的空单元格,循环结束,我们的工作也就完成了。至于循环里面的内容,我们同样再嵌套一个循环,只不过这次是判断第2行的数据是否全都复制完成了,在这个循环里面自然就是单元格数据和日期的复制了。 Sub Macro1() Dim st1y Dim st2y Dim st1x

办公高手EXCEL常用宏命令

办公高手.EXCEL常用宏命令 1 设置打开时弹出对话框的命令举例: Sub AUTO_OPEN() "输入打开工作表时要运行的代码或宏" End Bub 2 设置关闭时弹出对话框的命令举例: Sub AUTO_CLOSE() "输入关闭工作表时要运行的代码或宏" End Bub 3 设置提示框举例: MsgBox prompt:="温馨提示:您要打开的工作表有保护!", Buttons:=vbOKOnly, Title:="谷子提示 " i = MsgBox("系统提供不同服务,是否浏览资费信息?", vbYesNoCancel, "谷子提示:") If i = vbYes Then MsgBox "资费信息:********", , "谷子提示" Else "输入要运行的代码" End If 4、提示框内容过长,换行vbNewLine: MsgBox "您本次访问系统的时间是:" & Date & " " & Time & vbNewLine & "系统离到期日还剩余:" _ & DateDiff("d", Now, "2010-12-31") & " 天!" & vbNewLine & "是否查阅到期日说明?", vbYesNoCancel, "时间和到期日提示:" 5 提示提示系统的日期和时间: MsgBox "系统当前日期和时间:" & Date & " " & Time, , "时间提示" DateDiff("d", Now, "2010-10-31") & " 天!" ‘提示离指定日期的剩余天数 6 系统时间判断命令: Sub 判断时间测试() If Date > "2010-05-20" Then MsgBox "对不起,测试期间已经结束", , "谷子提示" Else Sheets("首页").Select '或其他命令 End If End Sub 7 禁止保存或另存的命令: Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) MsgBox ("禁止保存") Cancel = True '或thisworkbook.saved=true End Sub 8 保护工作表与撤销保护 Sheet2.Protect Password:="123456", DrawingObjects:=True, Contents:=True, Scenarios:=True '保护工作表SHEET2 Sheet2.Unprotect ("123456") '解除保 护 9 保护工作簿与撤销保护 ActiveWorkbook.Protect Structure:=True, Windows:=False, Password:="123" ActiveWorkbook.Unprotect Password:="123"

EXCEL宏运用

EXCEL宏运用 在日常工作中,我们常会遇到这种情况:一些相同的内容在不同的表格中反复录入,如常用的函数,统一的格式设置等。如果内容很多,不仅造成工作重复,而且还浪费了大量时间。此时,若用Excel中的宏编辑命令,则完全可将一系列繁琐的操作简化为一个快捷命令或工具栏命令。 所谓“宏”,就是将一系列的命令和指令组合在一起,形成一个命令,以实现任务执行的自动化。它可以替代人工进行一系列费时而重复的操作,是一个极为灵活的自定义命令。 在Excel中运用宏可有两种途径,一种是录制宏,另一种是采用Excel自带的Visual Basic编辑器来编辑宏命令。前一种使用较多,操作简练,也易于理解。以下举例说明宏与常用函数结合使用的方法:假设在Excel中有这样一组财务数据:资产原值(Cost),资产残值(Salvage),折旧期限(Life),期间(Per),且分别处于A1、B1、C1、D1的单元格中,现需计算该项资产按年限总和折旧法计算的本期折旧值,且把它放在单元格D2中。 操作步骤: (一)新建一空白表格,选中D2单元格,单击“工具”/“宏”/“录制新宏”,在出现的对话框中给该宏起名为“折旧函数”,在“保存在”下拉框中,选中“个人宏工作簿”(这是为了让该宏随Excel的使用而激活),单击“确定”。即可开始宏的录制(图1)。请注意,必须将宏记录为单元格相对引用,所以在“停止录制”工具栏中要选中“相对引用”按钮(图2)。

(二)在表格的D2单元格中输入“=SYD(A1,B1,C1,D1)”,C2单元格中输入“本期折旧值”,然后单击“工具”/“宏”/“停止录制”,结束宏的录制。此时会在“工具”/“宏”/“宏”中发现有“PERSONAL.XLS!折旧函数”的一个新宏。 (三)为了使用方便,可将其嵌入工具栏中。单击“工具”/“自定义”,选中“命令”对话框中“类别”下拉框中的“宏”,在右边可出现“自定义按钮”,选中它并将其拖至想要放的工具栏上(图3)。此时在工具栏上会发现多出一“J”形状的按钮,单击“自定义”对话框中的“更改所选内容”按钮,会出现一下拉菜单,在命名框中将其改为“折旧函数”;你还可更改按钮图标,选中你喜欢的图标;为便于理解,可选中“图标与文字”选项,工具栏中的该按钮便改为“图标+说明”的形式(图4)。

EXCEL宏编程简明教程(有实例),

Excel 宏编程简明教程 一)、宏学习 首先需要明确的是,本文不可能教会您关于宏的所有内容。您需要学会利用"录制宏"的方法来学习宏:点击Excel"工具"下拉菜单中"宏"下?quot;录制新宏",此后可象平时一样进行有关操作,待完成后停止录制。然后再点击"工具"下拉菜单中"宏"下"宏"的"编辑"选项即可打开刚才所录制的宏的Visual Basic源程序,并且可以在此时的"帮助"下拉菜单中获得有关的编程帮助。对录制宏进行修改不仅可以学习宏的使用,还能大大简化宏的编写。 二)、基本概念 为了学习Excel中的宏,我们需要先了解以下一些基本概念。 1、工作簿:Workbooks、Workbook、ActiveWorkbook、ThisWorkbook Workbooks集合包含Excel中所有当前打开的Excel工作簿,亦即所有打开的Excel文件;Workbook对应Workbooks中的成员,即其中的Excel文件;ActiveWorkbook代表当前处于活动状态的工作簿,即当前显示的Excel文件;ThisWorkbook代表其中有Visual Basic代码正在运行的工作簿。 在具体使用中可用Workbooks(index)来引用Workbook对象,其中index为工作簿名称或编号;如Workbooks(1)、Workbooks("年度报表.xls")。而编号按照创建或打开工作簿的顺序来确定,第一个打开的工作簿编号为1,第二个打开的工作簿为2……。 2、工作表:Worksheets、Worksheet、ActiveSheet Worksheets集合包含工作簿中所有的工作表,即一个Excel文件中的所有数据表页;而Worksheet则代表其中的一个工作表;ActiveSheet代表当前处于的活动状态工作表,即当前显示的一个工作表。 可用Worksheets(index)来引用Worksheet对象,其中index为工作表名称或索引号;如Worksheets(1)、Worksheets("第一季度数据")。工作表索引号表明该工作表在工作表标签中的位置:第一个(最左边的)工作表的索引号为1,最后一个(最右边的)为Worksheets.Count。需要注意的是:在使用过程中Excel 会自动重排工作表索引号,保持按照其在工作表标签中的从左至右排列,工作表的索引号递增。因此,由于可能进行的工作表添加或删除,工作表索引号不一定始终保持不变。 3、图表:Chart 、Charts、ChartObject、ChartObjects、ActiveChart Chart代表工作簿中的图表。该图表既可为嵌入式图表(包含在ChartObject 中),也可为一个分开的(单独的)图表工作表。 Charts代表指定工作簿或活动工作簿中所有图表工作表的集合,但不包括嵌入式在工作表或对话框编辑表中的图表。使用Charts(index) 可引用单个Chart图表,其中index是该图表工作表的索引号或名称;如Charts(1)、Charts("销售图表")。图表工作表的索引号表示图表工作表在工作簿的工作表标签栏上的位置。Charts(1)是工作簿中第一个(最左边的)图表工作表; Charts(Charts.Count)为最后一个(最右边的)图表工作表。 ChartObject代表工作表中的嵌入式图表,其作用是作为Chart对象的容器。

Excel宏的使用教程

Visual Basic for Applications(VBA)是Visual Basic的一种宏语言,主要能用来扩展Windows的应用程式功能,特别是Microsoft Office软件,其中包括Excel、PPT、Word、Outlook等。 使用Excel的VBA开发的Excel文档,在Excel中运行时需要开启Excel 的宏功能,否则此文档的VBA自动化功能将被完全屏蔽,文档的功能无法实现。 因此,在打开这些Excel程序文件之前,您需要先对您的Excel宏安全性进行设置(设置永久有效,在同一台电脑上无需再次设置) 在Excel2003版本中,可以依以下步骤操作: 1,在Excel的菜单栏上依次单击“工具”——“宏”——“安全性”,打开下图所示的“安全性”对话框, 2,在“安全级”选项卡中将宏的安全级别设置为“中”或“低”。其中推荐使用“中”级,这样的设置并不会降低您的安全性,您仍然对任意一个宏文件都拥有主动选择是否运行的权力。 在宏的安全性级别设置成功后,再次打开Excel程序文件时,会出现下图所示信息框,此时点击“启用宏”按钮即可使本程序正常运行: 在Excel2007/2010版本中,可以依以下步骤操作: 1,依次单击Excel的Office按钮(2010版本为“文件”按钮)——“Excel 选项”,打开下图所示的“Excel选项”选项卡,在左侧列表中选择“信任中心”,在右侧出现的窗口中点击“信任中心设置”按钮, 2,打开“信任中心”选项卡,在左侧选择“宏设置”,在右侧出现的窗口中选择“禁用所有宏,并发出通知”选项,单击确定完成。 在宏的安全性级别设置成功后,再次打开Excel程序文件时,在信息栏(编辑栏上方)会出现下图所示的警告信息,此时点击其中的“选项”按钮打开Offi ce安全选项对话框,在其中选择“启用此内容”选项并确定即可使本程序正常运行。

【免费下载】EXCEL宏的使用

目录 EXCEL宏的使用 (2) 一、选中单个单元格 (2) 二、选中多个单元格 (2) 三、设置活动单元格 (2) 四、给活动的单元格赋值 (3) 五、得到指定单元格中的值 (3) 六、插入单元格 (3) 七、设置字体属性 (4) 八、清空选中单元格里的内容 (5) 九、设置选中单元格的边线属性 (5) 十、删除选中的单元格 (6) 十一、设置单元格背景色及图案 (7) 十二、返回工作表中的行数 (8) 十三、得到当前EXCEL的文件名 (8) 十四、批注的操作 (8) 十五、剪切、复制、粘贴 (9) 十六、选择性粘贴 (10) 十七、改变列宽 (10) 1

EXCEL宏的使用 一、选中单个单元格 Range(“<单元格地址>“).Select 例:Range("C9").Select ‘选中“C9”单元格 二、选中多个单元格 Range(“<单元格地址>:<单元格地址>[,<单元格地址>……]”).Select 例:Range(“A1:B2”).Select ‘选中“A1”、“A2”、“B1”、“B2”四个连续的单元格 Range(“12:12”).Select ‘选中第12行 Range(“B:B”).Select ‘选中第B列 Range(“A1:A2,B7,2:2”).Select ‘选中“A1”、“A2”、“B7”五个不连续的单元格和第二行 Cells.Select ‘选中当前SHEET中的所有单元格 Rows("<行地址>:<行地址>").Select ‘选中整行 Columns("<列地址>:<列地址>").Select ‘选中整列 例:Rows(“2:2”). Select ‘选中第2行 Rows(“2:5”). Select ‘选中2到5行 Columns("A:A").Select ‘选中A列 Columns("E:B").Select ‘选中E到B列 三、设置活动单元格 Range("<单元格地址>").Activate 注:设置活动单元格与选中单元格类似,不同之处就是 后者在选中指定的单元格之前会将在此前已被选中的单元格取消掉。 前者在设置之前不会取消已选中的单元格,如果此时操作的单元格不是被选中的单元格,这时他实现的功能与选一个单元格相同。 2

Excel常见宏命令

清除剪贴板 Sub清除剪贴板() Application.CutCopyMode=False https://www.360docs.net/doc/3d11327751.html,mandBars("Task Pane").Visible=False End Sub 批量清除软回车 Sub批量清除软回车() '也可直接使用Alt+10或13替换 Cells.Replace What:=Chr(10),Replacement:="", LookAt:=xlPart,SearchOrder:=_ xlByRows,MatchCase:=False,SearchFormat:=False, ReplaceFormat:=False End Sub 判断指定文件是否已经打开 Sub判断指定文件是否已经打开() Dim x As Integer For x=1To Workbooks.Count If Workbooks(x).Name="函数.xls"Then'文件名称MsgBox"文件已打开" Exit Sub End If Next MsgBox"文件未打开" End Sub 当前文件另存到指定目录 Sub当前激活文件另存到指定目录() ActiveWorkbook.SaveAs Filename:="E:\信件\"& https://www.360docs.net/doc/3d11327751.html, End Sub

另存指定文件名 Sub另存指定文件名() ActiveWorkbook.SaveAs ThisWorkbook.Path&"\别名.xls" End Sub 以本工作表名称另存文件到当前目录 Sub以本工作表名称另存文件到当前目录() ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path&"\" &https://www.360docs.net/doc/3d11327751.html,&".xls" End Sub 将本工作表单独另存文件到Excel当前默认目录 Sub将本工作表单独另存文件到Excel当前默认目录() ActiveSheet.Copy ActiveWorkbook.SaveAs Filename:=https://www.360docs.net/doc/3d11327751.html,& ".xls" End Sub 以活动工作表名称另存文件到Excel当前默认目录 Sub以活动工作表名称另存文件到Excel当前默认目录() ActiveWorkbook.SaveAs Filename:=https://www.360docs.net/doc/3d11327751.html,& ".xls",FileFormat:=_ xlNormal,Password:="",WriteResPassword:="", ReadOnlyRecommended:=False_ ,CreateBackup:=False End Sub 另存所有工作表为工作簿 Sub另存所有工作表为工作簿() Dim sht As Worksheet Application.ScreenUpdating=False ipath=ThisWorkbook.Path&"\" For Each sht In Sheets

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单元格的颜色变为红色。试着选择其它单元格和几个单元格组成的区域,然后再执行宏,以便加深印象。

2019年excel如何编辑宏.doc

2019年excel如何编辑宏 篇一:excel20XX如何中启用宏和VBA使用说明 excel20XX如何中启用宏和VBA使用说明 1. 2.打开excel20XX在工具栏空白处,右击:自定义功能区---选择添加开发工具选项--确定 3.点开开发工具菜单项,点击宏安全选中ActiveX设置,选中右边的无限制启用选项, 取消选中安全模式 4.选中宏设置菜单,选中右边启用所有宏选项,选中开发人员宏设置选项--确定 5.将excel文档另存为:excel启用宏的工作薄格式。关闭文档 6. 7. 8.打开该文档,可以录制宏,并且执行宏打开开发工具,插入一个按钮右击添加的按钮,选择指定宏菜单,在弹出框中输入宏名,点击新建按钮 9.确定后,就可以进入后台,编写vba代码了。 例如在方法里写:MsgBox(“helloworld“)点击按钮后,就弹出一个消息:helloworld11,office20XX启用宏和使用VBA介绍完毕。备注:换行符用vbCrLf变量赋值内容包含引号,用““代替(两个双引号)。如:“h“换成““h““行列都是从1开始的,如CELLS(1,1)注意要选择

ACTIVE控件,选择form控件使用不是太方便 篇二:Office20XX启用宏设置步骤 Office20XX启用宏设置步骤 一、打开空白的Excel表格,点开左上角“文件”下拉菜单,选择“选项”: 二、选择左侧“信任中心”后,选择“信任中心设置”: 三、点击“ActiveX设置”后,选择“无限制.”,取消勾中“安全模式”,以便打开 个别系统的报表: 四、点击“宏设置”后,选择“启用所有宏”,选中“信任对VBA.”: 五、点击“外部内容”后,选择“启用所有数据连接”和“启用所有工作薄链接的自 动更新”,以便打开有链接的表: 六、最后点击确认退出,重新打开Excel即可启用宏。 七、取消Outlook打开Office文档附件编辑保护功能,进入Excel、Word、Powerpoint 信任中心,选择“受保护的视图”,取消所有勾,重新打开该附件即可编辑。 篇三:EXCEL20XX如何启用、录制并使用宏 EXCEL20XX如何启用、录制并最终使用宏 问题:在贸易课的工作中,有一项工作是制作完成《出荷预定表》并发给各个部门;制作的方法有两种,一种是按照《发注一览表》的

Excel常用宏大全

Excel 常用宏大全(一) 259个常用宏-excelhome-LangQueS(1) 2008-04-01 17:21 打开全部隐藏工作表 Sub 打开全部隐藏工作表() Dim i As Integer For i = 1 To Sheets.Count Sheets(i).Visible = True Next i End Sub 循环宏 Sub 循环() AAA = Range("C2") Dim i As Long Dim times As Long times = AAA 'times代表循环次数,执行前把times赋值即可(不可小于1,不可大于47) For i = 1 To times Call 过滤一行 If Range("完成标志") = "完成" Then Exit For '如果名为'完成标志'的命名单元的值等于'完成',则退出循环,如果一开始就等于'完成',则只执行一次循环就退出 'If Sheets("传送参数").Range("A" & i).Text = "完成" Then Exit For '如果某列出现"完成"内容则退出循环

Next i End Sub 录制宏时调用“停止录制”工具栏 Sub 录制宏时调用停止录制工具栏() https://www.360docs.net/doc/3d11327751.html,mandBars("Stop Recording").Visible = True End Sub 高级筛选5列不重复数据至指定表 Sub 高级筛选5列不重复数据至Sheet2() Sheets("Sheet2").Range("A1:E65536") = "" '清除Sheet2的A:D列 Range("A1:E65536").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Sheet2.Range( _ "A1"), Unique:=True Sheet2.Columns("A:E").Sort Key1:=Sheet2.Range("A2"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _ :=xlPinYin End Sub 双击单元执行宏(工作表代码) Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Range("$A$1") = "关闭" Then Exit Sub Select Case Target.Address Case "$A$4" Call 宏1

excel常用宏集合

65:删除包含固定文本单元的行或列 Sub 删除包含固定文本单元的行或列() Do (what:="哈哈").Activate '删除行 ' '删除列 Loop Until (what:="哈哈") Is Nothing End Sub 72:在指定颜色区域选择单元时添加/取消"√"(工作表代码) Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim myrg As Range For Each myrg In Target If = 37 Then myrg = IIf(myrg <> "√", "√", "") Next End Sub 73:在指定区域选择单元时添加/取消"√"(工作表代码) Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Rng As Range If <= 15 Then If Not (Target, Range("D6:D20")) Is Nothing Then For Each Rng In Selection With Rng If .Value = "" Then .Value = "√" Else .Value = "" End If End With Next End If End If End Sub 74:双击指定单元,循环录入文本(工作表代码)

Private Sub Worksheet_BeforeDoubleClick(ByVal T As Range, Cancel As Boolean) If <> "$A$1" Then Exit Sub Cancel = True T = IIf(T = "好", "中", IIf(T = "中", "差", "好")) End Sub 75:双击指定单元,循环录入文本(工作表代码) Dim nums As Byte Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If = "$A$1" Then nums = nums Mod 3 + 1 Target = Mid("上中下", nums, 1) (1, 0).Select End If End Sub 76:单元区域引用(工作表代码) Private Sub Worksheet_Activate() ("A1:B3").Value = ("A1:B3").Value End Sub 77:在指定区域选择单元时数值加1(工作表代码) Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not ([a1:e10], Target) Is Nothing Then Target = Val(Target) + 1 End If End Sub 259个常用宏-excelhome(3) 2009-08-15 14:12:58 78:混合文本的编号 Sub 混合文本的编号() Worksheets(1).Range("B2").Value = "北京" & (--(Mid(Worksheets(1).Range("B2"), 3,

相关文档
最新文档