Sunteți pe pagina 1din 20

FECHA: 13/06/19

FUNDAMENTOS DE Página 1 de 20
PROGRAMACIÓN

FUNDAMENTOS DE PROGRAMACIÓN

ACTIVIDAD – INVESTIGAR Y CONOCER LOS OBJETOS DE EXCEL: SUS PROPIEDADES Y


USOS

CORPORACION UNIVERSITARIA IBEROAMERICANA


INGENIERIA INDUSTRIAL

DOCENTE: BEATRIZ HELENA IBAÑEZ PINILLA

JEISON JULIAN VIRGÜEZ GUTIÉRREZ

2019
FECHA: 13/06/19

FUNDAMENTOS DE Página 2 de 20
PROGRAMACIÓN

Tabla de contenido
ACTIVIDAD – INVESTIGAR Y CONOCER LOS OBJETOS DE EXCEL: SUS PROPIEDADES Y
USOS ................................................................................................................................................................. 1
1. INTRODUCCION .................................................................................................................................. 3
2. OBJETIVO .............................................................................................................................................. 3
3. OBJETIVO DE EXCEL ......................................................................................................................... 4
4. CONCLUSIONES ............................................................................................................................... 20
5. REFERENCIAS BIBLIOGRÁFICAS................................................................................................. 20
FECHA: 13/06/19

FUNDAMENTOS DE Página 3 de 20
PROGRAMACIÓN

1. INTRODUCCION

En esta unidad se estudiarán los tipos de datos, variables, tipos de operadores, diagramas de flujo,
condicionales, diseño y verificación de algoritmos basados en el lenguaje de programación Visual Basic for
Applications -VBA.

2. OBJETIVO

Desarrollar soluciones a problemas mediante el análisis y diseño de modelos algorítmicos, con el fin de que
sean usados en su labor profesional.
FECHA: 13/06/19

FUNDAMENTOS DE Página 4 de 20
PROGRAMACIÓN

3. OBJETIVO DE EXCEL

OBJETO APPLICATION.
El objeto Application representa la propia aplicación de Microsoft Excel activa. El uso de este objeto
proporciona toda la información referida a la aplicación que está en uso. Es el objeto por defecto y,
por lo tanto, es generalmente opcional.
El objeto Application contiene:

Valores y opciones de toda la aplicación. Por ejemplo, muchas de las opciones del cuadro de diálogo
Opciones, del comando Herramientas.
Métodos que devuelven objetos de nivel superior, como ActiveRange, ActiveWorkBook, ActiveCell,
ActiveChart, ActiveSheet, etc.

Sintaxis:

Calificador [. Valor u opción] [. Método]


Donde Calificador es Application.
Las principales opciones de Excel pueden ser definidas a partir de propiedades del
objeto Application la mayoría de estas propiedades son de lectura.

PROPIEDADES:
Las propiedades del objeto application se divide en cuatro grupos:

• Propiedades que controlan el estado

• Propiedades que controlan la presentación

• Propiedades que devuelven objetos

• Propiedades que controlan la manipulación de los archivos

TIPO,
FUNCION
lectura/Escritura
Título de la ventana principal
Caption String, L/E
de Excel
Devuelve la carpeta donde
PROPIEDADES Path String, L
está instalado Excel
True/False. Muestra u oculta
DisplayStatusBar Boolean, L/E
la barra de estado
FECHA: 13/06/19

FUNDAMENTOS DE Página 5 de 20
PROGRAMACIÓN

True / False. Muestra u oculta


DisplayFormulaBar Boolean, L/E
la barra de fórmulas.
Devuelve o establece el texto
StatusBar String, L/E de la barra de estado. (False
si Excel tiene el control).
ARGUMENTOS FUNCION
Help Ninguno Activa la hoja especificada
Calculate HelpFile, [String, Integer] Muestra un tema
HelpContextId de ayuda.
METODOS Quit Ninguno Cierra Excel
Run Macro, arg1, [String] Ejecuta un
arg2, … Procedimiento, con sus
argumentos si se los incluye

