COMANDOS MACROS.pdf

150 views 13 slides Sep 16, 2022
Slide 1
Slide 1 of 13
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13

About This Presentation

Inicio en Macros y Visual Basic para técnicos, creación de formularios.


Slide Content

Media técnica en sistemas – [email protected]
A continuación, se indicarán algunos comandos e instrucciones para realizar macros en Excel mediante Visual
Basic.

1) Crear un botón que me lleve de una hoja a otra, utilizando programación de visual. Se hace los siguiente:

✓ En modo desarrollador o programador, clic en insertar, clic en “Botón de comando (control ActiveX)”
✓ Se hace el botón
✓ Para cambiar el nombre del botón, clic derecho sobre el botón y clic en propiedades o clic en el botón
propiedades en la cinta de opciones, y en la ventana propiedades que aparece, buscamos “Caption” y
cambiamos el nombre…

Media técnica en sistemas – [email protected]
NOTA: Todas las instrucciones
que queramos que se ejecuten al
abrirse el libro, se ubicaran en la
hoja ThisWorkbook en la
ventana de Visual Basic.





✓ Luego doble clic sobre el botón para programarlo. Cuando se realiza esto, se abre la ventana de Visual
Basic, para copiar el código a utilizar…

Si queremos por ejemplo, que al hacer clic sobre el botón se vaya a la hoja con el nombre “dos”, la instrucción
sería:

Private Sub IR_Click()
Sheets("DOS").Select
End Sub

DOS será el nombre de la hoja hacia dónde queremos que vaya al hacer clic sobre el botón, que debe estar
entre comillas.


2) Para que un libro de Excel al abrirlo, siempre abra una hoja predeterminada, se realiza lo siguiente:

✓ Se ingresa a la ventana de Visual Basic
✓ Se hace clic en el libro ThisWorkbook
✓ En botón objeto, seleccionamos “Workbook”












Al seleccionar el objeto “Workbook” se activará automáticamente el Procedimiento “Open” donde indicaremos
el procedimiento a seguir al abrirse el libro.

Media técnica en sistemas – [email protected]

En medio de esto, debemos indicar la hoja que queremos que sea la hoja activa, es decir, que se abra al abrir el
libro; para ello escribimos: Sheets ("UNO").Activate
Donde “UNO” será el nombre de la hoja que queremos se abra.


3) Cuando creamos archivos donde no es necesario mostrar los nombres de las hojas, estos códigos nos sirven
para ocultar o mostrar las etiquetas de dichas hojas en Excel.

ActiveWindow.DisplayWorkbookTabs = False (Ocultar etiquetas de hojas)
ActiveWindow.DisplayWorkbookTabs = True (Mostrar etiquetas de hojas)

Si ya tenemos algunas instrucciones en la hoja ThisWorkbook, solo abrimos espacio antes del sub que indica la
finalización de las instrucciones…

Si voy a colocar la instrucción de ocultar etiquetas de hojas al abrir el libro, y encuentro lo siguiente:







Entonces debo abrir espacios y colocar la instrucción, así:
Si tuviese que introducir otra instrucción,
seguiría abriendo espacios, lo importante es
siempre antes del sub




4) Mostrar y ocultar títulos: Si queremos ocultar los títulos de filas y columnas con macros debemos utilizar los
siguientes códigos:

ActiveWindow.DisplayHeadings = False ...(Oculta títulos de filas y columnas)
ActiveWindow.DisplayHeadings = True ...(Muestra títulos de filas y columnas)

Media técnica en sistemas – [email protected]
Si lo cierro y lo vuelvo abrir, como ya he colocado los
códigos que se ven en la ventana de arriba, se verá
así: (Sin las columnas y filas y sin los nombres de
las hojas)



De esta manera, al abrir el libro se vera de la
siguiente manera:

Media técnica en sistemas – [email protected]
5) Application.ScreenUpdating = False
Código que utilizaremos al iniciar una macros, que realicemos con la “Grabadora de Macros”, para evitar el
parpadeo de pantalla.

6) Selection.ClearContents
Código para limpiar el contenido de un rango de celdas.

EJEMPLO:

Si quisiera crear un botón que me borre el
contenido de las celdas encerradas, rango
(C3:C9), y que al borrar no parpadee la pantalla,
haría los siguiente:

En visual Basic, insertaría un módulo:





Luego en dicho modulo escribo el siguiente
código:



Asigno la macros a un botón:

Media técnica en sistemas – [email protected]

Media técnica en sistemas – [email protected]

COMANDOS PARA CREAR MACROS MANUALMENTE


Para crear macros manualmente, en Excel vamos a la pestaña Desarrollador (Programador) y se hace clic en
“Visual Basic” en la Ventana que se abre, se hace clic en INSERTAR luego en MODULO, en la ventana derecha se
da una NOMBRE a la macro iniciando con la palabra SUB y terminando con paréntesis. Al presionar ENTER
aparece automáticamente el cierre de la macro que es End Sub Ej.




COMANDOS:

Seleccionar en la hoja activa:

Una Celda → Range(“Celda”).Select Ej: Range(“A1”).Select
Una Hoja → Sheets(“Hoja”).Select Sheets(“Hoja1”).Select ó el nombre que tenga la hoja
Guardar un libro y Salir:
ThisWorkbook.Save
Application.Quit

Guardar con el nombre del valor de una celda:
ActiveWorkbook.SaveAs Filename:=Range("C9").Value

Media técnica en sistemas – [email protected]

Mostrar u Ocultar:
Columnas: Columns("E:E").EntireColumn.Hidden = True (Oculta) → (False = Mostrarla)
Hojas: Sheets("nombre de la hoja").Visible = False or True
Pestaña de las hojas (Etiquetas): ActiveWindow.DisplayWorkbookTabs = False or True
Encabezados de columnas y filas: ActiveWindow.DisplayHeadings = False
Barra de fórmulas: Application.DisplayFormulaBar = False

Borrar el contenido de una Celda: Range("D7").ClearContents (Tambien se puede un rango o nombre de
rango)

Para activar una hoja, es decir, que se abra, se utiliza el comando actívate
Sheets("nombre de la hoja").Activate, Tambien se puede Utilizar “Select”

Formato de Celdas:
Range("D4").Select →Selecciona la celda o rango de celdas a dar formato
With Selection.Font
.Color = -16776961 →Color de la letra
.TintAndShade = 0
End With
Selection.Font.Size = 20 →Tamaño de la letra
Selection.Font.Bold = True → Colocar la letra en Negrita
Selection.Font.Italic = True →Cursiva
Selection.Font.Underline = xlUnderlineStyleSingle → Subrayado

Media técnica en sistemas – [email protected]
Para hacer que una instrucción se ejecute al abrirse el libro, se escribe en: ThisWorkbook


Para copiar el valor de una celda a otra en el mismo libro:
Range("E12").Select Selecciona la celda que va a copiar
Selection.Copy Copia la celda seleccionada
Range("G12").Select Selecciona la nueva celda donde se a pegar
ActiveSheet.Paste Pega en la celda seleccionada de la hoja activa
Range("G12").Select Selecciona la celda activa
Application.CutCopyMode = False Quita la selección de la celda copiada.

Copiar el valor de una celda una celda de otra hoja:
Range("E12").Select Selecciona la celda que va a copiar
Selection.Copy Copia la celda seleccionada
Sheets("Hoja3").Select Selecciona la hoja
Range("B13").Select Selecciona la celda en la hoja indicada
ActiveSheet.Paste Pega en la celda seleccionada de la hoja activa
Application.CutCopyMode = False Quita la selección de la celda copiada.

Media técnica en sistemas – [email protected]
FORMULARIOS: Visual Basic de Excel permite crear formularios con controles, que permiten ingresar
información a una hoja de excel

Crear FORMULARIOS

Media técnica en sistemas – [email protected]

Media técnica en sistemas – [email protected]



Private Sub ENVIAR_Click()
For I = 2 To 700
If Cells(I + 1, 1).Value = "" Then
Cells(I + 1, 1).Value = TextBox1
Cells(I + 1, 2).Value = TextBox2
Cells(I + 1, 3).Value = TextBox3

Media técnica en sistemas – [email protected]
Cells(I + 1, 4).Value = TextBox4
Exit For
End If
Next
End Sub

Botón NUEVO:
TextBox1=Empty
TextBox2=Empty
TextBox3=Empty
TextBox4=Empty

TextBox1=SetFocus

Botón para cargar formulario
Nombredelformulario.Show

Botón CANCELAR
Unload me