|
感谢兰版的精彩教学,受益匪浅,万分感激!
以下所有笔记均为兰版每周二晚培训课程的本人做的笔记--完整版
【第13讲】单元格操作_续--2012年03月27日
主要内容:
1、单元格_特殊单元格选取_续6
2、单元格插入与隐藏_续7
3、单元格输入与输出_续8
4、单元格删除_续9
5、类模块测试_调用类模块方法_续10
-----------------------------------------------------------------------------
1、单元格_特殊单元格选取_续6
Sub 单元格交集() '结果为cells(3, 2).select
Application.Intersect(Rows(3), Columns(2)).Select
End Sub
'产品名称,型号,单价,数量,金额
Sub 顶点单元格() '每新增1条数据需要在下一行接着输入,以此往下
Range("a65536").End(xlUp).Select 'end(xlUp) 相当于键盘“CTRL + 上箭头”,找到第1个非空单元格
mr = Range("a65536").End(xlUp).Row + 1 'mr为最后1条数据后面的第1行
'mr = Range("a65536").End(xlUp).Row + 3 'mr为最后1条数据后面的第3行
'end(xlDown) --相当于键盘“CTRL + 下箭头”找到第1个非空单元格
'end(xlToRight) --相当于键盘“CTRL + 右箭头”找到第1个非空单元格
'end(xlToLeft) --相当于键盘“CTRL + 左箭头”找到第1个非空单元格
End Sub
Sub 顶点单元格2()
Dim k As Integer
k = Range("c5000").End(xlUp).Row
MsgBox k & "行"
End Sub
Sub 删除数量为空白的行()
Range("D:D").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
'SpecialCells 相当于 菜单栏上的 [编辑]-[定位] ...
'Range("2:2")specialCells(xlCellTypeBlanks).EntireColumn --返回列entireColumn
End Sub
-----------------------------------------------------------------------------
2、单元格插入与隐藏_续7
Sub 隐藏行和列() '只能隐藏行,不能隐藏单元格
Rows("3:5").Hidden = True
Columns("b:c").Hidden = True
End Sub
Sub 取消隐藏行和列()
Rows("3:5").Hidden = False
Columns("b:c").Hidden = False
End Sub
Sub B列为空白就隐藏此行() 'hidden = true 隐藏 false 取消隐藏
Range("b:b").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden = True
End Sub
Sub 隐藏单个单元格所在的行和列() '关键字:entireRow entireColumn
Range("b2").EntireRow.Hidden = True
Range("b2").EntireColumn.Hidden = True
End Sub
Sub 隐藏单元格区域所在的行和列()
Range("b2:d10").EntireRow.hiiden = True
Range("b2:d10").EntireColumn.Hidden = True
End Sub
Sub 指定行列前插入()
Rows(3).Insert '插入第3行
Columns(2).Insert '插入第2列
End Sub
Sub 指定行列前插入多行列()
Rows("3:5").Insert '插入第3行至第5行
Columns("B:C").Insert '插入第2列至第3列
End Sub
Sub 在单元格上方插入()
Range("b3:c5").Insert shift:=xlDown
End Sub
Sub 取消1至10行的隐藏()
Rows("1:10").Hidden = False
End Sub
-----------------------------------------------------------------------------
3、单元格输入与输出_续8
Sub 录制字母()
Range("a1:a10").Value = "a"
End Sub
Sub 输入数字() 'b1至b10 输入1至10
Dim x As Integer
For i = 1 To 10
Cells(i, 2) = i
Next i
End Sub
Sub 单元格中输入公式() '即d2=b2*c2
Range("d2") = "=b2*c2"
End Sub
Sub 单元格中输入公式2() '即 d2 = countif(a:a,"b")
Range("d2") = "=countif(a:a,""b"")" '注意字符串双引号要加倍
End Sub
Sub 公式变数值() '自己=自己 --注意:被取的值要加 .value
'Range("d2") = Range("d2").Value
[d2:d7] = [d2:d7].Value
End Sub
Sub 区域取值() '效率性能上比copy要快很多
[e2:g10] = [a2:c10].Value
End Sub
Sub 取得单元格公式() '取得公式 Formula
MsgBox "D2单元格的公式为:" & Range("d2").Formula
End Sub
-----------------------------------------------------------------------------
4、单元格删除_续9
Sub 清除全部()
Range("a1").Clear
End Sub
Sub 清除格式()
Range("a1").ClearFormats
End Sub
Sub 清除内容()
Range("a1").ClearContents
'range("a1:a100") = ""
End Sub
Sub 清除批注()
Range("a1").ClearComments
End Sub
Sub 删除后_右侧单元格左移() 'xlToLeft 左移
Range("b2").Delete shift:=xlToLeft
End Sub
Sub 删除后_下方单元格上移()
Range("b2").Delete shift:=xlUp 'xlUp 上移
End Sub
Sub 删除单元格所在的行()
Range("b2").EntireRow.Delete
End Sub
Sub 删除单元格所在的列()
Range("b2").EntireColumn.Delete
End Sub
-----------------------------------------------------------------------------
5、类模块测试_调用类模块方法_续10
'--------新建类模块 --类模块函数库 封装类方法属性
Function 求和(rg As Range)
求和 = Application.Sum(rg)
End Function
Function 平均数(rg As Range)
平均数 = Application.Average(rg)
End Function
Function 最大值()
最大值 = Application.Max(rg)
End Function
'-------新建模块调用函数库方法
Sub 计算()
Dim f As New 类模块函数库
f.平均数
f.求和
f.最大值
'...
End Sub
-----------------------------------------------------------------------------
完!
下节课预备:单元格查找与合并
|
|