Uso de algunos de ellos


ThisApplication.Calculate
• Permite ejecutar todos los libros abiertos
ThisApplication.Quit
• Permite salir del Excel mediante la programación
ThisApplication.Undo
• Permite cancelar la última acción realizada por el usuario.

OBJETO WORKBOOK.
Los objetos que son Workbook representa a los libros del propio Excel y a su vez este se puede
desplegar en varias hojas.

TIPO,
FUNCION
lectura/Escritura
Name Devuelve el Nombre del Libro.
Integer, L (Para cambiarlo usar el método
SaveAs)
Path Devuelve la Ruta de acceso al
Integer, L
PROPIEDADES archivo del libro
Author String, L/E Nombre del Autor del libro.
True / False. Si es False se
Worksheet, L han hecho cambios en el libro
Saved y no están salvados
FECHA: 13/06/19

FUNDAMENTOS DE Página 6 de 20
PROGRAMACIÓN

Devuelve el Número de libros


Integer, L de la colección de libros
Workbooks.Count abiertos
ARGUMENTOS FUNCION
Close SaveChanges, [Bool, String] Cierra el libro y lo
FileName guarda con un nombre si True.
Save Ninguno Guarda el libro con el nombre
actual
METODOS
SaveAs FileName [String] Guarda el libro con un
nuevo nombre
Add Ninguno Crea un nuevo libro vacío y lo
agrega a la colección
Activate Ninguno Activa el libro especificado

OBJETO WORKSHEET.
La colección Worksheets es el conjunto de todos los objetos Worksheet de un libro especificado o
activo. Las colecciones son objetos por sí mismos.
El objeto WorkSheet representa una hoja de cálculo. El objeto Worksheet también es un miembro de
la colección Sheets. La colección Sheets contiene todas las hojas del libro (hojas de gráficos y hojas
de cálculo).
Se usa Worksheets(índice), donde índice es el nombre o número índice de la hoja de cálculo, para
obtener un solo objeto Worksheet. El número de índice de la hoja de cálculo representa la posición
de la hoja en la barra de fichas del libro. Worksheets (1) es la primera hoja (en el extremo izquierdo)
del libro y Worksheets (Worksheets.Count) es la última.

TIPO,
FUNCION
lectura/Escritura
Worksheets. Propiedad de la colección.
Count Integer, L Devuelve el número de hoja de
la colección
Devuelve el índice numérico de
Integer, L la hoja dentro de la colección
Index de hojas.
PROPIEDADES
Name String, L/E Nombre de la hoja
Devuelve la siguiente hoja. (.
Worksheet, L
Next previous) la anterior
Devuelve un objeto Range con
Range, L el rango de la hoja que tiene
UsedRange datos
FECHA: 13/06/19

FUNDAMENTOS DE Página 7 de 20
PROGRAMACIÓN

ARGUMENTOS FUNCION
Activate Ninguno Activa la hoja especificada
Ninguno Recalcula todas las fórmulas de
Calculate
la hoja especificada
METODOS Delete Ninguno Elimina la hoja especificada
Password [String] Protege la hoja de
Protect
cálculo
Destination [Range] Pega el rango copiado
Paste
previamente en otro rango.

OBJETO RANGE.
El objeto Range se refiere a una celda específica, una celda activa, un conjunto de celdas (separadas
o juntas), o una fila entera o una columna.
Es decir, podemos aplicarla para seleccionar, dichas celdas, o bien para darles algún valor, o
aplicarles alguna fórmula.

TIPO,
FUNCION
lectura/Escritura
Devuelve el número de celdas
Count Integer, L contenidas en el rango
especificado.
El valor que tiene un rango. (Si
Cualquiera, L/E son varias celdas devuelve una
Value matriz).
Name String, L/E Nombre del rango.
PROPIEDADES Devuelve un objeto Range con
Range, L las celdas dependientes de
Dependents rango.
La fórmula contenida en el
String, L/E rango en forma de cadena de
Formula texto.
El valor formateado del rango
String, L
Text en forma de cadena de texto.
FECHA: 13/06/19

