首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >变量为范围的AutoFill失败

变量为范围的AutoFill失败
EN

Stack Overflow用户
提问于 2016-10-28 02:43:22
回答 1查看 35关注 0票数 0

这是我第一次使用.Autofill,但我搞不懂。我环顾四周,发现和尝试的每一件事都做不到。我认为这是我做过的最接近正确的事情,但我可能弄错了。我试图使用.Autofill填充一个列,但是在每个.Autofill之前都会有一个For循环,所以我不能一次完成全部工作。

代码语言:javascript
复制
Dim ws As Worksheet
    Set ws = Worksheets(1)
Dim EquationRange As Range
Dim DestinationRange As Range
Dim RowNumber As Long
    RowNumber = 2

Set EquationRange = ws.Cells(RowNumber, 1)
Set DestinationRange = ws.Cells(RowNumber + 1, 1)

EquationRange.AutoFill Destination:=DestinationRange

我从Dim ws As WorksheetSet EquationRange = Cells(RowNumber, 1)开始,但是当我搜索类似的问题时,他们都指定了Worksheets(),但这不起作用。我一直在犯错误

Range类的AutoFill方法失败

当我在中断模式下检查代码时,它写的是DestinationRange = Empty,但是当我使用Debug.Print DestinationRange.Address(False, False)时,它给出了正确的输出。有什么问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-28 04:16:30

您得到的错误bcoz“目的地必须包括源范围”。请参考链接。因此,您的代码应该如下所示

代码语言:javascript
复制
Private Sub test()
  Dim ws As Worksheet
  Dim EquationRange As Range
  Dim DestinationRange As Range
  Dim RowNumber As Long

  Set ws = Worksheets(1)
  RowNumber = 2

  With ws
    Set EquationRange = .Range(.Cells(RowNumber, 1))
    Set DestinationRange = .Range(.Cells(RowNumber, 1), .Cells(RowNumber + 1, 1))
  End With

  EquationRange.AutoFill Destination:=DestinationRange

End Sub
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40297240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档