Programación Visual Basic (VBA) para Excel y Análisis ... - TEC-Digital
Programación Visual Basic (VBA) para Excel y Análisis ... - TEC-Digital
Programación Visual Basic (VBA) para Excel y Análisis ... - TEC-Digital
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>VBA</strong> <strong>para</strong> <strong>Excel</strong> M.Sc. Walter Mora F., M.Sc. José Luis Espinoza B. 12<br />
• en <strong>VBA</strong> la sintaxis es 2 * x ^ 3 + Log(x) - Cos(x) / Exp(x) + Sin(x)<br />
Observe, por ejemplo, que la función logaritmo natural ln(x), en <strong>Excel</strong> se escribe LN mientras que en <strong>VBA</strong><br />
se escribe Log.<br />
Ejemplo 2: lectura de parámetros en celdas<br />
Una vez más vamos a trabajar con el modelo de crecimiento poblacional descrito anteriormente. La función<br />
con<br />
P (t) =<br />
K<br />
,<br />
1 + Ae−kt K − P0<br />
A = .<br />
Ahora evaluaremos P (t) <strong>para</strong> distintos valores del tiempo t en días, pero esta vez haremos dicha evaluación<br />
mediante una macro <strong>para</strong> definir P (t) .<br />
Los parámetros los vamos a leer desde unas celdas ubicadas en la columna C. Para hacer referencia a una celda,<br />
se usa el código<br />
P0<br />
Cells(fila,columna)<br />
pero escribiendo ‘columna’ en formato numérico. Por ejemplo, la celda C5 se invoca como<br />
Cells(5,3)<br />
Lo primero que hacemos es escribir, en el editor de <strong>VBA</strong>, la fórmula de P (t), luego la invocamos en la celda F3<br />
(de nuestra hoja de ejemplo) y arrastramos. Para ésto, se siguen los siguientes pasos:<br />
1. En primer lugar, abrimos una hoja <strong>Excel</strong>, que se llame por ejemplo Poblacion.xls. Luego se escriben<br />
los valores de los parámetros, tal y como puede observarse en la siguiente figura:<br />
Figure 1.12: Ubicación inicial de los parámetros.<br />
2. Ahora ingresamos al menú y en la opción Herramientas seleccionamos Macros. Luego se elige Editor de <strong>Visual</strong> <strong>Basic</strong>.<br />
Nuevamente, en el menú de la ventana que se abre, se elige Insertar, <strong>para</strong> luego seleccionar Módulo y<br />
escribir el siguiente código:<br />
Function P(t)<br />
P0 = Cells(2, 3) ’P0 est\’a en la celda C2<br />
LimPobl = Cells(4, 3) ’K est\’a en la celda C4<br />
k = Cells(5, 3) ’k est\’a en la celda C5<br />
A = (LimPobl - P0) / P0<br />
P = LimPobl / (1 + A * Exp(-k * t))<br />
End Function