6 pasos básicos para quienes deseen crear su primera macro en Excel.
No olviden grabar antes de salir.
Este Post es para compartir todo lo relacionado con macros en Excel.
BIMSOFTWARE.MX GStarCAD - Software CAD 2d/3d
Canales de Ingeniería Civil en:
Whatsapp / Telegram
Whatsapp / Telegram
Macros en Excel
Reglas del Foro
Favor de usar el boton de Dar Gracias
En el mensaje del usuario al que deseas agradecer
En vez de escribir gracias repetidamente
Favor de usar el boton de Dar Gracias
En el mensaje del usuario al que deseas agradecer
En vez de escribir gracias repetidamente
Saludos... Muy bueno el ejemplo, práctico y excelente para los que recién comienzan...
Aquí les dejo un link que me ha ayudado bastante a mí para aprender a programar en VB.net (que es muy similar a VB6 que es el que se utiliza para hacer macros):
http://www.elguille.info/NET/cursoVB.NET/Default.aspx
Aquí les dejo un link que me ha ayudado bastante a mí para aprender a programar en VB.net (que es muy similar a VB6 que es el que se utiliza para hacer macros):
http://www.elguille.info/NET/cursoVB.NET/Default.aspx
Muy buen tema este sobre macros en excel, ojala que las personas que manejan bien la programacion en este lenguaje compartan sus conocimiento en una tarea lo mas parecida posible al excelente aporte hecho por Fernando Yevenes en cuanto al MahCad.
Yo pienso que el primer paso ya esta dado por Rene con esa introduccion basica y ojala continuemos aprendiendo ojala hasta lograr obtener los diagramas de interaccion de columnas rectangulares.
Saludos y Gracias
Yo pienso que el primer paso ya esta dado por Rene con esa introduccion basica y ojala continuemos aprendiendo ojala hasta lograr obtener los diagramas de interaccion de columnas rectangulares.
Saludos y Gracias
Saludos...
A manera de ejemplo, aunque no es en excel, tengo un macro en autocad para diagramas de interacción de columnas que hice hace bastante tiempo, pero nunca lo terminé ni comprobé si estaba del todo bien; pero creo que sirve de guía para empezar a programar....
Si hay alguien con más experiencia programando, se recibe cualquier tip y corrección que se le pueda hacer a este programita...
A manera de ejemplo, aunque no es en excel, tengo un macro en autocad para diagramas de interacción de columnas que hice hace bastante tiempo, pero nunca lo terminé ni comprobé si estaba del todo bien; pero creo que sirve de guía para empezar a programar....
Si hay alguien con más experiencia programando, se recibe cualquier tip y corrección que se le pueda hacer a este programita...
No tienes los permisos requeridos para ver los archivos adjuntos a este mensaje.
Hola a todos, espero que puedan ayudarme con la siguiente duda.
¿Como seria la estructura basica de un macro en excel que haga lo mismo que el comando solver, es decir, que itere cambiando valores aleatoriamente en una o mas celdas hasta que se cumpla una condicion en una deterimanda formula?.
Tambien me gustaria hacer un macro similar pero que en vedez de usar valores aleatorios, tome valores de una lista hasta que optenga un maximo.
desde ya muchas gracias.
¿Como seria la estructura basica de un macro en excel que haga lo mismo que el comando solver, es decir, que itere cambiando valores aleatoriamente en una o mas celdas hasta que se cumpla una condicion en una deterimanda formula?.
Tambien me gustaria hacer un macro similar pero que en vedez de usar valores aleatorios, tome valores de una lista hasta que optenga un maximo.
desde ya muchas gracias.
Saludos...PROYECTOR escribió:Hola a todos, espero que puedan ayudarme con la siguiente duda.
¿Como seria la estructura basica de un macro en excel que haga lo mismo que el comando solver, es decir, que itere cambiando valores aleatoriamente en una o mas celdas hasta que se cumpla una condicion en una deterimanda formula?.
Tambien me gustaria hacer un macro similar pero que en vedez de usar valores aleatorios, tome valores de una lista hasta que optenga un maximo.
desde ya muchas gracias.
Primero, le soy sincero, yo no he hecho macros en excel, pero se me ocurren dos cosas (pero no las puedo probar porque no tengo excel aquí en el trabajo, tal vez mañana le pueda dar una respuesta más completa):
1.- Si quiere buscar un máximo puede usar la función MAX que es propia de excel y supongo yo se debe poder usar en las macros...
2.- En caso que no se pueda, puede usar la función FOR y la función IF combinadas... Con FOR puede ir avanzando por las celdas que requiera y con IF condiciona que se guarde en una variable "x" el valor de la celda solamente si éste es mayor que el valor de "x"...
Espero haberlo ayudado... Voy a intentar hacer un ejemplo, pero tendrá que esperar...
- AXE
- Usuario Intermedio
- Mensajes: 63
- Registrado: Jue Dic 14, 2006 10:36 am
- Ubicación: La Paz - Bolivia
Bueno es mas o menos como dice jo Cbc en realidad la ventaja de Visual Basic incorporado en excel (MACROS) es que cualquier operación que realicemos la podemos guardar en una macros entonces si quieres buscar un valor, encontrar maximos, etc. Puedes grabar una macros que realice todos los procesos que requerimos y despues la macros lo hara sola. Pero como también menciono se puede recurrir a las sentencias adecuadas. Para que este claro colocaré un ejemplo en la semana. Espero haber ayudado.
Gracias a todos por sus comentarios.
Les voy a explicar mejor de que se trata mi duda para que puedan ayudarme.
quiero hacer un macro que haga una iteración cambiando valores aliatoriamente en 2 celdas (1,1) y (1,2) hasta que en otra celda (2,2) se optenga un valor igual a "0"; osea un vulgar tanteo como el que hace el comando solver de excel.
Habia pensado hacer la iteracion con el comando Do until mas o menos de la siguiente manera.
Ejemplo:
Do until (cell (2,2).value = 0)
ESTRUCTURA DEL TANTEO (lo que no se hacer).
Loop
¿Esta bien asi?.
Me imagino que el tanteo lo puedo hacer con RND (random), pero ni idea de cual es la sintaxis para usarlo.
Si saben alguna otra manera de que el programa haga el tanteo de valores aleatorios seria bueno saberla.
Les voy a explicar mejor de que se trata mi duda para que puedan ayudarme.
quiero hacer un macro que haga una iteración cambiando valores aliatoriamente en 2 celdas (1,1) y (1,2) hasta que en otra celda (2,2) se optenga un valor igual a "0"; osea un vulgar tanteo como el que hace el comando solver de excel.
Habia pensado hacer la iteracion con el comando Do until mas o menos de la siguiente manera.
Ejemplo:
Do until (cell (2,2).value = 0)
ESTRUCTURA DEL TANTEO (lo que no se hacer).
Loop
¿Esta bien asi?.
Me imagino que el tanteo lo puedo hacer con RND (random), pero ni idea de cual es la sintaxis para usarlo.
Si saben alguna otra manera de que el programa haga el tanteo de valores aleatorios seria bueno saberla.
- ReneM
- Moderador
- Mensajes: 871
- Registrado: Vie Ago 19, 2005 1:55 pm
- Ubicación: Santiago - Chile
- Contactar:
Hola, si lo que deseas es resolver una ecuación jamás debes usar el método del tanteo aleatorio. Si no puedes resolver la ecuación en forma explícita debes utilizar métodos numéricos para encontrar las soluciones. Existen muchos de ellos, el más conocido es el método de Newton-Raphson. De hecho el Solver de Excel utiliza un método nolineal optimizado llamado Gradiente Reducida Generalizada.
Gracias René
Lo que deseo resolver no es una ecuación como tal, es decir, es una ecuación de equilibrio que puede variar para determinadas condiciones.
Estoy aplicando el método de Kennet E. wilson para resolver zapatas parcialmente comprimidas el cual es muy similar al metodo de Joseph Bowles, el cual hasta donde yo se, consiste en ir tanteando hasta lograr el equilibro entre las fuerzas aplicadas y las reacciones, claro que para no hacer el tanteo tan engorroso se pueden aplicar métodos matemáticos como los que mencionas.
Hasta ahora la hoja funciona bien con el solver pero tiene limitaciones.
La limitación más importante que tiene la hoja es que uno tiene que cambiar manualmente las combinaciones de carga y ejecutar el solver cada vez para obtener de esta manera el diseño final.
Yo se como hacer "sin macros" para revisar con excel cada combinación de carga y que me arroje los resultados para la mas desfavorable, pero en este caso como las ecuaciones son muchas la hoja quedaría demasiado engorrosa ya que tendría que hacer lo mismo con cada combinación, y son bastantes.
Es por esto que he desidido recurrir a macros para agilizar el proceso y mi primera meta, por asi decirlo, es hacer un macro que cumpla la misma función que el solver.
¿Cual seria la manera más adecuada de realizar el macro?
Lo que deseo resolver no es una ecuación como tal, es decir, es una ecuación de equilibrio que puede variar para determinadas condiciones.
Estoy aplicando el método de Kennet E. wilson para resolver zapatas parcialmente comprimidas el cual es muy similar al metodo de Joseph Bowles, el cual hasta donde yo se, consiste en ir tanteando hasta lograr el equilibro entre las fuerzas aplicadas y las reacciones, claro que para no hacer el tanteo tan engorroso se pueden aplicar métodos matemáticos como los que mencionas.
Hasta ahora la hoja funciona bien con el solver pero tiene limitaciones.
La limitación más importante que tiene la hoja es que uno tiene que cambiar manualmente las combinaciones de carga y ejecutar el solver cada vez para obtener de esta manera el diseño final.
Yo se como hacer "sin macros" para revisar con excel cada combinación de carga y que me arroje los resultados para la mas desfavorable, pero en este caso como las ecuaciones son muchas la hoja quedaría demasiado engorrosa ya que tendría que hacer lo mismo con cada combinación, y son bastantes.
Es por esto que he desidido recurrir a macros para agilizar el proceso y mi primera meta, por asi decirlo, es hacer un macro que cumpla la misma función que el solver.
¿Cual seria la manera más adecuada de realizar el macro?
- ReneM
- Moderador
- Mensajes: 871
- Registrado: Vie Ago 19, 2005 1:55 pm
- Ubicación: Santiago - Chile
- Contactar:
Hola, supongo que deseas resolver el caso en que la zapata tiene una esquina levantada y las otras tres comprimidas.
Veo dos opciones:
1.- Plantear las ecuaciones y resolverlas mediante un método iterativo de convergencia.
2.- Usar la potente herramienta solver desde la macro.
Si fuera posible usarla, me parece que la opción 2 es la más rápida, fácil y conveniente. Personalmente no he utilizado Solver en EXcel por lo tanto no podría ayudoar mucho en la opción 2.
Espero que alguien pueda cooperar, sería una gran ayuda.
Encontré esta página donde explican cómo usar Solver desde una macro.
http://www.vertex42.com/ExcelArticles/e ... mples.html
Veo dos opciones:
1.- Plantear las ecuaciones y resolverlas mediante un método iterativo de convergencia.
2.- Usar la potente herramienta solver desde la macro.
Si fuera posible usarla, me parece que la opción 2 es la más rápida, fácil y conveniente. Personalmente no he utilizado Solver en EXcel por lo tanto no podría ayudoar mucho en la opción 2.
Espero que alguien pueda cooperar, sería una gran ayuda.
Encontré esta página donde explican cómo usar Solver desde una macro.
http://www.vertex42.com/ExcelArticles/e ... mples.html
Oh muchísimas gracias ingeniero, no tenia idea de que se puede ejecutar el solver desde un macro, sin duda alguna esto es lo que necesitaba!
Si logro hacerlo mando la hoja para que la comenten y me den sus sugerencias.

