0% encontró este documento útil (0 votos)
64 vistas3 páginas

Notas Sobre Vba

El documento describe cómo definir y escribir macros en VBA para Excel. Explica que una macro se define usando SUB y END SUB y puede contener condicionales IF/ELSE. Luego muestra ejemplos de macros que escriben valores en celdas y borran el contenido de un rango, usando objetos como Range y Cells para referenciar celdas y hojas.

Cargado por

Exon Perez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
64 vistas3 páginas

Notas Sobre Vba

El documento describe cómo definir y escribir macros en VBA para Excel. Explica que una macro se define usando SUB y END SUB y puede contener condicionales IF/ELSE. Luego muestra ejemplos de macros que escriben valores en celdas y borran el contenido de un rango, usando objetos como Range y Cells para referenciar celdas y hojas.

Cargado por

Exon Perez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

- EN VBA UNA MACRO SE DEFINE DE LA SIGUIENTE MANERA:

SUB "nombre de la macro"()


ACA SE ESCRIBE TODO EL CODIGO
END SUB
IF CONDICION THEN
CODIGO CUANDO ES VERDADERO
ELSE
CODIGO CUANDO ES FALSO
END IF
EJEMPLO
SUB Nuevo()
ACA SALE VACIO
END SUB

ESCRIBIR "HOLA" EN LA CELDA A6 DE LA HOJA ACTIVA


El contenido de un rango
Range("rango").value
Range("A1").value="Hola" ' Se escribe Hola en A1 de la hoja activa
Range("A1:A20").value="Hola" ' Se escribe Hola en A1 hasta A20 de la hoja activa
Range("Datos").value="Hola" ' Se escribe Hola en en nombre de rango Datos

Sub Escribe()
Range("A6").value=”Hola”
End Sub

ESCRIBIR UNA MACRO QUE BORRE (ACCION….METODO) EL CONTENIDO DEL RANGO A1:A10 de la hoja
activa
Sub Borrar()
Rem ClearContents solo borra el contenido
Rem Si se usa Clear Esto elimina el contenido total, formatos, bordes, datos, etc.
Range("A1:A10").ClearContents
End Sub

Hacer la siguiente macro de un modo diferente


Sub Escribe()
Range("A6").value=”Hola”
End Sub

Vamos a usar Referencias F1C1 … A6 es F6C1


Sub Escribe1()
Rem Cells(Fila,Columna) .. Fila y la columna son números
Cells(6,1).value=”Hola”
End Sub
Sub Escribe20()
Cells(10,5).value=Range(“DNI”).value
End Sub
Almacena en la celda E10 de la hoja activa, el contenido del rango DNI

Las Macros Escribe y Escribe1 almacenan el dato en la hoja activa, ¿Y si se quiere almacenar en otra hoja,
por ejemplo la hoja “Historico”, como se haria o como se referencian los objetos?
Respuestas
Sub Escribe()
Worksheets(“Historico”).Range("A6").value=”Hola”
End Sub
Podemos estar en cualquier hoja y grabar en la hoja que necesitamos con tan solo indicar antes del objeto
Range o Cells la hoja destino usando el objeto Worksheets.

Sub Escribe()
Worksheets(“Historico”).Cells(6,1).value=”Hola”
End Sub

Si en el nombre de rango “EDAD” se encuentra la edad de una persona que comando usaria para que esa
edad se almacene en la celda C8 de la hoja “Planilla”. Use el objeto Cells.

Sub Copiar1()
Worksheets(“Planilla”).Cells(8,3).value=Range(“Edad”).value
End Sub

Si .Value se omite, VBA asume que es la propiedad Value


Ejemplo

Sub CopiarX()
Worksheets(“Planilla”).Cells(8,3)=Range(“Edad”)
End Sub

Escribir una macro que seleccione la celda B6 y luego le coloque negrita al valor de esa celda.

Sub Colorea()
Rem Select es un método que permite seleccionar una celda
Range(“B6”).Select
Rem se podria hacer de la siguiente Manera
Rem Range(“B6”).Font.Bold=True
Selection. Font.Bold=True
End Sub

También podría gustarte