ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

COMO SE HACE UN MACRO Y EN QUE CONSISTE UNA MACRO.


Enviado por   •  13 de Abril de 2016  •  Tarea  •  1.591 Palabras (7 Páginas)  •  417 Visitas

Página 1 de 7

COMO SE HACE UN MACRO Y EN QUE CONSISTE UNA MACRO.

Proceso lógico, ordenado, secuencial, y exacto. Que me permite solucionar un problema, optimizar tiempo.

Se dividen en dos tipos:

  1. Por teclado: fáciles, pero limitadas
  2. Por código: complejas, pero ilimitadas

Dos sistemas son muy importantes para las macros:

  1. Lógico y creativo
  2. Memorístico

Toda macro debe tener:

  1. Un nombre (que use pala
  2. Un inicio y un fin
  3. Toda macro se puede ejecutar con una instrucción (botón definido), con teclas rápidas, con el editor de virtual basic con la función F5 (para hacerlo rápidamente) y con F8 (para paso a paso)
  4. Revisar el nivel de seguridad del computador, de Excel. Pues debe ser bajo, de lo contrario no ejecutará la macro.

[pic 1]

[pic 2]

  • Macro absoluta: Se graba y siempre que se ejecute hará el mismo proceso en el mismo sitio

  • Macro relativa: se ejecuta de acuerdo a la posición donde se ubican.

[pic 3]

Así se activa una macro relativa, si no se hace trabajamos sobre macro absoluta. Esto aplica para macros por teclado únicamente.

EJ 1.

Seleccionamos la celda, vamos a macros, guardar macro:

[pic 4]

Para parar la macro

[pic 5]

Cuando se trabajan con procedimientos en programación hay 3 tipos:

  • Lineal; una secuencia
  • Cíclico. Si se requiere que le proceso se repita n veces entonces es cíclico
  • Diagonal

Para ver las macros:

[pic 6]

Si damos paso a paso nos muestra el paso a paso en visual basic. En donde todo lo que está en azul es código. Lo que está entre “sub” y “sub” es el código.  En visual Basic se puede editar los códigos.

Ej. Como hacer para que se repita 1000 veces

[pic 7]

[pic 8]

Ahí tenemos las siguientes alternativas:

  1. FOR: se abre con for y cierra con Next
  • Se deben definir variables, una posición de memoria que sirve para almacenar un dato y se define con un nombre.
  1. TO WHILE
  2. TO CASE
  3. TO UNTIL

Para el ejemplo:

For x=1 to 1000 STEP 2  

NEXT x

  • Step 2 es para que pase de x=1 a X=3 a … Así hace solo 500 banderas

[pic 9]

MACRO CON CODIGO

[pic 10]

[pic 11]

  1. Un ciclo es con “for” (Cierra con next)
  2. Una decisión es con If (También se cierra con End IF)

PROGRAMACIÓN:

Sub Escudo()

'

' Escudo Macro

'

' Acceso directo: Ctrl+Mayús+E

'

For x = 1 To 500

    With Selection.Interior

        .Pattern = xlSolid

        .PatternColorIndex = xlAutomatic

        .ThemeColor = xlThemeColorAccent4

        .TintAndShade = 0.599993896298105

        .PatternTintAndShade = 0

    End With

    ActiveCell.Offset(1, 0).Range("A1").Select

    With Selection.Interior

        .Pattern = xlSolid

        .PatternColorIndex = xlAutomatic

        .ThemeColor = xlThemeColorAccent2

        .TintAndShade = 0.599993896298105

        .PatternTintAndShade = 0

    End With

    ActiveCell.Offset(1, 0).Range("A1").Select

    With Selection.Interior

        .Pattern = xlSolid

        .PatternColorIndex = xlAutomatic

        .ThemeColor = xlThemeColorAccent6

        .TintAndShade = -0.249977111117893

        .PatternTintAndShade = 0

    End With

    ActiveCell.Offset(1, 0).Range("A1").Select

    With Selection.Interior

        .Pattern = xlSolid

        .PatternColorIndex = xlAutomatic

        .Color = 255

        .TintAndShade = 0

        .PatternTintAndShade = 0

    End With

    ActiveCell.Offset(1, 0).Range("A1").Select

    With Selection.Interior

        .Pattern = xlSolid

        .PatternColorIndex = xlAutomatic

        .ThemeColor = xlThemeColorAccent5

        .TintAndShade = -0.249977111117893

        .PatternTintAndShade = 0

    End With

    ActiveCell.Offset(-2, 0).Range("A1").Select

    ActiveCell.FormulaR1C1 = "FRANKY"

    ActiveCell.Offset(-2, 0).Range("A1:A5").Select

    Selection.Copy

    ActiveCell.Offset(5, 1).Range("A1").Select

    ActiveSheet.Paste

    ActiveCell.Offset(5, 1).Range("A1").Select

Next x

End Sub

Sub CASO1()

MsgBox ("Buenos Días") 'comando para sacar un mensaje en una caja'

ActiveCell.Value = 1000 'comando para escribir 1000'

ActiveCell.Offset(2, 3).Select

End Sub

Sub caso2()

'

' caso2 Macro

' Ejercicio de clase

'

' Acceso directo: Ctrl+Mayús+C

'

    ActiveWindow.SmallScroll Down:=3

    ActiveCell.FormulaR1C1 = "200"

    ActiveCell.Offset(1, 0).Range("A1").Select

    ActiveCell.FormulaR1C1 = "300"

    ActiveCell.Offset(-1, 0).Range("A1:A2").Select

    Selection.AutoFill Destination:=ActiveCell.Range("A1:A9"), Type:= _

        xlFillDefault

    ActiveCell.Range("A1:A9").Select

    ActiveWindow.SmallScroll Down:=3

...

Descargar como (para miembros actualizados) txt (8 Kb) pdf (2 Mb) docx (1 Mb)
Leer 6 páginas más »
Disponible sólo en Clubensayos.com