VBA基础五:单元格cell操作例子

Posted yuanscn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VBA基础五:单元格cell操作例子相关的知识,希望对你有一定的参考价值。

例一、用cells(行,列)定位

Private Sub CommandButton1_Click()
Cells(12, 6) = IIf(Cells(1, 2) > 80, "优秀", "不优秀")
‘cells(2,3)表示第12行第6列位置显示后面的判断内容结果

Cells(13, 6) = IIf(Cells(1, 11) <> "", "第一行第1列的内容是:" & Cells(1, 11), "空白")
‘在13行第6列显示等号后面的结果:如果单元格第1行1列不为空白,则显示,第一行第1列的内容是:+第1行第11列的内容,否则显示“空白”
End Sub

 

例二、用Sheet1.Range("a1:a10") 定位

‘方法:实际上就是对对象的操作,它是一种动作,一种行为。

Sub 选择方法()
Range("a1:a10").Select
‘注:如果单元格区域前没有写工作表名,则默认为活动工作表
End Sub

Sub 复制方法()
Sheet1.Range("a1:a10") = 1    ‘将1写入表一的a1:a10区域
Sheet1.Range("a1:a10").Copy Sheet2.Range("a1")    ‘将表一的a1:a10区域的值复制到表2的a1
End Sub


Sub 删除方法()
Sheets(3).Delete  ‘将一个叫3的表格删除掉,删除时会弹出确认警告
‘工作表如果是数字()中不用引号,如果是汉字要加引号,否则提示错误9“下标越界”

Sheets("成绩").Delete ‘将一个表名为“成绩”的工作表删除,会弹出确认窗口

End Sub

 

例三:EXCEL VBA 怎样删除某一列符合某个条件的行

Private Sub CommandButton1_Click()

Dim c%, i%
c = Cells(Rows.Count, 4).End(3).Row
For i = c To 1 Step -1
If Cells(i, 4) = "" Then Rows(i).Delete  ‘删除第4列(D列)的所有空白行,如果只指定一行,把i换成具体哪一行就行了
Next

End Sub

如果删除第3行,可以用语句:
rows(3).delete

同时删除第3行和第3列

Sheet1.Rows(3).Delete
Sheet1.Columns(3).Delete

 

Private Sub CommandButton1_Click()

For c = ActiveSheet.UsedRange.Columns.Count To 1 Step -1
If Application.CountIf(Columns(c), 0) > 10 Then Columns(c).Delete
Next
End Sub

清空单元格中的数据或公式

代码: Columns("E:E").ClearContents
作用:清除E列的内容
如果要清除所有(公式,条件...)将代码改为 Columns("E:E").Clear
如果要删除zhi其他列,直接将括弧内的E:E改为需dao要的列即可。

 

例四:求第一列的有数据的单元格最大行号、列号

Private Sub CommandButton2_Click()
Dim m, n
m = ActiveSheet.UsedRange.Cells(1, 1).Row + ActiveSheet.UsedRange.Rows.Count - 1
n = ActiveSheet.UsedRange.Cells(1, 1).Column + ActiveSheet.UsedRange.Columns.Count - 1
Cells(14, 5) = m
Cells(15, 5) = n
End Sub

一般用range.end找最后的行、列
你这种情况可以用UsedRange.SpecialCells(xlCellTypeLastCell)

Private Sub CommandButton2_Click()
Dim m
m = UsedRange.SpecialCells(xlCellTypeLastCell)  ‘用户活动单元格的最后一行,哪怕不同列的行长短不一样

Cells(14, 5) = m  ‘ 在此单元格显示最后一行的文字内容

End Sub

 

以上是关于VBA基础五:单元格cell操作例子的主要内容,如果未能解决你的问题,请参考以下文章

vba里面 cell和cells sheet和sheets有啥区别

vba里面 cell和cells sheet和sheets有啥区别

VB/VBA怎么修改 Excel 单元格的数据类型?

VBA单元格自适应高亮操作

vba如何读取excel中某单元格的行数或列数

用vba给Excel单元格赋值