0% encontró este documento útil (0 votos)
58 vistas15 páginas

Clase 2

El documento detalla un curso sobre macros en Excel utilizando Visual Basic, incluyendo temas como la introducción al editor, normalización, desarrollo de lógica y algoritmos, así como la creación de procedimientos y funciones. También se abordan conceptos fundamentales como operadores, estructuras de control, definición de variables, indentación y comentarios. Finalmente, se presentan ejemplos prácticos de procedimientos y el uso de referencias como el complemento Solver para optimización en cálculos.
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 PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
58 vistas15 páginas

Clase 2

El documento detalla un curso sobre macros en Excel utilizando Visual Basic, incluyendo temas como la introducción al editor, normalización, desarrollo de lógica y algoritmos, así como la creación de procedimientos y funciones. También se abordan conceptos fundamentales como operadores, estructuras de control, definición de variables, indentación y comentarios. Finalmente, se presentan ejemplos prácticos de procedimientos y el uso de referencias como el complemento Solver para optimización en cálculos.
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 PDF, TXT o lee en línea desde Scribd

MACROS EN EXCEL CON VB

Clase Fecha – Fecha – Tema


# Grupo 1 Grupo 2
1 19-ene-14 1-feb-14 Introducción general - Editor de Visual Basic - Macros
2 8-feb-14 2-feb-14 Normalización- desarrollo- Lógica - Algoritmos
3 9-feb-14 22-feb-14 Lenguaje 1 - Proyecto
4 1-mar-14 23-feb-14 Lenguaje 2 - Proyecto
5 2-mar-14 15-mar-14 Lenguaje 3 - Proyecto
6 22-mar-14 16-mar-14 Lenguaje 4 - Proyecto
7 23-mar-14 5-abr-14 Conexiones a objetos - Proyecto
8 12-abr-14 6-abr-14 Objetos ActiveX - Proyecto
9 13-abr-14 26-abr-14 Interacción objetos ActiveX y BD - Proyecto
10 3-mayo-14 27-abr-14 Revisión Proyecto
Por: Sergio Rosales
Ing. Civil
Esp. Estructuras
[Link]. Geotecnia
Definiciones básicas
Vector: Caso especifico de un arreglo para una sola dimensión.
Función: Subprograma o subrutina que realiza una tarea específica y
devuelve un valor
Proceso: Es un programa en ejecución, los procesos son creados y
destruidos por el sistema operativo, así como también este se debe
hacer cargo de la comunicación entre procesos, pero lo hace a
petición de otros procesos.
Diagrama de flujo: Forma de representar gráficamente los detalles
algorítmicos
Concatenación: Unir o enlazar cadenas.
OPERADORES Y ESTRUCTURAS DE
CONTROL
Operadores lógicos: Operadores comparativos:
NOT: Negación <: Menor que <=: Menor o igual que
AND :Y >: Mayor que >=: Mayor o igual que
OR: O =: Igual que <>: Distinto que

Operadores aritméticos: Las sentencias condicionales:


^ :Exponenciación. If y select case
*: Multiplicación /: División
\ :División entera MOD :Módulo Sentencias de interacción y bucles:
(residuo de la división entera) for, do, while
+ :Suma - :Resta

Operadores alfanuméricos:
&: Concatenan textos.
PROCEDIMIENTOS
Subrutinas:
Permiten realizar una tarea o procedimiento, el cual no retorna ningún valor, se declara
por medio de la palabra reservada SUB y se concluye con END SUB.
Ejemplo:

SUB Saludar()
...
END SUB

Funciones:
Permiten realizar un procedimiento, el cual retorna algún valor, se declara por medio de
la palabra reservada FUNCTION y se termina con END FUNCTION.
Ejemplo:

FUNCTION Sumar(a,b)
...
END FUNCTION
Diagrama de Flujo
Los Diagramas de flujo se dibujan generalmente usando algunos símbolos estándares; sin
embargo, hay símbolos especiales que pueden ser desarrollados cuando sean requeridos. Los
símbolos estándares, usados con frecuencia para diagramar programas de computadora se
muestran a continuación:
Definición de Variables
Es importante, el dar nombre apropiados a las variables, dado que variables
pobremente nombradas dificultan la lectura del código fuente y su comprensión.
Algunas reglas básicas:

- No pueden empezar por números, ni contener caracteres extraños.