FUNDAMENTOS DE Página 8 de 20
PROGRAMACIÓN

Contiene los atributos de fuente


Object, L/E (. Name, size, Color, Bold,
Font Italic, Underline, etc.)
Se refiere al interior del Objeto
Object, L/E (. Color, Pattern, Pattern Color,
Interior etc.)
ARGUMENTOS FUNCION
Selecciona el Rango (de una o
Select Ninguno
más celdas).
Activa una sola celda que si
Activate Ninguno está en la selección actual no
cambia la selección.
Recalcula todas las fórmulas
Calculate Ninguno
del rango especificado.
[Range] Copia el rango en otro
Copy Destination rango. Si no se pone el destino,
METODOS
copia al portapapeles
[xlShiftToLeft / xlShiftUp]
Delete Varios opcionales Elimina el rango y desplaza
según indicación.
Borra los valores del rango,
ClearContents Shift pero mantiene el formato,
reglas, etc.
Pega el rango copiado. Se
PastSpecial Ninguno puede especificar lo pegado
(Valores, Fórmulas, etc.).

MÉTODOS DEL OBJETO APPLICATION

El objeto application dispone de algunos métodos que permiten realizar operaciones relacionadas
con la aplicación activa.
Entre estos métodos tenemos:
Calculate
CheckSpelling
Evaluate
MailSystem
Quit
Undo
FECHA: 13/06/19

FUNDAMENTOS DE Página 9 de 20
PROGRAMACIÓN

EJEMPLOS DE OBJETO APPLICATION

• Ejemplo 1:
Sub gastos ()
Application. Workbooks(«libro1»). Worksheets(«hoja1»). Range(«a1»). Value = «gastos directos»
End Sub

• Ejemplo 2:

Sub romeo ()
Application. Workbooks. Close
End Sub

• Ejemplo 3:

Application. Windows("apple.xls"). Activate

• Ejemplo 4:

Set xls = CreateObject ("Excel.Sheet")


xls. Application.WorkBooks. Open "apple.xls"

• Ejemplo 5:

application. calculation=xlcalculationautomatic
application. calculatebeforesave=true
application. calculatebeforesave=xlEscKey

• Ejemplo 6:

sub cambioseparadoressistema ()
range(“A1). formula= “1,234,567.89”
Msgbox “procedemos al cambio”
Application.decimalseparador= “_”
Application.thousandsseparator= ““
Application.usesystemseparators=false
End sub
FECHA: 13/06/19

FUNDAMENTOS DE Página 10 de 20
PROGRAMACIÓN

• Ejemplo 7:

Application.displayalerts=false
Workbooks(“libro1.xlsm”). close
Application.displayalerts=true

• Ejemplo 8:

application. enableevents=false
thisworkbook. save
application. enableevents=true

• Ejemplo 9:

Application.visible=false
Application.wait now + timevalue (“00:00:05”)
Msgbox” sigo trabajando”
Application.visible=true

• Ejemplo 10:

Set rangounion=Application.union(range (“A1:A20”), range (“C1:C20”))


Rangeunion.formula= “excelfour”

OBJETO WORKBOOK

El objeto WorkBook representa un libro en Excel. Como objeto, es un elemento de la clase o


conjunto WorkBook. Como clase o conjunto, WorkBook contiene todos los objetos WorkBooks
abiertos en un momento determinado en Microsoft Excel.

Muchos miembros de la clase Application se presentan también como miembros de la clase


WorkBook. En la clase WorkBook las propiedades se aplican a un libro específico en lugar de
aplicarse al libro activo.
FECHA: 13/06/19

FUNDAMENTOS DE Página 11 de 20
PROGRAMACIÓN

PROPIEDADES DEL OBJETO WORKBOOK:

a) Propiedad WorkBooks:

Devuelve todos los libros abiertos que


Se puede usar como
Application.WorkBooks.
O también simplemente
WorkBooks.

b) Propiedad ActiveWorkBook

