首页 文章

偏移/调整范围减少1列

提问于
浏览
1

在Excel VBA中,如何将范围的左列偏移/调整大小1?

例如,我从 B1:D10 开始,我需要以 C1:D10 结束 .

3 回答

  • 1
    Dim rng As Range
    ...
    Set rng = rng.Resize(rng.Rows.Count, rng.Columns.Count - 1).Offset(0, 1)
    
  • 1

    尝试一下:

    Sub qwerty()
        Dim r1 As Range, r2 As Range
        Set r1 = Range("B1:D10")
        Set r2 = Intersect(r1, r1.Offset(0, 1))
        MsgBox r2.Address(0, 0)
    End Sub
    

    基本上它会从块中删除第一列 .

  • 0

    这可能很笨拙,但您可以使用Range.Range(返回给定范围内的位置):

    Set StartRng = Range("B1:D10")
    Set FinishRng = Range(StartRng.Range("B1"), StartRng.Range("C10"))
    

    或者使用Range.Cells

    Set StartRng = Range("B1:D10")
    Set FinishRng = Range(StartRng.Cells(1, 2), StartRng.Cells(10, 3))
    

相关问题