将工作范围复制和过去的代码转换为数组复制和过去的代码,以使操作更快

问题描述

我不熟悉VBA脚本。

这是有效的代码

Sub copy_MS()


Application.CalculateFullRebuild

Dim last_row As Integer
    Dim ws As Worksheet
    
MsgBox "Please Wait","Macro is updating the CIM"

last_row = Worksheets("Raw Data").Cells.Find(What:="*",SearchDirection:=xlPrevIoUs).Row
    
    
Worksheets("Module Summary").Activate

Range("A4:A12").EntireRow.Hidden = False

Range("E5:Z12").copy Range("E13:Z" & (last_row * 8) - 4)

Application.CutcopyMode = False

End Sub

下面是我尝试使其成为数组副本和过去的函数方法

Sub copy_MS()

Application.CalculateFullRebuild

Dim last_row As Integer

Dim ws As Worksheet

Dim myArrray() As Variant

Dim cArray() As Variant

Dim Datarange As Range

Dim CRange As Range


last_row = Worksheets("Raw Data").Cells.Find(What:="*",SearchDirection:=xlPrevIoUs).Row
Set Datarange = Worksheets("Module Summary").Range("E13:Z" & (last_row * 8) - 4)
Set CRange = Worksheets("Module Summary").Range("E5:Z12")
Datarange.Value = myArray
CRange.Value = cArray

MsgBox "Please Wait","Macro is updating the CIM"

Worksheets("Module Summary").Activate

Range("A4:A12").EntireRow.Hidden = False

'this line is not working
cArray = myArray

我在解决如何在最后一行将一个数组复制到另一个数组时遇到很多问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)