Professional Documents
Culture Documents
Lo primero que hay que realizar es visualizar la barra de herramientas de Visual Basic para
Excel. De todos los botones de dicha barra de herramientas slo interesan tres de ellos, los tres
descritos en la Figura 7. 1.
Prctica 7 de Excel
Informtica
Las Hojas de Clculo en Topografa II Comenzar grabacin
Para grabar una macro se pulsa en el botn de comienzo de grabacin y, ATENCIN!, todas
las acciones que se lleven a cabo a partir de ese momento quedarn almacenadas en la macro hasta
que se pulse el botn de detencin de la grabacin. Para verlo ms claro realizar el siguiente ejerci-
1 Introduccin
cio:
A veces es interesante poder disponer de la posibilidad de automatizar ciertos procesos o mtodos Ejercicio
que se realizan con una hoja de clculo por varios motivos:
1. Abrir un libro de trabajo nuevo.
porque se repite siempre el mismo proceso, siendo este largo; 2. Visualizar la barra de herramientas Visual Basic para Excel si no est visible ya.
para facilitar la interaccin de un usuario inexperto con nuestra hoja de trabajo, etc. 3. Pulsar el botn de comenzar grabacin de la barra de herramientas.
La automatizacin de tareas se realiza mediante Macros y ese va a ser el primer punto que se va 4. Aparecer un cuadro de dilogo que solicita un nombre para la macro, si no se le da ninguno,
a ver en esta Unidad Temtica. la macro permanecer con el nombre de Macro1 (en caso de que sea la primera).
5. Atencin!, seguir los pasos siguientes sin realizar ninguna otra operacin que no sea la des-
En segundo lugar, se va a construir un libro de trabajo compuesto por ocho hojas de clculo. Es- crita:
te libro de trabajo va a constituir lo que se podra denominar como un cuaderno de campo y va a ser
de gran utilidad a la hora de tomar y procesar datos de campo que incluyen el clculo de poligona- Activar la Hoja2 del libro de trabajo.
les y de radiaciones encuadradas y orientadas. Pulsar el botn de detencin de la grabacin.
6. Una vez grabada la macro se comprueba su funcionamiento, para ello, pasar a la Hoja1 de
2 Macros y objetos de dilogo nuevo y pulsar el botn ejecutar macro. Aparece un cuadro de dilogo con una lista de ma-
La automatizacin de tareas consiste bsicamente en agrupar varias acciones que se ejecutan con- cros, que en nuestro caso slo contiene una macro. Seleccionarla y pulsar el botn de Ejecu-
secutivamente en una sola accin. Cada vez que se solicita la ejecucin de dicha accin o Macro se tar. Se puede observar que se pasa a la Hoja2 del libro de trabajo ya que sta era la nica ac-
ejecutan todas las tareas agrupadas y almacenadas en dicha macro una detrs de otra. cin que se haba guardado en la macro.
Mediante la introduccin de elementos u objetos de dilogo se le puede facilitar la tarea de Puede observarse que ha aparecido una hoja de clculo nueva llamada Modulo1. En realidad,
comunicacin a un usuario inexperto con la hoja de clculo que se ha diseado. no es una hoja de clculo como las dems, en ella aparece el cdigo Visual Basic que corresponde
a la accin grabada en la macro. Un programador de Visual Basic debera escribir ese cdigo para
Ambos elementos se van a explicar en los dos subapartados siguientes.
expresar en su programa la accin que significa activar la Hoja2 del libro de trabajo actual:
2.1 Macros
'
La forma de construir una macro es muy sencilla. Las macros actan como cintas de casete donde ' Macro1 Macro
estn almacenadas las acciones que componen la macro una detrs de otra. El mtodo de almace- ' Macro grabada 27/03/98 por mi
namiento de dichas acciones tambin es parecido al mtodo utilizado para grabar las cintas de case- '
te. '
La utilizacin de macros constituye un primer paso en la programacin mediante Visual Basic, Sub Macro1()
un lenguaje de programacin que sirve precisamente para eso, para automatizar tareas y crear inter- Sheets("Hoja2").Select
faces que permitan a los usuarios de las aplicaciones de Microsoft dialogar con la aplicacin de End Sub
manera ms sencilla y cmoda. La utilizacin de toda la potencia de Visual Basic se escapa al m- Como se ha podido observar, es posible aproximarse a la programacin sin necesidad de escribir
bito docente de este curso por lo que no se va a ver en detalle, pero si se van a presentar algunas de un programa. No siempre es posible esto, pero mientras lo sea hay que utilizarlo as.
las caractersticas ms simples de este lenguaje de programacin aunque no por ello menos tiles.
Evidentemente, la macro creada en el ejemplo anterior no tiene demasiada utilidad. En el si- Ejercicio
guiente ejercicio se crean varias macros algo ms tiles. 1. Visualizar la barra de Dilogo.
Ejercicio
1. Abrir el libro de trabajo de la prctica 6 en el que se calculaban reas por el mtodo del Seno.
El problema de este cuaderno de campo es que, en principio, slo sirve para medir tres tringulos.
Si un usuario desea medir ms tringulos tiene que insertar filas nuevas. Una forma de hacerlo
es creando una macro que realice esta operacin automticamente de la manera descrita en los
siguientes puntos: Herramienta botn
2. Antes de continuar es necesario insertar 4 filas vacas por motivos que luego se conocern. 3. Seleccionar la herramienta para crear un botn y a continuacin crear el botn de la misma
Seleccionar la fila 1 e insertar nueva fila cuatro veces de manera que el cuadro de texto manera que se crea un grfico, es decir, pinchando y arrastrando de manera que tenga el tama-
ANGULOS comience en la fila 6. o justo del rango de celdas B2:B4 (pinchar y arrastrar con la tecla Alt. pulsada).
3. Comenzar la grabacin de la macro (botn la barra de herramientas de Visual Basic para 4. Una vez creado el botn, aparece el cuadro de dilogo siguiente:
Excel). Cuando aparezca el cuadro de dilogo Grabar nueva macro darle el nombre Nuevo-
ngulo. Aceptar y realizar los siguientes pasos estrictamente:
Seleccionar toda la fila 13 (pulsando sobre el nmero trece).
Copiar la fila.
Seleccionar toda la fila 14.
Insertar las filas copiadas (por ejemplo, mediante el men contextual).
Seleccionar el rango B14:D14 y borrar el contenido.
Detener la grabacin de la macro.
4. Una vez hecho esto, se dispone de una macro que inserta una nueva fila vaca y con el formato
adecuado para introducir los datos de un nuevo ngulo medido sobre el terreno. Ahora, el
usuario slo tiene que cambiar el nombre del ngulo (celda A14). Para esto, tambin hay que
tener en cuenta que el rango A11:A14 va a ser de entrada de datos, por lo que dichas celdas no
han de estar bloqueadas.
5. Ahora, construir otras dos macros para introducir nuevos lados (macro NuevoLado) y nuevos
tringulos (macro NuevoTringulo).
6. Para terminar, borrar las nuevas filas creadas durante la grabacin de las macros para dejar la solicitando que se le asigne una macro a dicho botn; seleccionar la macro Nuevongulo y
hoja exactamente como estaba. pulsar Aceptar.
2.2 Objetos de dilogo
5. Una vez realizado esto, cambiar el nombre del botn. Para ello, hay que pulsar sobre el botn
con el botn derecho del ratn para que aparezca el men contextual correspondiente. En rea-
Una forma sencilla de ejecutar macros, al menos para que un usuario inexperto pueda utilizar f- lidad, no se desea ejecutar ninguna opcin de este men, pero as se consigue entrar en el mo-
cilmente la hoja de clculo diseada, consiste en la introduccin de objetos de dilogo. Los objetos do de edicin del botn y poder cambiar su nombre. Pulsar sobre Botn1 y cambiarlo por el
de dilogo son elementos que estamos utilizando continuamente mientras interaccionamos con texto:
cualquier aplicacin en Windows. Estos elementos son los que nos permiten introducir datos, reali-
zar acciones, recibir informacin, etc. No son ni ms ni menos que los mens desplegables, los Nuevo
botones, la cajas de dilogo, etc. Todos ellos son objetos que, adems de ser utilizados, pueden ser ngulo
construidos por un usuario con mnimos conocimientos de programacin en Visual Basic. 6. Una vez realizado esto. Crear los botones para las macros NuevoLado y NuevoTringulo en
Las posibilidades son muy grandes. Sin embargo, en este curso slo se van a ver algunos de es- los rangos D2:D4 y F2:F4 respectivamente siguiendo el proceso descrito. Al final quedar de
tos aspectos. En concreto, se van a construir los elementos de dilogo conocidos como botones. la siguiente manera:
Los elementos de dilogo pueden ser construidos mediante la barra de herramientas de Dilogo.
Para ver ms claro cmo hacerlo vamos a volver sobre la hoja de clculo del libro de trabajo ante-
rior en el que se calcula el rea de un terreno plano por el mtodo del Seno.
La estructura de las hojas puede contemplarse en la Figura 7. 2, pero, para entender mejor esta
estructura y como funciona, lo mejor es empezar por la realizacin de la primera hoja de clculo
que se describir con algo ms de detalle.
Sera necesario depurar ms el programa para que la hoja de clculo fuese realmente til y fcil
de manejar. Adems, la insercin de filas no es del todo correcta como puede observarse si se in-
cluyen demasiadas filas.
No obstante, el ejemplo sirve para entender los conceptos y conocer su utilizacin. Por otro la- Botones de Zona de datos y clculos
do, no siempre se pueden asignar acciones a elementos de dilogo como los botones mediante ma- accin
cros. En un estado avanzado del diseo puede ser necesario escribir directamente el cdigo en Vi-
sual Basic sin otro remedio.
3.2 Primera Hoja: Ttulo de la aplicacin e ndice SENSIBILIDAD: Nota: Unidad en segundos sexagesimales.
Esta primera hoja de clculo nicamente tiene una serie de botones con macros asignadas que van a
APRECIACIN: Nota: Unidad en segundos centesimales.
servir para desplazarse al resto de las hojas de clculo. Puede observarse en la Figura 7. 3.
MNIMA UNIDAD DE LECTURA: Nota: (no hace falta nota).
Cada uno de los botones de la zona de datos y clculo sirve para activar una hoja de clculo dis-
tinta. Todos ellos llevan una macro asignada que consiste nicamente en activar la hoja de clculo ESTACIONAMIENTO Y SEAL: Nota: Por omisin se toma 2.
que referencian. Antes de asignar macros a los botones es necesario que las hojas estn creadas por
lo que es mejor dejar esto para el final, cuando las hojas de clculo estn creadas. DISTANCIA MEDIA DE VISUALES: Nota: Este dato lo introduce el sistema de forma
automtica.
En la zona de botones de accin figuran dos botones que sirven para guardar el libro de trabajo
y salir de la aplicacin respectivamente. Al botn guardar se le puede asignar una macro grabndo- CONSTANTE DIASTIMOMTRICA: Nota: K: 50, 100, 150, 200.
la como en los casos anteriores.
Para el botn salir, es necesario editar el cdigo de la macro para modificarlo a mano. Una for-
ma rpida y eficiente de hacerlo es grabar una macro que no realice ninguna accin, por ejemplo,
grabando y deteniendo la grabacin sin llevar a cabo ninguna accin. Esto crear una macro vaca
que se puede modificar en la hoja que aparece con el nombre de Mdulo1 de manera que quede
como sigue:
Sub SALIR()
'
' SALIR Macro
' Macro grabada el 30/03/98 por dsic
'
ActiveWorkbook.Close
'
End Sub
Por ltimo, realizar todas las acciones pertinentes para que el formato quede lo ms parecido
posible al de la Figura 7. 3.
Todos los clculos estn perfectamente descritos en la hoja de clculo mediante las frmulas,
frmulas que se pueden encontrar en cualquier libro de apuntes de Topografa Aplicada. No obs-
tante, para facilitar la labor del usuario es bueno poner las frmulas tal y como aparecen en la
Figura 7. 5. La forma de hacerlo es muy parecida a la seguida para insertar la imagen del Clip Art.
Hay que insertar un objeto que en este caso ser una ecuacin (Insertar/Objeto/Micorsoft Editor de
Ecuaciones 2.0). Al realizar esta accin, aparecer el Editor de Ecuaciones de Microsoft y se
puede construir la frmula descrita en la hoja. La utilizacin del editor de ecuaciones es sencilla e
intuitiva por lo que no es necesario realizar ms comentarios.
Para facilitar la labor del diseador de la hoja de clculo se describen a continuacin las varia-
bles utilizadas en las frmulas anteriores.
S: Sensibilidad.
Ee + Es: Estacionamiento y seal.
Dmed: Distancia media de visuales.
A: Aumentos.
a: Apreciacin.
Con esto queda finalizada la descripcin de la tercera hoja de clculo. Ahora es necesario reali-
zar todas aquellas modificaciones de formato que sean necesarias para dejarla lo ms parecida po-
sible a la Figura 7. 5.
Figura 7. 6 Cuarta hoja: Datos de la poligonal.
La columna R contiene las distancias reducidas. Insertar una nota en la celda que aparece con ac
el concepto REDU. que diga distancias reducidas. Estas distancias reducidas se calculan como Ix = sen pdr
200
sigue:
ac
Iy = cos pdr
av 200
Si la Lectura de hilos central est vaca: sen dg siendo dg la distancia geom-
200
siendo ac el azimut compensado y pdr el promedio de la distancia reducida.
trica.
La compensacin para x es Ix-COMP.PARA X.
Si la Lectura de hilos central no est vaca pero s la distancia geomtrica entonces se
La compensacin para y es Iy-COMP.PARA Y.
av
calcula como: sen 2 Lhc K siendo Lhc la Lectura de los hilos central y K la
200 Entonces, para la x (columna M) se tiene que sta es el origen de coordenadas de referencia
constante diastimomtrica. ms el valor compensado de Ix. Y lo mismo para la y (columna N).
En la columna DESN. se calcula lo siguiente: Para la ltima columna slo queda poner el nmero de estacin.
El valor del azimut de salida es el valor del primer azimut para los ejes 1 y 8 (celda D8), mien-
1
dr + aI aP tras que el azimut de llegada es el ltimo de los azimutes tomados tambin para los ejes 1 y 8. El
av error angular es la diferencia entre los anteriores.
tg
200
El origen de las coordenadas de referencia son constantes (utilizar por ejemplo para este caso
siendo dr la distancia reducida, aI la altura del instrumento y aP la altura del prisma. 500).
Por ltimo, hay que dividir la hoja de manera que quede separada la zona de datos y clculos y El error angular de la celda E31 es un enlace al error calculado en la celda G28.
fijar las secciones (dividir entre las filas 7 y 8). De esta manera, ser posible desplazarse vertical- El error de Ix es la suma de los valores de la columna Ix mientras que el error de Iy es la suma
mente por los datos sin que se muevan las cabeceras de las columnas donde estn los ttulos. de los valores de la columna Iy.
3.6 Quinta Hoja: Clculo de la poligonal y compensaciones La compensacin angular es el error angular dividido por C8-1, es decir, el nmero de esta-
Todos los datos de esta hoja son clculos realizados en base a la hoja anterior, por lo tanto, no exis- ciones menos 1.
te entrada de datos. A continuacin se describe el procedimiento para construirla (Figura 7. 7). La compensacin para X es el error de Ix dividido por el nmero de estaciones. La compen-
Las primeras dos columnas son enlaces a las dos columnas homlogas de la hoja anterior ya que sacin para Y es el error de Iy dividido por el nmero de estaciones.
son lo mismos datos. El cierre de X es la suma de las compensaciones para Ix mientras que el cierre de Y es la suma
El azimut es el ngulo horizontal (hoja anterior). de las compensaciones para Iy.
El promedio del azimut se calcula para cada estacin de la siguiente manera: En las dos ltimas celdas hay que poner una X en el lugar correspondiente segn el siguiente
razonamiento: si el valor absoluto del error angular es menor o igual que el error total angular
Sea a1 el azimut del eje de la primera columna respecto del eje de la segunda columna y de una visual calculado para el aparato en la tercera hoja multiplicado por el nmero de estaciones,
a2 el azimut del eje de la segunda columna respecto del eje de la primera columna, enton- entonces, la valoracin angular de la compensacin es vlida, siendo no vlida en caso contrario.
ces:
Por ltimo, en esta hoja tambin hay que fijar las secciones como en la hoja anterior y realizar
a1 + a 2 + 200 todas las modificaciones de formato pertinentes para que se asemeje todo lo posible a la Figura 7.
si a1 > a 2
azimut = 2 . 7.
a1 + a 2 200
si a1 a 2
2 3.7 Sexta Hoja: Introduccin de datos tomados en campo de radiacin
Esta hoja de toma de datos (Figura 7. 8) es muy parecida a la cuarta hoja por lo que se recomienda
Para la compensacin del azimut se utiliza la siguiente frmula: si el error angular es menor copiar aquella primero y realizar las modificaciones oportunas.
que cero, entonces, compensacin del azimut es igual a ap + ( ca x 7 ) donde ap es el azimut
promedio y ca es la compensacin angular. Todos los datos numricos que no estn en negrita son entradas de datos para el usuario. La
primera columna de clculos es la del promedio para el ngulo horizontal, que se calcula de
La distancia reducida es la calculada en la hoja anterior, por lo que esta columna est com- igual forma que en la cuarta hoja. De la misma manera se hace para el promedio del ngulo verti-
puesta de enlaces a la columna R de la hoja de clculo anterior. cal.
El promedio de la distancia reducida se calcula como la media aritmtica de las distancias re- La lectura de los hilos centrales es el promedio de las dos lecturas extremas: Ls y Li.
ducidas de la fila actual y la siguiente.
Para el clculo de los incrementos de x e y (Ix y Iy) se utilizan las siguientes frmulas:
Las columnas de la M a la S son exactamente igual que las correspondientes de la cuarta hoja,
incluso en las notas, por lo que no exigen mayor comentario.
Recordar afinar el formato para que se parezca lo ms posible a la Figura 7. 8 y asegurarse que
las secciones estn fijadas en los lugares correctos como en las hojas anteriores.
La cota de referencia o estacin es una constante que sirve para realizar los clculos de la co-
lumna cota del punto. La cota del punto es la suma del desnivel y la cota de referencia o esta-
cin.
Realizar las modificaciones de formato necesarias y ajustar las secciones inmovilizadas.
13 7
12 8
11 9
Lo primero que hay que realizar es visualizar la barra de herramientas de Visual Basic para
Excel. De todos los botones de dicha barra de herramientas slo interesan tres de ellos, los tres
descritos en la Figura 7. 1.
Prctica 7 de Excel
Informtica
Las Hojas de Clculo en Topografa II Comenzar grabacin
Para grabar una macro se pulsa en el botn de comienzo de grabacin y, ATENCIN!, todas
las acciones que se lleven a cabo a partir de ese momento quedarn almacenadas en la macro hasta
que se pulse el botn de detencin de la grabacin. Para verlo ms claro realizar el siguiente ejerci-
1 Introduccin
cio:
A veces es interesante poder disponer de la posibilidad de automatizar ciertos procesos o mtodos Ejercicio
que se realizan con una hoja de clculo por varios motivos:
1. Abrir un libro de trabajo nuevo.
porque se repite siempre el mismo proceso, siendo este largo; 2. Visualizar la barra de herramientas Visual Basic para Excel si no est visible ya.
para facilitar la interaccin de un usuario inexperto con nuestra hoja de trabajo, etc. 3. Pulsar el botn de comenzar grabacin de la barra de herramientas.
La automatizacin de tareas se realiza mediante Macros y ese va a ser el primer punto que se va 4. Aparecer un cuadro de dilogo que solicita un nombre para la macro, si no se le da ninguno,
a ver en esta Unidad Temtica. la macro permanecer con el nombre de Macro1 (en caso de que sea la primera).
5. Atencin!, seguir los pasos siguientes sin realizar ninguna otra operacin que no sea la des-
En segundo lugar, se va a construir un libro de trabajo compuesto por ocho hojas de clculo. Es- crita:
te libro de trabajo va a constituir lo que se podra denominar como un cuaderno de campo y va a ser
de gran utilidad a la hora de tomar y procesar datos de campo que incluyen el clculo de poligona- Activar la Hoja2 del libro de trabajo.
les y de radiaciones encuadradas y orientadas. Pulsar el botn de detencin de la grabacin.
6. Una vez grabada la macro se comprueba su funcionamiento, para ello, pasar a la Hoja1 de
2 Macros y objetos de dilogo nuevo y pulsar el botn ejecutar macro. Aparece un cuadro de dilogo con una lista de ma-
La automatizacin de tareas consiste bsicamente en agrupar varias acciones que se ejecutan con- cros, que en nuestro caso slo contiene una macro. Seleccionarla y pulsar el botn de Ejecu-
secutivamente en una sola accin. Cada vez que se solicita la ejecucin de dicha accin o Macro se tar. Se puede observar que se pasa a la Hoja2 del libro de trabajo ya que sta era la nica ac-
ejecutan todas las tareas agrupadas y almacenadas en dicha macro una detrs de otra. cin que se haba guardado en la macro.
Mediante la introduccin de elementos u objetos de dilogo se le puede facilitar la tarea de Puede observarse que ha aparecido una hoja de clculo nueva llamada Modulo1. En realidad,
comunicacin a un usuario inexperto con la hoja de clculo que se ha diseado. no es una hoja de clculo como las dems, en ella aparece el cdigo Visual Basic que corresponde
a la accin grabada en la macro. Un programador de Visual Basic debera escribir ese cdigo para
Ambos elementos se van a explicar en los dos subapartados siguientes.
expresar en su programa la accin que significa activar la Hoja2 del libro de trabajo actual:
2.1 Macros
'
La forma de construir una macro es muy sencilla. Las macros actan como cintas de casete donde ' Macro1 Macro
estn almacenadas las acciones que componen la macro una detrs de otra. El mtodo de almace- ' Macro grabada 27/03/98 por mi
namiento de dichas acciones tambin es parecido al mtodo utilizado para grabar las cintas de case- '
te. '
La utilizacin de macros constituye un primer paso en la programacin mediante Visual Basic, Sub Macro1()
un lenguaje de programacin que sirve precisamente para eso, para automatizar tareas y crear inter- Sheets("Hoja2").Select
faces que permitan a los usuarios de las aplicaciones de Microsoft dialogar con la aplicacin de End Sub
manera ms sencilla y cmoda. La utilizacin de toda la potencia de Visual Basic se escapa al m- Como se ha podido observar, es posible aproximarse a la programacin sin necesidad de escribir
bito docente de este curso por lo que no se va a ver en detalle, pero si se van a presentar algunas de un programa. No siempre es posible esto, pero mientras lo sea hay que utilizarlo as.
las caractersticas ms simples de este lenguaje de programacin aunque no por ello menos tiles.
Evidentemente, la macro creada en el ejemplo anterior no tiene demasiada utilidad. En el si- Ejercicio
guiente ejercicio se crean varias macros algo ms tiles. 1. Visualizar la barra de Dilogo.
Ejercicio
1. Abrir el libro de trabajo de la prctica 6 en el que se calculaban reas por el mtodo del Seno.
El problema de este cuaderno de campo es que, en principio, slo sirve para medir tres tringulos.
Si un usuario desea medir ms tringulos tiene que insertar filas nuevas. Una forma de hacerlo
es creando una macro que realice esta operacin automticamente de la manera descrita en los
siguientes puntos: Herramienta botn
2. Antes de continuar es necesario insertar 4 filas vacas por motivos que luego se conocern. 3. Seleccionar la herramienta para crear un botn y a continuacin crear el botn de la misma
Seleccionar la fila 1 e insertar nueva fila cuatro veces de manera que el cuadro de texto manera que se crea un grfico, es decir, pinchando y arrastrando de manera que tenga el tama-
ANGULOS comience en la fila 6. o justo del rango de celdas B2:B4 (pinchar y arrastrar con la tecla Alt. pulsada).
3. Comenzar la grabacin de la macro (botn la barra de herramientas de Visual Basic para 4. Una vez creado el botn, aparece el cuadro de dilogo siguiente:
Excel). Cuando aparezca el cuadro de dilogo Grabar nueva macro darle el nombre Nuevo-
ngulo. Aceptar y realizar los siguientes pasos estrictamente:
Seleccionar toda la fila 13 (pulsando sobre el nmero trece).
Copiar la fila.
Seleccionar toda la fila 14.
Insertar las filas copiadas (por ejemplo, mediante el men contextual).
Seleccionar el rango B14:D14 y borrar el contenido.
Detener la grabacin de la macro.
4. Una vez hecho esto, se dispone de una macro que inserta una nueva fila vaca y con el formato
adecuado para introducir los datos de un nuevo ngulo medido sobre el terreno. Ahora, el
usuario slo tiene que cambiar el nombre del ngulo (celda A14). Para esto, tambin hay que
tener en cuenta que el rango A11:A14 va a ser de entrada de datos, por lo que dichas celdas no
han de estar bloqueadas.
5. Ahora, construir otras dos macros para introducir nuevos lados (macro NuevoLado) y nuevos
tringulos (macro NuevoTringulo).
6. Para terminar, borrar las nuevas filas creadas durante la grabacin de las macros para dejar la solicitando que se le asigne una macro a dicho botn; seleccionar la macro Nuevongulo y
hoja exactamente como estaba. pulsar Aceptar.
2.2 Objetos de dilogo
5. Una vez realizado esto, cambiar el nombre del botn. Para ello, hay que pulsar sobre el botn
con el botn derecho del ratn para que aparezca el men contextual correspondiente. En rea-
Una forma sencilla de ejecutar macros, al menos para que un usuario inexperto pueda utilizar f- lidad, no se desea ejecutar ninguna opcin de este men, pero as se consigue entrar en el mo-
cilmente la hoja de clculo diseada, consiste en la introduccin de objetos de dilogo. Los objetos do de edicin del botn y poder cambiar su nombre. Pulsar sobre Botn1 y cambiarlo por el
de dilogo son elementos que estamos utilizando continuamente mientras interaccionamos con texto:
cualquier aplicacin en Windows. Estos elementos son los que nos permiten introducir datos, reali-
zar acciones, recibir informacin, etc. No son ni ms ni menos que los mens desplegables, los Nuevo
botones, la cajas de dilogo, etc. Todos ellos son objetos que, adems de ser utilizados, pueden ser ngulo
construidos por un usuario con mnimos conocimientos de programacin en Visual Basic. 6. Una vez realizado esto. Crear los botones para las macros NuevoLado y NuevoTringulo en
Las posibilidades son muy grandes. Sin embargo, en este curso slo se van a ver algunos de es- los rangos D2:D4 y F2:F4 respectivamente siguiendo el proceso descrito. Al final quedar de
tos aspectos. En concreto, se van a construir los elementos de dilogo conocidos como botones. la siguiente manera:
Los elementos de dilogo pueden ser construidos mediante la barra de herramientas de Dilogo.
Para ver ms claro cmo hacerlo vamos a volver sobre la hoja de clculo del libro de trabajo ante-
rior en el que se calcula el rea de un terreno plano por el mtodo del Seno.
La estructura de las hojas puede contemplarse en la Figura 7. 2, pero, para entender mejor esta
estructura y como funciona, lo mejor es empezar por la realizacin de la primera hoja de clculo
que se describir con algo ms de detalle.
Sera necesario depurar ms el programa para que la hoja de clculo fuese realmente til y fcil
de manejar. Adems, la insercin de filas no es del todo correcta como puede observarse si se in-
cluyen demasiadas filas.
No obstante, el ejemplo sirve para entender los conceptos y conocer su utilizacin. Por otro la- Botones de Zona de datos y clculos
do, no siempre se pueden asignar acciones a elementos de dilogo como los botones mediante ma- accin
cros. En un estado avanzado del diseo puede ser necesario escribir directamente el cdigo en Vi-
sual Basic sin otro remedio.
3.2 Primera Hoja: Ttulo de la aplicacin e ndice SENSIBILIDAD: Nota: Unidad en segundos sexagesimales.
Esta primera hoja de clculo nicamente tiene una serie de botones con macros asignadas que van a
APRECIACIN: Nota: Unidad en segundos centesimales.
servir para desplazarse al resto de las hojas de clculo. Puede observarse en la Figura 7. 3.
MNIMA UNIDAD DE LECTURA: Nota: (no hace falta nota).
Cada uno de los botones de la zona de datos y clculo sirve para activar una hoja de clculo dis-
tinta. Todos ellos llevan una macro asignada que consiste nicamente en activar la hoja de clculo ESTACIONAMIENTO Y SEAL: Nota: Por omisin se toma 2.
que referencian. Antes de asignar macros a los botones es necesario que las hojas estn creadas por
lo que es mejor dejar esto para el final, cuando las hojas de clculo estn creadas. DISTANCIA MEDIA DE VISUALES: Nota: Este dato lo introduce el sistema de forma
automtica.
En la zona de botones de accin figuran dos botones que sirven para guardar el libro de trabajo
y salir de la aplicacin respectivamente. Al botn guardar se le puede asignar una macro grabndo- CONSTANTE DIASTIMOMTRICA: Nota: K: 50, 100, 150, 200.
la como en los casos anteriores.
Para el botn salir, es necesario editar el cdigo de la macro para modificarlo a mano. Una for-
ma rpida y eficiente de hacerlo es grabar una macro que no realice ninguna accin, por ejemplo,
grabando y deteniendo la grabacin sin llevar a cabo ninguna accin. Esto crear una macro vaca
que se puede modificar en la hoja que aparece con el nombre de Mdulo1 de manera que quede
como sigue:
Sub SALIR()
'
' SALIR Macro
' Macro grabada el 30/03/98 por dsic
'
ActiveWorkbook.Close
'
End Sub
Por ltimo, realizar todas las acciones pertinentes para que el formato quede lo ms parecido
posible al de la Figura 7. 3.
Todos los clculos estn perfectamente descritos en la hoja de clculo mediante las frmulas,
frmulas que se pueden encontrar en cualquier libro de apuntes de Topografa Aplicada. No obs-
tante, para facilitar la labor del usuario es bueno poner las frmulas tal y como aparecen en la
Figura 7. 5. La forma de hacerlo es muy parecida a la seguida para insertar la imagen del Clip Art.
Hay que insertar un objeto que en este caso ser una ecuacin (Insertar/Objeto/Micorsoft Editor de
Ecuaciones 2.0). Al realizar esta accin, aparecer el Editor de Ecuaciones de Microsoft y se
puede construir la frmula descrita en la hoja. La utilizacin del editor de ecuaciones es sencilla e
intuitiva por lo que no es necesario realizar ms comentarios.
Para facilitar la labor del diseador de la hoja de clculo se describen a continuacin las varia-
bles utilizadas en las frmulas anteriores.
S: Sensibilidad.
Ee + Es: Estacionamiento y seal.
Dmed: Distancia media de visuales.
A: Aumentos.
a: Apreciacin.
Con esto queda finalizada la descripcin de la tercera hoja de clculo. Ahora es necesario reali-
zar todas aquellas modificaciones de formato que sean necesarias para dejarla lo ms parecida po-
sible a la Figura 7. 5.
Figura 7. 6 Cuarta hoja: Datos de la poligonal.
La columna R contiene las distancias reducidas. Insertar una nota en la celda que aparece con ac
el concepto REDU. que diga distancias reducidas. Estas distancias reducidas se calculan como Ix = sen pdr
200
sigue:
ac
Iy = cos pdr
av 200
Si la Lectura de hilos central est vaca: sen dg siendo dg la distancia geom-
200
siendo ac el azimut compensado y pdr el promedio de la distancia reducida.
trica.
La compensacin para x es Ix-COMP.PARA X.
Si la Lectura de hilos central no est vaca pero s la distancia geomtrica entonces se
La compensacin para y es Iy-COMP.PARA Y.
av
calcula como: sen 2 Lhc K siendo Lhc la Lectura de los hilos central y K la
200 Entonces, para la x (columna M) se tiene que sta es el origen de coordenadas de referencia
constante diastimomtrica. ms el valor compensado de Ix. Y lo mismo para la y (columna N).
En la columna DESN. se calcula lo siguiente: Para la ltima columna slo queda poner el nmero de estacin.
El valor del azimut de salida es el valor del primer azimut para los ejes 1 y 8 (celda D8), mien-
1
dr + aI aP tras que el azimut de llegada es el ltimo de los azimutes tomados tambin para los ejes 1 y 8. El
av error angular es la diferencia entre los anteriores.
tg
200
El origen de las coordenadas de referencia son constantes (utilizar por ejemplo para este caso
siendo dr la distancia reducida, aI la altura del instrumento y aP la altura del prisma. 500).
Por ltimo, hay que dividir la hoja de manera que quede separada la zona de datos y clculos y El error angular de la celda E31 es un enlace al error calculado en la celda G28.
fijar las secciones (dividir entre las filas 7 y 8). De esta manera, ser posible desplazarse vertical- El error de Ix es la suma de los valores de la columna Ix mientras que el error de Iy es la suma
mente por los datos sin que se muevan las cabeceras de las columnas donde estn los ttulos. de los valores de la columna Iy.
3.6 Quinta Hoja: Clculo de la poligonal y compensaciones La compensacin angular es el error angular dividido por C8-1, es decir, el nmero de esta-
Todos los datos de esta hoja son clculos realizados en base a la hoja anterior, por lo tanto, no exis- ciones menos 1.
te entrada de datos. A continuacin se describe el procedimiento para construirla (Figura 7. 7). La compensacin para X es el error de Ix dividido por el nmero de estaciones. La compen-
Las primeras dos columnas son enlaces a las dos columnas homlogas de la hoja anterior ya que sacin para Y es el error de Iy dividido por el nmero de estaciones.
son lo mismos datos. El cierre de X es la suma de las compensaciones para Ix mientras que el cierre de Y es la suma
El azimut es el ngulo horizontal (hoja anterior). de las compensaciones para Iy.
El promedio del azimut se calcula para cada estacin de la siguiente manera: En las dos ltimas celdas hay que poner una X en el lugar correspondiente segn el siguiente
razonamiento: si el valor absoluto del error angular es menor o igual que el error total angular
Sea a1 el azimut del eje de la primera columna respecto del eje de la segunda columna y de una visual calculado para el aparato en la tercera hoja multiplicado por el nmero de estaciones,
a2 el azimut del eje de la segunda columna respecto del eje de la primera columna, enton- entonces, la valoracin angular de la compensacin es vlida, siendo no vlida en caso contrario.
ces:
Por ltimo, en esta hoja tambin hay que fijar las secciones como en la hoja anterior y realizar
a1 + a 2 + 200 todas las modificaciones de formato pertinentes para que se asemeje todo lo posible a la Figura 7.
si a1 > a 2
azimut = 2 . 7.
a1 + a 2 200
si a1 a 2
2 3.7 Sexta Hoja: Introduccin de datos tomados en campo de radiacin
Esta hoja de toma de datos (Figura 7. 8) es muy parecida a la cuarta hoja por lo que se recomienda
Para la compensacin del azimut se utiliza la siguiente frmula: si el error angular es menor copiar aquella primero y realizar las modificaciones oportunas.
que cero, entonces, compensacin del azimut es igual a ap + ( ca x 7 ) donde ap es el azimut
promedio y ca es la compensacin angular. Todos los datos numricos que no estn en negrita son entradas de datos para el usuario. La
primera columna de clculos es la del promedio para el ngulo horizontal, que se calcula de
La distancia reducida es la calculada en la hoja anterior, por lo que esta columna est com- igual forma que en la cuarta hoja. De la misma manera se hace para el promedio del ngulo verti-
puesta de enlaces a la columna R de la hoja de clculo anterior. cal.
El promedio de la distancia reducida se calcula como la media aritmtica de las distancias re- La lectura de los hilos centrales es el promedio de las dos lecturas extremas: Ls y Li.
ducidas de la fila actual y la siguiente.
Para el clculo de los incrementos de x e y (Ix y Iy) se utilizan las siguientes frmulas:
Las columnas de la M a la S son exactamente igual que las correspondientes de la cuarta hoja,
incluso en las notas, por lo que no exigen mayor comentario.
Recordar afinar el formato para que se parezca lo ms posible a la Figura 7. 8 y asegurarse que
las secciones estn fijadas en los lugares correctos como en las hojas anteriores.
La cota de referencia o estacin es una constante que sirve para realizar los clculos de la co-
lumna cota del punto. La cota del punto es la suma del desnivel y la cota de referencia o esta-
cin.
Realizar las modificaciones de formato necesarias y ajustar las secciones inmovilizadas.
13 7
12 8
11 9
6378388 + 6356911,94613 a + b
e = = 0,08226889 Segunda excentricidad: e =
6356911,94613 b
1. b) Sobre la longitud y latitud:
{
e = 0,08226889 = 0,00676817
La longitud (3 48' 06,7439''), pasara a ser en sexadecimales expresados
Conversin a grados decimales en notacin decimal = 3+48/60+6,7439/60/60 = 3,801873306
(sexagesimales expresados Grados decimales = grados + minutos/60 + segundos/60/60
{
La longitud (3,801873306), pasara a ser en notacin decimal): La latitud (43 29' 18,2670'), pasara a ser en sexadecimales expresados
en radianes = 3,801873306 p /180 = 0,066355207 Grados decimales p en notacin decimal = 43+29/60+18,2670/60/60 = 43,4884075
Conversin de grados decimales a radianes: Radianes =
La latitud (43,4884075), pasara a ser 180
{
en radianes = 43,4884075 p /180 = 0,759015897 Si la longitud est referida al Oeste del meridiano de Greenwich, Como la longitud est referida al oeste del meridiano
GabrielOrtiz.com
entonces la longitud es negativa ( - ) de Greenwich, entonces pasa a ser negativa, quedando
en radianes = - 0,066355207 y en grados
Clculo del signo de la longitud:
decimales = -3,801873306
Si la longitud est referida al Este del meridiano de Greenwich,
entonces la longitud es positiva ( + )
la mayor coleccin de recursos SIG de
1.c) Sobre el huso:
l0 = 30 6 - 183 = -3
Internet y la mejor comunidad de usuarios.
Clculo del merdiano
6 6
Truncamos la parte entera,
central del huso: l0 = Huso 6 -183 luego Huso = 30
GabrielOrtiz.com GabrielOrtiz.c
* 09996 es el factor de escala de la Proyeccin UTM.
A2 = A1 cos j
g=
35 a
27
g=
35
27
0,005076128 = 1,69552E-07
la mayor coleccin de recurso
BF = 09996 c ( j - a J2+ b J4 - g J6 )
Internet y la mejor comunidad de usuarios.
X = -0,01015382 6386011,466 ( 1 +
1,8365E-07
) + 500000 = 435157,5872
2.b) Clculo Final de Coordenadas UTM:
z
X = x n (1 + ) + 500.000 * 500.000 es el retranqueo que se realiza en cada huso sobre el origen de coordenadas en el eje X (meridiano central
Internet y la mejor comunidad de
BF = 0,9996 6399936,608 ( 0,759015897 - 0,005076128 1,258320035 + 4,29451E-05 1,075149392 - 1,69552E-07 1,884142255 ) = 4815141,345
Solucin de la Y UTM
GabrielOrtiz.com
6378388 + 6356911,94613 a + b a 6378388
e= = 0,08199189 Excentricidad: e= Radio Polar de Curvatura: c = c= = 6399936,608
6378388 a b 6356911,94613
6378388 + 6356911,94613 a + b
e = = 0,08226889 Segunda excentricidad: e =
6356911,94613
e = 0,08226889 = 0,00676817
la mayor coleccin de recursos SIG de
b
1.b) Tratamiento previo de X e Y y clculo del meridiano central del huso:
{
Si las coordenadas UTM pertenecen al norte del ecuador * 500.000 es el retranqueo que se realiza
en cada huso sobre el origen de coordenadas
(hemisferio norte), entonces Y no se modifica. en el eje X (meridiano central automecoico
Eliminacin, si procede, del
Como la Y est al norte del ecuador, no se modifica del huso) con el objeto de que no existan
retranqueo en las ordenadas: coordenadas negativas.
Si las coordenas UTM pertenecen al sur del Ecuador * 10.000.000 es el retranqueo que se realiza
(hemisferio sur), entonces Y = Y - 10.000.000 a las coordenadas UTM del hemisferio sur
con el objeto de que no existan coordenadas
negativas.
Clculo del meridiano central del huso * El nmero de huso ha de ser conocido como un valor
l0 = 6 30 - 183 = -3 en el que caen las coordenadas UTM: l0 = 6 huso - 183 ms de las coordenadas UTM a convertir.
GabrielOrtiz.com GabrielOrtiz.c
6399936,608 c b= n b= = 0,002344241
n= 09996 = 6385961,938 n= 09996
6385961,938
(1 + 0,00676817 cos 0,756712374 )1/2 (1 + e cos j ) 1/2
-64842,41 X z = e a cos j z = 0,00676817 -0,010153899 cos 0,756712374 = 1,84456E-07
a= = -0,010153899 a= n 2 2
6385961,938
z 1,84456E-07
[ ] [ ]
x= a 1- x = -0,010153899 1 - = -0,010153898
la mayor coleccin de recursos SIG de A1 = sen ( 2 0,756712374 ) = 0,998354702
A2 = A1 cos j
h = b( 1 -z )+j
3
3
h = 0,002344241 ( 1 - 1,84456E-07 ) + 0,756712374 = 0,759056614
la mayor coleccin de recurso
Internet y la mejor comunidad de usuarios. Internet y la mejor comunidad de
-0,010153898 -(-0,010153898)
-
0,998354702 A
sen h x = -
e x e- x * en este caso e no es la excentricidad, sino e (271828182845905) 271828182845905 271828182845905
J2 = 0,756712374 + = 1,255889725 J2 = j + 1 elevado a la potencia de x y de - x . sen h x = = -0,010154072
2 2 2 2
3 1,255889725 + 0,527800236
3 J2 + A2
J4 = = 1,073867353 J4 = sen h x -0,010154072 = -0,013995329
4 4 Dl = arc tan cos Dl = arc tan
h cos 0,759056614
5 1,073867353 + 0,527800236 cos 0,756712374 5 J4 + A2 cos j t = arc tan ( cos Dl tan h ) t = arc tan ( cos -0,013995329 tan 0,759056614 ) = 0,759007713
J6 = = 1,882789648 J6 =
3 3
]
5
[
5 a
b=
3
0,005076128 = 4,29451E-05 b=
3 Latitud: j = j + 1 + e cos j - 3 e sen j cos j ( t - j ) ( t - j )
2
g=
35
0,005076128 = 1,69552E-07 g=
35 a [
3
j = 0,756712374 + 1 + 0,00676817 cos 0,756712374 - 0,00676817 sen 0,756712374 cos 0,756712374 (0,759007713 - 0,756712374) (0,759007713 - 0,756712374) = 0,759015899
2 ]
27 27
BF = 09996 c ( j - a J2+ b J4 - g J6 ) Paso de radianes a grados sexagesimales en notacin decimal
(slo para la latitud. La longitud ya est en grados):
BF = 0,9996 6399936,608 ( 0,756712374 - 0,005076128 1,258320035 + 4,29451E-05 1,075149392 - 1,69552E-07 1,884142255 ) = 4800483,409 radianes
Grados decimales = 180 j = 0,759015899 180 = 43,48840762
p p
GabrielOrtiz.com
Paso de grados sexagesimales en notacin decimal a grados, minutos y segundos:
Grados ( ) = entero de [grados decimales]
Minutos ( ) = entero de [(grados decimales - Grados ) 60]
Segundos ( ) = ((grados decimales - Grados ) 60 - Minutos) 60