Esta propiedad devuelve el libro activo; es decir, hace referencia al libro activo de tal forma que
cualquier acción que se pueda ejecutar, afectará al libro abierto y activo, dentro del grupo de libros
que pudieran estar abiertos.

c) Propiedad Open

WorkBooks.Open Nombre

Permite abrir un libro existente (ya grabado) cuyo nombre es "Nombre". Si el libro no se encuentra
en la unidad y carpeta en uso, el nombre del libro debe contener la ruta donde se ubica el libro

d) Propiedad Add

WorkBooks. Add- Esta propiedad permite crear un nuevo objeto libro el cual se convierte
automáticamente en libro activo.

EJEMPLOS DE OBJETO WORKBOOK

• Ejemplo 01

WorkBooks.Open FileName: ="jose.xls"

• Ejemplo 02

Workbooks.Open Filename: ="G:/Libros/Progmacros/amigos.xls"


FECHA: 13/06/19

FUNDAMENTOS DE Página 12 de 20
PROGRAMACIÓN

• Ejemplo 03

WorkBooks (2). Activate

• Ejemplo 04

Sub Libros01()
Workbooks.Open ("C:/Libro1.xls")
MsgBox Workbooks("Libro1.xls"). Name
Workbooks.Open ("C:/libro2")
Workbooks("Libro1.xls"). Activate
Workbooks("Libro2.xls"). Close
End Sub

• Ejemplo 5

MsgBox ("El nombre del libro activo es " & ActiveWorkBook. Name)

• Ejemplo 6

With ActiveWorkBook
Nombre =. Name
Ruta =. Path
Hoja Activa =. Sheets (1). Select
Proteger =. Protect
End With

• Ejemplo 7

Sub OpenUp ()
Workbooks.Open("C:\MyFolder\work.xls")
End Sub

• Ejemplo 8

Sub Libros02()
Workbooks.Open ("C:/Libro1.xls")
MsgBox Workbooks("libro1.xls"). Name
FECHA: 13/06/19

FUNDAMENTOS DE Página 13 de 20
PROGRAMACIÓN

Workbooks.Open ("C:/libro2")
ActiveWorkbook.Sheets. Copy
End Sub

• Ejemplo 9

Sub Duplica ()
Workbooks.Open ("C:/Libro1.xls")
ActiveWorkbook.Sheets. Copy
ActiveWorkbook.SaveAs "daniel.xls"
ActiveWorkBooks.Close
WorkBooks("Libro1.xls"). Close End Sub

• Ejemplo 10

MagBox ActiveWorkbook.Name Imprime el nombre del libro activo


ActiveWorkbook.SaveAs Graba el libro activo
ActiveWorkbook.Close Cierra el libro activo
MsgBox ActiveWorkbook.Path Imprime la ruta en donde se encuentra el libro activo.

OBJETO WORKSHEET

El objeto WorkSheet representa un libro en Excel. Como objeto, es un elemento de la clase o


conjunto WorkSheets. Como clase o conjunto, WorkSheets contiene todos los objetos WorkSheet
abiertos en un momento determinado en Microsoft Excel. Cada objeto WorkSheet representa una
hoja de cálculo.

PROPIEDADES DEL OBJETO WORKSHEET:

a) Propiedad WorkSheets

Esta propiedad devuelve el resultado de una acción realizada sobre una determinada hoja de cálculo
identificada por su nombre o por un índice en el argumento de esta propiedad.

Sintaxis:
WorkSheets(x). Método

Donde

x puede ser el número de hoja o el nombre de la misma.


FECHA: 13/06/19

FUNDAMENTOS DE Página 14 de 20
PROGRAMACIÓN

Método, es el método que se usará sobre la hoja x

b) Propiedad ActiveSheet

Esta propiedad permite hacer referencia a la hoja activa y extraer o modificar alguna de sus
propiedades mediante el uso de algunos métodos.

SINTAXIS:

ActiveSheet. Método

EJEMPLO DE OBJETO WORKSHEET

• Ejemplo 1

