21.12.2012 Views

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

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!