You are on page 1of 23

Ejercicios de

Visual Basic para


macros en Excel
Ejercicios Visual Basic para macros en Excel

1. Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo que dado un nmero entre 1 y 20 en G1 (en el ejemplo es el
7), calcule la tabla de multiplicar mdulo dicho nmero, es decir, el
resultado interseccin de la fila i y la columna j es el resto de dividir i*j entre
el contenido de la celda G1.

2. Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo que dado un nmero entre 1 y 20 en G1 (en el ejemplo es el
7), calcule la tabla de multiplicar mdulo dicho nmero, es decir, el
resultado interseccin de la fila i y la columna j es el resto de dividir i+j entre
el contenido de la celda G1.

3. Si se deja caer un cuerpo desde una altura h, la altura que alcanza para
tiempo t es h(t)=h-gt2/2. El tiempo que emplea en llegar al suelo es:
t 2*h/ g

2
Ejercicios Visual Basic para macros en Excel

Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo, que partiendo del valor de g, y de la altura inicial, calcule el
tiempo de cada, y la altura alcanzada para los valores enteros del tiempo
menores o iguales que el tiempo de cada, como se muestra en la imagen
de la izquierda. La columna rotulada velocidad contiene las diferencias
entre dos alturas sucesivas y la rotulada aceleracin las diferencias entre
dos velocidades sucesivas.

4. Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo, que calcule reas de crculos (A=r2) y volmenes de
esferas (V=4r3/3) para los valores del radio entre 0 y un mximo
prefijado en metros. Hacer la conversin de dichos valores a pulgadas,
empleando para ello el factor de conversin 1in=0.0254m, pero
permitiendo que sea variable, es decir almacenndolo en una celda de la
hoja, como se muestra en la imagen de la izquierda.

3
Ejercicios Visual Basic para macros en Excel

5. Realice la programacin en Visual Basic que automatice la ejecucin de:

El precio por habitacin doble es igual a 2500 usd por cada estrella del
hotel. Se aplica un IVA del 16%. El precio de la habitacin individual es la
mitad que el precio total de la doble. Los resultados se deben expresar en
dlares.

6. Realice la programacin en Visual Basic que automatice la ejecucin de:


La nota final es la suma de las tres notas:

7. El siguiente algoritmo (derivado del mtodo Newton-Raphson de anlisis


numrico) sirve para calcular la raz cuadrada de un nmero real positivo:

Partiendo de un nmero real positivo a se puede calcular la siguiente


secuencia xi de nmeros positivos:

4
Ejercicios Visual Basic para macros en Excel

Realice la programacin en Visual Basic que automatice la ejecucin


de: hoja de clculo que obtenga la sucesin xi. La sucesin deber
parar cuando el trmino xi, redondeado a cuatro decimales, sea
igual al resultado de la funcin raz.

Si en F1 no hay dato, o es negativo, deber aparecer un mensaje de error.

8. Se denominan Variaciones ordinarias, o Variaciones sin repeticin, de n


elementos tomados r a r con r n, y se representa como Vn,r, a las distintas
muestras que se pueden tomar con n elementos, tal que:

En cada muestra entren r elementos distintos


Dos muestras son distintas, si difieren en algn elemento o en el orden
de colocacin de los mismos

El nmero de estas variaciones se puede calcular de la siguiente forma:

5
Ejercicios Visual Basic para macros en Excel

Realice la programacin en Visual Basic que automatice la ejecucin de: hoja


de clculo que dado un Nmero Natural n distinto de muestre el nmero
de variaciones desde Vn,1 hasta Vn,n.

Si en G4 no hay dato, o no cumple las condiciones adecuadas, deber


aparecer un mensaje de error.

9. Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo para calcular los N primeros trminos de una progresin
aritmtica a partir del primer trmino A y la diferencia entre los mismos D,
siendo N>0. Debe calcular tambin su suma.

6
Ejercicios Visual Basic para macros en Excel

Si N no cumple las condiciones, deber aparecer un mensaje de error.

10. Dados dos nmeros enteros positivos N y D, se dice que D es un divisor


de N si el resto de dividir N entre D es 0. Se dice que un nmero N es
primo si no tiene ms divisores que l mismo y la unidad. Realice la
programacin en Visual Basic que automatice la ejecucin de: hoja de
clculo que dado N nos diga si es, o no, primo.

11. Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo para determinar el premio que obtiene una persona al
jugar a una lotera en la que debe apostar a 4 nmeros.

La persona tiene que indicar 4 nmeros, que supone sern la


combinacin ganadora. Tanto el resultado del juego como la apuesta del
jugador se introducen manualmente en la hoja de clculo. Para cada
nmero, si es un acierto, se escribir a su lado la palabra acierto y no
se escribir nada en caso contrario. El jugador cobrar 100.000 dlares
por cada nmero acertado. Se debe determinar su premio total.
7
Ejercicios Visual Basic para macros en Excel

A continuacin, se muestra un ejemplo de cmo debera quedar la hoja:

12. Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo para determinar el nmero de aciertos que obtiene una
persona al jugar a una lotera en la que debe determina el resultado de
3 partidos.

La persona tiene que indicar el resultado de cada partido (1 si gana el


primer equipo, 2 si gana el segundo y 3 si hay un empate). Tanto el
resultado del juego como la apuesta del jugador se introducen
manualmente en la hoja de clculo. Se utilizarn tres celdas para
determinar el nmero de aciertos del jugador. Si obtiene 1 acierto, se
escribir un 1 en la primera; si obtiene 2, se escribir un 2 en la segunda
y si obtiene 3 se escribir un 3 en la tercera. Si no tiene ningn acierto,
no se escribir nada en ninguna de las tres celdas.

A continuacin, se muestra un ejemplo de cmo podra quedar la hoja:

8
Ejercicios Visual Basic para macros en Excel

13. Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo que permita realizar las siguientes operaciones: en una
celda se indicar el precio de un producto y en otra la cantidad de dinero
entregada para pagarlo. Se debe determinar el nmero de monedas de
500, 100, 50, 25, 5 y 1 para dar la vuelta. Se debe dar el menor nmero de
monedas posibles.

Si la cantidad aportada como pago es inferior al precio a pagar, se indicarn


las monedas que faltan para completar el pago (con nmeros negativos).

A continuacin, se muestran dos ejemplos de cmo podra quedar la hoja:

14. Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo para convertir a binario nmeros entre 0 y 100. Se indicar
el nmero resultante como aparece en el siguiente ejemplo (para el nmero
25):

9
Ejercicios Visual Basic para macros en Excel

El nico valor que se introduce es el nmero decimal. El resto de valores


deben calcularse.

Se debe tener en cuenta que, aunque las divisiones se hacen como si se


operase manualmente, slo se incluye el resto de cada divisin y no se
incluyen los resultados parciales para cada una de las cifras obtenidas
como cociente.

15. Dados dos nmeros A1 y B1, se definen su media aritmtica y su media


geomtrica respectivamente como

Por el mismo procedimiento se calculan A3 y B3 a partir de A2 y B2, y as


sucesivamente. Las sucesiones {An} y {Bn} as construidas son

convergentes y su lmite es el mismo, y recibe el nombre de media


aritmtico-geomtrica de A1 y B1. Realice la programacin en Visual Basic
que automatice la ejecucin de: hoja de clculo usando Excel, que
partiendo de A1, B1 (situados en B4 y C4 respectivamente) y un valor
situado en B2), calcule los trminos que sean precisos de ambas
sucesiones hasta que la diferencia en valor absoluto de An y Bn sea menor
que el valor de prefijado. La funcin valor absoluto en Excel es ABS(...).

10
Ejercicios Visual Basic para macros en Excel

16. Para hacer el examen de su asignatura, un profesor realiza dos pruebas,


una terica y otra prctica, la prueba terica consta de tres preguntas, cuyo
valor relativo para la nota terica es del 40%, 20% y 40%. De igual forma la
prueba prctica consta de otras tres preguntas, siendo en este caso su
valor relativo para la nota prctica del 30%, 30% y 40%, para aprobar el
examen es preciso que la nota media entre la terica y la prctica sea de al
menos 5 puntos y que la nota media de la teora y de la prctica sea al
menos de 3 puntos. Para hacer ms fcil la labor del profesor, realice
la programacin en Visual Basic que automatice la ejecucin de: hoja de
clculo con Excel, que a partir de las notas en las 6 preguntas (sobre
10), calcule la nota media en teora, la nota media en prctica y decida
si un alumno suspende o aprueba la asignatura (no hace falta tener en
cuenta los notables o sobresalientes).

17. Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo que dado un ngulo x (en B1) y un valor n (en D1) calcule
en la fila 3 el seno y el coseno de a=x/2n, empleando las frmulas
sin(a)=a-a3/6 y cos(a)=1-a2/2. En la fila 4 debe calcular el seno y el
coseno de 2a, con las frmulas: sin(2a)=2*sin(a)*cos(a) y cos(2a)=cos2(a)-
sin2(a), y repetir con las filas sucesivas hasta obtener el seno y el
coseno de x

18. Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo que dado un ngulo x (en B1) y un valor n (en D1) calcule
en la fila 3 el seno y el coseno hiperblicos de a=x/2n, empleando las
frmulas sinh(a)=a+a3/6 y cosh(a)=1+a2/2. En la fila 4 debe calcular el
seno y el coseno hiperblicos de 2a, con las frmulas:
11
Ejercicios Visual Basic para macros en Excel
sinh(2a)=2*sinh(a)*cosh(a) y cosh(2a)=cosh2(a)+sinh2(a), y repetir con las
filas sucesivas hasta obtener el seno y el coseno hiperblicos de x.

19. Una empresa alquila un autobs para excursiones con capacidad para
10 viajeros. Una vez determinados los kilmetros del viaje, el coste
por persona y kilmetro (para evitar valores negativos, supondremos
que siempre ser al menos 10) y las edades de los viajeros, realice la
programacin en Visual Basic que automatice la ejecucin del clculo de
los valores que se indican en el siguiente ejemplo.

El coste total ser la suma del coste asociado a cada persona del
grupo, teniendo en cuenta que la empresa aplica los siguientes
descuentos:
una persona con ms de 65 aos se ahorra 10 euros por
kilmetro recorrido
los nios de 5 aos o menos pagan una cantidad fija de 25 euros
por viaje
si el grupo que alquila el autobs es de al menos 7 personas, se
descuenta del coste total el 1% por cada una de las personas del
grupo (sea cual sea su edad)

12
Ejercicios Visual Basic para macros en Excel

20. Dado un depsito esfrico de radio R, el volumen V de agua


que contiene en funcin de la altura h del agua es:

siendo V0 el volumen de una semiesfera de radio R.

Realice la programacin en Visual Basic que automatice la ejecucin de: hoja


de clculo con Excel, que debe permitir calcular el volumen en funcin de la
altura para alturas comenzando en 0, con incrementos de
0.1 y hasta la altura total (2R). Adems debe permitir calcular la altura del
agua para un volumen dado, para ello se utilizar el procedimiento
siguiente. Si despejamos h en la frmula dada arriba se obtiene:

se considera la funcin

y se construye a partir de la misma la siguiente sucesin, h0 = R, h1 = f(h0),


h2 = f(h1), . . . Dicha sucesin converge al valor de la altura buscada,
calcular los valores necesarios de la sucesin { hn } , junto con el volumen
correspondiente, hasta que la diferencia | V (hn) - Vb | < , siendo Vb el
volumen buscado, V (hn) el volumen hasta la altura hn y > 0 un valor
prefijado.

13
Ejercicios Visual Basic para macros en Excel

21. Dado un depsito cnico de altura 2R y radio de la base R, el volumen V


de agua que contiene en funcin de la altura h del agua es:

Realice la programacin en Visual Basic que automatice la ejecucin de:


hoja de clculo con Excel, que debe permitir calcular el volumen en funcin
de la altura para alturas comenzando en 0, con incrementos de
0.1 y hasta la altura total (2R). Adems debe permitir calcular la altura del
agua para un volumen dado, para ello se utilizar el procedimiento
siguiente. Si despejamos h en la frmula dada arriba se obtiene:

14
12V 6Rh2 h3
Ejercicios Visual Basic para macros en Excel

y se construye a partir de la misma la siguiente sucesin, h0 = R, h1 = f(h0),


h2 = f(h1), . . . Dicha sucesin converge al valor de la altura buscada,
calcular los valores necesarios de la sucesin { hn } , junto con el volumen
correspondiente, hasta que la diferencia | V (hn) - Vb | < , siendo Vb el
volumen buscado, V (hn) el volumen hasta la altura hn y > 0 un valor
prefijado.