El siguiente ejemplo permite obtener el nombre de la hoja activa.

Sub Nombre ()
Worksheets (1). Activate
NombreHoja = Worksheets (1). Name
MsgBox NombreHoja
End Sub

• Ejemplo 2

WorkSheets (1). Activate


Permite activar la hoja 1 del libro activo

• Ejemplo 3

El siguiente ejemplo pide la ruta y nombre de libro a abrirse y activa la hoja 3 de dicho libro.
Sub Activar ()
Libro = Trim (InputBox ("Ruta y nombre del archivo"))
Libro = Libro + ".xls"
Workbooks.Open Filename: =Libro
Book = ActiveWorkbook.Name
Workbooks (Book). Worksheets("Hoja3"). Activate
End Sub
FECHA: 13/06/19

FUNDAMENTOS DE Página 15 de 20
PROGRAMACIÓN

• Ejemplo 4

El siguiente ejemplo permite añadir una nueva hoja. Moverlo después de la hoja 1 e imprimir el
número de hojas.

Sub MoverHoja ()
Worksheets (3). Activate
Worksheets. Add
NomHoja = ActiveSheet. Name
Worksheets (NomHoja). Name = "Ventas"
Worksheets.Move After: =Worksheets (1)
MsgBox Worksheets.Count
End Sub

• Ejemplo 5

En el siguiente ejemplo se activa la hoja 3 y se añade una nueva hoja a la izquierda de la hoja
activa.

Sub Nueva Hoja ()


Worksheets (3). Activate
Worksheets. Add
End Sub

• Ejemplo 6

En el siguiente ejemplo se oculta la hoja3 y luego de activar la hoja1, se cambia la orientación de la


hoja y se imprime después.

Sub Imprimir Hoja ()


Worksheets (1). Visible = False
Worksheets("Hoja3"). Activate
ActiveSheet.PageSetup. Orientation = xlLandscape
ActiveSheet.PrintOut
End Sub
FECHA: 13/06/19

FUNDAMENTOS DE Página 16 de 20
PROGRAMACIÓN

• Ejemplo 7

El siguiente ejemplo activa la tercera hoja, añade una nueva hoja y le cambia el nombre por "Ventas"
y luego imprime el nombre devuelto por el método Name

Sub Nuevo Nombre ()


Worksheets (3). Activate
Worksheets. Add
NomHoja = ActiveSheet. Name
Worksheets (NomHoja). Name = "coco"
MsgBox ActiveSheet. Name
End Sub

• Ejemplo 8

activa la hoja 2 (que es la segunda en secuencia), deposita un texto en B2 y activa el objeto Nueva
Hoja que es una hoja.

Sub asistencia ()
Dim Cadena As Variant
Cadena = ""
Set Nueva Hoja = Sheets. Add (Type: =xlWorksheet)
For i = 1 To Sheets.Count
Cadena = Cadena + Sheets(i). Name + Chr (10) + Chr (13)
Next i
MsgBox Cadena
Sheets (2). Activate
Range("B2") = “mundo"
NuevaHoja.Activate
Range("B3"). Select
End Sub

• Ejemplo 9

El Siguiente ejemplo añade una nueva hoja y luego muestra una lista de los nombres de las hojas,
en el orden en el que se encuentran, contenidas en el libro activo.

Sub Lista Hojas ()


Dim Cadena As Variant
Cadena = ""
Set Nueva Hoja = Sheets. Add (Type: =xlWorksheet)
FECHA: 13/06/19

FUNDAMENTOS DE Página 17 de 20
PROGRAMACIÓN

For i = 1 To Sheets.Count
Cadena = Cadena + Sheets(i). Name + Chr (10) + Chr (13)
Next i
MsgBox Cadena
End Sub

• Ejemplo 10

La siguiente declaración mueve todas las hojas a la derecha de la última hoja.

Worksheets.Move After: =Sheets (Sheets.Count)

La siguiente declaración permite inserter tres nuevas hojas antes de la primera hoja.

WorkSheets. Add Count: = 2, Before: = Sheets (1)

