En VBA: Cómo copiar una cadena de elementos de una matriz a otra matriz
No existe tal función en VB, CopyMemory es posible, eche un vistazo al siguiente ejemplo
La diferencia de tiempo de prueba de VB6 usando los siguientes datos en mi máquina es aproximadamente 20 veces , y cien mil datos serán Como puede ver, utilicé un millón
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (pDst As Any, pSrc As Any, ByVal ByteLen As Largo)
Función de declaración privada GetTickCount Lib "kernel32" () Mientras
Subcomando privado1_Click()
Dim arrA() Mientras
Dim arrB() Siempre
ReDim arrA(1 a 1000000)
ReDim arrB(2 a 1000000)
Para i = 1 a 1000000
arrA(i) = i
Siguiente i
'Obtiene el número de milisegundos desde el inicio
T = GetTickCount
Para i = 2 a 1000000
arrB(i) = arrA(i)
Siguiente
MsgBox "Tiempo necesario" + Str$( GetTickCount - T) + "Millisegundos"
'Mi máquina tarda unos 200 milisegundos. Es vieja y lenta, así que no te rías de ella
ReDim arrB(2 To 1000000) 'Tenga en cuenta que esta línea ha borrado la asignación anterior
T = GetTickCount
CopyMemory arrB(2), arrA(2), LenB(arrA(1)) * 999999
MsgBox "Tiempo tomado" + Str$(GetTickCount - T) + "milisegundos"
'Mi máquina tarda unos 10 milisegundos
'Ver si los últimos datos son correctos
MsgBox arrB(1000000)
p>End Sub