繁体   English   中英

Range.Copy 没有复制完整的范围?

[英]Range.Copy is not copying the complete range?

我无法解决这个问题。 当我复制我的范围时,它只会复制 2 行

我可以暂停代码并检查变量是我从下面开始的。 问题是当我复制时,我只有第 4 行和第 5 行数据。 我可以在手动复制和粘贴后暂停代码。 还是2行。 如果我将引用硬编码到 Set rTriggerBody - 它可以工作。

我很困惑为什么引用与硬编码数字有什么不同?

badbExport 和 newWorkbook 是不同的工作簿。

谢谢 - 下面的代码

Dim baDbExport As Worksheet
Dim rTriggerBody As Range
Set baDbExport = ActiveWorkbook.ActiveSheet
Set rTriggerBody = baDbExport.Range(Cells(iRecordRowBegin, iTriggerColBegin), Cells(iRecordRowEnd, iTriggerColEnd))

iRecordRowBegin = 4
iRecordRowEnd = 14
iTriggerColBegin = 10
iTriggerColEnd = 48

With newWorkbook
    Set wsTrigger = ActiveSheet
        wsTrigger.Name = "Trigger Dates"
    Set rExportTriggerDatesBody = wsTrigger.Range("A3")
        rTriggerBody.Copy
        rExportTriggerDatesBody.PasteSpecial xlPasteAll
End With

您在第 4 行设置 rTriggerBody。您的代码段中并不清楚当时变量的值。

您不会再次更改 rTriggerBody 范围,即使您更改了用于定义范围的变量,所以当您复制 rTriggerBody 时,它仍然涵盖代码第 4 行中定义的内容。

看起来您想在实际更改用于定义范围的变量之后移动设置范围的命令。

iRecordRowBegin = 4
iRecordRowEnd = 14
iTriggerColBegin = 10
iTriggerColEnd = 48

Set rTriggerBody = baDbExport.Range(Cells(iRecordRowBegin, iTriggerColBegin), Cells(iRecordRowEnd, iTriggerColEnd))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM