微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我尝试使用我for-next存储范围名称的变体变量来引用命名范围失败?

如何解决为什么我尝试使用我for-next存储范围名称的变体变量来引用命名范围失败?

对于令人困惑的标题深表歉意。我有多个命名范围,我正在尝试创建一个宏,允许我复制每个范围的某一行并将其粘贴到用户喜欢的每个范围中的许多后续行。我将创建 20 个不同的宏,具体取决于用户希望从哪一行复制选择,但现在我正在用第 3 行对其进行测试。

然而,问题是我设法将第一个范围的名称存储在一个变体变量中。但是,我只成功地选择了具有 application.goto-function 的行,但未能尝试复制其中的某些行。例如,当我尝试使用 Range.(aspect(the name of my variable)) 函数时,我收到一个错误 method 'range' of object '_Global' Failed。我还尝试根据存储在变量中的名称应该带来的范围创建一个新数组,但也失败了。

Public Sub copy_window_3()

Sheets("options").Select

ccArr = Range("ccAr").Value

copy_window rowstart:=3,copyquant:=Application.WorksheetFunction.Index(ccArr,rowstart)

Exit Sub

End Sub



Public Sub copy_window(rowstart As Double,copyquant As Variant)

Dim aspect As Variant
Dim copycounter As Integer
Dim aspcounter As Double
Dim ccArr() As Variant
Dim aspAr() As Variant


aspAr = Range("aspAr").Value

For aspcounter = 1 To UBound(aspAr,1)

aspect = Application.WorksheetFunction.Index(aspAr,aspcounter)

Range(aspect).Rows(rowstart).copy

    For copycounter = 1 To copyquant

    Range(aspect).Rows(rowstart + copyquant).PasteSpecial xlPasteValues

    Next copycounter

Next aspcounter


End Sub

以防代码看起来令人困惑:宏首先使用 ccArr 和 rowstart 变量来确定从哪一行开始以及要走多少行。我打算遍历存储在 aspAr 中的每个范围名称,然后复制所需的行,然后循环并粘贴到用户希望的每一行。

请原谅我提出了这个愚蠢的问题,但我尝试在网上寻找答案好几个小时都没有运气。

预先感谢您的帮助!

干杯。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。