Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

Select Case-Matrícula para Curso de Excel según tipo de alumno

| 2 comentarios

Como conocemos  Select Case permite utilizar tantas condiciones como sea necesario por tanto nos conviene escribir el código para situaciones en las que hay muchas opciones. De esta manera se puede generar, dependiendo de características específicas, una asignación de resultado diferente para cada caso. La diferencia con la función “If”, como ya podrían haber notado, es que el número de acciones a realizar luego de evaluar la variable es más amplia con "Select Case" mientras que con "If" solo se pueden dar 2 posibilidades.

La siguiente macro esta destinada para usarse de manera que se pueda crear un diferenciación en el monto a pagar según el tipo de alumno para el Curso de Excel.  Se ha generado una escala de pensiones con un monto particular para cada tipo de alumno que quiera matricularse en el curso. El monto varía según características particulares del interesado en el curso.

De esta manera, se ha generado los siguientes tipos de alumno:

Tipo de alumno

La Pucp conviene un precio para cada uno de los estudiantes, de manera que paguen montos distintos dependiendo de las características arriba asignadas.

Por tanto:

Alumno Pucp -270

Alumnos de consorcio-300

Alumnos de otras universidades-350

Publico en general-400 (precio completo)

Ahora pasemos a crear la macro:

Creamos un userform que nos permita proponer la lista de tipos de alumnos un botón de "calcular monto" de manera que cuando elija la opción deseada en el cuadro de lista me de como respuesta el monto definido para ese tipo de Alumno. Para esto utilizamos la barra de herramientas del userform y creamos un cuadro de lista, un botón de comando, y un cuadro de texto donde nos aparecerá el monto a pagar.

Cuadro

(Para mayor visualización de la imagen, hacer click en la misma)

 

Al hacer doble click en el cuadro generamos el siguiente código:

 

Private Sub UserForm_Activate()

ListBox1.AddItem ("Alumno Pucp")
ListBox1.AddItem ("Alumno del consorcio de universidades")
ListBox1.AddItem ("Alumno de otras universidades")
ListBox1.AddItem ("Público en general")

End Sub

 

Private Sub CommandButton1_Click()
Select Case ListBox1.ListIndex
Case 0: TextBox1.Text = 270
Case 1: TextBox1.Text = 300
Case 2: TextBox1.Text = 350
Case 3: TextBox1.Text = 400
End Select
End Sub

 

Codigo

(Para mayor visualización de la imagen, hacer click en la misma)

Finalmente he añadido un botón en la hoja de cáculo (Insertar: botón de comando) que me permita acceder a la macro(y al userform) al hacer click. Listo para acceder a la lista y obtener los montos. Por tanto es necesario agregar este código en el botón:
Private Sub CommandButton1_Click()
UserForm1.Show
End Sub

Matricula

(Para mayor visualización de la imagen, hacer click en la misma)

 

Adjunto el ejemplo en un documento excel.

Select Case-Matrícula para Curso de Excel según tipo de alumno

 

Milagros Aguilar Salvador

2 comentarios

  1. excelente

  2. excelente maestro muchas gracias

Deja una respuesta

Los campos requeridos estan marcados con *.