基本的网站建设步骤,乐陵建设网站,购物网站国外,广州联雅做的网站怎么样Excel——宏教程(2)
一)、处理单元格
1、直接赋值与引用
将变量、常量值直接赋给单元格、或将单元格的值直接赋给变量、常量#xff0c;这是在excel中最简单的单元格赋值及引用方法。 如下例将工作表Sheet1A1单元格的值赋给Integer变量I#xff0c;并将I1的值…Excel——宏教程(2)
一)、处理单元格
1、直接赋值与引用
将变量、常量值直接赋给单元格、或将单元格的值直接赋给变量、常量这是在excel中最简单的单元格赋值及引用方法。 如下例将工作表Sheet1A1单元格的值赋给Integer变量I并将I1的值赋给当前工作表中的B1单元格 Dim I As Integer
IWorksheets(Sheet1).Cells(1,1) Cells(1,2).Select 选定B1单元格使其成为当前单元格 ActiveCellI1 以I1为当前单元格赋值 2、用公式赋值
在宏的使用中可能会更多地用公式来给单元格赋值。 如下例将相对于活动单元格左侧第4列、向上第6行至向上第2行的单元格数值之和赋给活动单元格以本行、本列为第0行、0列 ActiveCell.FormulaAVERAGE(R[-6]C[-4]:R[-2]C[-4])3、引用其它工作表中的单元格
当赋值公式中需要引用其它工作表中的单元格时在被引用的单元格前加上工作表名即可。 如以下即在赋值中引用了Sheet1工作表中的A1至A4单元格 Range(E10).FormulaSUM(Sheet1!R1C1:R4C1)但需注意的是当被引用的工作表名中含有某些可能引起公式歧义的字符时需要用单引号’将工作表名括起来。如
Worksheets(Sheet1).ActiveCell.FormulaMax(1-1剖面!D3:D5)4、引用其它工作簿中的单元格
在被引用单元格所在工作表名前加上[工作簿名]即可引用其它工作簿中的单元格。如
ActiveCell.FormulaMAX([Book1.xls]Sheet3!R1C:RC[4])同样需注意的是当被引用的工作簿名中含有某些可能引起公式歧义的字符时需要用中括号[“、”]及单引号’将工作簿名括起来。如
Cells(1,2).FormulaMIN([1995-2000总结.xls]1995-1996年! $A$1:$A$6)5、避免循环引用
在上述公式赋值过程中应避免在公式中引用被赋值的单元格防止循环引用错误。
6、添加批注
可按如下方法格给单元格添加批注
Dim 批注文本 As String批注文本“批注示例” 准备批注文本
ActiveCell.AddComment 添加批注
ActiveCell.Comment.Text Text:临时 写入批注文本
ActiveCell.Comment.VisibleFalse 隐藏批注[dvnews_page]7、添加、删除、复制、剪切、粘贴单元格
Range(D10).Insert Shift:xlToRight 在D10单元格处添加一新单元格原D10格右移
Range(C2).Insert Shift:xlDown 在C2单元格处添加一新单元格原C2格下移
Rows(2).EntireRow.Insert 在第2行前添加一空白行原第2行下移
Columns(3).EntireColumn.Insert 在C列前添加一空白列原C列右移
Columns(A:D).Delete Shift:xlToLeft 删除A列至D列其右侧列左移
Rows(3:5).Delete Shift:xlUp 删除第3行至第5行其下方行上移
Range(B2).EntireRow.Delete 删除第2行
Range(C4).EntireColumn.Delete 删除C列
Range(B10:C13).Copy 复制B10至C13单元格区域
Cells(1,2).Cut 剪切B1单元格
Range(D10).Select
ActiveSheet.Paste 自D10单元格起粘贴剪贴板中的内容二)、图表
1、工作表图表
以下为一添加工作表图表的实例。
Charts.Add after:Worksheets(Sheet1) 在Sheet1工作表之后添加新图表工作表
ActiveChart.ChartTypexlXYScatterSmooth 图表类型为XY平滑线散点图
ActiveChart.SetSourceData Source:Sheets(结点坐标).Range(A1:B69), PlotBy: _
xlColumns 图表数据来源于结点坐标工作表的A1至B69单元格且按列绘图。
ActiveChart.Location Where:xlLocationAsNewSheet
With ActiveChart
.HasTitle True
.ChartTitle.Characters.Text 节点坐标 图表标题节点坐标
.Axes(xlCategory, xlPrimary).HasTitle True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text x x轴标题x
.Axes(xlValue, xlPrimary).HasTitle True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text y y轴标题y
End With
With ActiveChart.Axes(xlCategory)
.HasMajorGridlines True 显示x轴主网格线默认情况下为显示
.HasMinorGridlines True 显示x轴次网格线默认情况下为不显示
End With
With ActiveChart.Axes(xlValue)
.HasMajorGridlines True 标出x轴主网格值默认情况下为标注
.HasMinorGridlines False 取消x轴次网格值标注默认情况下为不标注
End With
ActiveChart.Legend.Position xlRight 图例显示在图表右侧2、嵌入式图表
嵌入式图表仅在添加方式及引用格式上与工作表图表有所不同而对图表的设置基本类似。详见下例。
Set嵌入表ActiveSheet.ChartObjects.Add(0,0,200,300) 在当前工作表(0,0)坐标处添加宽200高300的嵌入式图表
嵌入表.Chart.ChartType xlColumnClustered 图表类型为簇状柱形图
嵌入表.Chart.SetSourceData Source:Sheets(1).Range(A2:B2), PlotBy:xlRows
设置图表数据来源
With 嵌入表.Chart
.HasTitle False 无图表标题
.Axes(xlCategory, xlPrimary).HasTitle False 无x轴标题
.Axes(xlValue, xlPrimary).HasTitle False 无y轴标题
End With[dvnews_page]三)、工作表
1、添加
Sheets.Add before:Sheets(1) 在第1工作表前添加新工作表
Sheets.Add after:Sheets(Sheets.Count) 在最后工作表后添加新工作表2、移动
ActiveSheet.Move before:Sheets(2) 将当前工作表移动至第2工作表之前3、命名
ActiveSheet.Name工作表名 将当前工作表命名为工作表名4、删除
可以用以下语句删除当前工作表。
ActiveSheet.Delete但在删除前excel会自动弹出提示框需在用户确认后方可执行删除。为避免这一干扰可以先用以下语句关闭excel的警告提示。
Application.DisplayAlerts False在删除完成后再重新打开excel的警告提示
Application.DisplayAlerts True四)、工作簿
excel的宏对工作簿的操作主要为保存。
Dim 存盘文件名 As StringActiveWorkbook.Save 保存当前工作簿
存盘文件名工作表名ActiveWorkbook.SaveAs Filename: 存盘文件名 当前工作簿另存为工作表名.xls在另存时若指定的存盘文件名不包含路径则保存在该工作簿的打开目录下。而若此存盘文件已存在也可用关闭excel警告提示的方法以免其自动弹出提示框。