完整版excel宏教程Word文档格式.docx
- 文档编号:19162540
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:14
- 大小:20.03KB
完整版excel宏教程Word文档格式.docx
《完整版excel宏教程Word文档格式.docx》由会员分享,可在线阅读,更多相关《完整版excel宏教程Word文档格式.docx(14页珍藏版)》请在冰豆网上搜索。
Range("
).Activate
注:
设置活动单元格与选中单元格类似,不同之处就是后者在选中指定的单元格之前会将在此前已被选中的单元格取消掉。
前者在设置之前不会取消已选中的单元格,
如果此时操作的单元格不是被选中的单元格,这时他实现的功能与选一个单元格相同。
四、给活动的单元格赋值
ActiveCell.FormulaR1C1=<
值>
A1"
).Select
ActiveCell.FormulaR1C1="
Name"
B1"
Age"
A2:
B3"
A2"
BUG"
B2"
12"
A3"
Archer"
37"
五、得到指定单元格中的值
).Text
六、插入单元格
Selection.InsertShift:
=<
XlDirection值>
Selection.EntireRow.Insert
Selection.EntireColumn.Insert
Selection.InsertShift:
=xlToRight‘在当前选中单元格的位置插入单元格并将当前选中
的单元格向右移动
=xlDown‘在当前选中单元格的位置插入单元格并将当前选中的单元格向下移动
Selection.EntireRow.Insert‘在当前选中单元格的上面插入一行
Selection.EntireColumn.Insert‘在当前选中单元格的左侧插入一列
七、设置字体属性
1.设置字体名称和大小
Selection.Font.Name=<
字体名称>
Selection.Font.Size=<
字号>
Selection.Font.Name="
隶书"
Selection.Font.Size=15
Selection.Font.Underline=<
XlUnderlineStyle(下划线样式)>
‘下划线
XlUnderlineStyle(下划线样式):
xlUnderlineStyleDouble‘双下划线
xlUnderlineStyleDoubleAccounting‘会计用双下划线(如果当前单元格中的数据是数字时则下划线的宽度是当前单元格的宽度)
xlUnderlineStyleNone没有下划线
xlUnderlineStyleSingle‘单下划线
xlUnderlineStyleSingleAccounting‘会计用单下划线(如果当前单元格中的数据是数字时则下划线的宽度是当前单元格的宽度)
3.设置字体的颜色
Selection.Font.ColorIndex=<
0到56之间的数字>
Selection.Font.Color=<
RGB值>
4.设置字体的特殊效果
Selection.Font.Strikethrough=<
True/False>
‘删除线
Selection.Font.Superscript=<
‘上标
Selection.Font.Subscript=<
‘下标
八、清空选中单元格里的内容
Selection.ClearContents
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‘斜点线
Selection.Borders(<边线>).Weight=<XlBorderWeight(边线的宽度值)>
XlBorderWeight(宽度值):
xlHairline‘极细
xlThin‘细
xlMedium‘中等
xlThick‘粗
3.设置边线的颜色
Selection.Borders(xlEdgeLeft).ColorIndex=<
Selection.Borders(xlEdgeLeft).Color=<
十、删除选中的单元格
Selection.Delete<
Selection.EntireRow.Delete
Selection.EntireColumn.Delete
Selection.DeleteShift:
=xlToLeft‘删除选中的单元格,并将已删除单元格所在位置右面的单元格向左移动
Selection.DeleteShift:
=xlUp‘删除选中的单元格,并将已删除单元格所在位置下面的单元
格向上移动
Selection.EntireRow.Delete‘删除选中单元格所在的行
Selection.EntireColumn.Delete‘删除选中单元格所在的列
十一、设置单元格背景色及图案
Selection.Interior.ColorIndex=<
Selection.Interior.Color=<
2.图案样式
图案样式)>
Selection.Interior.Pattern=<
Constants(
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.图案颜色
到56之间的数字>
Selection.Interior.PatternColorIndex=<
Selection.Interior.PatternColor=<
十二、返回工作表中的行数
Sheet1.UsedRange.Rows.Count‘返回从最小已输入内容的行号到最大已输入内容的行号之间的行数
Sheet1.UsedRange.Rows(Sheet1.UsedRange.Rows.Count).Row‘最大已输入内容的行号十三、得到当前EXCEL的文件名
ThisWorkbook.Path‘文件路径
ThisWorkbook.Name‘文件名
ThisWorkbook.FullName‘全路径十四、批注的操作
1.添加批注
AddComment([Content])
).AddComment("
Writesthecontentinhere!
)
2.修改批注内容
Comment.Text
).Comment.TextText:
="
Comment.Visible=<
True/False>
4.删除批注
ClearComments
Selection.Range("
).ClearComments
5.选中批注
Comment.Shape.SelectTrue
D8"
).Comment.Shape.SelectTrue
6.改变批注大小和位置
Selection.ShapeRange.ScaleWidth<
宽度比例>
msoFalse,<
MsoScaleFrom>
Selection.ShapeRange.ScaleHeight<
高度比例>
‘每次增加
每次减少6%
Selection.ShapeRange.ScaleWidth1.5,msoFalse,msoScaleFromTopLeft5%的宽度
Selection.ShapeRange.ScaleHeight0.6,msoFalse,msoScaleFromTopLeft的宽度
左边距>
上边距>
Selection.ShapeRange.Left=<
Selection.ShapeRange.Top=<
Selection.ShapeRange.Width=<
宽度值>
Selection.ShapeRange.Height=<
高度值>
五、剪切、复制、粘贴
Selection.Copy‘复制
ActiveSheet.Paste‘粘贴
Selection.Cut
).SelectActiveSheet.PasteSelection.Copy
).SelectActiveSheet.Paste
十六、选择性粘贴
Selection.PasteSpecial<
option>
十七、改变列宽
Selection.ColumnWidth=<
‘指定列宽
Columns("
Selection.ColumnWidth=30‘改变已选列的宽度
‘根据C列的内容自动改变列的宽度
EntireColumn.AutoFit‘自动改变列宽
C:
C"
).EntireColumn.AutoFit
在Excel97中,"
宏"
是一个难以理解的概念,但对于一个具体的"
宏"
而言,却是容易理解的,如果说"
将一块文字变为注释:
黑体注释:
,字号为注释:
三号注释:
"
就可以看作一个"
宏"
的话,那么"
就不难理解了,其实Excel97中的许多操作都可以是一个"
。
记录宏"
其实就是将工作的一系列操作结果录制下来,并命名存储(相当于VB中一个
子程序)。
在Excel97中,"
仅记录操作结果,而不记录操作过程。
例如,改变文字字体时,需要打开"
字体"
栏中的下拉列表,再选择一种字体,这时文字即变为所选择的字体,这是一个过程,结果是将所选择的文字改变为所选择的字体。
而"
记录宏"
则只记录"
将
所选择的文字改变为所选择的字体"
这一结果。
Excel97中工作表是由行和列组成的二维表格,我们可以通过系统提供的语句activesheet.cells(I,j),将当前工作表中的第I行第j列所在的单元格中的数据取出(也可将它数据填入到指定的单元格中),然后反把它放入所定义的数组中,这时就可以对其进行各种操作,如求平均分、总分、分数段人数等等。
本人就利用Excel97中所提供的宏功能来做学生成绩的分析处理程序。
本程序是Excel中的一个文件,其中包含以下几个宏:
分班、总分、平均分、分数段、删除等。
说明:
⑴本程序是以本校高三理科班学生成绩进行分析。
⑵有关程序中用到的几具宏的功能说明:
分班:
针对于难以确定班级的情况下,以班为单位进行分班,本宏可以作为高一新生入学时进行分班的功能。
总分:
对原始的成绩自动求总分。
平均分:
对原始的成绩以班为单位进行各学科平均成绩的计算及全校各学科成绩的计算。
分数段:
给定一个最高分数及最低分数,然后统计出各班各个分数段的人数,各分数段人数进行累计。
删除:
用于删除不用的工作表。
现将各个宏的代码列举如下:
⑴分班
Sub分班()
Conststudentno=191'
注释:
学生人数
Constzdno=12'
字段数
Dimzd$(zdno)'
注释:
定义为12个字段的数组
Dima(studentno,zdno),stu(60,zdno)
Dimnam$(studentno),bjname$(60)'
定义一个存放全校学生名字及各班学生名字的数组
理科班工作表
Dimbj(studentno)'
定义存放班级的一个数组注释:
Sheets("
高三理"
Fori=2Tostudentno
bj(i)=ActiveSheet.Cells(i,1)
nam$(i)=ActiveSheet.Cells(i,2)
Forj=3Tozdno
a(i,j)=ActiveSheet.Cells(i,j)
Nextj
Nexti
注释:
存放字段到数组中?
Fori=1Tozdno
zd$(i)=ActiveSheet.Cells(1,i)
先建立各个班级的工作表
).CopyAfter:
=Sheets("
高三理
(2)"
).Name="
33"
Forj=1Tozdno
ActiveSheet.Cells(i,j)=Space$
(1)
a1"
ActiveSheet.Cells(1,i)=zd$(i)
34到36班工作表的建立
Fori=34To36x$=Mid$(Str(33),2)Sheets(x$).Select
Sheets(x$).CopyAfter:
)Sheets(x$&
(2)"
Sheets(x$&
).Name=Mid$(Str(i),2)Nexti
具体分班?
Fork=33To36
bjrs=0
x$=Mid$(Str(k),2)no=kMod10Sheets(x$).Select
Fori=2TostudentnoIfbj(i)=noThenbjrs=bjrs+1
bjname$(bjrs)=nam$(i)
stu(bjrs,j)=a(i,j)
EndIf
Fori=2Tobjrs
ActiveSheet.Cells(i,1)=no
ActiveSheet.Cells(i,2)=bjname$(i)Forj=3Tozdno
ActiveSheet.Cells(i,j)=stu(i,j)
Nextk
EndSub
⑵总分
Sub总分()
Conststudentno=191
Constxknum=6
Constzdnum=12
Sum=0
Forj=1Toxknum
Sum=Sum+ActiveSheet.Cells(i,j+2)
ActiveSheet.Cells(i,zdnum-3)=Sum
⑶平均分
Sub平均分()
Conststudentno=190
qxpjf(6)
Dimfs(studentno,xknum),pjf3(4,6),bjrs(4),Dimbj(studentno)
).Select注释:
以下程序段用于求全校平均分
Fori=1Tostudentno
bj(i)=ActiveSheet.Cells(i1,1)
fs(i,j)=ActiveSheet.Cells(i1,j3)
Fori=1Toxknum
Forj=1Tostudentno
Sum=Sumfs(j,i)
qxpjf(i)=Sum/(j-1)
Nexti注释:
以下程序段用于求各班平均分
Forj=1To4
Ifbj(i)=j2Then
bjrs(j)=bjrs(j)1
Fork=1Toxknum
pjf3(j,k)=pjf3(j,k)fs(i,k)
Fori=1To6
pjf3(j,i)=pjf3(j,i)/bjrs(j)
Nextj注释:
写入各班各科平均分
平均分"
Fori=1To4
Forj=1To6
ActiveSheet.Cells(i2,j1)=pjf3(i,j)
写入全校各科平均分
i=7
ActiveSheet.Cells(i,j1)=qxpjf(j)
⑷分数段
Sub分数段()
Constmax=600
Constmin=390
Constbjnum=4
Constfsdnum=22
Dimbjfsd(bjnum,fsdnum),zf(studentno,2)
zf(i,1)=ActiveSheet.Cells(i1,1)注释:
存放班级
zf(i,2)=ActiveSheet.Cells(i1,11)注释:
存放总分Nexti
Forj=1To4注释:
3---6班共4个班级
Ifzf(i,1)=j2Then
Fork=maxTominStep-10low=Int((max10-k)/10)
low)1
Ifzf(i,2)>
kThenbjfsd(j,low)=bjfsd(j,
sheet3"
Fori=3To6
Fork=1Tofsdnum
ActiveSheet.Cells(i,k1)=bjfsd(i-2,k)
M3:
W6"
ActiveWindow.LargeScrollToRight:
=-1
B8"
ActiveSheet.Paste
⑸删除
Sub删除()
ActiveWindow.Selec
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整版 excel 教程