15
Ejercicios Visual Basic para macros en Excel

22. Realice la programacin en Visual Basic que automatice la ejecucin de:


Clculo de los valores de X partiendo de un valor inicial y una razn dados.
Calcular despus los valores de la siguiente funcin:

16
Ejercicios Visual Basic para macros en Excel

23. Realice la programacin en Visual Basic que automatice la ejecucin


de: hoja de clculo para pasar a decimal un nmero de hasta 10
cifras. El nmero puede venir dado en binario o en octal. La base
utilizada se indicar en la celda F1 y el nmero en cuestin se escribir
en la fila 3; la fila 4 se reserva para las potencias de la base y en la
5 se escriben los productos. El resultado de las operaciones
aparecer en la celda F7. A continuacin aparece un ejemplo binario:

24. Realice la programacin en Visual Basic que automatice la ejecucin de:


El principio de conservacin de la energa exige que en un sistema
conservativo la energa permanezca constante. Para un cuerpo de masa m
en cada libre desde una altura h, teniendo slo en cuenta las energas
mecnicas y en ausencia de rozamiento, el principio de conservacin de la
energa se expresa as:
Etotal E p otencial E c inetica
Donde las energas potencial y cintica cumplen las siguientes frmulas:

Ep otencial mgh
17
Ejercicios Visual Basic para macros en Excel

1
Ecinetica mv
2

Siendo la velocidad del cuerpo en la cada:

v 2 gh '
Donde h es el trayecto de la altura recorrida por el cuerpo en la cada.

Realice una hoja de clculo donde dada la masa del cuerpo y la altura
desde la que se deja caer desde el reposo, calcule las energas cintica y
potencial en los valores enteros de la altura hasta el suelo. Comprobar el
principio de conservacin de la energa

h V Epotencial Ecintica ETotal


g 9,8 15 0 2352 0 2352
m 16 14 4,42718872 2195,2 156,8 2352
h 15 13 6,26099034 2038,4 313,6 2352
12 7,66811581 1881,6 470,4 2352
11 8,85437745 1724,8 627,2 2352
10 9,89949494 1568 784 2352
9 10,8443534 1411,2 940,8 2352
8 11,7132404 1254,4 1097,6 2352
7 12,5219807 1097,6 1254,4 2352
6 13,2815662 940,8 1411,2 2352
5 14 784 1568 2352
4 14,6833239 627,2 1724,8 2352
3 15,3362316 470,4 1881,6 2352
2 15,962456 313,6 2038,4 2352
1 16,5650234 156,8 2195,2 2352
0 17,1464282 0 2352 2352

18
Ejercicios Visual Basic para macros en Excel

25. Realice la programacin en Visual Basic que automatice la ejecucin de:


Un tiro parablico es el que se obtiene al componer un movimiento rectilneo
y uniforme, segn la horizontal, con otro de elevacin, rectilneo y
uniformemente acelerado. Es el caso del lanzamiento de un proyectil con
un ngulo de inclinacin y una velocidad inicial V0, en el campo
gravitatorio terrestre.
La posicin del proyectil viene dada por las coordenadas de ste en cada
instante, que cumplen las siguientes frmulas:

x v 0 tcos
1
y v 0 tsen gt
2

Siendo el tiempo que tarda dicho proyectil en impactar con el suelo:

Realice una hoja de clculo donde dado el ngulo de inclinacin alfa (en
grados) y la velocidad de lanzamiento del proyectil, Vinicial, calcule la posicin
de ste en los valores enteros de tiempo antes del momento de impacto con el
suelo.

T X Y
g 9,8 0 0,000 0,000
alfa 30 1 129,904 70,100
Vinicial 150 2 259,808 130,400
3 389,711 180,900
Tmax 15,306 4 519,615 221,600
5 649,519 252,500
6 779,423 273,600
7 909,327 284,900
8 1039,230 286,400
9 1169,134 278,100
10 1299,038 260,000
11 1428,942 232,1
12 1558,846 194,4
13 1688,750 146,9
14 1818,653 89,6
15 1948,557 22,5

19
Ejercicios Visual Basic para macros en Excel

26. Realice la programacin en Visual Basic que automatice la ejecucin de:


El principio de Arqumedes establece que:
E
Todo cuerpo sumergido en el seno de un fluido,
experimenta una fuerza ascendente (empuje) cuyo valor
es igual al peso del fluido desalojado por el cuerpo

Siendo Vs, el volumen sumergido del cuerpo y dl la densidad del lquido.

Sabemos que el peso de un cuerpo (mc la masa del cuerpo, Vc el


volumen del cuerpo y dc su densidad), se calcula:

El hecho de que un cuerpo flote o se hunda depende de su peso


(hacia abajo), y de la magnitud de empuje hidrosttico (hacia
arriba) determinada por el principio de Arqumedes. Ocurriendo que:

Realice una hoja de clculo donde dados la densidad del lquido,


dl, el rea de la base del cuerpo, y su altura, calcule el empuje
que experimenta el cuerpo totalmente sumergido, para densidades
del cuerpo comprendidas entre dc=0.1gr/cm3 y la densidad del
lquido, dl, en el que se encuentra sumergido tomadas en
incrementos de 0.1.

20
Ejercicios Visual Basic para macros en Excel

Peso del Volumen


dc Empuje SITUACIN
cuerpo sumergido
LQUIDO 0,1 1960,000 19600,000 flota 2,000
dl 1 0,2 3920,000 19600,000 flota 4,000
0,3 5880,000 19600,000 flota 6,000
0,4 7840,000 19600,000 flota 8,000
0,5 9800,000 19600,000 flota 10,000
CUERPO 0,6 11760,000 19600,000 flota 12,000
Area base 10 0,7 13720,000 19600,000 flota 14,000
Altura 2 0,8 15680,000 19600,000 flota 16,000
Vc 20 0,9 17640,000 19600,000 flota 18,000
1 19600,000 19600,000 se hunde 20,000
GRAVEDAD 980

27. Realice la programacin en Visual Basic que automatice la ejecucin de:


Una consecuencia de la definicin de cos t y sen t es que los puntos
cuyas coordenadas vienen dadas por:

son los vrtices de un tringulo equiltero, centrado en el origen, de modo que,


para k= 0 el vrtice es (1,0) y su lado opuesto es vertical. Adems, los puntos
cuyas coordenadas son:

son los vrtices del tringulo anterior rotado un ngulo v alrededor del origen,
en sentido antihorario.
Crear una hoja de Trabajo que dibuje el primer tringulo superpuesto y el
segundo para diferentes valores de v.

Tringulo de partida Tringulo girado


k V X Y X' Y'
0 1 1 0 0,54030231 0,841470985
1 -0,5 0,8660254 -0,9988864 0,04718003
2 -0,5 -0,8660254 0,4585841 -0,888651015
3 1 -2,45E-16 0,54030231 0,841470985

21
Ejercicios Visual Basic para macros en Excel

0,8

0,6

0,4

0,2
Tringulo de partida
0
-1,5 -1 -0,5 0 0,5 1 1,5 Tringulo girado
-0,2

-0,4

-0,6

-0,8

-1

22
Ejercicios Visual Basic para macros en Excel

28. Dibujar el polgono:


x(n) R sen(a n d ) cos(b n)
y(n) R sen(a n d ) sen(b n)
para : n 0,1, 2, ..., 630.

para diferentes valores de R, a, b y d.

R: 8 n X Y
a: 0,5 0 0 0
b: 2 1 -3,320835065 7,256156997
d: 1 2 -0,737937544 -0,854399794
3 -7,508762986 2,185096519
4 0,325239715 -2,211536219
5 -6,296392598 -4,082334315
6 2,782142522 -1,769052946
7 -0,962297209 -6,971464725
8 4,110833134 1,235848982
9 4,246018293 -4,829054828
10 2,122966421 4,749417562
11 5,694059673 0,050401858
12 -2,548424199 5,440622407
13 3,133883537 3,694076358
14 -6,442957006 1,813238842
15 -0,601178999 3,850750598
16 -6,043636995 -3,994880566
17 -2,437489969 1,519772467
18 -0,97905114 -7,588107374
19 -1,709624917 -0,530513128
20 5,27164717 -5,889562929
21 -0,268708393 -0,615715185
22 7,998041461 0,141602919
23 -0,198758561 0,414732303
24 5,079052952 6,095509817
25 -1,526952977 0,415179449

23

You might also like