gpt4 book ai didi

vba - 试图在 VBA 中消除 .activate 和 .select,但在尝试设置范围时却出现错误 1004

转载 作者:行者123 更新时间:2023-12-04 21:15:40 26 4
gpt4 key购买 nike

Excel VBA 让我深感沮丧,因为我试图避免在源和目标之间切换以进行一系列复制/粘贴或 pasteSpecial 操作。

这是问题代码的片段:

Dim wbkSource As Workbook
Dim wbkDest As Workbook
Dim rngOutput As Range
Dim iCol As Integer ' Used for destination paste

Set wbkSource = ActiveWorkbook
Set wbkDest = ActiveWorkbook 'After adding destination workbook

iCol = 1
**Set rngOutput = wbkDest.Worksheets("Sheet1").Range(1, iCol)**

突出显示的行始终生成运行时错误 1004,“应用程序定义或对象定义错误”。

我到底做错了什么?我让代码依次激活每个工作簿并选择目标单元格,但这太丑陋且效率低下。

感谢您的任何建议。

最佳答案

评论中的 A.S.H 做对了,这归功于他,但他似乎没有时间发表完整的回复,而是选择了评论。

Range 是一个范围,单个单元格也可以是一个范围。

语法是:

Cells([rowindex],[columnindex])

范围是
Range([cell1],[cell2])

以下也是可以接受的(看起来很丑)
Range(Cells(1,1),Cells(2,2))  'Equivalent to 

Range("A1:B2")

'Also this crazy mess works too

Dim intRow As Integer: intRow = 1
Cells("A" & intRow)
Range("A1:B" & intRow)

以及纠正您的问题的最终答案:
Set rngOutput = wbkDest.Worksheets("Sheet1").Cells(1, iCol)

我希望这会有所帮助,我很高兴您摆脱了 .Activate 和 .Select!

关于vba - 试图在 VBA 中消除 .activate 和 .select,但在尝试设置范围时却出现错误 1004,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42744924/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com