Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1969|回复: 5

如何用Union的方式依次选择非空单元格

[复制链接]
发表于 2019-8-4 09:13 | 显示全部楼层 |阅读模式
如何用Union的方式依次选择非空单元格,思考了好久,难受啊

问题.zip

20.56 KB, 下载次数: 6

问题问题

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2019-8-4 09:35 | 显示全部楼层
Option Explicit
Sub test()
        Dim rg As Range, rng As Range
        For Each rng In [a15:h20]
                If rng <> "" Then
                        If rg Is Nothing Then
                                Set rg = rng
                        Else
                                Set rg = Application.Union(rg, rng)
                        End If
                End If
        Next rng
        rg.Select
End Sub
回复

使用道具 举报

 楼主| 发表于 2019-8-4 15:03 | 显示全部楼层
ligh1298 发表于 2019-8-4 09:35
Option Explicit
Sub test()
        Dim rg As Range, rng As Range

才看到,不好意思,已收到,等下去试试,哈哈,谢谢了
回复

使用道具 举报

 楼主| 发表于 2019-8-4 16:34 | 显示全部楼层
ligh1298 发表于 2019-8-4 09:35
Option Explicit
Sub test()
        Dim rg As Range, rng As Range

如果要以a列单元格这么选呢

啊啊啊

啊啊啊
回复

使用道具 举报

发表于 2019-8-7 10:28 | 显示全部楼层
这样?

Sub test1()
  Dim rg As Range, rng As Range, Ic%, rng1 As Range
          For Each rng In [a15:a20] '遍历A列
        Ic = Cells(rng.Row, "iv").End(1).Column
                Set rng1 = Cells(rng.Row, Ic)
                If rng1 <> "" Then
                        If rg Is Nothing Then
                                Set rg = rng1
                        Else
                                Set rg = Application.Union(rg, rng1)
                        End If
                End If
        Next rng
        rg.Select
End Sub
回复

使用道具 举报

 楼主| 发表于 2019-8-18 23:15 | 显示全部楼层
ligh1298 发表于 2019-8-7 10:28
这样?

Sub test1()

我试试哈
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-3-28 22:36 , Processed in 0.560963 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表