VBA Excel范围到单元格

时间:2014-02-27 22:17:18

标签: excel vba

我需要将一系列细胞复制到指示第一个细胞的另一个范围内。这样的事情:

.Cells(1,1) = .Range("B1:B5")

有些帮助请,它不起作用,我在VBA Excel中是全新的!

1 个答案:

答案 0 :(得分:1)

我不确定你究竟想要复制什么或者去哪里,但是......

With Workbooks("Book1").Worksheets("Sheet1")
    .Cells(1, 1).Value = .Range("B1").value
End With

将Cell B1的内容复制到同一页面上的Cell A1。如果需要复制范围B1:B5中的5个单元格,则需要指定范围作为第一个参数。你可以这样做:

.Range(.Cells(1, 1).Address & ":" & .Cells(5, 1).Address).value = .Range("B1:B5").value

将B1到B5的内容复制到A1到A5。

Excel将工作簿中的任意数量的单元格视为1或20或更多作为范围,单元格允许您仅引用单个单元格。当您需要指定Range("B1:B5")之类的范围时,您可以找到定义它的单元格并使用.Address来获取其字符串格式化的范围地址。因此,Cells(1, 1).Address会返回"$A$1"并在范围引用中连接这些内容,只要您记住中间的“:”就可以获得范围。

希望有所帮助。