ej. (ESPACIO, ñ, tildes, #, $, % , &, /, !...)
- La primera letra debe se en minúscula y las palabras consiguientes deben tener la
primera letra en mayúsculas.
ej. miVariableContadora
- Evitar el uso de “_”.
ej. mi_variable_Contadora
- Debe contener un nombre claro de lo que representa.
ej. contRegistros
-Siga el mismo esquema de acotamiento dentro de todas sus variables. ej. tempVect,
contVect ó temVec, conVec
Definición de Funciones y Archivos
Dar nombres descriptivos a las funciones, es esencial para una comprensión
simple del código Algunas reglas básicas:

- La primera letra debe se en Mayúscula y las palabras consiguientes deben tener


la primera letra en mayúsculas.
ej. MiFuncionDescrita()
- Debe contener un nombre claro de lo que representa.
ej. ValorM aximoVector(VMVVec, VM VTam)
- Siga el mismo esquema de acotamiento dentro de todas sus funciones.
ej. ValM axVec ó VM Vector
- Los parámetros deben contener nombres que definan su utilidad y que hagan
referencia a la función.
Indentación
- Utilice la característica de lista descriptiva para dar formato al código con la configuración
predeterminada (sangría automática, sangrías de 4 caracteres, guardar tabuladores como
espacios).
Para obtener más información, vea Opciones específicas de VB, Basic, Editor de texto,
Opciones
(Cuadro de diálogo).
- Utilice sólo una instrucción por línea. No utilice ":".
- Utilice sólo una declaración por línea.
- Aplique una sangría de una posición de tabulación a las líneas de continuación.
- Agregue al menos una línea en blanco entre el método y las definiciones de propiedad.
Mal ejemplo:
if(horas<24 AND minutos<60 AND segundos<60) then: return true
Else:return false:End if
Buen ejemplo:
If (horas < 24 AND minutos < 60 AND segundos < 60) then
return true
else
return false
End if
Comentarios
La documentación o comentarios de cualquier proyecto de software es un punto clave que
puede definir en gran parte la calidad del software. Una buena documentación de nuestro
código nos facilitará la depuración y en caso de requerir una porción de código para otro
progama se podrá acceder a este fácilmente:
Tenga en cuenta:
- No utilice comentarios al final de una línea de código. Sitúe los comentarios
en una línea independiente.
- Comience el texto del comentario con una letra mayúscula.
- Finalice el comentario con un punto.
- Inserte un espacio entre el delimitador de comentario (') y el texto del
comentario.

Ejemplo comentario de variables:


' contArt: contador de cantidad de articulos.
' peso: en gramos, es el peso del articulo.
Dim contArt as Integer
Dim peso As Double
Referencias
Son funciones o procedimientos especiales no incluidos por defecto en Excel y que se pueden
referenciar a nuestra macro para hacer uso de ellos en nuestros cálculos. Un ejemplo de
complemento muy útil es Microsoft Excel Solver, a continuación detalles de referencia y uso:
Referencias - Solver
En el menú “Data” aparece la función “Solver”

Celda objetivo “Solver” ayuda a


determinar el valor óptimo
para una fórmula en una
ceda objetivo
determinada, variando
iterativamente los valores
Celda variable de la celda variable y
verificando que se
Restricciones o cumplan las restricciones
condiciones del cálculo dadas.
Referencias - Solver
Ejemplo para el cálculo del ancho de pilar óptimo en un proyecto con minador de pared alta.

FS=[Pc*(0.64+0.54(w/h)]/[σyy(w+b)/w]

Celda variable Celda objetivo, debe


contener una fórmula
FS > 1.60
Restricciones o
condiciones del cálculo w/h ≥ 1.60
FSgl ≥ 2.00
Taller 1: Insertar un procedimiento
Ya hemos dicho que un procedimiento es un bloque de instrucciones de código que sirven para
llevar a cabo alguna tarea específica. Un procedimiento empieza siempre con la instrucción

Sub Nombre_Procedimiento
Y termina con la instrucción
End Sub.

A continuación crearemos un procedimiento para poner el texto "Hola" en la casilla A1.

Ejemplo 1

Sub Primero
Range("A1").Value = "Hola"
End Sub
Taller 1: Insertar un procedimiento
Recuerde que el conjunto Range es un objeto que pende del objeto WorkSheets, así por
ejemplo el siguiente código haría lo mismo que el anterior.

WorkSheets(1).Range("A1").Value = "Hola“

Si desea hacer referencia a la hoja activa puede utilizar ActiveSheet, así, el primer ejemplo lo
dejaremos de la manera siguiente.

Sub Primero
[Link]("A1").Value = "Hola"
End Sub

Si desea poner "Hola" (o cualquier valor) en la casilla activa, puede utilizar la propiedad (objeto)
Activecell de WorkSheets. Así para poner "Hola" en la casilla activa de la hoja activa seria,

Sub Primero
[Link] = "Hola"
End Sub

También podría gustarte