Saltar al contenido

Explicar Macro


Recommended Posts

Me podrian definir que hace cada seccion de esta macro relacionada a este archivo:

 

Sub Copia()    

Dim C As Range        

Application.ScreenUpdating = False

       For Each C In Range("A2", Range("A" & Rows.Count).End(xlUp))

      Sheets("Molde").Copy , Sheets(Sheets.Count)

      With ActiveSheet

         .Range("A5") = C: .Name = Left(C.Offset(, 1), 31)

      End With    

Next C        

Application.ScreenUpdating = True

End Sub

 

 

Ejemplo Copiar Hoja.xlsm

Enlace a comentario
Compartir con otras webs

Con el valor de cada celda de la columna A de la hoja activa, crea una hoja a imagen de la hoja "Molde" con el nombre de las primeras 31 posiciones del valor de la celda.

El valor entero de la celda va a la celda C5 de la hoja nueva.

Por cierto, hay un error en la macro, déjala así:

Sub Copia()
Dim C As Range
'--
Application.ScreenUpdating = False
For Each C In Range("A2", Range("A" & Rows.Count).End(xlUp))
   Sheets("Molde").Copy , Sheets(Sheets.Count)
   With ActiveSheet
     .Range("A5") = C
     If Len(.Name) > 31 Then
        .Name = Left(C.Offset(, 1), 31)
     Else
        .Name = C
     End If
   End With
Next C
Application.ScreenUpdating = True
End Sub

 

Enlace a comentario
Compartir con otras webs

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.