您的位置:首页 > 其它

Excel学习笔记002-001:关于单元格的常见操作

2010-03-03 11:20 573 查看
问题提出的背景:在Excel中关于单元格的操作可以说是随处可见,掌握住对Excel单元格的操作方法是非常有必要的。

常见的操作要求有:

①选定指定单元格到底有几种方法?哪种最适用?

②如何插入指定数目的行或列?

③如何用cells指定range中的区域?

④单元格间的相互复制与粘贴如何操作?

⑤工作表间如何复制数据?工作簿间如何复制数据?

⑥如何实现按名次排序(两种排法:一是中式排名,二是西式排名)?

暂时先想到这些,若有再随时补充。

先解决关于单元格的选定及统计行列和单元个数问题

提取链接http://d.namipan.com/sd/1407550

源程序如下:

Sub 单元格的常见操作()
'利用range()选定.
Range("A1").Activate '把单元格A1选定并激话
Range("A2").Select '可以实现同样的目的:把单元格A2选定并激
Range("A1:A2").Select
Cells.Clear
Range("A1:A2").Activate '两行命令实现的效果是一样的,都是选定A1:A2区域.
Range("A1:A2").Value = 3836383 '此命令可以实现在多个单元格内同时填入数据.
Range(Cells(3, 1), Cells(4, 1)).Activate '利用cells更可以实现动态选择单元格区域.
'如何统计当前工作表当中所有非空行列及单元格的个数
'Debug.Print Range("C2").Row '获取当前选定单元格的行号,若为.column则为列号
s = Range("A1").CurrentRegion.Count '此命令用于统计当前区域的单元格个数
Debug.Print s
s = Range("A1").CurrentRegion.Rows.Count '此命令用于统计当前区域的行数,读法:在选定区域中统计行数
Debug.Print s
s = Range("A1").CurrentRegion.Columns.Count '此命令用于统计当前区域的列数,读法:在选定区域中统计列数,
Debug.Print s
'暂时不要用简化表达式,容易出错,每一行命令最好写全,这样也便于学习.
End Sub

'如何利用xlup等属性确定指定列中最后一个数值不为空的单元格所在的行的行号

Sub 新的一种确定行号或列号的方法()
Worksheets("sheet1").Activate
R = Range("C65536").End(xlUp).Row
Debug.Print R
End Sub

反思:此种方法可以快速确定,尤其是在列与列数值不为空的行数不等时,比如A、B列最后一行单元格不为空的行与C列最后一行单元格不为空的行不在同一行的话,那么此种方法就可以确定指定列中的最后一个数值不为空的单元格所在行的行号。而前面所列的方法基本上都是确定的区域行数,所以可能有一定的局限性。

Sub 如何插入指定数目的行或列及删除示例()
Dim totalR As Integer
totalR = Range("A1").CurrentRegion.Rows.Count
Debug.Print totalR
Range("A1").EntireRow.Insert '此行程序不如以下两行写法更科学,因为可以控制插入行或列的位置.
Range(Cells(1, 1), Cells(1, 1)).EntireRow.Insert '在A1单元之前插入一行,读法:在当前行之前插入一行
Range(Cells(1, 1), Cells(1, 1)).EntireColumn.Insert '在A1单元格之前插入一列,读法:在当前列之前插入一列
Range(Cells(1, 1), Cells(1, 1)).EntireRow.Delete '体现如何删除行或列
Range(Cells(1, 1), Cells(1, 1)).EntireColumn.Delete '插入新行或列后,系统自动激活新行或列的第一个单元格,故地址完全可以继续引用上一行程序的地址.
End Sub
Sub 如何自动设置列宽或行宽()
Range("A1").CurrentRegion.EntireColumn.AutoFit '此行可以实现当前区域的列宽为自动适应
Range("a1").EntireColumn.AutoFit
End Sub



这就是菊子曰啦!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