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]