Si logro hacerlo mando la hoja para que la comenten y me den sus sugerencias.
Hola! hice el solver desde un macro tal y como sale en las ayudas de excel, pero me sale un error.
En la imagen adjunta se puede ver como elaboré el macro y el error que me da al correrlo
Espero que puedan ayudarme a corregir mi error.
En la imagen adjunta se puede ver como elaboré el macro y el error que me da al correrlo
Espero que puedan ayudarme a corregir mi error.
No tienes los permisos requeridos para ver los archivos adjuntos a este mensaje.
Muchas gracias a todos por su ayuda!
El macro para ejecutar el solver funcionó a la perfección.
Aqui les adjunto la versión preliminar de mi hoja de calculo para zapatas parcialmente comprimidas y totalmente comprimidas, les explico como funciona.
1.- En el capitulo 1 se introducen todos los datos preliminares, incluyendo los casos basicos de carga (sin mayorar).
2.- En el capitulo 2 se lleva a cabo la combinación de las cargas, tanto en servicio como para el estado ultimo de agotamiento resistente de acuerdo a la norma IBC 2006.
3.- En el capitulo 3 es donde se realiza el chequeo de la capacidad portante de suelo y del porcentaje de area en tracción de la zapata, para realizar el analisis se selecciona la combinacion de carga mas critica y se le da al boton "CALCULAR".
4.- En el capitulo 4, se chequea la estabilidad de la zapata tanto al volcamiento como al deslizamiento, aqui el programa entrega los resultados para la combinación más critica de cargas en servicio.
5.- Aqui se calcula el esfuerzo máximo de reaccion en el suelo para las combinaciones de carga del estado ultimo de agotamiento resistente "mayoradas", el cual será usado en diseño estructural de la zapta. (se procede igual que en el capitulo 3).
6.- En los capitulos siguientes se diseña la zapata a corte, punzonado y flexion, se hace la distribucion del armado y se chequea el desarrollo de las barras (todo de acuerdo a la norma ACI 318-05).
Aun me falta hacer un macro para que en los capitulos 3 y 5 no sea necesario seleccionar la combinacion de carga.
Espero sus comentarios, criticas y sugerencias.
El macro para ejecutar el solver funcionó a la perfección.
Aqui les adjunto la versión preliminar de mi hoja de calculo para zapatas parcialmente comprimidas y totalmente comprimidas, les explico como funciona.
1.- En el capitulo 1 se introducen todos los datos preliminares, incluyendo los casos basicos de carga (sin mayorar).
2.- En el capitulo 2 se lleva a cabo la combinación de las cargas, tanto en servicio como para el estado ultimo de agotamiento resistente de acuerdo a la norma IBC 2006.
3.- En el capitulo 3 es donde se realiza el chequeo de la capacidad portante de suelo y del porcentaje de area en tracción de la zapata, para realizar el analisis se selecciona la combinacion de carga mas critica y se le da al boton "CALCULAR".
4.- En el capitulo 4, se chequea la estabilidad de la zapata tanto al volcamiento como al deslizamiento, aqui el programa entrega los resultados para la combinación más critica de cargas en servicio.
5.- Aqui se calcula el esfuerzo máximo de reaccion en el suelo para las combinaciones de carga del estado ultimo de agotamiento resistente "mayoradas", el cual será usado en diseño estructural de la zapta. (se procede igual que en el capitulo 3).
6.- En los capitulos siguientes se diseña la zapata a corte, punzonado y flexion, se hace la distribucion del armado y se chequea el desarrollo de las barras (todo de acuerdo a la norma ACI 318-05).
Aun me falta hacer un macro para que en los capitulos 3 y 5 no sea necesario seleccionar la combinacion de carga.
Espero sus comentarios, criticas y sugerencias.
Última edición por PROYECTOR el Lun Jul 14, 2008 9:14 pm, editado 1 vez en total.
- denilsoning
- Usuario Intermedio
- Mensajes: 50
- Registrado: Mié Abr 30, 2008 3:16 pm
- Ubicación: Juliaca
aqui les dejo un pequeño aporte
No tienes los permisos requeridos para ver los archivos adjuntos a este mensaje.
- Ingdanielfl
- Usuario Principiante
- Mensajes: 7
- Registrado: Jue Ago 02, 2007 12:23 pm
- Ubicación: Cusco
muy buen espero que sigamos culturizandonos de parte de mi eso hago y hare siempre
Muchas gracias
Atentamente
Daniel


Muchas gracias
Atentamente
Daniel
Hola PROYECTOR, es bueno saludarlo una vez mas;
Me doy cuenta de lo util que es el programa de zapatas que ha elaborado.
me gustaria tener dicho programa,pero por alguna razon,no encuentro el archivo adjunto,podria colgarlo nuevamente? o indicarme como hago para descargarlo.
Gracias por sus comentarios y aportes a este foro.
Me doy cuenta de lo util que es el programa de zapatas que ha elaborado.
me gustaria tener dicho programa,pero por alguna razon,no encuentro el archivo adjunto,podria colgarlo nuevamente? o indicarme como hago para descargarlo.
Gracias por sus comentarios y aportes a este foro.
-
- Similar Topics
- Respuestas
- Vistas
- Último mensaje
-
- 0 Respuestas
- 4164 Vistas
-
Último mensaje por vmjara.c