excel vba单元格邻近操作

单元格 选取

1 表示一个单元格(a1)

 Sub s()//这里每一行都表示a1单元格
   Range("a1").Select
   Cells(1, 1).Select
   Range("A" & 1).Select
   Cells(1, "A").Select
   Cells(1).Select
   [a1].Select
 End Sub

2 表示选相邻单元格区域

   Sub d() // 每一行都表示选取单元格a1:c5
'     Range("a1:c5").Select
'     Range("A1", "C5").Select
'     Range(Cells(1, 1), Cells(5, 3)).Select
     'Range("a1:a10").Offset(0, 1).Select
      Range("a1").Resize(5, 3).Select
//  表示从range a1开始 resize第五行C列选取
   End Sub

3 表示不相邻的单元格区域,

选取不相邻的单元格

Sub d1()
  Range("a1,c1:f4,a7").Select
  'Union(Range("a1"), Range("c1:f4"), Range("a7")).Select
End Sub
Sub dd() //union示例,注解是c++
  Dim rg As Range, x As Integer // 声明rg,让x为整数
  For x = 2 To 10 Step 2               //for(int i = 2 ;i <= 10;i = i+ 2)
    If x = 2 Then Set rg = Cells(x, 1) //    if(i = 2) string rg = range(Ax)表示a列x行
    
    Set rg = Union(rg, Cells(x, 1))    //    else rg = union(旧的rg与Ax的联合)更新
  Next x                               //输出x
  rg.Select
End Sub
    

4 表示行

Sub h()

  'Rows(1).Select表示选第1行
  'Rows("3:7").Select表示选取第3到第7'Range("1:2,4:5").Select '表示不连续的行区域
   Range("c4:f5").EntireRow.Select ' 返回到选c4到f5所在的行 45
   
End Sub

5 表示列

Sub L()
    
      ' Columns(1).Select 选第一列
      ' Columns("A:B").Select 选 a和b列
      ' Range("A:B,D:E").Select 选abhe de
      Range("c4:f5").EntireColumn.Select '选取c4:f5所在的列c-f
       
   End Sub

6 重置坐标下的单元格表示方法

Sub cc()

  Range("b2").Range("a1") = 100 '重置新坐标系,将原本的a1定义b2作为原点
  
End Sub

7 表示正在选取的单元格区域

 Sub d2()
     Selection.Value = 100 '鼠标正在选取的单元格区域填充100
   End Sub

练习

题目1:
任意选取本工作表中的一个区域,然后把选取区域中的大于0的数字替换为字符“正数”

  Sub one()
  Dim rg As Range
  For Each rg In Selection //循环每个rg用为正在选用
      If IsNumeric(rg) & rg > 0 Then  //IsNumeric()函数可以用于判断一个字符串是否是数值,如IsNumeric("1.2")判断为True
        rg = "正数"
      End If
  Next rg
End Sub

题目2:
用代码一次选取“A2:C12”区域所有大于0数字所在的行

Sub two()
  Dim rg, rng As Range
  For Each rg In Range("a2:c12")
    If IsNumeric(rg) & rg > 0 Then
      If rng Is Nothing Then Set rng = rg//如果rng没用被用更新rng
      Set rng = Union(rng, rg)//选取区域
      End If
  Next rg
  rng.EntireRow.Select
End Sub
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值