Cómo grabar macro y luego cómo modificar el código
En este artículo, aprenderemos cómo grabar macro y luego cómo modificarlo y hacer que sea más fácil de aprender .
Cómo escribir macro para la fórmula de suma en VBE Tenemos datos de Excel en el rango A1: C14, en la que la columna A contiene nombres, la columna B tiene las marcas de la asignatura 1 y la columna C tiene las marcas de la asignatura 2. En la columna D, I quiero devolver la puntuación total.
Para insertar una fórmula de suma usando VBA en Microsoft Excel, siga los pasos que se mencionan a continuación: – * Abra los datos de Excel.
-
Primero registra la macro para devolver las marcas totales en la celda D2.
-
En la pestaña «Desarrollador», seleccione «Grabar macro» del grupo de «Código».
-
Aparecerá el cuadro de diálogo de «Grabar macro».
-
En el cuadro «Nombre de la macro», escriba el nombre de la macro sin utilizar ningún espacio ni carácter especial.
-
Escriba la tecla de acceso directo que desee.
-
Y escriba la descripción de la macro en el cuadro de descripción.
-
La grabación comenzará ahora.
-
Escriba la fórmula de la suma en la celda D2.
-
Pegue la fórmula en el rango D3: D14.
Haga clic en «Detener grabación» Para ver las macros grabadas, presione la tecla «ALT + F11».
-
El código grabado sería así: –
Sub SUM() ' 'SUM Macro 'Total marks obtain ' ' Keyboard Shortcut: Ctrl+Shift+S ' Range("D2").Select ActiveCell.FormulaR1C1 = "=SUM(RC[-2]:RC[-1])" Selection.Copy Range("C2").Select Selection.End(xlDown).Select Range("D14").Select Range(Selection, Selection.End(xlUp)).Select ActiveSheet.Paste Range("D2").Select End Sub
Como puede ver, el código VBA mencionado anteriormente es demasiado largo para devolver las marcas totales, y tampoco es fácil de entender. Por tanto, modificamos la codificación.
Sub SUM() Dim X As Integer X = Application.WorksheetFunction.CountA(Range("A:A")) Range("D2:D" & X).Value = "=Sum(B2:C2)" End Sub
Cómo escribir macro para la fórmula promedio en VBE
Tenemos un dato de Excel en el rango A1: C14, en el que la columna A contiene nombres, la columna B tiene las calificaciones de la asignatura 1 y la columna C tiene las calificaciones de la asignatura 2. En la columna D, quiero devolver las calificaciones promedio.
Para insertar una fórmula promedio usando VBA en Microsoft Excel 2010 y 2013, siga los pasos que se mencionan a continuación: – * Abra los datos de Excel.
-
Primero, registra la macro para devolver notas promedio en la celda D2.
-
En la pestaña «Desarrollador», seleccione «Grabar macro» del grupo de «Código».
-
Aparecerá el cuadro de diálogo de «Grabar macro».
-
En el cuadro «Nombre de la macro», escriba el nombre de la macro sin utilizar ningún espacio ni carácter especial.
-
Escriba la tecla de acceso directo, la que desee.
-
Y escriba la descripción de la macro en el cuadro de descripción.
-
La grabación comenzará ahora.
-
Escriba la fórmula «PROMEDIO» en la celda D2.
-
Pegue la fórmula en el rango D3: D14.
-
Haga clic en «Detener grabación».
-
Para ver las macros grabadas, presione la tecla “ALT + F11”.
-
El código grabado sería así: –
Sub AVERAGE() ' 'AVERAGE Macro 'Total marks obtain ' ' Keyboard Shortcut: Ctrl+Shift+A 'ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-3]:RC[-2])" Selection.Copy Range("E2").Select Selection.Copy Range("D2").Select Selection.End(xlDown).Select Range("E14").Select Range(Selection, Selection.End(xlUp)).Select ActiveSheet.Paste Range("E13").Select Selection.End(xlUp).Select End Sub
Como puede ver, el código VBA mencionado anteriormente es demasiado largo para devolver las marcas totales y tampoco es fácil de entender; por tanto, modificamos el código.
Sub Average() Dim X As Integer X = Application.WorksheetFunction.CountA(Range("A:A")) Range("E2:E" & X).Value = "=Average(B2:C2)" End Sub
De esta forma, podemos aprender a grabar macro y luego a modificarlo.
Si te gustaron nuestros blogs, compártelo con tus amigos en Facebook. Y también puedes seguirnos en Twitter y Facebook.
Nos encantaría saber de usted, háganos saber cómo podemos mejorar, complementar o innovar nuestro trabajo y hacerlo mejor para usted. Escríbanos a [email protected]