Error: procedimiento demasiado largo
Hola, buenas tardes, mi consulta es la siguiente: grabé esta macro
Sub Macro2()
'
' Macro2 Macro
'
'
Range("A9:A1672").Select
Selection.Copy
Windows("Resultados de macro aleatoria 3 piezas manual hasta 100 autom.xlsm"). _
Activate
Sheets.Add After:=Sheets(Sheets.Count)
Range("C9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("D9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("E9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("F9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("G9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Y luego la extendí hasta la columna DZZ9 que en total son más de 3000 columnas, cuando la quiero ejecutar me dice que el procedimiento es demasiado largo, en total son 10200 lineas y creo que si funcionara la macro tardaría entre 12 y 15 horas en completarse, tengo entendido que una macro como máximo puede tener 64000 caracteres, pero no se como subdividirla o buscar otra solución más simple.
Aclaro que en la macro parece que pego siempre los mismos datos copiados pero en realidad estoy copiando resultados de fórmulas que tienen cálculos aleatorios por lo tanto se vuelven a calcular automáticamente cada vez que la macro pega una columna.
Sub Macro2()
'
' Macro2 Macro
'
'
Range("A9:A1672").Select
Selection.Copy
Windows("Resultados de macro aleatoria 3 piezas manual hasta 100 autom.xlsm"). _
Activate
Sheets.Add After:=Sheets(Sheets.Count)
Range("C9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("D9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("E9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("F9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("G9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Y luego la extendí hasta la columna DZZ9 que en total son más de 3000 columnas, cuando la quiero ejecutar me dice que el procedimiento es demasiado largo, en total son 10200 lineas y creo que si funcionara la macro tardaría entre 12 y 15 horas en completarse, tengo entendido que una macro como máximo puede tener 64000 caracteres, pero no se como subdividirla o buscar otra solución más simple.
Aclaro que en la macro parece que pego siempre los mismos datos copiados pero en realidad estoy copiando resultados de fórmulas que tienen cálculos aleatorios por lo tanto se vuelven a calcular automáticamente cada vez que la macro pega una columna.
1 respuesta
Respuesta de angelcrisnor
1