OBJETO RANGE

El conjunto Range representa una celda, un rango de celdas, una fila, columna sobre los cuales se
puede actuar modificando sus propiedades mediante la acción de una gran variedad de métodos
para devolver un objeto range.

PROPIEDAD RANGE:

como propiedades el objeto Range tiene las siguientes:


ActiveCell->representa la primera celda activa de la ventana activa (windowactive) o
especificada.
Areas->todos los rangos de una selección múltiple.
Cells->representa a una celda o selección de ellas.
Columns->representa las columnas de la hoja activa, o especificada, o del rango especificado.
Entire column/row->la columna/fila entera dentro del rango.
End->la celda situada al final del rango especificado.
Offset->la celda desplazada según un nº específico de fila/columna.
FECHA: 13/06/19

FUNDAMENTOS DE Página 18 de 20
PROGRAMACIÓN

SINTAXIS:

Range (Cadena). Método

Devuelve un objeto range que representa una celda o un rango de celdas.

El argumento Cadena representa a una celda o un rango de celdas

EJEMPLO OBJETO RANGE

• Ejemplo 1

Range("B3"). ClearComments ' Elimina el comentario insertado en B3

• Ejemplo 2

Range("B3"). ClearFormats ' Borra solo el formato de B3

• Ejemplo 3

MsgBox Range("E3"). Column ' Emite el número de columna; en este caso 5.

• Ejemplo 4

MsgBox Range ("J3:M21"). Column ' En este caso devuelve 10

• Ejemplo 5

Range("A1"). Select ' Activa o selecciona la celda A1

• Ejemplo 6

Range("A1"). Activate 'Activa o selecciona la celda A1

• Ejemplo 7

Range("A1"). Value ' Devuelve el valor o contenido de la celda A1


FECHA: 13/06/19

FUNDAMENTOS DE Página 19 de 20
PROGRAMACIÓN

• Ejemplo 8

Range("A1"). Value = Expresión ' Se asigna a la celda A1 el valor de Expresión.

• Ejemplo 9

El siguiente ejemplo permite ingresar los apellidos y nombres de una persona y luego los separa,
almacenándolos en celdas del Excel.

Sub Eje06
Sub Apellidos_Y_Nombres ()

Se ingresa los datos hacia una variable de cadena

Texto = InputBox ("Ingresa tus apellidos y nombres (Ap Am, Nombres)")

Se ingresa constantes de cadena en la primera columna

Range("A1") = Texto
Range("A3") = "Ap. Paterno"
Range("A4") = "Ap. Materno"
Range("A5") = "Nombres"

' Se extrae cada uno de los apellidos y nombres a partir del dato ingresado´

Range("B3") = Left (Texto, InStr (Texto, " "))


Range("B4") = Mid (Texto, InStr (Texto, " "), Len (Texto) - InStr (Texto, ",") - 6)
Range("B5") = Right (Texto, Len (Texto) - InStr (Texto, ","))
End Sub

• Ejemplo 10

Asignar un texto a la celda B3

Sub Ej01()
Workbooks("Libro1"). Worksheets (2). Range("B1") = "Hola Mundo B1 !!!"
End sub
FECHA: 13/06/19

FUNDAMENTOS DE Página 20 de 20
PROGRAMACIÓN

4. CONCLUSIONES

Se puede concluir que el propósito de la unidad es espera que los estudiantes realicen la entrega del
documento con la investigación realizada acerca de los objetos de Excel y sus propiedades, teniendo en
cuenta su definición y sintaxis para el respectivo desarrollo.

5. REFERENCIAS BIBLIOGRÁFICAS

(s.f.). Recuperado el 12 de 06 de 2019, de https://www.aulaclic.es/macros-excel/t_5_1.htm


(s.f.). Recuperado el 12 de 06 de 2019, de https://www.excel-avanzado.com/31631/workbook-
vba.html
(s.f.). Recuperado el 12 de 06 de 2019, de https://www.excel-avanzado.com/682/objeto-
application.html