如何在VBA中创建两个范围的范围 [英] How to create a range from 2 ranges in VBA

查看:131
本文介绍了如何在VBA中创建两个范围的范围的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两个范围,每个单元格包含单个单元格(例如A1和C3)

I have two ranges each containig a single cell (for example "A1" and "C3")

最简单的方法是获取包含所有内容的新范围这两个之间的单元格(A1:C3)。

What is the easiest way to get a new range containing all the cells between these two ("A1:C3").

我正在尝试写这样的东西,但这不起作用:

I am trying to write something like this, but this doesn't work:

 Set NewRange = Range(Range1.Address:Range2.Address)

另一个问题是如何设置R1C1格式的范围?我想使用像Range(R1C2)而不是Range(A2)的东西。

Another question I have is how to set a range in R1C1 format? I want to use something like Range("R1C2") instead of Range("A2").

谢谢!

推荐答案

像这样?

Sub Sample()
    Dim rng1 As Range, rng2 As Range
    Dim NewRng As Range

    With ThisWorkbook.Sheets("Sheet1")
        Set rng1 = .Range("A1")
        Set rng2 = .Range("C3")

        Set NewRng = .Range(rng1.Address & ":" & rng2.Address)

        Debug.Print NewRng.Address
    End With
End Sub

而不是R1C1格式使用细胞(R,C)。这将给你更多的灵活性+控制

Instead of R1C1 format use Cells(r,c). That will give you more flexibility + control

所以范围(A2)可以写成单元格(2,1)

这篇关于如何在VBA中创建两个范围的范围的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